rompy.swan.components.numerics.PROP#

pydantic model rompy.swan.components.numerics.PROP[source]#

Propagation scheme.

PROP BSTB|GSE

Notes

  • The scheme defaults to S&L and SORDUP for nonstationary and stationary simulations if not specified.

  • All schemes (BSBT, SORDUP and S&L) can be used in combination with curvilinear grids. With the higher order schemes (S&L and SORDUP) it is important to use a gradually varying grid otherwise there may be a severe loss of accuracy. If sharp transitions in the grid cannot be avoided it is safer to use the BSBT scheme.

  • In the computation with unstructured meshes, a lowest order upwind scheme will be employed. This scheme is very robust but rather diffusive. This may only be significant for the case when swell waves propagate over relative large distances (in the order of thousands of kilometers) within the model domain. However and most fortunately, in such a case this will alleviate the garden-sprinkler effect.

  • Alleviating the garden-sprinkler effect by adding some diffusion makes the SWAN computation conditionally stable. You can either use (i) a smaller time step, (ii) a lower value of waveage, (iii) better resolution in the directional space, or (iv) worse resolution in the geographic space, in order of preference, to make the model stable when necessary.

Examples

In [9]: from rompy.swan.components.numerics import PROP

In [10]: prop = PROP()

In [11]: print(prop.render())
PROP

In [12]: prop = PROP(scheme=dict(model_type="bsbt"))

In [13]: print(prop.render())
PROP BSBT

In [14]: prop = PROP(
   ....:     scheme=dict(
   ....:         model_type="gse",
   ....:         waveage=dict(delt="PT5H", dfmt="hr"),
   ....:     ),
   ....: )
   ....: 

In [15]: print(prop.render())
PROP GSE waveage=5.0 HR
Fields:
field model_type: Literal['prop', 'PROP'] = 'prop'#

Model type discriminator

field scheme: BSBT | GSE | None = None#

Propagation scheme, by default S&L for nonstationary and SORDUP for stationary computation.

cmd() str[source]#

Command file string for this component.