Skip to content

Structure

Main modules

pyposeidon is designed to be modular so that users can use any available functionality independently. The following table lists the available modules alongside a short description:

module functionality
model A top level function (see model) that defines the model's characteristics, sets up logging and most notably, provides a read() option for reproducing an existing model by parsing a json file that stores all used settings.
boundary This module (see boundary) handles mesh boundary extraction from coastlines or user provided shapefiles. It underpins the Mesh module.
d3d The wrapper of the delft3d solver is defined within a single file (see d3d)
schism The wrapper of the schism solver (see schism).
mesh This is the module that handles the generation or incorporation of a given mesh (see mesh). It includes support for two mesh generators, Jigsaw and GMSH.
mjigsaw Although jigsaw now provides a python API this module precedes that and instead wraps around the C++ binary (see mjigsaw).
mgmsh This handles the integration of both the binary and python bindings of the gmsh mesh generator (see mgmsh).
dem This is the module that handles the pre-processing of bathymetric/topographic data (see dem). It utilizes xarray to read and pyresample to interpolate on mesh points. In addition, it has the ability to match coastlines to bathymetry.
meteo A number of atmospheric data could be required for a geoflow simulation. These data could be in a variety of formats (netcdf, grib, geotiff, etc.). The meteo module uses xarray to read them into a dataset. This includes combining multiple files into a single dataset in terms of the time reference variable (see meteo).
tide This module handles the tidal configuration. Under development.

utils

The utils subpackage which provides a number of supporting functions that are used by the main modules above and that could also provide additional functionality on a stand-alone way.

accessor functionality
pplot xarray accessor providing visualisations of schism's unstructured mesh based on matplolib.
hplot xarray accessor providing visualisations of schism's unstructured mesh based on holoviews.
mplot xarray accessor providing visualisations of schism's unstructured mesh based on mayavi.
seam Global mesh modifications so that it can be viewed in 2D without distortions.
cast Hindcast or re-forecasting procedure.