Note

Please report issues with this page on the GitHub page.

supy.run_supy

supy.run_supy(df_forcing: pandas.core.frame.DataFrame, df_state_init: pandas.core.frame.DataFrame, save_state=False, n_yr=10, logging_level=20, check_input=False, serial_mode=False) → Tuple[pandas.core.frame.DataFrame, pandas.core.frame.DataFrame][source]

Perform supy simulation.

Parameters:
  • df_forcing (pandas.DataFrame) – forcing data for all grids in df_state_init.
  • df_state_init (pandas.DataFrame) – initial model states; or a collection of model states with multiple timestamps, whose last temporal record will be used as the initial model states.
  • save_state (bool, optional) – flag for saving model states at each time step, which can be useful in diagnosing model runtime performance or performing a restart run. (the default is False, which instructs supy not to save runtime model states).
  • n_yr (int, optional) – chunk size (n_yr years) to split simulation periods so memory usage can be reduced. (the default is 10, which implies 10-year forcing chunks used in simulations).
  • logging_level (logging level) – one of these values [50 (CRITICAL), 40 (ERROR), 30 (WARNING), 20 (INFO), 10 (DEBUG)]. A lower value informs SuPy for more verbose logging info.
  • check_input (bool, optional) –
    flag for checking validity of input: df_forcing and df_state_init.
    If set to True, any detected invalid input will stop SuPy simulation; a False flag will bypass such validation and may incur kernel error if any invalid input. Note: such checking procedure may take some time if the input is large. (the default is False, which bypasses the validation).
    serial_mode : bool, optional
    If set to True, SuPy simulation will be conducted in serial mode; a False flag will try parallel simulation if possible (Windows not supported, i.e., always serial). (the default is False).
Returns:

df_output, df_state_final

Return type:

Tuple[pandas.DataFrame, pandas.DataFrame]

Examples

>>> df_output, df_state_final = supy.run_supy(df_forcing, df_state_init)