galapy.Synchrotron
The Synchrotron module implements a generic parameterized synchrotron emission.
Module Attributes
|
Tunable parameters for synchrotron emission. |
Functions
|
Builds the parameters dictionary for the generic synchrotron. |
Classes
|
Specialised class for handling Synchrotron emission due to Core-Collapse Supernovae. |
|
Class wrapping the C-core implementation of a generic Synchrotron emission type. |
- class galapy.Synchrotron.SYN(ll, **kwargs)
Class wrapping the C-core implementation of a generic Synchrotron emission type.
The shape of the emission is given by
\[L_\text{syn}(\lambda,\tau) = L_\text{norm} \cdot \left(\dfrac{\nu_\lambda}{G\text{Hz}}\right)^{-\alpha_\text{syn}}\cdot \left[1+\left(\dfrac{\nu}{20\, G\text{\text{Hz}}}\right)^{0.5}\,\right]^{-1}\, F[\tau_\text{syn}(\nu_\lambda)]\]where \(\alpha_\text{syn}\) is the spectral index, the term in square brackets takes into account spectral-ageing effects, and the function \(F(x)=(1-e^{-x})/x\) incorporates synchrotron self-absorption in terms of the optical depth \(\tau_{\rm sync}\approx (\nu_\lambda/\nu_\text{self})^{-\alpha_\text{syn}-5/2}\) that is thought to become relevant at frequencies \(\nu\lesssim \nu_\text{self}\approx 0.2\ [GHz]\).
- Parameters:
ll (float array) – the wavelength grid where the synchrotron emission is computed
**kwargs (keyword arguments) – Parameters for the synchrotron model. The available free-parameters are listed in the galapy.Synchrotron.syn_tunables tuple
- Keyword Arguments:
alpha_syn (float) – synchrotron spectral index (i.e. \(\alpha_\text{syn}\))
nu_self_syn (float) – synchrotron self-absorption threshold (i.e. \(\nu_\text{self}\))
- set_parameters(**kwargs)
Function for setting the parameters of the model.
- Parameters:
**kwargs (keyword arguments) – Parameters to set for the synchrotron model.
- Return type:
None
- opt_depth(il=None)
Compute optical depth on the default wavelength grid.
- Parameters:
il (array-like or int or None, optional) – Indices of wavelengths in the default grid to compute optical depth for.
- Returns:
Array of optical depths or a single optical depth if il is a singl integer. If il is None return optical depth on the whole wavelength grid.
- Return type:
numpy.ndarray or float
- energy(SynNorm, il=None)
Returns the normalized total energy radiated at given wavelength.
- Parameters:
SynNorm (float) – Normalization factor for synchrotron energy.
il (array-like or int or None, optional) – Indices of wavelengths in the default grid to compute energy for.
- Returns:
Array of energy values or a single energy value if il is a single integer. If il is None return energy on the whole wavelength grid.
- Return type:
numpy.ndarray or float
- emission(SynNorm, il=None)
Compute emission.
- Parameters:
SynNorm (float) – Normalization factor for synchrotron energy.
il (array-like or int or None, optional) – Indices of wavelengths to compute emission for.
- Returns:
Array of emission values or a single emission value if il is a single integer If il is None return the emission on the whole wavelength grid.
- Return type:
numpy.ndarray or float
- class galapy.Synchrotron.SNSYN(*args, **kwargs)
Specialised class for handling Synchrotron emission due to Core-Collapse Supernovae.
The implementation inherits from the generic galapy.Synchrotron.SYN class and computes the emission as
\[L_\text{syn}^\text{corr}(\lambda,\tau)=\dfrac{L_\text{syn}(\lambda,\tau)}{1+[L_\text{syn}^0/L_\text{syn}(\lambda,\tau)]^\zeta}\]with \(L_\text{syn}^0 = 3\cdot10^{28}\ [erg]\) (fixed by the class-attribute SNSYN.Lsyn0), \(\zeta=2\) (fixed by the class-attribute SNSYN.zeta) and with emission shape normalised by \(L_\text{norm} = \text{const} \cdot \dfrac{\mathcal{R}_\text{CCSN}(\tau)}{\text{yr}^{-1}}\). The \(\text{const} = 10^{30}\ [erg]\) is fixed (by the class-attribute SNSYN.NormFact) while the value \(\mathcal{R}_\text{CCSN}\) is the production rate of CC Supernovae and is a free parameter of the model and can be computed with
galapy.CompositeStellarPopulation.CSP.RCCSN()- Parameters:
ll (float array) – the wavelength grid where the synchrotron emission is computed
**kwargs (keyword arguments) – Parameters for the synchrotron model.
- Keyword Arguments:
alpha_syn (float) – synchrotron spectral index (i.e. \(\alpha_\text{syn}\))
nu_self_syn (float) – synchrotron self-absorption threshold (i.e. \(\nu_\text{self}\))
RCCSN (float) – Core-collapse Super-Nova production rate (unit \(\text{yr}^{-1}\)
- emission(il=None)
Compute emission.
- Parameters:
il (array-like or int or None, optional) – Indices of wavelengths to compute emission for.
- Returns:
Array of emission values or a single emission value if il is a single integer If il is None return the emission on the whole wavelength grid.
- Return type:
numpy.ndarray or float