tardis.spectrum.base module

class tardis.spectrum.base.SpectrumSolver(*args: Any, **kwargs: Any)[source]

Bases: HDFWriterMixin

Create a new instance and initialize HDF properties.

Parameters:
*argsAny

Positional arguments passed to the parent class.

**kwargsAny

Keyword arguments passed to the parent class.

Returns:
HDFWriterMixin

The new instance with initialized HDF properties.

classmethod from_config(config)[source]
hdf_name = 'spectrum'
hdf_properties = ['montecarlo_virtual_luminosity', 'spectrum_real_packets', 'spectrum_virtual_packets', 'spectrum_real_packets_reabsorbed', 'spectrum_integrated']
property integrator
property montecarlo_emitted_luminosity
property montecarlo_reabsorbed_luminosity
property montecarlo_virtual_luminosity
setup_optional_spectra(transport_state, virtual_packet_luminosity=None, integrator=None, simulation_state=None, transport=None, plasma=None, opacity_state=None, macro_atom_state=None)[source]

Set up the solver to handle real and virtual spectra

Parameters:
transport_stateMonteCarloTransportState

The transport state to be used to compute the spectra

v_packets_energy_histnp.ndarray

Virtual packets energy histogram, unnormalized

integratorFormalIntegratorSolver, optional

Integrator to compute the integrated spectrum with

solve(transport_state)[source]

Solve the spectra

Parameters:
transport_state: MonteCarloTransportState

The transport state to be used to compute the spectra

Returns:
tuple(TARDISSpectrum)

Real, virtual and integrated spectra, if available

property spectrum_integrated
property spectrum_real_packets
property spectrum_real_packets_reabsorbed
property spectrum_virtual_packets