pywatershed.base.Budget#
- class pywatershed.base.Budget(control, inputs, outputs, storage_changes, exchanges=None, init_accumulations=None, accum_start_time=None, units=None, time_unit='D', description=None, rtol=1e-05, atol=1e-05, basis='unit', imbalance_fatal=False, ignore_nans=False, unit_desc='', verbose=True)[source]#
Budget class for mass and energy conservation.
Currently no energy budget has been implmenented, todo.
- __init__(control, inputs, outputs, storage_changes, exchanges=None, init_accumulations=None, accum_start_time=None, units=None, time_unit='D', description=None, rtol=1e-05, atol=1e-05, basis='unit', imbalance_fatal=False, ignore_nans=False, unit_desc='', verbose=True)[source]#
Methods
__init__(control, inputs, outputs, ...[, ...])advance()Advance time (taken from storageUnit)
Accumulate for the timestep.
from_storage_unit(storage_unit[, quantity])get_components([has_exchanges])Return a tuple of the metadata keys used by Budget.
init_component(data)- rtype:
initialize_netcdf(params, output_dir[, ...])Initialize NetCDF output
output()Output to previously initialized output types.
set(data)Set the data on the components after initialization :type data:
dict:param data: a dict of dicts with top level optional keys: :param [inputs: :param outputs: :param storage_changes].: :param Each of those is a dict with var: np.ndarray, eg.Attributes
- property accumulations#
- property balance#
- property components#
- property exchanges_sum#
- initialize_netcdf(params, output_dir, extra_coords=None, write_sum_vars=True, write_individual_vars=False)[source]#
Initialize NetCDF output
- property inputs_sum#
- property outputs_sum#
- set(data)[source]#
Set the data on the components after initialization :type data:
dict:param data: a dict of dicts with top level optional keys: :param [inputs: :param outputs: :param storage_changes].: :param Each of those is a dict with var: np.ndarray, eg. :param data = {‘inputs’: {‘var’: np.ndarray}}
- property storage_changes_sum#
- property terms#