Source code for GUIBRUSHR.Retrieval.ModelCalculation.Classes.Retrieval

"""
Retrieval class for astronomical data processing and model calculations.

This module contains the Retrieval class which handles the initialization
and configuration of retrieval parameters for astronomical observations.
"""


[docs] class Retrieval: """ A class to handle retrieval parameters and configuration for astronomical data processing. This class manages various parameters related to atmospheric retrieval models, including chemistry settings, temperature formatting, telluric removal methods, and output configurations. """
[docs] def __init__( self, scale, chemistry=None, ecc_opi=None, tell_rm_method=None, model_reprocessing=None, format_temperature=None, table_output_file=None, maxsteps=None, order_sel=None, id_process=None, path_results=None, retrieval_model=None, manual_model_obj=None, total_nights=0, total_hr_instruments=0, standardize_PCA="From pkl", mask_phase_enabled=False, mask_night_index=None, min_phase=None, max_phase=None, mask_inside_range=False, transit_limit_mode="T14" ): """ Initialize the Retrieval object with configuration parameters. Args: scale: Scale vector parameters for the retrieval process chemistry: Chemistry configuration for atmospheric modeling ecc_opi: Eccentricity and orbital parameters information tell_rm_method: Method for telluric removal model_reprocessing: Model reprocessing configuration format_temperature: Temperature formatting settings table_output_file: Output file path for tabulated results maxsteps: Maximum number of steps for the retrieval algorithm order_sel: Order selection parameters id_process: Process identifier path_results: Path where results will be stored retrieval_model: The retrieval model to be used manual_model_obj: Manual model object containing pre-configured parameters standardize_PCA: PCA standardization mode (default: "From pkl") total_nights: Total number of observation nights (default: 0) total_hr_instruments: Total number of HR instruments used (default: 0) mask_phase_enabled: Flag indicating whether to apply a mask to the phase data (default: False) mask_night_index: Index of the night to be masked (default: None) min_phase: Minimum phase value to be masked (default: None) max_phase: Maximum phase value to be masked (default: None) mask_inside_range: Flag indicating whether to mask data inside the specified phase range (default: False) """ # If a manual model object is provided, extract all parameters from it # This allows for easy parameter transfer from existing model configurations if manual_model_obj is not None: model_reprocessing = manual_model_obj.model_reprocessing standardize_PCA = manual_model_obj.standardize_PCA format_temperature = manual_model_obj.format_temperature chemistry = manual_model_obj.chemistry ecc_opi = manual_model_obj.ecc_opi tell_rm_method = manual_model_obj.tell_rm_method table_output_file = manual_model_obj.table_output_file order_sel = manual_model_obj.order_sel maxsteps = manual_model_obj.maxsteps id_process = manual_model_obj.id_process path_results = manual_model_obj.path_results retrieval_model = manual_model_obj.retrieval_model # Assign all parameters to instance variables # Model processing and formatting settings self.model_reprocessing = model_reprocessing self.standardize_PCA = standardize_PCA self.format_temperature = format_temperature # Atmospheric and orbital parameters self.chemistry = chemistry self.eccentricity = ecc_opi # Note: renamed from ecc_opi for clarity # Processing methods and configurations self.tell_rm_method = tell_rm_method self.table_output_file = table_output_file self.scale_vector_params = scale self.order_sel = order_sel # Algorithm and process control parameters self.maxsteps = maxsteps self.id_process = id_process # Output and model settings self.path_results = path_results self.retrieval_model = retrieval_model # Observation statistics self.total_nights = total_nights self.total_hr_instruments = total_hr_instruments self.mask_phase_enabled = mask_phase_enabled self.mask_night_index = mask_night_index self.min_phase = min_phase self.max_phase = max_phase self.mask_inside_range = mask_inside_range self.transit_limit_mode = transit_limit_mode