Skip to content

Commit

Permalink
solve merging conflict
Browse files Browse the repository at this point in the history
  • Loading branch information
patrickscholz committed Sep 12, 2023
2 parents f7b7dcd + 5a4ee3f commit 6c364b2
Show file tree
Hide file tree
Showing 22 changed files with 1,351 additions and 706 deletions.
3 changes: 2 additions & 1 deletion config/namelist.dyn
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ visc_gamma1 = 0.1 ! [nodim], for computation of the flow aware viscosity
visc_gamma2 = 0.285 ! [s/m], is only used in easy backscatter option
visc_easybsreturn= 1.5

opt_visc = 5
opt_visc = 5
check_opt_visc=.true. ! check if optvisc=5 is valid based on ratio resol/rossbyR
! 5=Kinematic (easy) Backscatter
! 6=Biharmonic flow aware (viscosity depends on velocity Laplacian)
! 7=Biharmonic flow aware (viscosity depends on velocity differences)
Expand Down
10 changes: 5 additions & 5 deletions docs/getting_started/getting_started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This chapter describes several ways of getting started with FESOM2. First we sho
TL;DR version for supported HPC systems
=======================================

Supported systems are: generic ``ubuntu``, ``ollie`` at AWI, ``mistral`` at DKRZ, ``JURECA`` at JSC, ``HLRN``, ``Hazel Hen``, ``Marinostrum 4`` at BSC. During configuration the system will be recognised and apropriate environment variables and compiler options should be used.
Supported systems are: generic ``ubuntu``, ``ollie`` at AWI, ``mistral`` at DKRZ, ``JURECA`` at JSC, ``HLRN``, ``Hazel Hen``, ``MareNostrum 4`` at BSC. During configuration the system will be recognised and apropriate environment variables and compiler options should be used.
::

git clone https://github.com/FESOM/fesom2.git
Expand Down Expand Up @@ -47,7 +47,7 @@ Clone the GitHub repository with a git command:
git clone https://github.com/FESOM/fesom2.git


The repository contains model code and two additional libraries: `Metis` (domain partitioner) and `Parms` (solver), necessary to run FESOM2. To build FESOM2 executable one have to compile Parms library and the code of the model (`src` folder). In order to build executable that is used for model domain partitioning (distribution of the model mesh between CPUs) one have to compile `Metis` library and also some code located in the src directory (see :ref:`partitioning`). Building of the model executable and the partitioner is usually done automatically with the use of CMake. If you going to build the code not on one of the supported platforms (ollie, DKRZ, HLRN, and HAZELHEN, general Ubuntu), you might need to do some (usually small) modifications described in `Adding new platform for compilation`_ section.
The repository contains model code and two additional libraries: `Metis` (domain partitioner) and `Parms` (solver), necessary to run FESOM2. To build FESOM2 executable one have to compile Parms library and the code of the model (`src` folder). In order to build executable that is used for model domain partitioning (distribution of the model mesh between CPUs) one have to compile `Metis` library and also some code located in the src directory (see :ref:`partitioning`). Building of the model executable and the partitioner is usually done automatically with the use of CMake. If you going to build the code not on one of the supported platforms (ollie, DKRZ, HLRN, HAZELHEN, and BSC, general Ubuntu), you might need to do some (usually small) modifications described in `Adding new platform for compilation`_ section.

Change to the `fesom2` folder and execute:

Expand All @@ -57,7 +57,7 @@ Change to the `fesom2` folder and execute:

In the best case scenario, your platform will be recognized and the Parms library and model executable will be built and copied to the bin directory. If something went wrong have a look at Troubleshooting_ section.

If you would like to select platform manually (which is nessesary in the case of Ubuntu, for eample), type:
If you would like to select platform manually (which is necessary in the case of Ubuntu, for example), type:

::

Expand All @@ -67,7 +67,7 @@ If you would like to select platform manually (which is nessesary in the case of
Data and mesh files
-------------------

The FESOM2 repository contains only very small example meshes and data (in the ``test`` directory, see the note below). However, if you want to run realistic simulations, you ether have to have them on your system, or download an archive with sample data. THere is a chance that your system already have some of the necesseary files, you can check it in the ``setups/paths.yml`` file. If not, the easiest way to start is to download example set from `DKRZ cloud`_ (12 Gb) by executing:
The FESOM2 repository contains only very small example meshes and data (in the ``test`` directory, see the note below). However, if you want to run realistic simulations, you ether have to have them on your system, or download an archive with sample data. There is a chance that your system already has some of the necesseary files, you can check it in the ``setups/paths.yml`` file. If not, the easiest way to start is to download example set from `DKRZ cloud`_ (12 Gb) by executing:

::

Expand Down Expand Up @@ -100,7 +100,7 @@ You have to do several basic things in order to prepare the run. First, create a

mkdir results

you might make a link to some other directory located on the part of the system where you have a lot of storage. In the results directory, you have to create ``fesom.clock`` file (NOTE, if you change ``runid`` in ``namelist.config`` to something like ``runid=mygreatrun``, the file will be named ``mygreatrun.clock``). Inside the file you have to put two identical lines:
You might make a link to some other directory located on the part of the system where you have a lot of storage. In the results directory, you have to create ``fesom.clock`` file (NOTE, if you change ``runid`` in ``namelist.config`` to something like ``runid=mygreatrun``, the file will be named ``mygreatrun.clock``). Inside the file you have to put two identical lines:

::

Expand Down
9 changes: 9 additions & 0 deletions docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,15 @@
FESOM2 documentation
====================

The Finite volumE Sea Ice-Ocean Model (FESOM2).

Multi-resolution ocean general circulation model that solves
the equations of motion describing the ocean and sea ice using
finite-volume methods on unstructured computational grids. The
model is developed and supported by researchers at the Alfred
Wegener Institute, Helmholtz Centre for Polar and Marine
Research (AWI), in Bremerhaven, Germany.

Authors
-------

Expand Down
1 change: 1 addition & 0 deletions src/MOD_DYN.F90
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@ MODULE MOD_DYN
! 6=Biharmonic flow aware (viscosity depends on velocity Laplacian)
! 7=Biharmonic flow aware (viscosity depends on velocity differences)
! 8=Dynamic Backscatter
logical :: check_opt_visc= .true.
integer :: opt_visc = 5

! gamma0 [m/s], backgroung viscosity= gamma0*len, it should be as small
Expand Down
5 changes: 3 additions & 2 deletions src/MOD_PARTIT.F90
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@ module MOD_PARTIT
integer :: eDim_nod2D
integer, allocatable, dimension(:) :: myList_nod2D

integer :: myDim_elem2D
integer :: myDim_elem2D, myDim_elem2D_shrinked
integer :: eDim_elem2D
integer :: eXDim_elem2D
integer, allocatable, dimension(:) :: myList_elem2D
integer, allocatable, dimension(:) :: myList_elem2D, myInd_elem2D_shrinked

integer :: myDim_edge2D
integer :: eDim_edge2D
Expand All @@ -75,6 +75,7 @@ module MOD_PARTIT
integer, allocatable :: s_mpitype_nod3D(:,:,:), r_mpitype_nod3D(:,:,:)

integer :: MPIERR

!!! remPtr_* are constructed during the runtime and shall not be dumped!!!
integer, allocatable :: remPtr_nod2D(:), remList_nod2D(:)
integer, allocatable :: remPtr_elem2D(:), remList_elem2D(:)
Expand Down
Loading

0 comments on commit 6c364b2

Please sign in to comment.