Star formation histories#
- class pixSED.misc.cigaleModules.SFHmodule(name: Any, normalise: bool = True)[source]#
Bases:
ABC
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Base class implementing a module to deal with SFH models.
- Parameters:
name – identifier for the class
Keyword arguments
- Parameters:
normalise (
bool
) – whether to normalise the SFH to produce one solar mass
- abstract __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@ilam.fr>
Implement a string representation of the class used to make Cigale parameter files.
- abstract property spec: str#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation for the .spec file of Cigale parameters.
- class pixSED.misc.cigaleModules.SFH2EXPmodule(tau_main: List[int] = [6000], tau_burst: List[int] = [50], f_burst: List[float] = [0.01], age: List[int] = [5000], burst_age: List[int] = [20], sfr_0: List[float] = [1.0], normalise: bool = True)[source]#
Bases:
SFHmodule
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Class implementing a module for an SFH with two exponential components. Each component has an SFH of the form:
\[{\rm SFH}(t) \propto \exp \lbrace -t/\tau \rbrace,\]with \(\tau\) equal to tau_main for the first stellar population and tau_burst for the second one. The time \(t\) starts at the age of the stellar populations, so age_main for the first one and age_burst for the second one. The final SFH is the sum of the two individual SFHs.
Keyword arguments
- Parameters:
tau_main (
list[int]
) – e-folding time of the main stellar population model in \(\rm Myr\). Minimum is \(0\,\rm Myr\).tau_burst (
list[int]
) – e-folding time of the late starburst population model in \(\rm Myr\). Minimum is \(0\,\rm Myr\).f_burst (
list[float]
) – mass fraction of the late burst population. Minimum is \(0.0\), maximum is \(0.9999\).age (
list[int]
) – age of the main stellar population in \(\rm Myr\). Minimum is \(0\,\rm Myr\).burst_age (
list[int]
) – age of the late burst in \(\rm Myr\). Minimum is \(0\,\rm Myr\).sfr_0 (
list[float]
) – value of SFR at t = 0 in \(\rm M_{\odot}\,yr^{-1}\). Minimum is \(0.0\,\rm M_{\odot}\,yr^{-1}\).normalise (
bool
) – whether to normalise the SFH to produce one solar mass or not
- __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation of the class used to make Cigale parameter files.
- property spec: str#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation for the .spec file of Cigale parameters.
- class pixSED.misc.cigaleModules.SFHDELAYEDmodule(tau_main: List[int] = [2000], age_main: List[int] = [5000], tau_burst: List[int] = [50], age_burst: List[int] = [20], f_burst: List[float] = [0.0], sfr_A: List[float] = [1.0], normalise: bool = True)[source]#
Bases:
SFHmodule
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Class implementing a module for a delayed exponential SFH with a potential exponential burst. Without any burst, the SFH is equal to:
\[{\rm SFH}(t) = {\rm SFR_A} \times \frac{t}{\tau_{\rm main}^2} \exp \lbrace -t/\tau_{\rm main} \rbrace.\]After that a time age_burst has elapsed and if f_burst is different from 0, the SFH is increased by an amount:
\[{\rm SFH}(t) \propto \exp \lbrace -t/\tau_{\rm burst} \rbrace,\]where \(t\) is counted starting from age_burst and the amplitude of the burst is controlled by its mass fraction f_burst.
Keyword arguments
- Parameters:
tau_main (
list[int]
) – e-folding time of the main stellar population model in \(\rm Myr\). Minimum is \(0\,\rm Myr\).age_main (
list[int]
) – age of the main stellar population in the galaxy in \(\rm Myr\). Minimum is \(0\,\rm Myr\).tau_burst (
list[int]
) – e-folding time of the late starburst population model in \(\rm Myr\). Minimum is \(0\,\rm Myr\).age_burst (
list[int]
) – age of the late burst in \(\rm Myr\). Minimum is \(0\,\rm Myr\).f_burst (
list[float]
) – mass fraction of the late burst population. Minimum is \(0.0\), maximum is \(0.9999\).sfr_A (
list[float]
) – multiplicative factor controlling the amplitude of the SFR in \(\rm M_{\odot}\,yr^{-1}\) if normalise isTrue
. Minimum is \(0.0\,\rm M_{\odot}\,yr^{-1}\). For instance without any burst: SFR(t)=sfr_A×t×exp(-t/τ)/τ².normalise (
bool
) – whether to normalise the SFH to produce one solar mass or not
- __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation of the class used to make Cigale parameter files.
- property spec: str#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation for the .spec file of Cigale parameters.
- class pixSED.misc.cigaleModules.SFHDELAYEDBQmodule(tau_main: List[int] = [2000], age_main: List[int] = [5000], age_bq: List[int] = [500], r_sfr: List[float] = [0.1], sfr_A: List[float] = [1.0], normalise: bool = True)[source]#
Bases:
SFHmodule
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Class implementing a module for a delayed exponential SFH with a burst/quench episode. Without any burst/quench episode, the SFH is equal to:
\[{\rm SFH}(t) = {\rm SFR_A} \times \frac{t}{\tau_{\rm main}^2} \exp \lbrace -t/\tau_{\rm main} \rbrace.\]After that a time age_bq has elapsed and if r_sfr is different from 0, the SFH becomes a constant value equal to:
\[{\rm SFH_{after}}(t) = {\rm SFH_{before}} \times r_{\rm SFR},\]where \(\rm SFH_{before}\) is the value of the SFH just before the burst/quench episode.
Keyword arguments
- Parameters:
tau_main (
list[int]
) – e-folding time of the main stellar population model in \(\rm Myr\). Minimum is \(0\,\rm Myr\).age_main (
list[int]
) – age of the main stellar population in the galaxy in \(\rm Myr\). Minimum is \(0\,\rm Myr\).age_bq (
list[int]
) – age of the burst/quench episode in \(\rm Myr\). Minimum is \(0\,\rm Myr\).r_sfr (
list[float]
) – ratio of the SFR after/before age_bq. Minimum is \(0.0\).sfr_A (
list[float]
) – multiplicative factor controlling the SFR if normalise is False. Minimum is \(0.0\). For instance without any burst: SFR(t)=sfr_A×t×exp(-t/τ)/τ²normalise (
bool
) – whether to normalise the SFH to produce one solar mass
- __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP <wilfried.mercier@irap.omp.eu>
Implement a string representation of the class used to make Cigale parameter files.
- property spec: str#
Code author: Wilfried Mercier - IRAP <wilfried.mercier@irap.omp.eu>
Implement a string representation for the .spec file of Cigale parameters.
- class pixSED.misc.cigaleModules.SFHFROMFILEmodule(filename: str = '', sfr_column: List[int] = [1], age: List[int] = [1000], normalise: bool = True)[source]#
Bases:
SFHmodule
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Class implementing a module for a SFH read from a FITS or VOtable file.
Note
The first column of the input file must be the time in \(\rm Myr\), starting from \(0\,\rm Myr\) with a step of \(1\,\rm Myr\). Other columns contain the SFHs in \(\rm M_{\odot}\,yr^{-1}\).
Keyword arguments
- Parameters:
filename (
str
) – name of the input FITS or VOtable file containing the SFHsfr_column (
list[int]
) – list of column indices where the SFHs are located in the input file. The first SFH column has the index 1.age (
list[int]
) – age in \(\rm Myr\) at which the SFHs startnormalise (
bool
) – whether to normalise the SFH to produce one solar mass or not
- __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation of the class used to make Cigale parameter files.
- property spec: str#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation for the .spec file of Cigale parameters.
- class pixSED.misc.cigaleModules.SFHPERIODICmodule(type_bursts: List[int] = [0], delta_bursts: List[int] = [50], tau_bursts: List[int] = [20], age: List[int] = [1000], sfr_A: List[float] = [1.0], normalise: bool = True)[source]#
Bases:
SFHmodule
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Class implementing a module for a SFH with periodic bursts. The first burst will start at an age age_burst, and then each burst will follow the previous one after a time delta_bursts has elapsed.
Three burst SFHs are possible:
Exponential: \({\rm SFH} (t) = {\rm SFR_A} \times \exp \lbrace - t / \tau_{\rm burst} \rbrace\)
Delayed exponential: \({\rm SFH} (t) = {\rm SFR_A} \times \frac{t}{\tau_{\rm burst}^2} \exp \lbrace - t / \tau_{\rm burst} \rbrace\)
Rectangular: \({\rm SFH} (t) = {\rm SFR_A}\) for \(0 < t < \tau_{\rm burst}\) and \({\rm SFH} (t) = 0\,\rm M_{\odot}\,yr^{-1}\) otherwise. For each burst, \(t\) is counted at the start of the burst.
The total SFH is simply the sum of all individual SFHs.
Keyword arguments
- Parameters:
type_bursts (
list[int]
) – type of the individual star formation episodes. Options are 0 for exponential, 1 for delayed, and 2 for rectangle.delta_bursts (
list[int]
) – elapsed time between the beginning of each burst in \(\rm Myr\)tau_burst – duration of the bursts. For exponential and delayed types, this corresponds to the e-folding time and for rectangular bursts this corresponds to their duration.
age (
list[int]
) – age of the main stellar population in the galaxy in \(\rm Myr\)sfr_A (
list[float]
) – multiplicative factor controlling the amplitude of SFR (valid for each event)normalise (
bool
) – whether to normalise the SFH to produce one solar mass or not
- __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation of the class used to make Cigale parameter files.
- property spec: str#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation for the .spec file of Cigale parameters.
- class pixSED.misc.cigaleModules.SFH_BUATmodule(velocity: List[float] = [200.0], age: List[int] = [5000], normalise: bool = True)[source]#
Bases:
SFHmodule
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Class implementing a module for a SFH from Buat et al. (2008). The SFH writes:
\[\log_{10} {\rm SFH} (t) = a (V) + b (V) \times \log_{10} t + c (V) \times t^{1/2},\]where \(a\), \(b\), and \(c\) are functions of the rotational velocity \(V\) of the galaxy.
Note
The functional forms of \(a\), \(b\), and \(c\) only work for \(40 < V [{\rm km\,s^{-1}}] <360\).
Keyword arguments
- Parameters:
velocity (
list[float]
) – rotational velocity of the galaxy in \(\rm km\,s^{-1}\). Must be between 40 \(\rm km\,s^{-1}\) and 360 \(\rm km\,s^{-1}\) (included).age (
list[int]
) – age of the oldest stars in the galaxy in \(\rm Myr\)normalise (
bool
) – whether to normalise the SFH to produce one solar mass or not
- __str__(*args, **kwargs) str [source]#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation of the class used to make Cigale parameter files.
- property spec: str#
Code author: Wilfried Mercier - IRAP/LAM <wilfried.mercier@lam.fr>
Implement a string representation for the .spec file of Cigale parameters.