emc2.core.model.DHARMA

class emc2.core.model.DHARMA(file_path, time_range=None, time_dim='dom_col', single_pi_class=True, load_processed=False, bounding_box=None)[source]

This loads a DHARMA simulation with all of the necessary parameters for EMC^2 to run.

Parameters:
file_path: str

Path to a ModelE simulation.

time_range: tuple or None

Start and end time to include. If this is None, the entire simulation will be included.

time_dim: str

name of time dimension.

single_pi_class: bool

If True, using a single precipitating ice class (pi). If False, using two precipitation ice classes (pi - snow and pir - rimed ice - both using the same LUTs).

load_processed: bool

If True, treating the ‘file_path’ variable as an EMC2-processed dataset; thus skipping appended string removal and dimension stacking, which are typically part of pre-processing.

bounding_box: None or 4-tuple

If not None, then a tuple representing the bounding box (x_min, y_min, x_max, y_max).

__init__(file_path, time_range=None, time_dim='dom_col', single_pi_class=True, load_processed=False, bounding_box=None)[source]

This loads a DHARMA simulation with all of the necessary parameters for EMC^2 to run.

Parameters:
file_path: str

Path to a ModelE simulation.

time_range: tuple or None

Start and end time to include. If this is None, the entire simulation will be included.

time_dim: str

name of time dimension.

single_pi_class: bool

If True, using a single precipitating ice class (pi). If False, using two precipitation ice classes (pi - snow and pir - rimed ice - both using the same LUTs).

load_processed: bool

If True, treating the ‘file_path’ variable as an EMC2-processed dataset; thus skipping appended string removal and dimension stacking, which are typically part of pre-processing.

bounding_box: None or 4-tuple

If not None, then a tuple representing the bounding box (x_min, y_min, x_max, y_max).

Methods

__init__(file_path[, time_range, time_dim, ...])

This loads a DHARMA simulation with all of the necessary parameters for EMC^2 to run.

check_and_stack_time_lat_lon([...])

Stack the time dim together with the lat and lon dims (if the lat and/or lon dims are longer than 1) to enable EMC^2 processing of regional model output.

finalize_subcol_fields([more_fieldnames])

Remove all zero values from subcolumn output fields enabling better visualization.

load_subcolumns_from_netcdf(file_name)

Load all of the subcolumn data from a previously saved netCDF file.

permute_dims_for_processing([base_order, ...])

Reorder dims for consistent processing such that the order is: subcolumn x time x height.

remove_appended_str([all_appended_in_lat])

Remove appended strings from xr.Dataset coords and fieldnames based on lat/lon coord names (typically required when using post-processed output data files).

remove_subcol_fields([cloud_class])

Remove all subcolumn output fields for the given cloud class to save memory (mainly releveant for CESM and E3SM).

set_hyd_types(hyd_types)

subcolumns_to_netcdf(file_name)

Saves all of the simulated subcolumn parameters to a netCDF file.

unstack_time_lat_lon([order_dim, ...])

Unstack the time, lat, and lon dims if they were previously stacked together (self.stacked_time_dim is not None).

Attributes

hydrometeor_classes

The list of hydrometeor classes.

num_hydrometeor_classes

The number of hydrometeor classes used

num_subcolumns

Gets the number of subcolumns in the model.