Recent Releases of FESOM2

FESOM2 - 2.6.8

What's Changed

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.7.1...2.6.8

Cryosphere - Sea Ice - Fortran
Published by JanStreffing about 2 months ago

FESOM2 - 2.5.0.7_de

Long term support for DestinE project.

Full Changelog: https://github.com/FESOM/fesom2/compare/2.5.0.6_de...2.5.0.7_de

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 3 months ago

FESOM2 - 2.5.0.6_de

Long term support patch for DestinE project.

What's Changed

Full Changelog: https://github.com/FESOM/fesom2/compare/2.5.0.5_de...2.5.0.6_de

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 3 months ago

FESOM2 - 2.6.7

What's Changed

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.6...2.6.7

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 3 months ago

FESOM2 - 2.6.6

What's Changed

New Contributors

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.5.1...2.6.6

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 3 months ago

FESOM2 - 2.6.5.1

What's Changed

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.5...2.6.5.1

Cryosphere - Sea Ice - Fortran
Published by sebastianbeyer 3 months ago

FESOM2 - 2.6.5

What's Changed

New Contributors

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.4...2.6.5

Cryosphere - Sea Ice - Fortran
Published by sebastianbeyer 3 months ago

FESOM2 - 2.6.4

What's Changed

New Contributors

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.3...2.6.4

Cryosphere - Sea Ice - Fortran
Published by sebastianbeyer 5 months ago

FESOM2 - 2.6.3

What's Changed

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.2...2.6.3

Cryosphere - Sea Ice - Fortran
Published by sebastianbeyer 5 months ago

FESOM2 - 2.6.2

What's Changed

Full Changelog: https://github.com/FESOM/fesom2/compare/2.6.1...2.6.2

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 5 months ago

FESOM2 - 2.6.1

https://github.com/FESOM/fesom2/pull/640 Hot fix that solves MPI library compile error under certain preprocessor flags. Otherwise idential to 2.6

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 7 months ago

FESOM2 - 2.6

Main Changes:

New diagnostics

Complete list of changes
Milestone 2.6

Cryosphere - Sea Ice - Fortran
Published by JanStreffing 7 months ago

FESOM2 - 2.5.0.5_de

What's Changed

New Contributors

Full Changelog: https://github.com/FESOM/fesom2/compare/2.5.0.4_de...2.5.0.5_de

Cryosphere - Sea Ice - Fortran
Published by koldunovn 11 months ago

FESOM2 - 2.5.0.4_de

Full Changelog: https://github.com/FESOM/fesom2/compare/2.5.0.2_de...2.5.0.4_de

Add MareNostrum 5 support.

Cryosphere - Sea Ice - Fortran
Published by koldunovn 12 months ago

FESOM2 - 2.5.0.1_de

DestinE version 2.5.0.1_de

The _de indicates it's DestinE specific release.

What's Changed

New Contributors

Full Changelog: https://github.com/FESOM/fesom2/compare/AWI-CM3_v3.2...2.5.0.1_de

Cryosphere - Sea Ice - Fortran
Published by koldunovn over 1 year ago

FESOM2 - AWI-CM3_v3.2

Version of FESOM2 that was used for AWI-CM3.2

Includes all changes from FESOM 2.1, FESOM 2.1.1 and FESOM 2.5.

In addition using this release FESOM2 is capable of writing grid corner points for OASIS, provided the mesh has no bad coastal nodes. #432 #450

Cryosphere - Sea Ice - Fortran
Published by JanStreffing over 1 year ago

FESOM2 - FESOM2.5

