models#

The models subpackage contains all of the code relevant for creating voxels. There are currently two ways to model PDRs:

  • single-voxel model (class Voxel()): this is useful to a homogeneous voxel to compare to pixels in an observation. Note that the voxel does not necessarily need to be cubic; PDR clumps can overfill a voxel resulting in a homogeneous column. This functionality will require more attention if you plan to integrate the radiative transfer equation.

  • full 3-D model (class Model()): The full three-dimensional model used in the first applications of this code (Andree-Labsch et al. 2017, Yanitski et al. 2023). This requires knowledge of the three-dimensional structure and distribution of interstellar gas in the object being modelled. Currently this is setup to model a Milky-Way-type galaxy.

Most of the calculations are split into subsubpackages, although there is an object containing all of the evaluated voxels. This structure to the code was implemented with the intention of creating a model in memory to adjust the orientation of the model and thus the synthetic observation of it. While the Milky Way models are too large to utilise this feature, it is left in the source code for future development of the code.

Functions

dill_grid

A function that can be used to serialise and save the interpolation functions to make debugging easier.

help

A currently defunct function to show information about this submodule.

Modules

models.combinations

A subpackage to work with the different combinations of clumps contained within a voxel.

models.constants

A subpackage to contain all of the model constants used in the calculations involved in kosmatau3d.

models.ensemble

A subpackage containing information dealing with the probabilities for different combinations of clumps contained within a voxel.

models.interpolations

A subpackage to used to interpolate the KOSMA-\(\tau\) grids and input data and store these methods to use in the evaluation of kosmatau3d.

models.masspoints

A subpackage containing information for the discrete clumps within a voxel.

models.model

A submodule containing the classes Model and SyntheticModel, which are used to create and load large models containing many voxels, respectively.

models.observations

A subpackage to load all of the KOSMA-\(\tau\) and input data required to run kosmatau3d.

models.plotting

A subpackage containing various plotting functions both for individual models and kosmatau3d in general.

models.radiativeTransfer

A subpackage to integrate the radiative transfer equation from a given position.

models.shape

A subpackage to specify the layout of voxels in a larger three-dimensional model.

models.species

A subpackage to read and contain all of the species spectral line transition data.

models.voxel

A module containing the Voxel class, which is used to model the synthetic emission from one or more ensembles.

models.voxel_grid

A module containing the VoxelGrid class.