How do I determine the surface magnitude of a galaxy from a SED?

  • Context: Graduate 
  • Thread starter Thread starter AdrianD
  • Start date Start date
  • Tags Tags
    Galaxy
Click For Summary
SUMMARY

This discussion focuses on calculating the surface brightness of a galaxy using its Spectral Energy Distribution (SED) with Python's Synphot library. The user employs the BlackBodyNorm1D model to generate a source spectrum at a temperature of 6170.4796 K. By defining a circular aperture with a specified diameter in arcseconds, the area is computed, allowing for the conversion of flux to surface brightness in FLAM per square arcsecond. The final output is a plot displaying the surface brightness across a wavelength range of 1000 to 30000 Angstroms.

PREREQUISITES
  • Familiarity with Python programming
  • Understanding of Spectral Energy Distributions (SED)
  • Knowledge of the Synphot library for astronomical calculations
  • Basic concepts of surface brightness and photometry
NEXT STEPS
  • Explore the Synphot library documentation for advanced spectral modeling techniques
  • Learn about different aperture sizes and their impact on surface brightness calculations
  • Investigate the effects of temperature variations on BlackBodyNorm1D models
  • Study the principles of photometry and its applications in astrophysics
USEFUL FOR

Astronomers, astrophysics researchers, and data scientists working with galaxy SEDs and surface brightness calculations will benefit from this discussion.

AdrianD
Messages
7
Reaction score
2
Let's say I have a galaxy SED like this:

[CODE lang="python" title="SEDgen"]from synphot import SourceSpectrum
from synphot.models import BlackBodyNorm1D
sp = SourceSpectrum(BlackBodyNorm1D, temperature=6170.4796)

wave = sp.waveset
flux = sp(wave) #Photlam
flux_flam = flux.to(u.erg / u.s / u.angstrom/u.cm**2,equivalencies=u.spectral_density(wave))


plt.plot(wave, flux_flam)
plt.xlim(1000, 30000)
plt.xlabel('Wavelength (Angstrom)')
plt.ylabel('Flux [FLAM]')[/CODE]

How do I get surface brightness from this?
 
Astronomy news on Phys.org
Python:
import numpy as np

# Assuming a circular aperture with a diameter in arcseconds
aperture_diameter_arcsec = 1.0  # Example: 1 arcsecond diameter aperture

# Calculate the area of the circular aperture in square arcseconds
aperture_area_arcsec2 = np.pi * (aperture_diameter_arcsec / 2)**2

# Calculate the surface brightness in FLAM per square arcsecond
surface_brightness_flam_arcsec2 = flux_flame / aperture_area_arcsec2

# Plot the surface brightness
plt.plot(wave, surface_brightness_flam_arcsec2)
plt.xlim(1000, 30000)
plt.xlabel('Wavelength (Angstrom)')
plt.ylabel('Surface Brightness [FLAM/arcsec^2]')
Replace the aperture_diameter_arcsec variable with the appropriate angular size of your source. This will give you the surface brightness inFLAM per square arcsecond.
 
Last edited by a moderator:

Similar threads

Replies
7
Views
2K
  • · Replies 11 ·
Replies
11
Views
20K
  • · Replies 6 ·
Replies
6
Views
2K
Replies
2
Views
5K