Skip to content
/ UGrid Public

Deltares library for reading/writing UGrid compliant files

License

Notifications You must be signed in to change notification settings

Deltares/UGrid

Repository files navigation

UGrid

Deltares library for reading/writing UGrid files. The UGrid entities available in this library are: Network1d, Mesh1d, Mesh2d and Contacts.

The library also offers APIs for:

  • Getting simulation results defined on specific entity locations (data variables).
  • Getting the topological entities attributes names and values, to facilitate the use of UGrid with Python xarray.

Network1d, Mesh1d, and Contacts concern Deltares extensions to UGrid, which will be submitted to the UGrid community.

For more information about UGrid conventions:

https://ugrid-conventions.github.io/ugrid-conventions/

Build

The requirements are:

  • CMake 3.19 or higher
  • A C++17 compatible compiler
  • The Boost libraries
  • Git
  • Doxygen (optional)

On windows precompiled boost binaries (with MSVC compiler) can be downloaded here:

https://sourceforge.net/projects/boost/files/boost-binaries/

Once installed, modify boost environmental variables accordingly. For example:

BOOST_INCLUDEDIR=C:\Apps\boost_1_74_0
BOOST_LIBRARYDIR=C:\Apps\boost_1_74_0\lib64-msvc-14.2

IDE

To use an IDE, such as Visual Studio:

cmake -S . -B xbuild -G"Visual Studio 16 2019"
cmake --open xbuild

Command line

To configure:

cmake -S . -B build

To build:

cmake --build build

To build docs (requires Doxygen, output in build/docs/html):

cmake --build build --target docs