Python API

class pyzsf.ZSFUnsteady(sal_lock, head_lock, **parameters: float)

Bases: object

A class to calculate a lock in phase-wise fashion.

property state: Dict[str, float]

Get the state of the lock, see also zsf_phase_state_t.

Note that this is a read-only property, and any changes made to the dictionary returned by this property do not persist.

step_flush_doors_closed(t_flushing: float, **parameters: float) Dict[str, float]

Open the door on sea side. See also zsf_step_flush_doors_closed() .

Parameters:
  • t_flushing – Duration of flushing is open in seconds.

  • parameters – Any parameters that should be changed before performing this step. Note that these changes persist.

Returns:

The salt and water transports in this phase. See also zsf_phase_transports_t.

step_phase_1(t_level, **parameters: float) Dict[str, float]

Level the lock to lake side. See also zsf_step_phase_1() .

Parameters:
  • t_level – Duration of the leveling in seconds.

  • parameters – Any parameters that should be changed before performing this step. Note that these changes persist.

Returns:

The salt and water transports in this phase. See also zsf_phase_transports_t.

step_phase_2(t_open_lake: float, **parameters: float) Dict[str, float]

Open the door on lake side. See also zsf_step_phase_2() .

Parameters:
  • t_open_lake – Duration the door is open in seconds.

  • parameters – Any parameters that should be changed before performing this step. Note that these changes persist.

Returns:

The salt and water transports in this phase. See also zsf_phase_transports_t.

step_phase_3(t_level, **parameters: float) Dict[str, float]

Level the lock to sea side. See also zsf_step_phase_3() .

Parameters:
  • t_level – Duration of the leveling in seconds.

  • parameters – Any parameters that should be changed before performing this step. Note that these changes persist.

Returns:

The salt and water transports in this phase. See also zsf_phase_transports_t.

step_phase_4(t_open_sea: float, **parameters: float) Dict[str, float]

Open the door on sea side. See also zsf_step_phase_4() .

Parameters:
  • t_open_sea – Duration the door is open in seconds.

  • parameters – Any parameters that should be changed before performing this step. Note that these changes persist.

Returns:

The salt and water transports in this phase. See also zsf_phase_transports_t.

pyzsf.zsf_calc_steady(auxiliary_results: bool = False, **parameters: float) Dict[str, float]

Calculate the salt intrusion for a set of parameters, assuming steady operation.

Parameters:
  • auxiliary_results – Whether or not to calculate and output auxiliary results. See zsf_aux_results_t.

  • kwargs – Any parameters that should be changed versus the default. See also zsf_param_t for an overview of the parameters.

Returns:

A dictionary containing the cycle averaged salt fluxes and discharges (see zsf_results_t). Also outputs values in zsf_aux_results_t if auxiliary_results is True.