Spectral

PeakFluxModel

class PeakFluxModel(E, n0, eps_b, dL, z, k, X)

The peak flux model. Assumes an ultra-relativistic shock moving adiabatically through an external medium with ρ=ρ0Rk\rho = \rho_0 \cdot R^{-k}.

Parameters

E: float or astropy.units.Quantity['energy']

The explosion energy [1e52 ergs]. If a float or dimensionless quantity is provided, assumes that the value is already normalized to 1e52 erg. If passing a Quantity, it will be normalized before being stored as a float.

n0: float or astropy.units.Quantity['number density', 'mass density']

The number density normalization [cm-3] at a characteristic radius.

eps_b: float

The fraction of thermal energy in the magnetic field. Must be in the range [0, 1].

dL: float or astropy.units.Quantity['length']

The luminosity distance to the event [1e28 cm]. If a float or dimensionless quantity is provided, assumes that dL is already normalized to 1e28 cm. If passing a Quantity, it will be normalized before being stored as a float.

z: float

The redshift of the event.

k: float

The density power-law index.

X: float

The hydrogen mass fraction. Must be in the range [0, 1]. 0 indicates hydrogen depleted. 1 indicates hydrogen rich. If there is no information on X, then 0.7 is a typical value.

Methods

PeakFluxModel.evaluate(t, ref=17)

Calculates the peak flux at the times t.

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The peak flux [mJy] at time t.


PeakFluxModel.__call__(t, ref=17)

Makes the class instance callable. This behaves the same as evaluate(t, ref).


Examples


CoolingFrequencyModel

class CoolingFrequencyModel(E, n0, eps_b, k, z)

The cooling frequency model. Assumes an ultra-relativistic shock moving adiabatically through an external medium with ρ=ρ0Rk\rho = \rho_0 \cdot R^{-k}.

Parameters

E: float or astropy.units.Quantity['energy']

The explosion energy [1e52 ergs]. If a float or dimensionless quantity is provided, assumes that the value is already normalized to 1e52 erg. If passing a Quantity, it will be normalized before being stored as a float.

n0: float or astropy.units.Quantity['number density', 'mass density']

The number density normalization [cm-3] at a characteristic radius.

eps_b: float

The fraction of thermal energy in the magnetic field. Must be in the range [0, 1].

k: float

The density power-law index.

z: float

The redshift of the event.

Methods

CoolingFrequencyModel.evaluate(t, ref=17)

Calculates the cooling frequencies at the times t.

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The cooling frequencies [Hz] at time(s) t.


CoolingFrequencyModel.__call__(t, ref=17)

Makes the class instance callable. This behaves the same as evaluate(t, ref).


SynchrotronFrequencyModel

class SynchrotronFrequencyModel(E, eps_e, eps_b, k, z, X, p)

The synchrotron frequency model. Assumes an ultra-relativistic shock moving adiabatically through an external medium with ρ=ρ0Rk\rho = \rho_0 \cdot R^{-k}.

Parameters

E: float or astropy.units.Quantity['energy']

The explosion energy [1e52 ergs]. If a float or dimensionless quantity is provided, assumes that the value is already normalized to 1e52 erg. If passing a Quantity, it will be normalized before being stored as a float.

n0: float or astropy.units.Quantity['number density', 'mass density']

The number density normalization [cm-3] at a characteristic radius.

eps_e: float

The fraction of thermal energy in the electric field. Must be in the range [0, 1].

eps_b: float

The fraction of thermal energy in the magnetic field. Must be in the range [0, 1].

k: float

The density power-law index.

z: float

The redshift of the event.

X: float

The hydrogen mass fraction. Must be in the range [0, 1]. 0 indicates hydrogen depleted. 1 indicates hydrogen rich.

p : float

The electron energy power-law index.

Methods

SynchrotronFrequencyModel.evaluate(t, ref=17)

Calculates the synchrotron frequencies at the time(s) t.

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The synchrotron frequencies [Hz] at the time(s) t.


SynchrotronFrequencyModel.__call__(t, ref=17)

Makes the class instance callable. This behaves the same as evaluate(t, ref).


AbsorptionFrequencyModel

class AbsorptionFrequencyModel(E, n0, eps_e, eps_b, k, z, X, p)

The absorption frequency model. Assumes an ultra-relativistic shock moving adiabatically through an external medium with ρ=ρ0Rk\rho = \rho_0 \cdot R^{-k}.

Parameters

E: float or astropy.units.Quantity['energy']

The explosion energy [1e52 ergs]. If a float or dimensionless quantity is provided, assumes that the value is already normalized to 1e52 erg. If passing a Quantity, it will be normalized before being stored as a float.

n0: float or astropy.units.Quantity['number density', 'mass density']

The number density normalization [cm-3] at a characteristic radius.

eps_e: float

The fraction of thermal energy in the electric field. Must be in the range [0, 1].

eps_b: float

The fraction of thermal energy in the magnetic field. Must be in the range [0, 1].

k: float

The density power-law index.

z: float

The redshift of the event.

X: float

The hydrogen mass fraction. Must be in the range [0, 1]. 0 indicates hydrogen depleted. 1 indicates hydrogen rich.

p: float

The electron energy power-law index.

Methods

AbsorptionFrequencyModel.evaluate(t, order, ref=17)

Calculates the absorption frequencies at the time(s) t.

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

order: str, {'amc', 'mac', 'cam', 'acm'}

The order of the spectral breaks.

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The self-absorption frequencies [Hz] at time(s) t.


AbsorptionFrequencyModel.evaluate_amc(t, ref=17)

Calculates the self-absorption frequencies at the time(s) t in the weak self-absorption regime (c < a < m).

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The self-absorption frequencies [Hz] at time(s) t.


AbsorptionFrequencyModel.evaluate_mac(t, ref=17)

Calculates the self-absorption frequencies at the time(s) t in the weak self-absorption regime (m < a < c).

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The self-absorption frequencies [Hz] at time(s) t.


AbsorptionFrequencyModel.evaluate_cam(t, ref=17)

Calculates the self-absorption frequencies at the time(s) t in the strong self-absorption regime (c < a < m).

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The self-absorption frequencies [Hz] at time(s) t.


AbsorptionFrequencyModel.evaluate_mac(t, ref=17)

Calculates the self-absorption frequencies at the time(s) t in the weak self-absorption regime (m < a < c).

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The self-absorption frequencies [Hz] at time(s) t.


AbsorptionFrequencyModel.evaluate_acm(t, ref=17)

Calculates the self-absorption frequencies at the time(s) t in the weak self-absorption regime (a < c < m).

See ?? for the theory and derivation.

Parameters

t: float or np.ndarray of float

The observer times [d].

ref : float, default = 17

The log of the characteristic radius [cm].

Returns

float or np.ndarray of float

The self-absorption frequencies [Hz] at time(s) t.


Last updated