pycontrails.ModelParams¶
- class pycontrails.ModelParams(copy_source=True, interpolation_method='linear', interpolation_bounds_error=False, interpolation_fill_value=nan, interpolation_localize=False, interpolation_use_indices=False, interpolation_q_method=None, verify_met=True, downselect_met=True, met_longitude_buffer=(0.0, 0.0), met_latitude_buffer=(0.0, 0.0), met_level_buffer=(0.0, 0.0), met_time_buffer=(np.timedelta64(0, 'h'), np.timedelta64(0, 'h')))¶
Bases:
objectClass for constructing model parameters.
Implementing classes must still use the
@dataclassoperator.- __init__(copy_source=True, interpolation_method='linear', interpolation_bounds_error=False, interpolation_fill_value=nan, interpolation_localize=False, interpolation_use_indices=False, interpolation_q_method=None, verify_met=True, downselect_met=True, met_longitude_buffer=(0.0, 0.0), met_latitude_buffer=(0.0, 0.0), met_level_buffer=(0.0, 0.0), met_time_buffer=(np.timedelta64(0, 'h'), np.timedelta64(0, 'h')))¶
Methods
Attributes
Copy input
sourcedata on evalDownselect input
MetDataset`to region aroundsource.If True, points lying outside interpolation will raise an error
Used for outside interpolation value if
interpolation_bounds_erroris FalseExperimental.
Interpolation method.
Experimental.
Experimental.
Met latitude buffer for input to
Flight.downselect_met(), in WGS84 coordinates.Met level buffer for input to
Flight.downselect_met(), in [\(hPa\)].Met longitude buffer for input to
Flight.downselect_met(), in WGS84 coordinates.Met time buffer for input to
Flight.downselect_met()Only applies whendownselect_metis True.Call
_verify_met()on model instantiation.- as_dict()¶
Convert object to dictionary.
We use this method instead of dataclasses.asdict to use a shallow/unrecursive copy. This will return values as Any instead of dict.
- Returns:
dict[str,Any]– Dictionary version of self.
- copy_source = True¶
Copy input
sourcedata on eval
- downselect_met = True¶
Downselect input
MetDataset`to region aroundsource.
- interpolation_bounds_error = False¶
If True, points lying outside interpolation will raise an error
- interpolation_fill_value = nan¶
Used for outside interpolation value if
interpolation_bounds_erroris False
- interpolation_localize = False¶
Experimental. See
pycontrails.core.interpolation.
- interpolation_method = 'linear'¶
Interpolation method. Supported methods include “linear”, “nearest”, “slinear”, “cubic”, and “quintic”. See
scipy.interpolate.RegularGridInterpolatorfor the description of each method. Not all methods are supported by all met grids. For example, the “cubic” method requires at least 4 points per dimension.
- interpolation_q_method = None¶
Experimental. Alternative interpolation method to account for specific humidity lapse rate bias. Must be one of
None,"cubic-spline", or"log-q-log-p". IfNone, no special interpolation is used for specific humidity. The"cubic-spline"method applies a custom stretching of the met interpolation table to account for the specific humidity lapse rate bias. The"log-q-log-p"method interpolates in the log of specific humidity and pressure, then converts back to specific humidity. Only used by models calling tointerpolate_met().
- interpolation_use_indices = False¶
Experimental. See
pycontrails.core.interpolation.
- met_latitude_buffer = (0.0, 0.0)¶
Met latitude buffer for input to
Flight.downselect_met(), in WGS84 coordinates. Only applies whendownselect_metis True.
- met_level_buffer = (0.0, 0.0)¶
Met level buffer for input to
Flight.downselect_met(), in [\(hPa\)]. Only applies whendownselect_metis True.
- met_longitude_buffer = (0.0, 0.0)¶
Met longitude buffer for input to
Flight.downselect_met(), in WGS84 coordinates. Only applies whendownselect_metis True.
- met_time_buffer = (np.timedelta64(0,'h'), np.timedelta64(0,'h'))¶
Met time buffer for input to
Flight.downselect_met()Only applies whendownselect_metis True.
- verify_met = True¶
Call
_verify_met()on model instantiation.