C00

class dust_attenuation.averages.C00(*args, meta=None, name=None, **kwargs)[source]

Bases: dust_attenuation.baseclasses.BaseAttAvModel

Attenuation curve of Calzetti et al. (2000)

Parameters
Av: float

attenuation in V band

Raises
InputParameterError

Input Av values outside of defined range

Notes

From Calzetti (2000, ApJ, Volume 533, Issue 2, pp. 682-695)

Example:

import numpy as np
import matplotlib.pyplot as plt
import astropy.units as u

from dust_attenuation.averages import C00

fig, ax = plt.subplots()

# generate the curves and plot them
x = np.arange(0.12,2.2,0.1)*u.micron

Avs = [0.1,0.5,1.0,2.0,5.0]
for cur_Av in Avs:
   att_model = C00(Av=cur_Av)
   ax.plot(1/x,att_model(x),label=r'A$_V$ = %.2f mag' % (cur_Av))

ax.set_xlabel(r'$x$ [$\mu m^{-1}$]')
ax.set_ylabel(r'$Att(x)$ [mag]')

ax.legend(loc='best')
plt.show()

(Source code, png, hires.png, pdf)

../_images/dust_attenuation-averages-C00-1.png

Attributes Summary

Rv

x_range

Methods Summary

evaluate(x, Av)

Returns the attenuation curve, A(λ), following the recipe of Calzetti et al.

k_lambda(x)

Compute the starburst reddening curve of Calzetti et al. (2000)

Attributes Documentation

Rv = 4.05
x_range = [0.12, 2.2]

Methods Documentation

evaluate(x, Av)[source]

Returns the attenuation curve, A(λ), following the recipe of Calzetti et al. (2000).

Parameters
in_x: float

expects either x in units of wavelengths or frequency or assumes wavelengths in [micron]

internally microns are used

Returns
att: np array (float)

Att(x) attenuation curve [mag]

Raises
ValueError

Input x values outside of defined range

k_lambda(x)[source]
Compute the starburst reddening curve of Calzetti et al. (2000)

k’(λ)=A(λ)/E(B-V)

Parameters
in_x: float

expects either x in units of wavelengths or frequency or assumes wavelengths in [micron]

internally microns are used

Returns
k_lambda: np array (float)

k_lambda(x) reddening curve

Raises
ValueError

Input x values outside of defined range