nenupy.io.tf_utils.TFPipelineParameters
- class nenupy.io.tf_utils.TFPipelineParameters(*parameters)[source]
Bases:
objectClass to handle the parameters used for the pipeline processing of the NenuFAR time-frequency data.
Examples
>>> from nenupy.io.tf_utils import TFPipelineParameters, _ValueParameter, _BooleanParameter >>> parameters = TFPipelineParameters( _ValueParameter( name="param_1", default=1., param_type=float, min_val=0.1, max_val=2.0 ), _BooleanParameter( name="param_2", default=True ) )
Parameters can be set, an error is sent if the value is outside the pre-defined range:
>>> parameters["param_1"] = 1.5 >>> parameters["param_1"] 1.5 >>> parameters["param_1"] = 3 ERROR: param_1's value (3.0) is greater than the max_val 2.0!
See also
- __init__(*parameters)[source]
Generate an instance of
TFPipelineParameters.- Parameters:
*parameters (
nenupy.io.tf_utils._TFParameter) – Parameter description.
Methods
__init__(*parameters)Generate an instance of
TFPipelineParameters.copy()Copy the
TFPipelineParametersinstance.info()Display information on each parameter and its current value.
reset()Reset all parameters to their original values.
set_default(time_min, time_max, freq_min, ...)Set the parameters to their default values.
- copy()[source]
Copy the
TFPipelineParametersinstance.- Returns:
The copy.
- Return type:
- info()[source]
Display information on each parameter and its current value.
- Returns:
The info message.
- Return type:
Example
>>> print(parameters.info()) param_1: 1.0 param_2: True
- reset()[source]
Reset all parameters to their original values.
Example
>>> print(parameters.info()) param_1: 1.0 param_2: True >>> parameters["param_1"] = 1.5 >>> print(parameters.info()) param_1: 1.5 param_2: True >>> parameters.reset() >>> print(parameters.info()) param_1: 1.0 param_2: True
- classmethod set_default(time_min, time_max, freq_min, freq_max, beams, channels, dt, df)[source]
Set the parameters to their default values. It auto generates every instance of
nenupy.io.tf_utils._TFParameterfor each available default parameter. Some informations are required in ordedr to put limits to these parameter values.- Parameters:
time_min (
Time) – Minimal time that can be set to either'tmin'or'tmax'.time_max (
Time) – Maximal time that can be set to either'tmin'or'tmax'.freq_min (
Quantity) – Minimal frequency that can be set to either'fmin'or'fmax'.freq_max (
Quantity) – Maximal frequency that can be set to either'fmin'or'fmax'.beams (
list) – List of available beam indices.channels (
int) – Number of channels per subband.dt (
Quantity) – Time resolution.df (
Quantity) – Frequency resolution.
- Returns:
Default parameters.
- Return type:
Example
>>> from nenupy.io.tf_utils import TFPipelineParameters >>> import astropy.units as u >>> from astropy.time import Time >>> default_params = TFPipelineParameters.set_default( time_min=Time("2024-01-01 12:00:00"), time_max=Time("2024-01-01 13:30:00"), freq_min=20*u.MHz, freq_max=80*u.MHz, beams=[0, 1], channels=32, dt=84 * u.ms, df=6 * u.kHz, ) >>> print(default_params.info()) channels: 32 dt: 84.0 ms df: 6.0 kHz tmin: 2024-01-01 12:00:00.000 tmax: 2024-01-01 13:30:00.000 fmin: 20.0 MHz fmax: 80.0 MHz beam: 0 dispersion_measure: None rotation_measure: None rebin_dt: None rebin_df: None remove_channels: None skycoord: None calib_dt: None dreambeam_parallactic: True stokes: I ignore_volume_warning: False overwrite: False smooth_frequency_profile: False