Main changes

  • Complete refactoring of the code in order to implement modular structure. Now variables are wrapped in derived types. For tracers [#167, #185 ], dynamics [ #214, #219, #228, ], ice [#251, ]

  • Add OpenMP support [#196, #217 , #220, #222, #226, #227, #232, #233, #235, #236, #241, #242, #244, #246, #247, #256, #269, #293, #346, #406], with binary reproducibility #357

  • Implementation of binary restarts and parallel reading of restarts #260, #265, #296

  • Add capability to easilly extract dwarfs (computational kernels) from the code, so that they can be optimised separatelly (#297, #302, #303, #304, #367)

  • Energy diagnostic #416, #417

Improvements for coupling with atmospheric models

  • Multiple fixes for AWI-CM3 #352, #374
  • FESOM main split in three parts (as required for IFS coupling) #195
  • Add a switch to build FESOM as library (for IFS coupling) #207 #229, #231
  • Implement IFS interface #224, #238, #239, #327
  • IFS coupling related changes #321, #324, #331, #332, #429, #433
  • Send ocean variables to IFS to output them on atmospheric grid #435
  • Big IFS related update #388, that includes:
    • coupling of surface ocean currents (took nodal velocities instead of velocities on elements)
    • optimization of coupling interface (packing of fields, p2p instead of alltoallv) following what was done for NEMO4
    • extra diagnostics are available on IFS grid (MLD, ave T 300m, ave S 300m, 20C isotherm, etc) and thus in GRIB output
    • reduced standard I/O output in single-executable runs

Compiler and HPC support

  • nvfortran compiler support #266, #290, #291, #317, #328, #329, #376
  • Use consistent target attribute (for Cray compiler) #198
  • Compiles with OpenMP with cray compiler #200
  • Add Levante support #338, #358, #365, #394
  • Add LUMI support #387, #412, #406
  • Add albedo support #391, #392, #400, #419

New features

  • Automatic rotation for vector fields, no need or rotation in postprocessing #301, #335
  • Allow topography to be read on elements and nodes #359
  • Support for driving FESOM with the windstress (instead of the wind speed -> bulk formulas) from reanalysis #366
  • Add MLD3 with cmor compliant density threshold of 0.03 kg/m³ #383
  • Chlorophyll climatology can be used instead of constant value. Shall be activated through namelist #339
  • Add Langmuir Parameterisation for TKE, update IDEMIX parameter #340
  • Transposed 3D output files via preprocessor definition #193
  • add the output of density class thickness to the DMOC diagnostic for the proper remapping to zcoordinates #372
  • Additional IO output for upper levels for nextGEMS #436

Improvements for High resolution simulations

  • Brunt-Vaisala frequency is smoothed spatially before it is given to the mixing schemes. This damps some mode which is expressed as a grid noise in the modelled fields (mainly at the equator) #287
  • Smoothing Bv in vertical is necessary in order to avoid vertival noise in Kv/Av #385
  • Fix bug, when visc_gamma0, visc_gamma1 & visc_gamma2 were used instead gamma0_tra, gamma1_tra & gamma2_tra in diff_part_bh #276
  • Multiple bugs fixed in biharmonic tracer diffusion, that allow better results for high resolution simulations #277, #282
  • Bug fix in pressure_bv (depth computatiopn for pressure contribution) #320

Bug fixes

  • Multiple TKE+IDEMIX fixes #351
  • fix bug with reading runoff and SSS #177
  • Remove last occurence of execute_command_line function, was failing too often #318
  • Fix KPP bug related to sw_pene #237
  • Bug fix in update_atm_forcing. press_air array was accessed even if not allocated. #248
  • CFLMAX was not initialized in vert_vel_ale #253
  • Fixed treatment of sw_pene in cvmix_KPP #330
  • Fixed depth sign in the parameterisation of Langmuir circulations (LC in TKE) #353
  • zisotherm computation improved #401
  • diag_densMOC assumed that GM is used. An IF condition was introduced #410
  • Multiple bugfixes for cavity #390
  • Make sure that the restart works from zstar towrads linfs #375

Documentation

  • Includes the formerly separate documentation repository directly along with the source code #344

Cryosphere - Sea Ice - Fortran
Published by koldunovn about 2 years ago

FESOM2 - AWI-CM3 version 3.1

Version of FESOM2 that was used for AWI-CM3.1

Cryosphere - Sea Ice - Fortran
Published by JanStreffing almost 3 years ago

FESOM2 - AWI-CM3 version 3.0 (Streffing et al. 2022)

Version of FESOM2.0 that was used for https://doi.org/10.5194/gmd-15-6399-2022
AWI-CM3 coupled climate model: Description and evaluation experiments for a prototype post-CMIP6 model

Cryosphere - Sea Ice - Fortran
Published by JanStreffing about 3 years ago

FESOM2 - FESOM2.1.1

This release is the last one, where the global results with default values will be bit reproducible with release 2.1.0 (4979513).

Main changes

  • Be able to call the FESOM executable with options for testing it without running a simulation (i.e. a minimal dry-run) #121
  • Print information about the currently used MPI library at FESOM startup #122
  • Fix mesh.diag files, so xraay can understand them #126 and add lon lat to the output #152
  • Multiple fixes for KPP #128
  • Fix bugs in the zstar volume conservation of the soufflet channel experiment (channel results changed) #131
  • Several fixes for cavity #132 #135 #149
  • Fix problem with FESOM2.0 reproducability bias on ollie #146
  • Fix severe with uninitialized copies of variables #147
  • Several fixes for AWI-CM3 #154 , #156
  • Add NCEP reanalysis as one of the possible forcings #155
  • Ignore the error message from reading the restart if the variable is not in the file #159

Cryosphere - Sea Ice - Fortran
Published by koldunovn over 3 years ago

FESOM2 - FESOM2.1

Changes in development

Major changes

  • Parallel and asynchronous output writing (#14).
  • Added Icepack sea ice thermodynamics (Zampieri et al., 2021) #70
  • Added backscatter parameterisation (Juricke et al., 2019) #64
  • Initial version of cavities #48, and its improvement #110
  • New defaults in the namelists and a system to create setups from yaml files (#55). Most prominent changes are: Partial cells, zstar and unrotated mesh are now default options, JRA55-do is default forcing.
  • New license (LGPL), as requested by some partners, so FESOM2 can be used as a library by comertial software #74
  • Add an option to smooth tracer (smooth_bh_tra), which is nessesary for very high resolution setups #81
  • Fix partial cells to work more stable in high resolution setups #27

Minor changes

  • Print compile time git SHA at runtime (#13) to undetify version the model was compiled with.
  • More information in netCDF output (#18 #31 #33). Provide some info on model version and setup.
  • Fix bug with partitioner, that sometimes lead to wrong size of triangles #20
  • Add several extra parameters to the sea ice namelist (#34)
  • Introduce MAX_PATH length, to remove limit on the paths #65
  • Ice deformation tensor is stored as an array (on elements) and can bу written out (4cfe29639)
  • Remove old METIS4 (66b0b744)
  • Add cray ftn compiler support (#89)
  • Fix coupled (to OpenIFS) thermodynamics where water instead of snow density was used for heat capacity (#93)
  • Fix PPM bug #117
  • Add density / buoyancy flux as output variable #116

References

Juricke, S., Danilov, S., Kutsenko, A., & Oliver, M. (2019). Ocean kinetic energy backscatter parametrizations on unstructured grids: Impact on mesoscale turbulence in a channel. Ocean Modelling, 138, 51–67. https://doi.org/10.1016/j.ocemod.2019.03.009

Zampieri, Lorenzo, Frank Kauker, Jörg Fröhle, Hiroshi Sumata, Elizabeth C. Hunke, and Helge Goessling. Impact of Sea-Ice Model Complexity on the Performance of an Unstructured-Mesh Sea-ice/ocean Model Under Different Atmospheric Forcings. Washington: American Geophysical Union, 2020. https://dx.doi.org/10.1002/essoar.10505308.1.

Cryosphere - Sea Ice - Fortran
Published by koldunovn about 4 years ago

FESOM2 - Beginning of major refactoring

  • Refactoring of the code to get rid of global memory modules. A derived type for the mesh structure has been created and all the routines modified such that they receive the mesh as an argument. let us see whether this strategy will work. If so all other modules shall be processed in a similar manner.
  • Add discrete variance decay (DVD) computation of Klingbeil et al., 2014.
  • Kick out unused namelist flags from namelist.config.
  • Include new scheme + parameters for the vertical tunning of Gent McWilliams.

Cryosphere - Sea Ice - Fortran
Published by koldunovn about 5 years ago

FESOM2 -

  • Two small bugs in sea ice are fixed (Lorenzo Zampieri)
  • The easy backscatter viscosity is now the default.
  • Remove use_ALE flag since ALE is used always now.
  • Support gfortran compiler.
  • Support compilation on Ubuntu.
  • Continuous work on CVMIX options.
  • Add diagnostic to calculate MOC in density coordinates.

Cryosphere - Sea Ice - Fortran
Published by koldunovn over 5 years ago

FESOM2 - Control forcing and IO from namelists. Initial CVMIX implementation.

I/O control has been added via namelist.io.

The format for a new entry is:

    ('name      ', frequency,  frequency unit, precision). 'name' shall consist of 10 symbols. Add blanks if too short.

In order to add a new variable as a stream you need:
1. add this to namelist.io
2. modify io_meandata.F90 accordingly as it has been made for other variables.

CVMIX

Add FESOM interfaces for CVMIX-TKE(Turbulent-Kinetic-Energy) and IDEMIX (Internal-Wave-Energy) vertical mixing parameterization. Still needs to be fully tested, but so we can unify the Infrastructure for CVMIX

Generic forcing

The new way to define atmospheric forcing for FESOM2. Now one can use a namelist.forcing to provide pathways to forcing files.

Other changes

  • Some colorful screen output to highlight important things.
  • Fix a bug regarding max limiter of GM coefficient
  • Layerwise I/O for restarts and meandata.
  • Unify restart for zlevel and zstar.
  • Floating sea ice to zstar and different EVP schemes.
  • Change the default scheme to calculate pgf to shchepetkin.
  • Actualize and restructure routines for calculating the pressure gradient force.
  • Fix bug for zlevel and zstar (but also a bit for linfs) in how to balance the fresh water flux to the ocean and to avoid the ssh of drifting away.
  • FIX MINOR BUG WITH MAJOR IMPLICATIONS FOR ZLEVEL AND ZSTAR. This bugfix makes zlevel and zstar finally as stable as linfs and solves partially also the issues regarding the boundary current.
  • Tested functionality of partial bottom cells for the linfs case, performs at the same time step like the full cell case, different options to calculate the bottom pressure gradient force in case of partial bottom cells are available.
  • Timings for setup, output, and diagnostics added.

Cryosphere - Sea Ice - Fortran
Published by koldunovn almost 6 years ago

FESOM2 - 2.0.3 scaling paper release

A version of the code that was used for the "Measuring and optimizing the parallel performance of unstructured ocean model FESOM2" submitted to GMD.

Cryosphere - Sea Ice - Fortran
Published by koldunovn over 6 years ago

FESOM2 - 2.0.2 stable release (Scholz)

The same as 2.0.2, but to make Zenodo happy.

Cryosphere - Sea Ice - Fortran
Published by koldunovn over 6 years ago

FESOM2 - 2.0.2 stable release (scaling paper)

Stable version with solver changes from Natalja. Before merge with generic forcing branch from Dima.

  • Simplified and switched on partition check for isolated nodes.
  • Added pipelined BiCGstab algorithm.
  • Added BiCGstab with integrated RAS preconditioner.
  • Added SOLBICGS_RAS.
  • Multiple optimization changes from Nataja.
  • Add time measurements for different parts of the code.
  • Improved plotting and data analysis from Patrick
  • Diagnostic for calculating the kinetic energy budget.
  • Compile partitioner fesom_ini with cmake.
  • Proper treatment of periodical boundaries when reading 3D climatology.
  • Monin-Obukhov is added above KPP to increase mixing in Summer.
  • Deep convection is added along this line as well like in FESOM 1.4 (if KPP fails to do it by itself).
  • Fix bug in the extrapolation of the pressure gradient force at the bottom, make partial cells work with linfs.
  • Check if the force_rotation flag setted in namelist.config fits to the grid that is loaded, so that an already rotated grid doesnt get rotated again and that for an unrotated grid the rotation is not forgoten. [[Commit of the year!]]
  • New procedure for treatment of initial conditions, now they directly read from netCDF files.
  • Change backround diffusivity to FESOM1.4 latest scheme, and be sure that PP and KPP use same subfunction to calculate background diffusivity.
  • Generalised tracer input (adding tracers is now easy).
  • Fixed a bug in the Redi scheme which led to non conservation of the total tracer has been fully eliminated (treatment of mixing coefficients in implicit vertical diffusion operator was ambigious).
  • Focal flux implementation for KPP has produced uncertainties in 8th digit after 1000 timesteps, now commented out.
  • Salt Plume Parameterization from FESOM 1.4 (the realization from Wang et al. 2014) has been ported to FESOM2. Here it is coded for the Northern hemisphere only. Additional tuning for FESOM2 is required, otherwise the surface waters become too fresh and the subsurface too salty.
  • Possibility to output fields in real4.
  • Add support for compilation on JUWELS.

Cryosphere - Sea Ice - Fortran
Published by koldunovn over 6 years ago

FESOM2 - First stable FESOM 2 release

This is the version used in Scholz et al paper.

Cryosphere - Sea Ice - Fortran
Published by koldunovn almost 7 years ago