synthesizer.emission_models.transformers.escape_fraction¶
A submodule contatining the escape fraction transformers.
This module contains transformers that apply escape fractions to an emission. This can be thought of as an attenuation law with a single value, reducing the emission by a constant factor.
There are two flavours of this transformer, one for escaped and reprocessed emission. This one contains the ProcessedFraction and EscapedFraction, the former will return the processed emission, i.e. the emission that does not escape and is reprocessed by the reprocessing medium. The latter will return the escaped emission, i.e. the emission that escapes and does not get reprocessed by the reprocessing medium.
The second flavour contains the CoveringFraction and EscapingFraction originally implemented for AGN and their line regions. The CoveringFraction will return the emission which is “covered” by the line region and transmitted through it (thus becoming reprocessed by it). The EscapingFraction will return the emission which is not covered by the line region and escapes without being reprocessed.
Example usage:
- model = EmissionModel(
apply_to=nebular, transformer=ProcessedFraction(fesc_attrs=(“fesc”,)), …
)
Classes
- class synthesizer.emission_models.transformers.escape_fraction.CoveringFraction(covering_attrs)[source]¶
A transformer that applies a covering fraction to an emission.
This is an alias for the AGN covering fraction which is effectively the EscapedFraction transformer (i.e. it transforms disc emission to get the emisison covered and trasmitted through a line region).
This can be thought of as an attenuation law with a single value, reducing the emission by a constant factor.
Note that the inverse (the escaped emission) can be achieved using the EscapingFraction transformer. This is effectively identical to this transformer but will apply fesc instead of (1 - fesc), as the scaling.
If fesc is an array then the shape of the emission must match along all axes accept the final one for multi-dimensional emissions, 1D emissions must match the shape of 1D fesc arrays.
- class synthesizer.emission_models.transformers.escape_fraction.EscapedFraction(fesc_attrs=('fesc',))[source]¶
A transformer that applies an escaped fraction to an emission.
This will return the escaped emission, i.e. the emission that escapes and does not get reprocessed by the reprocessing medium.
This can be thought of as an attenuation law with a single value, reducing the emission by a constant factor.
Note that the inverse (the escaped emission) can be achieved using the EscapedFraction transformer. This is effectively identical to this transformer but will apply fesc instead of (1 - fesc), as the scaling.
If fesc is an array then the shape of the emission must match along all axes accept the final one for multi-dimensional emissions, 1D emissions must match the shape of 1D fesc arrays.
- class synthesizer.emission_models.transformers.escape_fraction.EscapingFraction(covering_attrs)[source]¶
A transformer that applies a covering fraction to an emission.
This is an alias for the AGN covering fraction which is effectively the ProcessedFraction transformer (i.e. it transforms disc emission to get the emisison not covered by a line region).
This can be thought of as an attenuation law with a single value, reducing the emission by a constant factor.
Note that the inverse (the escaped emission) can be achieved using the EscapingFraction transformer. This is effectively identical to this transformer but will apply fesc instead of (1 - fesc), as the scaling.
If fesc is an array then the shape of the emission must match along all axes accept the final one for multi-dimensional emissions, 1D emissions must match the shape of 1D fesc arrays.
- class synthesizer.emission_models.transformers.escape_fraction.ProcessedFraction(fesc_attrs=('fesc',))[source]¶
A transformer that applies an escape fraction to get processed emission.
This will return the processed emission, i,e. the emission that does not escape and is reprocessed by the reprocessing medium.
This can be thought of as an attenuation law with a single value, reducing the emission by a constant factor.
Note that the inverse (the escaped emission) can be achieved using the EscapedFraction transformer. This is effectively identical to this transformer but will apply fesc instead of (1 - fesc), as the scaling.
If fesc is an array then the shape of the emission must match along all axes accept the final one for multi-dimensional emissions, 1D emissions must match the shape of 1D fesc arrays.