The Masks & Models Module
- sculptor.masksmodels.constant(x, amp)
Constant model
- Parameters
x (np.ndarray) – Dispersion
amp (float) – Amplitude of the constant model
- Returns
Constant model
- Return type
np.ndarray
- sculptor.masksmodels.gaussian(x, amp, cen, sigma, shift)
Basic Gaussian line model
The Gaussian is not normalized.
- Parameters
x (np.ndarray) – Dispersion
amp (float) – Amplitude of the Gaussian
cen (float) – Central dispersion of the Gaussian
sigma (float) – Width of the Gaussian in sigma
shift (float) – Shift of the Gaussian in dispersion units
- Returns
Gaussian line model
- Return type
np.ndarray
- sculptor.masksmodels.lorentzian(x, amp, cen, gamma, shift)
Basic Lorentzian line model
- Parameters
x (np.ndarray) – Dispersion
amp (float) – Amplitude of the Lorentzian
cen (float) – Central dispersion of the Lorentzian
gamma – Lorentzian Gamma parameter
shift (float) – Shift of the Lorentzian in dispersion units
- Returns
Gaussian line model
- Return type
np.ndarray
- sculptor.masksmodels.mask_presets = {'My mask': {'mask_ranges': [[1265, 1290], [1340, 1375], [1425, 1470], [1680, 1705], [1905, 2050]], 'name': 'My mask', 'rest_frame': True}, 'QSO Cont.W. VP06': {'mask_ranges': [[1265, 1290], [1340, 1375], [1425, 1470], [1680, 1705], [1950, 2050]], 'name': 'QSO Cont. VP06', 'rest_frame': True}, 'QSO Continuum+FeII': {'mask_ranges': [[1350, 1360], [1445, 1465], [1690, 1705], [2480, 2650], [2925, 3090], [4200, 4230], [4435, 4700], [5100, 5535], [6000, 6250], [6800, 7000]], 'name': 'QSO Continuum+FeII', 'rest_frame': True}, 'QSO Fe+Cont.W. CIV Shen11': {'mask_ranges': [[1445, 1465], [1700, 1705]], 'name': 'QSO Cont. CIV Shen11', 'rest_frame': True}, 'QSO Fe+Cont.W. HAlpha Shen11': {'mask_ranges': [[6000, 6250], [6800, 7000]], 'name': 'QSO Cont. HAlpha Shen11', 'rest_frame': True}, 'QSO Fe+Cont.W. HBeta Shen11': {'mask_ranges': [[4435, 4700], [5100, 5535]], 'name': 'QSO Cont. HBeta Shen11', 'rest_frame': True}, 'QSO Fe+Cont.W. MgII Shen11': {'mask_ranges': [[2200, 2700], [2900, 3090]], 'name': 'QSO Cont. MgII Shen11', 'rest_frame': True}}
Automatic import of extensions into Sculptor
- sculptor.masksmodels.model_func_dict = {'CIII_complex_model_func': <function CIII_complex_model_func>, 'constant': <function constant>, 'gaussian': <function gaussian>, 'line_model_gaussian': <function line_model_gaussian>, 'line_model_gaussian_nii_doublet': <function line_model_gaussian_nii_doublet>, 'line_model_gaussian_oiii_doublet': <function line_model_gaussian_oiii_doublet>, 'line_model_gaussian_sii_doublet': <function line_model_gaussian_sii_doublet>, 'lorentzian': <function lorentzian>, 'my_model': <function my_model>, 'power_law': <function power_law>, 'power_law_at_2500': <function power_law_at_2500>, 'power_law_at_2500_plus_bc': <function power_law_at_2500_plus_bc>, 'power_law_at_2500_plus_fractional_bc': <function power_law_at_2500_plus_fractional_bc>, 'template_model': <function template_model>}
Dictionary of model setup function names
- Type
dict
- sculptor.masksmodels.model_func_list = ['Constant (amp)', 'Power Law (amp, slope)', 'Gaussian (amp, cen, sigma, shift)', 'Lorentzian (amp, cen, gamma, shift)', 'Power Law (2500A)', 'Power Law (2500A) + BC', 'Power Law (2500A) + BC (fractional)', 'Line model Gaussian', 'SiIV (2G components)', 'CIV (2G components)', 'MgII (2G components)', 'HBeta (2G components)', 'HAlpha (2G components)', '[OIII] doublet (2G)', '[NII] doublet (2G)', '[SII] doublet (2G)', 'CIII] complex (3G components)', 'FeII template 2200-3500 (T06, cont)', 'FeII template 2200-3500 (T06, split)', 'FeII template 3700-7480 (BG92, cont)', 'FeII template 3700-5600 (BG92, split)', 'My Model']
Dictionary of model functions
- Type
dict
- sculptor.masksmodels.model_setup_list = [<function setup_constant>, <function setup_power_law>, <function setup_gaussian>, <function setup_lorentzian>, <function setup_power_law_at_2500>, <function setup_power_law_at_2500_plus_bc>, <function setup_power_law_at_2500_plus_fractional_bc>, <function setup_line_model_gaussian>, <function setup_line_model_SiIV_2G>, <function setup_line_model_CIV_2G>, <function setup_line_model_MgII_2G>, <function setup_line_model_Hbeta_2G>, <function setup_line_model_Halpha_2G>, <function setup_doublet_line_model_oiii>, <function setup_doublet_line_model_nii>, <function setup_doublet_line_model_sii>, <function setup_line_model_CIII_complex>, <function setup_iron_template_MgII_T06>, <function setup_split_iron_template_MgII_T06>, <function setup_iron_template_OPT_BG92>, <function setup_split_iron_template_OPT_BG92>, <function setup_my_model>]
Dictionary of mask presets
- Type
dict
- sculptor.masksmodels.power_law(x, amp, slope)
- Parameters
x (np.ndarray) – Dispersion
amp (float) – Amplitude of the power law
slope (float) – Slope of the power law
- Returns
Power law model
- Return type
np.ndarray
- sculptor.masksmodels.setup_constant(prefix, **kwargs)
Set up a simple constant function model.
- Parameters
prefix (string) – Model prefix
kwargs – Keyword arguments
- Returns
LMFIT model and parameters
- Return type
(lmfit.Model, lmfit.Parameters)
- sculptor.masksmodels.setup_gaussian(prefix, **kwargs)
Set up a simple non-normalized Gaussian function model.
- Parameters
prefix (string) – Model prefix
kwargs – Keyword arguments
- Returns
LMFIT model and parameters
- Return type
(lmfit.Model, lmfit.Parameters)
- sculptor.masksmodels.setup_lorentzian(prefix, **kwargs)
Set up a simple Lorentzian function model.
- Parameters
prefix (string) – Model prefix
kwargs – Keyword arguments
- Returns
LMFIT model and parameters
- Return type
(lmfit.Model, lmfit.Parameters)
- sculptor.masksmodels.setup_power_law(prefix, **kwargs)
Set up a simple power law model.
- Parameters
prefix (string) – Model prefix
kwargs – Keyword arguments
- Returns
LMFIT model and parameters
- Return type
(lmfit.Model, lmfit.Parameters)