Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/NorESMhub/BLOM
Bergen Layered Ocean Model
https://github.com/NorESMhub/BLOM
Last synced: 3 months ago
JSON representation
Bergen Layered Ocean Model
- Host: GitHub
- URL: https://github.com/NorESMhub/BLOM
- Owner: NorESMhub
- License: lgpl-3.0
- Created: 2020-02-04T16:32:04.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2024-06-03T06:52:40.000Z (5 months ago)
- Last Synced: 2024-06-11T16:53:19.991Z (5 months ago)
- Language: Fortran
- Size: 3.48 MB
- Stars: 16
- Watchers: 14
- Forks: 25
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: COPYING
Awesome Lists containing this project
- open-sustainable-technology - Bergen Layered Ocean Model - Employs an isopycnic vertical coordinate, with near-isopycnic interior layers and variable density layers in the surface mixed boundary layer. (Hydrosphere / Ocean Models)
README
# BLOM: Bergen Layered Ocean Model
This is the source code of BLOM and includes the ocean biogeochemistry
model iHAMOCC. BLOM is the ocean component of the Norwegian Earth System
Model ().## BLOM documentation
Since BLOM is mainly used in connection with the NorESM system, the BLOM user documetation has been integrated
into the general NorESM documentation on ReadTheDocs ().
- [Running OMIP-type experiments](https://noresm-docs.readthedocs.io/en/latest/configurations/omips.html#blom)
- [BLOM model description](https://noresm-docs.readthedocs.io/en/latest/model-description/ocn_model.html)
- [iHAMOCC model description](https://noresm-docs.readthedocs.io/en/latest/model-description/ocn_model.html)The [BLOM wiki](https://github.com/NorESMhub/BLOM/wiki) contains information about
BLOM-specific topics that is not considered relevant for the general NorESM documentation:
- working with the BLOM git repository on gitHub
- running BLOM/iHAMOCC stand-alone test cases
- details about model structure### Building a stand-alone BLOM executable with meson
When compiling BLOM with NorESM, the NorESM build system should be used. A stand-alone
BLOM executable can be built by using the meson build system.
To build the code ensure that [`Meson`](https://mesonbuild.com/) is available.
The following will build the default version of BLOM _without_ `MPI`.```bash
$ meson setup builddir --buildtype=debugoptimized
$ meson compile -C builddir
```The executable `blom` file will then be stored in the `./builddir` directory.
See the [BLOM/iHAMOCC stand-alone](https://github.com/NorESMhub/BLOM/wiki/Run-BLOM-iHAMOCC-stand-alone)
wiki page for further instructions on how to configure the meson build system.### Running tests
After successfully building the code it can be a good idea to test that the code
behaves as expected and changes to the code does not affect the output.Tests can be run with the following:
```bash
$ meson test -C builddir
```The previous command will run all the test suites defined for BLOM. To run tests
quicker one can select a few tests to run or just a single test suite. To list
the available tests run `meson test -C builddir --list`. One can then run a
single test with:```bash
$ meson test -C builddir "run single_column"
```## Contribute to BLOM/iHAMOCC development
The [CONTRIBUTING.md](CONTRIBUTING.md) file includes instructions on how to contribute
to the BLOM/iHAMOCC model system. The [BLOM wiki](https://github.com/NorESMhub/BLOM/wiki)
includes more detailed instructions on how to work with the BLOM git repository with your
own fork on gitHub.## License
BLOM is licensed under the GNU Lesser General Public License - see the
[COPYING](COPYING) and [COPYING.LESSER](COPYING.LESSER) files for
details.