src.spyice.preprocess.pre_process#

This module handles preprocessing of input data for the sea ice model. It sets up:

  • User configuration and input data.

  • Geometry and grid settings.

  • Initial and boundary conditions.

  • Enthalpy calculations (solid and bulk).

  • Ice thickness initialization.

Classes#

PreprocessData#

class PreprocessData#

Data class representing preprocessing status.

Variables:

is_preprocessing (bool) – Flag indicating whether preprocessing is enabled. Defaults to True.

PreProcess#

class PreProcess(UserInput, GeometrySettings, ResultsParams)#

Main class for preprocessing input data before simulation.

Initialization:

__init__(self, constants_type, config_data, output_dir)#

Initialize preprocessing with constants, geometry, and results parameters.

Parameters:
  • constants_type (str) – Type of constants (“real” or other).

  • config_data (ConfigData) – Configuration data object.

  • output_dir (str) – Output directory.

Returns:

None

Methods#

preprocess#

preprocess(self)#

Perform preprocessing steps:

  • Sets up iteration time tracking.

  • Initializes temperature, salinity, liquid fraction, and velocity arrays.

  • Computes solid and total enthalpy.

  • Initializes ice thickness.

Returns:

None

get_variables#

classmethod get_variables(cls, config, out_dir_final: Path | str) tuple[PreprocessData, UserInput]#

Retrieve variables and user input data after preprocessing.

Parameters:
  • cls – Class object.

  • config – Configuration object.

  • out_dir_final – Output directory.

Returns:

Tuple containing the dataclass with filtered variables and a UserInput object.

get_userinput#

get_userinput(self) UserInput#

Returns a UserInput object containing core input attributes such as constants, grid timestep, initial salinity, output directory, and maximum iterations.

Returns:

UserInput object

set_dataclass#

static set_dataclass(data_to_be_converted: dict, dataclass: dataclass) dataclass#

Sets attributes of a dataclass object using a dictionary of values.

Parameters:
  • data_to_be_converted (dict) – Dictionary of attributes to set.

  • dataclass (dataclass) – Dataclass object to update.

Returns:

Updated dataclass object

Functions#

set_up_iter#

set_up_iter(iter_max, grid_timestep_dt)#

Compute and print iteration setup for the simulation.

Parameters:
  • iter_max (int) – Maximum number of iterations.

  • grid_timestep_dt (float) – Time step for the grid.

Returns:

0 (placeholder return value)