Interpolators

UV-mm SEDs

Incident and total SEDs of our models at the Cloudy native resolution of R=300 (see Cloudy documentation Hazy-1, see the section called "Save Continuum"). The SEDs are reported as log10(Value/[W/m]) and can be used in the following way:


# Export necessary modules
import numpy as np
from numpy import atleast_2d as d2
import pickle
from scipy.interpolate import RegularGridInterpolator # works with scipy 1.8.1, not later releaases

# load the interpolant 
file = "TODDLERS_contSED_singleModels_RGI.obj"  
with open(file_cont_path, 'rb') as file_cont:
    f_cont = pickle.load(file_cont)

# define the argument function: all variables should be bw the range, otherwise an error will be raised.
Variable range and units:
wl_grid (wavelength grid points in m): 0.1-1000 micron
t (evolution time of the system in Myr) : 0.1 - 30 Myr
Z (System metallicity, dimensionless): 0.001 - 0.04
SFE (burst star formation efficiency, dimensionless fraction): 0.01 - 0.15
n (Cloud density in particles/cm3): 10 - 2560 cm-3
logM (log10 of the Cloud mass in solar units): 5.0 - 6.75 

def generate_callArray_SED(wl_grid, t, Z, SFE, n, logM):
    wl_grid_2d = np.repeat(d2(wl_grid), len(t), axis=0)
    t_2d       = np.repeat(d2(t).T, len(wl_grid), axis=1)
    Z   = d2(Z).T
    SFE = d2(SFE).T
    n   = d2(n).T
    x = np.dstack((np.log10(wl_grid_2d), t_2d, np.log10(Z)*np.ones_like(t_2d), SFE*np.ones_like(t_2d), 
        np.log10(n)*np.ones_like(t_2d), logM*np.ones_like(t_2d)))
    return x

# call the function, an example
wl_grid = 1e-6*np.array(0.1, 10, 100) # in m
t       = 0.5 
Z       = 0.02
SFE     = .05
n       = 160 
logM    = 6.0
args    = generate_callArray_SED(wl_grid, t, Z, SFE, n, logM)
L_SED   = 10**f_cont(args) # W/m
    
Download

Secondary Variable Interpolators

These interpolators represent certain physical quantities, some of which are represented by the colormaps in fig. 12 of Kapoor et al 2023. These are scalar values at a given instant/s. The interpolators are used in the same way as the SEDs above, except the wavelength part of the argument is not required, the argument then looks like:


def generate_callArray_secondaryVariables(t, Z, SFE, n, logM):
    x = np.column_stack((t, np.log10(Z)*np.ones_like(t), SFE*np.ones_like(t), np.log10(n)*np.ones_like(t), logM*np.ones_like(t)))
    return x
            
The description and units used in the case of some of the interpolants are given below, the names are the ones which follow the string "TODDLERS_" in the files

1.) Av (Visual attenuation, Mag): Taken from the Cloudy output files given as AV(ext)    
2.) avgTion (Mass weighted temperature in the ionized regions of the cloud, ionized parts are the ones with ionization 
fraction above 0.5): Reported as log10(value/[K])   
3.) fabs_ion_dust (Ionizing radiation fraction absorbed by dust): No dimensions
4.) fabs_ion_dust (Hydrogen ionizing radiation escape fraction): No dimensions  
5.) logU_inner (ionization parameter at the inner edge of the model): No dimensions 
6.) logU_stromgren (ionization parameter at the Stromgren radius): No dimensions  
7.) minAge (Minimum age out of all clusters irradiating the gas, same as overall evolutionary age if only one generation
 of clusters is present): Reported in Myr
8.) mSh (mass of the gas in shell, equal to the cloud mass minus all clusters if shell has completely swept the Cloud, 
lower if shell is embedded in the birth cloud): Reported as log10(value/[Msun])
9.) nGens (total number of stellar cluster generations in the system): No dimensions, note since this is an interpolator,
 non integer values will show-up at non sampled locations of the parameter-space.
10.) nIn (gas density in particles per cm3 at the inner edge of the shell, this serves as the initial condition to Cloudy,
 does not represent the entire shell structure): Reported as log10(value/[particles/cm3])
11.) Q_H (Total Hydrogen ionizing photons hitting the cloud at the inner edge): Reported as log10(value/[s-1])
12.) qPAH (Mass weighted PAH to dust fraction, PAH only present in neutral Hydrogen, neither in HII gas nor in H_2): 
Reported as log(q_PAH)
13.) rIn (Inner radius of the shell): Reported as log(value/[pc])
14.) tevo (Max evolution time, less than 30 Myr if shell dissolved earlier): Reported as log10(value/[Myr]) 
15.) vSh  (shell velocity): Reported as value/[km/s]
            

Download

Line Luminosities

Selected line luminosities from our models. The line luminosities with "emergent=False" in the name do not include foreground attenuation. These are intrinsic line luminosities in Cloudy parlance. See Cloudy documentation Hazy for more details, in particular, Sec. 2.10 (Line intensities in a dusty cloud) in Hazy 2. The line luminosities are given as log10(value/[erg/s]) and the interpolators are used in the same way as the secondary variables above.

Download