All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog,
and this project uses yyyy.rr[.pp]
, where yyyy
is the year a patch is released,
rr
is a sequential release number (starting from 01
), and an optional two-digit
sequential patch number (starting from 01
).
- Added SHiELD main driver program to the repository
- Added some additional information on the coupler to the readme
- 2022.01-alpha1 4707b255c842dd08b3cd65a45b7924e7a9d88720
- 2022.01-beta1 4707b255c842dd08b3cd65a45b7924e7a9d88720
- 2022.01-alpha2 7790c5d8e243eb97f3fa87f15546dadc6d963ed1
- 2022.01-beta2 c9f405a2383451550b9a8aaa8279a2a973d65c90
- In the full coupler, corrects a
get_variable_size
call to prevent crashes when running with the SCM
- FMS2_IO was implemented to the full coupler:
- The coupler restart files are now read with fms2_io's ascii_read
- Ascii writes are now done with fortran's open, close, and write. They are wrapped in an if, so that only the root pe does the io, newunit ensures that the unit number is unique for each file.
- The variables named
unit
have been renamed to avoid fortran conflicts. - The coupler type restarts are now written with fms2_io.
- The grid file is now read with fms2_io in: full/flux_exchange.F90:check_atm_grid
- FMS2_IO was implemented to the simple coupler:
- Changed ice_model.F90 so that it reads the land_mask files and it reads/writes the ice restart with fms2io.
- Removed the native formatted restart file code
- Fms2_io ascii_read is used to read to the coupler_restart
- Fotran's
open
,close
, andwrite
are used to write the coupler_restart - Removed the read_grid_data and get_grid_size subroutines from simple/ice_model.F90. These are never used.
- Test cases added for varying the latitude of SST maximum in the simple coupler ice model.
- Changes all imports from FMS to use the global
FMS
module and theFMSconstants
module - Changes to the ice_model restart files:
- With fms_io, the variables
mlon
andmlat
are written as:
double mlon(Time, zaxis_1, yaxis_1, xaxis_1) ;
double mlat(Time, zaxis_1, yaxis_1, xaxis_1) ;
where:
xaxis_1 = 1 ;
yaxis_1 = 1 ;
zaxis_1 = 1 ;
Time = UNLIMITED ; // (1 currently)
- fms_io wrote this as 4d variables as default. In FMS2_io these variables are scalars as they should be. With fms_io, the other non scalar variables where written as:
double t_surf(Time, zaxis_1, yaxis_2, xaxis_2) ;
where:
zaxis_1 = 1 ;
- In FMS2_io these variables are not a function of the zaxis_1. They are 2d + time as they should be.
double t_surf(Time, yaxis_1, xaxis_1) ;
With fms_io, the variables attributes:
long_name = {The same name as the longname}
units = "none"
were written by default. - FMS2_io does not do this. Users can specify real long_names and units by calling register_variable_attribute.
- With fms_io, the variables
- FMS_io was almost completely removed from FMScoupler and replaced with fms2_io.
- 2021.02-alpha1 (c1c8044a6c3efb8ddbbd01a3769bbf2610b34937)
- 2021.02-alpha2 (c1c8044a6c3efb8ddbbd01a3769bbf2610b34937)
- 2021.02-beta1 (62415ea3a62145080efcfe078eb889d6adf681a1)
- 2021.02-beta2 (62415ea3a62145080efcfe078eb889d6adf681a1)
- SURFACE_FLUX: Adds a new functionality to enable using NCAR surface fluxes in experiments
- SIMPLE_COUPLER: Fixed issue with simpler coupler not calling data_override_init during initialization, will now call if the data_table file exists
- 2021.01-beta1 (7e7212c6db62aa7916af0f6ada59c5a83355c1b8)
- 2021.01-alpha2 (4c2de8d2210f77cff38b7ecd8d2c06e7333a0d9e)
- 2021.01-alpha1 (36ed0f9cbe6d158f5205c418394f6539e0435237)
- 2020.04-beta1 (c8d7687653659a06de23c95785038c21857e5792)
- 2020.04-alpha3 (825b948e390fd68fa3bc46200c83623c5b66a293)
- 2020.04-alpha1 (3b4ed9f9327f341d3a690264acd46416293dbe1f)
- COUPLER_MAIN: Adds support for gregorian calenders
- ATM_LAND_ICE_FLUX_EXCHANGE: Removed deprecated calls for creating and setting up Ice%ocean_fluxes_top
- 2020.03-beta4 (0b99d9ec5601cf907767806e265b252a1720b301)
- 2020.03-beta3 (0b99d9ec5601cf907767806e265b252a1720b301)
- 2020.03-beta2 (0b99d9ec5601cf907767806e265b252a1720b301)
- ATMOS_OCEAN_FLUXES_CALC: Fixes div_by_zero error in debug when the ocean gas concentration is zero (e.g. over land points). An epsilon value (1e30) is substituted at points that have zero gas concentration.
- 2020.02-beta1 (87e5798ddbb82a5011dfaa0dc0eb3c9231de18b1)
- 2020.02-beta2 (6aa98ccbeda8b254b5ba1ccb46d3ae7379ef7a4c)
- 2020.02-beta3 (6aa98ccbeda8b254b5ba1ccb46d3ae7379ef7a4c)
- 2020.01-alpha1 (f48e67ba9c343152045182e80df5c14021130d47)
- 2020.01-beta1 (5159c6713c4e2600227041e19135ffdcb5032aff)
- 2020.01-beta2 (5159c6713c4e2600227041e19135ffdcb5032aff)
- testing_20190307 (2766a232809143778d77bc6918236e7085044b89)
- testing_20190422 (2766a232809143778d77bc6918236e7085044b89)
- testing_20190705 (14a9be493037a07f058adba947d8ce5af58af5d7)
- testing_20190809 (14578f09a25c8e6101faba18342630af267cdba9)