Source code for smash.solver._mwd_parameters

"""
Module mwd_parameters


Defined at smash/solver/derived_type/mwd_parameters.f90 lines 48-165

This module `mwd_parameters` encapsulates all SMASH parameters.
This module is wrapped and differentiated.

ParametersDT type:

</> Public
======================== =======================================
`Variables`              Description
======================== =======================================
``ci`` GR interception parameter [mm] (default: 1) ]0, +Inf[
``cp`` GR production parameter [mm] (default: 200) ]0, +Inf[
``beta`` GR percolation parameter [-] (default: 1000) ]0, +Inf[
``cft`` GR fast transfer parameter [mm] (default: 500) ]0, +Inf[
``cst`` GR slow transfer parameter [mm] (default: 500) ]0, +Inf[
``alpha`` GR transfer partitioning parameter [-] (default: 0.9) ]0, 1[
``exc`` GR exchange parameter [mm/dt] (default: 0) ]-Inf, +Inf[

``b`` VIC infiltration parameter [-] (default: 0.3) ]0, +Inf[
``cusl1`` VIC upper soil layer 1 capacity [mm] (default: 100) ]0, +Inf[
``cusl2`` VIC upper soil layer 2 capacity [mm] (default: 500) ]0, +Inf[
``clsl`` VIC lower soil layer capacity [mm] (default: 2000) ]0, +Inf[
``ks`` VIC sat. hydraulic conductivity [mm/dt] (default: 20) ]0, +Inf[
``ds`` VIC baseflow ds parameter [-] (default: 0.02) ]0, 1[
``dsm`` VIC baseflow max discharge [mm/dt] (default: 0.33) ]0, +Inf[
``ws`` VIC baseflow linear threshold [-] (default: 0.8) ]0, 1[

``lr`` Linear routing parameter [min] (default: 5) ]0, +Inf[
======================== =======================================

Hyper_ParametersDT type:

It contains same Parameters variables(see above)

contains

[1]  ParametersDT_initialise
[2]  Hyper_ParametersDT_initialise
[3]  parameters_to_matrix
[4]  matrix_to_parameters
[5]  vector_to_parameters
[6]  set0_parameters
[7]  set1_parameters
[8]  hyper_parameters_to_matrix
[10] matrix_to_hyper_parameters
[11] set0_hyper_parameters
[12] set1_hyper_parameters
[13] hyper_parameters_to_parameters
"""
from __future__ import print_function, absolute_import, division
from smash.solver._mw_derived_type_copy import copy_parameters
from smash.solver._f90wrap_decorator import char_array_getter_handler, char_array_setter_handler
from smash.solver._f90wrap_decorator import char_getter_handler
from smash.solver._f90wrap_decorator import getter_index_handler, setter_index_handler
from smash.solver import _solver
import f90wrap.runtime
import logging
import numpy

_arrays = {}
_objs = {}

