Physics Model


beast.physicsmodel.stars.stellib Module

Stellib class

Intent to implement a generic module to manage stellar library from various sources.

The interpolation is implemented from the pegase.2 fortran converted algorithm. (this may not be pythonic though)


Stellib(*args, **kargs) Basic stellar library class
CompositeStellib(osllist, *args, **kwargs) Generates an object from the union of multiple individual libraries
Kurucz([filename]) The stellar atmosphere models by Castelli and Kurucz 2004 or ATLAS9
Tlusty([filename]) Tlusty O and B stellar atmospheres
BTSettl([medres]) BT-Settl Library
Munari(*args, **kwargs) ATLAS9 stellar atmospheres providing higher res than Kurucz medium resolution (1 Ang/pix) in optical (2500-10500 Ang)
Elodie(*args, **kwargs) Elodie 3.1 stellar library derived class
BaSeL(*args, **kwargs) BaSeL 2.2 (This library is used in Pegase.2)

Class Inheritance Diagram

Inheritance diagram of beast.physicsmodel.stars.stellib.Stellib, beast.physicsmodel.stars.stellib.CompositeStellib, beast.physicsmodel.stars.stellib.Kurucz, beast.physicsmodel.stars.stellib.Tlusty, beast.physicsmodel.stars.stellib.BTSettl, beast.physicsmodel.stars.stellib.Munari, beast.physicsmodel.stars.stellib.Elodie, beast.physicsmodel.stars.stellib.BaSeL

beast.physicsmodel.stars.isochrone Module

Isochrone class

Intent to implement a generic module to manage isochrone mining from various sources.


ezIsoch(source[, interp]) Trying to make something that is easy to manipulate This class is basically a proxy to a table (whatever format works best) and tries to keep things coherent.
PadovaWeb([Zref, modeltype, filterPMS, …])
MISTWeb([Zref, rotation])

Class Inheritance Diagram

Inheritance diagram of beast.physicsmodel.stars.isochrone.Isochrone, beast.physicsmodel.stars.isochrone.padova2010, beast.physicsmodel.stars.isochrone.pegase, beast.physicsmodel.stars.isochrone.ezIsoch, beast.physicsmodel.stars.isochrone.PadovaWeb, beast.physicsmodel.stars.isochrone.MISTWeb


beast.physicsmodel.dust.extinction Module

Extinction Curves


ExtinctionLaw() Extinction Law Template Class
Cardelli89() Cardelli89 Milky Way R(V) dependent Extinction Law
Fitzpatrick99() Fitzpatrick99 Milky Way R(V) dependent Extinction Law
Gordon03_SMCBar() Gordon03 SMCBar extinction curve
Gordon16_RvFALaw() Gordon16 RvFA extinction law

Class Inheritance Diagram

Inheritance diagram of beast.physicsmodel.dust.extinction.ExtinctionLaw, beast.physicsmodel.dust.extinction.Cardelli89, beast.physicsmodel.dust.extinction.Fitzpatrick99, beast.physicsmodel.dust.extinction.Gordon03_SMCBar, beast.physicsmodel.dust.extinction.Gordon16_RvFALaw

beast.physicsmodel.dust.attenuation Module

Attenuation Curves


Calzetti00() Calzetti et al.

Class Inheritance Diagram

Inheritance diagram of beast.physicsmodel.dust.attenuation.Calzetti00


beast.physicsmodel.grid Module

Manage Various SED/spectral grids is a generic way

Major changes from the previous version of core.grid:
Removed general write method added backend functions and direct access to properties MemoryGrid migrates to a function that creates a ModelGrid with a MemoryBackend FileSEDGrid, FileSpectralGrid migrated to functions as well

Currently no majors variation is expected as long as memory or cache backend types are used

More optimization can be done, especially in SpectralGrid.getSEDs

TODO: Check where any beast code uses eztable.Table’s specific methods and
implement equivalent in the backends for transparency in the case of HDFBackend
  • aliases
  • eval expression
  • selectWhere
  • readCoordinates (although should work already)


MemoryGrid(lamb[, seds, grid, header, aliases]) Replace the MemoryGrid class for backwards compatibility
FileSEDGrid(fname[, header, aliases, backend]) Replace the FileSEDGrid class for backwards compatibility


ModelGrid(*args, **kwargs) Generic class for a minimum update of future codes
SpectralGrid(*args, **kwargs) Generate a grid that contains spectra.
StellibGrid(osl, filters[, header, aliases]) Generate a grid from a spectral library

Class Inheritance Diagram

Inheritance diagram of beast.physicsmodel.grid.ModelGrid, beast.physicsmodel.grid.SpectralGrid, beast.physicsmodel.grid.StellibGrid

beast.physicsmodel.creategrid Module

Create extinguished grid more segmented dealing with large grids with enough memory

All functions are now transformed into generators. As a result, any function allows computation of a grid in an arbitrary number of chunks. This offers the possibility to generate grids that cannot fit in memory.


  • dependencies have also been updated accordingly.
  • likelihood computations need to be updated to allow computations even if the full grid does not fit in memory


gen_spectral_grid_from_stellib_given_points(…) Generator that reinterpolates a given stellar spectral library on to
gen_spectral_grid_from_stellib(*args, **kwargs) Reinterpolate a given stellar spectral library on to an Isochrone grid
make_extinguished_grid(*args, **kwargs) Extinguish spectra and extract an SEDGrid through given series of filters (all wavelengths in stellar SEDs and filter response functions are assumed to be in Angstroms)
add_spectral_properties(specgrid[, …]) Addon spectral calculations to spectral grids to extract in the fitting routines
calc_absflux_cov_matrices(specgrid, sedgrid, …) Calculate the absflux covariance matrices for each model Must be done on the full spectrum of each model to account for the changing combined spectral response due to the model SED and the filter response curve.