pycontrails.models.accf.ACCFParams

class pycontrails.models.accf.ACCFParams(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')), lat_bound=None, lon_bound=None, efficacy=True, efficacy_option='lee_2021', accf_v='V1.0', ch4_scaling=1.0, co2_scaling=1.0, cont_scaling=1.0, h2o_scaling=1.0, o3_scaling=1.0, forecast_step=None, sep_ri_rw=False, climate_indicator='ATR', horizontal_resolution=None, emission_scenario='pulse', time_horizon=20, pfca='PCFA-ISSR', merged=True, issr_rhi_threshold=0.9, issr_temp_threshold=235, sac_ei_h2o=1.25, sac_q=43000000.0, sac_eta=0.3, nox_ei='TTV', PMO=False, unit_K_per_kg_fuel=False)

Bases: ModelParams

Default ACCF model parameters.

See config-user.yml definition at https://github.com/dlr-pa/climaccf

__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')), lat_bound=None, lon_bound=None, efficacy=True, efficacy_option='lee_2021', accf_v='V1.0', ch4_scaling=1.0, co2_scaling=1.0, cont_scaling=1.0, h2o_scaling=1.0, o3_scaling=1.0, forecast_step=None, sep_ri_rw=False, climate_indicator='ATR', horizontal_resolution=None, emission_scenario='pulse', time_horizon=20, pfca='PCFA-ISSR', merged=True, issr_rhi_threshold=0.9, issr_temp_threshold=235, sac_ei_h2o=1.25, sac_q=43000000.0, sac_eta=0.3, nox_ei='TTV', PMO=False, unit_K_per_kg_fuel=False)

Methods

__init__([copy_source, ...])

as_dict()

Convert object to dictionary.

Attributes

PMO

accf_v

ch4_scaling

climate_indicator

co2_scaling

cont_scaling

copy_source

Copy input source data on eval

downselect_met

Downselect input MetDataset` to region around source.

efficacy

efficacy_option

emission_scenario

forecast_step

h2o_scaling

horizontal_resolution

The horizontal resolution of the meteorological data in degrees.

interpolation_bounds_error

If True, points lying outside interpolation will raise an error

interpolation_fill_value

Used for outside interpolation value if interpolation_bounds_error is False

interpolation_localize

Experimental.

interpolation_method

Interpolation method.

interpolation_q_method

Experimental.

interpolation_use_indices

Experimental.

issr_rhi_threshold

RHI Threshold

issr_temp_threshold

lat_bound

lon_bound

merged

met_latitude_buffer

Met latitude buffer for input to Flight.downselect_met(), in WGS84 coordinates.

met_level_buffer

Met level buffer for input to Flight.downselect_met(), in [hPa].

met_longitude_buffer

Met longitude buffer for input to Flight.downselect_met(), in WGS84 coordinates.

met_time_buffer

Met time buffer for input to Flight.downselect_met() Only applies when downselect_met is True.

nox_ei

o3_scaling

pfca

sac_ei_h2o

sac_eta

sac_q

sep_ri_rw

time_horizon

unit_K_per_kg_fuel

verify_met

Call _verify_met() on model instantiation.

PMO = False
accf_v = 'V1.0'
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.

ch4_scaling = 1.0
climate_indicator = 'ATR'
co2_scaling = 1.0
cont_scaling = 1.0
copy_source = True

Copy input source data on eval

downselect_met = True

Downselect input MetDataset` to region around source.

efficacy = True
efficacy_option = 'lee_2021'
emission_scenario = 'pulse'
forecast_step = None
h2o_scaling = 1.0
horizontal_resolution = None

The horizontal resolution of the meteorological data in degrees. If None, it will be inferred from the met dataset for MetDataset source, otherwise it will be set to 0.5.

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_error is 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.RegularGridInterpolator for 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". If None, 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 to interpolate_met().

interpolation_use_indices = False

Experimental. See pycontrails.core.interpolation.

issr_rhi_threshold = 0.9

RHI Threshold

issr_temp_threshold = 235
lat_bound = None
lon_bound = None
merged = True
met_latitude_buffer = (0.0, 0.0)

Met latitude buffer for input to Flight.downselect_met(), in WGS84 coordinates. Only applies when downselect_met is True.

met_level_buffer = (0.0, 0.0)

Met level buffer for input to Flight.downselect_met(), in [hPa]. Only applies when downselect_met is True.

met_longitude_buffer = (0.0, 0.0)

Met longitude buffer for input to Flight.downselect_met(), in WGS84 coordinates. Only applies when downselect_met is True.

met_time_buffer = (np.timedelta64(0,'h'), np.timedelta64(0,'h'))

Met time buffer for input to Flight.downselect_met() Only applies when downselect_met is True.

nox_ei = 'TTV'
o3_scaling = 1.0
pfca = 'PCFA-ISSR'
sac_ei_h2o = 1.25
sac_eta = 0.3
sac_q = 43000000.0
sep_ri_rw = False
time_horizon = 20
unit_K_per_kg_fuel = False
verify_met = True

Call _verify_met() on model instantiation.