[docs]@f90wrap.runtime.register_class("solver.ParametersDT") class ParametersDT(f90wrap.runtime.FortranDerivedType): """ Type(name=parametersdt) Defined at smash/solver/derived_type/mwd_parameters.f90 lines 54-76 Notes ----- ParametersDT Derived Type. """ def __init__(self, mesh, handle=None): """ self = Parametersdt(mesh) Defined at smash/solver/derived_type/mwd_parameters.f90 lines 103-141 Parameters ---------- mesh : Meshdt Returns ------- this : Parametersdt Notes ----- ParametersDT initialisation subroutine. only: sp, GNP only: SetupDT only: MeshDT only: Input_DataDT """ f90wrap.runtime.FortranDerivedType.__init__(self) result = _solver.f90wrap_parametersdt_initialise(mesh=mesh._handle) self._handle = result[0] if isinstance(result, tuple) else result def __del__(self): """ Destructor for class Parametersdt Defined at smash/solver/derived_type/mwd_parameters.f90 lines 54-76 Parameters ---------- this : Parametersdt Object to be destructed Automatically generated destructor for parametersdt """ if self._alloc: try: _solver.f90wrap_parametersdt_finalise(this=self._handle) except: pass def copy(self): return copy_parameters(self) @property def ci(self): """ Element ci ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 59 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__ci(self._handle) if array_handle in self._arrays: ci = self._arrays[array_handle] else: ci = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__ci) self._arrays[array_handle] = ci return ci @ci.setter def ci(self, ci): self.ci[...] = ci @property def cp(self): """ Element cp ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 60 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__cp(self._handle) if array_handle in self._arrays: cp = self._arrays[array_handle] else: cp = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__cp) self._arrays[array_handle] = cp return cp @cp.setter def cp(self, cp): self.cp[...] = cp @property def beta(self): """ Element beta ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 61 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__beta(self._handle) if array_handle in self._arrays: beta = self._arrays[array_handle] else: beta = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__beta) self._arrays[array_handle] = beta return beta @beta.setter def beta(self, beta): self.beta[...] = beta @property def cft(self): """ Element cft ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 62 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__cft(self._handle) if array_handle in self._arrays: cft = self._arrays[array_handle] else: cft = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__cft) self._arrays[array_handle] = cft return cft @cft.setter def cft(self, cft): self.cft[...] = cft @property def cst(self): """ Element cst ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 63 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__cst(self._handle) if array_handle in self._arrays: cst = self._arrays[array_handle] else: cst = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__cst) self._arrays[array_handle] = cst return cst @cst.setter def cst(self, cst): self.cst[...] = cst @property def alpha(self): """ Element alpha ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 64 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__alpha(self._handle) if array_handle in self._arrays: alpha = self._arrays[array_handle] else: alpha = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__alpha) self._arrays[array_handle] = alpha return alpha @alpha.setter def alpha(self, alpha): self.alpha[...] = alpha @property def exc(self): """ Element exc ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 65 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__exc(self._handle) if array_handle in self._arrays: exc = self._arrays[array_handle] else: exc = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__exc) self._arrays[array_handle] = exc return exc @exc.setter def exc(self, exc): self.exc[...] = exc @property def b(self): """ Element b ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 67 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__b(self._handle) if array_handle in self._arrays: b = self._arrays[array_handle] else: b = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__b) self._arrays[array_handle] = b return b @b.setter def b(self, b): self.b[...] = b @property def cusl1(self): """ Element cusl1 ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 68 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__cusl1(self._handle) if array_handle in self._arrays: cusl1 = self._arrays[array_handle] else: cusl1 = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__cusl1) self._arrays[array_handle] = cusl1 return cusl1 @cusl1.setter def cusl1(self, cusl1): self.cusl1[...] = cusl1 @property def cusl2(self): """ Element cusl2 ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 69 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__cusl2(self._handle) if array_handle in self._arrays: cusl2 = self._arrays[array_handle] else: cusl2 = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__cusl2) self._arrays[array_handle] = cusl2 return cusl2 @cusl2.setter def cusl2(self, cusl2): self.cusl2[...] = cusl2 @property def clsl(self): """ Element clsl ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 70 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__clsl(self._handle) if array_handle in self._arrays: clsl = self._arrays[array_handle] else: clsl = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__clsl) self._arrays[array_handle] = clsl return clsl @clsl.setter def clsl(self, clsl): self.clsl[...] = clsl @property def ks(self): """ Element ks ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 71 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__ks(self._handle) if array_handle in self._arrays: ks = self._arrays[array_handle] else: ks = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__ks) self._arrays[array_handle] = ks return ks @ks.setter def ks(self, ks): self.ks[...] = ks @property def ds(self): """ Element ds ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 72 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__ds(self._handle) if array_handle in self._arrays: ds = self._arrays[array_handle] else: ds = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__ds) self._arrays[array_handle] = ds return ds @ds.setter def ds(self, ds): self.ds[...] = ds @property def dsm(self): """ Element dsm ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 73 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__dsm(self._handle) if array_handle in self._arrays: dsm = self._arrays[array_handle] else: dsm = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__dsm) self._arrays[array_handle] = dsm return dsm @dsm.setter def dsm(self, dsm): self.dsm[...] = dsm @property def ws(self): """ Element ws ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 74 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__ws(self._handle) if array_handle in self._arrays: ws = self._arrays[array_handle] else: ws = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__ws) self._arrays[array_handle] = ws return ws @ws.setter def ws(self, ws): self.ws[...] = ws @property def lr(self): """ Element lr ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 76 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_parametersdt__array__lr(self._handle) if array_handle in self._arrays: lr = self._arrays[array_handle] else: lr = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_parametersdt__array__lr) self._arrays[array_handle] = lr return lr @lr.setter def lr(self, lr): self.lr[...] = lr def __str__(self): ret = ['<parametersdt>{\n'] ret.append(' ci : ') ret.append(repr(self.ci)) ret.append(',\n cp : ') ret.append(repr(self.cp)) ret.append(',\n beta : ') ret.append(repr(self.beta)) ret.append(',\n cft : ') ret.append(repr(self.cft)) ret.append(',\n cst : ') ret.append(repr(self.cst)) ret.append(',\n alpha : ') ret.append(repr(self.alpha)) ret.append(',\n exc : ') ret.append(repr(self.exc)) ret.append(',\n b : ') ret.append(repr(self.b)) ret.append(',\n cusl1 : ') ret.append(repr(self.cusl1)) ret.append(',\n cusl2 : ') ret.append(repr(self.cusl2)) ret.append(',\n clsl : ') ret.append(repr(self.clsl)) ret.append(',\n ks : ') ret.append(repr(self.ks)) ret.append(',\n ds : ') ret.append(repr(self.ds)) ret.append(',\n dsm : ') ret.append(repr(self.dsm)) ret.append(',\n ws : ') ret.append(repr(self.ws)) ret.append(',\n lr : ') ret.append(repr(self.lr)) ret.append('}') return ''.join(ret) _dt_array_initialisers = []
@f90wrap.runtime.register_class("solver.Hyper_ParametersDT") class Hyper_ParametersDT(f90wrap.runtime.FortranDerivedType): """ Type(name=hyper_parametersdt) Defined at smash/solver/derived_type/mwd_parameters.f90 lines 78-100 Notes ----- Hyper_ParametersDT Derived Type. """ def __init__(self, setup, handle=None): """ self = Hyper_Parametersdt(setup) Defined at smash/solver/derived_type/mwd_parameters.f90 lines 143-165 Parameters ---------- setup : Setupdt Returns ------- this : Hyper_Parametersdt Notes ----- Hyper_ParametersDT initialisation subroutine. """ f90wrap.runtime.FortranDerivedType.__init__(self) result = _solver.f90wrap_hyper_parametersdt_initialise(setup=setup._handle) self._handle = result[0] if isinstance(result, tuple) else result def __del__(self): """ Destructor for class Hyper_Parametersdt Defined at smash/solver/derived_type/mwd_parameters.f90 lines 78-100 Parameters ---------- this : Hyper_Parametersdt Object to be destructed Automatically generated destructor for hyper_parametersdt """ if self._alloc: try: _solver.f90wrap_hyper_parametersdt_finalise(this=self._handle) except: pass @property def ci(self): """ Element ci ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 83 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__ci(self._handle) if array_handle in self._arrays: ci = self._arrays[array_handle] else: ci = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__ci) self._arrays[array_handle] = ci return ci @ci.setter def ci(self, ci): self.ci[...] = ci @property def cp(self): """ Element cp ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 84 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__cp(self._handle) if array_handle in self._arrays: cp = self._arrays[array_handle] else: cp = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__cp) self._arrays[array_handle] = cp return cp @cp.setter def cp(self, cp): self.cp[...] = cp @property def beta(self): """ Element beta ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 85 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__beta(self._handle) if array_handle in self._arrays: beta = self._arrays[array_handle] else: beta = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__beta) self._arrays[array_handle] = beta return beta @beta.setter def beta(self, beta): self.beta[...] = beta @property def cft(self): """ Element cft ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 86 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__cft(self._handle) if array_handle in self._arrays: cft = self._arrays[array_handle] else: cft = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__cft) self._arrays[array_handle] = cft return cft @cft.setter def cft(self, cft): self.cft[...] = cft @property def cst(self): """ Element cst ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 87 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__cst(self._handle) if array_handle in self._arrays: cst = self._arrays[array_handle] else: cst = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__cst) self._arrays[array_handle] = cst return cst @cst.setter def cst(self, cst): self.cst[...] = cst @property def alpha(self): """ Element alpha ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 88 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__alpha(self._handle) if array_handle in self._arrays: alpha = self._arrays[array_handle] else: alpha = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__alpha) self._arrays[array_handle] = alpha return alpha @alpha.setter def alpha(self, alpha): self.alpha[...] = alpha @property def exc(self): """ Element exc ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 89 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__exc(self._handle) if array_handle in self._arrays: exc = self._arrays[array_handle] else: exc = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__exc) self._arrays[array_handle] = exc return exc @exc.setter def exc(self, exc): self.exc[...] = exc @property def b(self): """ Element b ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 91 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__b(self._handle) if array_handle in self._arrays: b = self._arrays[array_handle] else: b = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__b) self._arrays[array_handle] = b return b @b.setter def b(self, b): self.b[...] = b @property def cusl1(self): """ Element cusl1 ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 92 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__cusl1(self._handle) if array_handle in self._arrays: cusl1 = self._arrays[array_handle] else: cusl1 = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__cusl1) self._arrays[array_handle] = cusl1 return cusl1 @cusl1.setter def cusl1(self, cusl1): self.cusl1[...] = cusl1 @property def cusl2(self): """ Element cusl2 ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 93 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__cusl2(self._handle) if array_handle in self._arrays: cusl2 = self._arrays[array_handle] else: cusl2 = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__cusl2) self._arrays[array_handle] = cusl2 return cusl2 @cusl2.setter def cusl2(self, cusl2): self.cusl2[...] = cusl2 @property def clsl(self): """ Element clsl ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 94 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__clsl(self._handle) if array_handle in self._arrays: clsl = self._arrays[array_handle] else: clsl = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__clsl) self._arrays[array_handle] = clsl return clsl @clsl.setter def clsl(self, clsl): self.clsl[...] = clsl @property def ks(self): """ Element ks ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 95 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__ks(self._handle) if array_handle in self._arrays: ks = self._arrays[array_handle] else: ks = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__ks) self._arrays[array_handle] = ks return ks @ks.setter def ks(self, ks): self.ks[...] = ks @property def ds(self): """ Element ds ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 96 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__ds(self._handle) if array_handle in self._arrays: ds = self._arrays[array_handle] else: ds = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__ds) self._arrays[array_handle] = ds return ds @ds.setter def ds(self, ds): self.ds[...] = ds @property def dsm(self): """ Element dsm ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 97 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__dsm(self._handle) if array_handle in self._arrays: dsm = self._arrays[array_handle] else: dsm = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__dsm) self._arrays[array_handle] = dsm return dsm @dsm.setter def dsm(self, dsm): self.dsm[...] = dsm @property def ws(self): """ Element ws ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 98 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__ws(self._handle) if array_handle in self._arrays: ws = self._arrays[array_handle] else: ws = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__ws) self._arrays[array_handle] = ws return ws @ws.setter def ws(self, ws): self.ws[...] = ws @property def lr(self): """ Element lr ftype=real(sp) pytype=float Defined at smash/solver/derived_type/mwd_parameters.f90 line 100 """ array_ndim, array_type, array_shape, array_handle = \ _solver.f90wrap_hyper_parametersdt__array__lr(self._handle) if array_handle in self._arrays: lr = self._arrays[array_handle] else: lr = f90wrap.runtime.get_array(f90wrap.runtime.sizeof_fortran_t, self._handle, _solver.f90wrap_hyper_parametersdt__array__lr) self._arrays[array_handle] = lr return lr @lr.setter def lr(self, lr): self.lr[...] = lr def __str__(self): ret = ['<hyper_parametersdt>{\n'] ret.append(' ci : ') ret.append(repr(self.ci)) ret.append(',\n cp : ') ret.append(repr(self.cp)) ret.append(',\n beta : ') ret.append(repr(self.beta)) ret.append(',\n cft : ') ret.append(repr(self.cft)) ret.append(',\n cst : ') ret.append(repr(self.cst)) ret.append(',\n alpha : ') ret.append(repr(self.alpha)) ret.append(',\n exc : ') ret.append(repr(self.exc)) ret.append(',\n b : ') ret.append(repr(self.b)) ret.append(',\n cusl1 : ') ret.append(repr(self.cusl1)) ret.append(',\n cusl2 : ') ret.append(repr(self.cusl2)) ret.append(',\n clsl : ') ret.append(repr(self.clsl)) ret.append(',\n ks : ') ret.append(repr(self.ks)) ret.append(',\n ds : ') ret.append(repr(self.ds)) ret.append(',\n dsm : ') ret.append(repr(self.dsm)) ret.append(',\n ws : ') ret.append(repr(self.ws)) ret.append(',\n lr : ') ret.append(repr(self.lr)) ret.append('}') return ''.join(ret) _dt_array_initialisers = [] _array_initialisers = [] _dt_array_initialisers = [] try: for func in _array_initialisers: func() except ValueError: logging.debug('unallocated array(s) detected on import of module \ "mwd_parameters".') for func in _dt_array_initialisers: func()