Opened 3 years ago
Last modified 3 years ago
#2574 new Defect
ssh initialization by dom_init routines when non linear
Reported by: | techene | Owned by: | techene |
---|---|---|---|
Priority: | low | Milestone: | |
Component: | DOM | Version: | trunk |
Severity: | minor | Keywords: | istate, dom_init, ssh |
Cc: |
Description
Context
When ssh is non linear (ln_linssh = F) ssh is initialized by both istate (set to 0 or rst_read or usr_def_istate) and dom_init (dom_vvl_init -> dom_vvl_rst -> set to 0 or read ) subroutines.
Analysis (ln_linssh = F)
Because ssh is initialized to zero in most cases by dom_vvl_rst, test cases such as CANAL or VORTEX have to duplicate domvvl module and call usr_def_istate instead of ssh = 0 and update scale factors accordingly. usr_def_istate call also initializes unexpected variables such as speeds or active tracers.
Then ssh is deeply related to scale factors so it makes more sense to initialize it in dom_init.
Recommendation
In order to avoid duplication and unexpected initialization we
1) write a dedicated ssh initialization and remove ssh from usr_def_istate => usr_def_istate_ssh
2) tidy up ssh initialization
- when ssh is linear (ln_linssh = T) in restart mode ssh is read in istate_init by rst_read in classic mode ssh is set up by istate as well
- when ssh is non linear (ln_linssh = F) in restart mode ssh is read in dom_init by dom_vvl_rst exclusively so we remove ssh from istate_init
Commit History (5)
Changeset | Author | Time | ChangeLog |
---|---|---|---|
13915 | techene | 2020-11-30T11:58:34+01:00 | #2574 cosmetics, cleanning and proper display of ocean.output (sette OK) |
13914 | techene | 2020-11-30T11:55:56+01:00 | #2574 l_1st_euler management in the restart case at a single location : dom_nam |
13895 | techene | 2020-11-27T00:30:21+01:00 | #2574 => led to restart reorganization and some cleaning |
13875 | techene | 2020-11-25T14:55:16+01:00 | #2574 delete domvvl duplicate |
13874 | techene | 2020-11-25T14:49:40+01:00 | #2574 ssh set up at initialization or restart separated from u,v,ts : removed from istate_init added in dom_init |
Change History (7)
comment:1 Changed 3 years ago by smasson
comment:2 Changed 3 years ago by techene
In 13874:
comment:3 Changed 3 years ago by techene
In 13875:
comment:4 Changed 3 years ago by techene
r13875 passes old sette tests
VORTEX differences are due to truncature errors in dom_vvl_rst indeed e3t computation is now done with e3t(ji,jj,jk,Kmm) = e3t_0(ji,jj,jk) * ( 1._wp + ssh(ji,jj,Kmm) / ( ht_0(ji,jj) + 1._wp - ssmask(ji,jj) ) * tmask(ji,jj,jk) ) instead of e3t(ji,jj,jk,Kmm) = e3t_0(ji,jj,jk) * ( ht_0(ji,jj) + ssh(ji,jj,Kmm) ) / ( ht_0(ji,jj) + 1._wp - ssmask(ji,jj) ) * tmask(ji,jj,jk) + e3t_0(ji,jj,jk)
Current code is : NEMO/branches/2020/dev_r13327_KERNEL-06_2_techene_e3 @ r13878 ( last change @ r13875 ) SETTE validation report generated for : NEMO/branches/2020/dev_r13327_KERNEL-06_2_techene_e3 @ r13875 (last changed revision) on X64_IRENE arch file !!---------------1st pass------------------!! !----restart----! WGYRE_PISCES_ST run.stat restartability passed : 13875 WGYRE_PISCES_ST tracer.stat restartability passed : 13875 WORCA2_ICE_PISCES_ST run.stat restartability passed : 13875 WORCA2_ICE_PISCES_ST tracer.stat restartability passed : 13875 WORCA2_OFF_PISCES_ST tracer.stat restartability passed : 13875 WAMM12_ST run.stat restartability passed : 13875 WORCA2_SAS_ICE_ST run.stat restartability passed : 13875 WAGRIF_DEMO_ST run.stat restartability passed : 13875 WSPITZ12_ST run.stat restartability passed : 13875 WISOMIP_ST run.stat restartability passed : 13875 WOVERFLOW_ST run.stat restartability passed : 13875 WLOCK_EXCHANGE_ST run.stat restartability passed : 13875 WVORTEX_ST run.stat restartability passed : 13875 WICE_AGRIF_ST run.stat restartability passed : 13875 !----repro----! WGYRE_PISCES_ST run.stat reproducibility passed : 13875 WGYRE_PISCES_ST tracer.stat reproducibility passed : 13875 WORCA2_ICE_PISCES_ST run.stat reproducibility passed : 13875 WORCA2_ICE_PISCES_ST tracer.stat reproducibility passed : 13875 WORCA2_OFF_PISCES_ST tracer.stat reproducibility passed : 13875 WAMM12_ST run.stat reproducibility passed : 13875 WORCA2_SAS_ICE_ST run.stat reproducibility passed : 13875 WORCA2_ICE_OBS_ST run.stat reproducibility passed : 13875 WAGRIF_DEMO_ST run.stat reproducibility passed : 13875 WSPITZ12_ST run.stat reproducibility passed : 13875 WISOMIP_ST run.stat reproducibility passed : 13875 WVORTEX_ST run.stat reproducibility passed : 13875 WICE_AGRIF_ST run.stat reproducibility passed : 13875 !----agrif check----! ORCA2 AGRIF vs ORCA2 NOAGRIF run.stat unchanged - passed : 13875 13875 !----result comparison check----! check result differences between : VALID directory : /ccc/work/cont003/gen7451/techenes/NEMO_VALIDATION at rev 13875 and REFERENCE directory : /ccc/work/cont003/gen7451/techenes/NEMO_VALIDATION at rev 13769 WGYRE_PISCES_ST run.stat files are identical WGYRE_PISCES_ST tracer.stat files are identical WORCA2_ICE_PISCES_ST run.stat files are identical WORCA2_ICE_PISCES_ST tracer.stat files are identical WORCA2_OFF_PISCES_ST tracer.stat files are identical WAMM12_ST run.stat files are identical WISOMIP_ST run.stat files are identical WORCA2_SAS_ICE_ST run.stat files are identical WAGRIF_DEMO_ST run.stat files are identical WSPITZ12_ST run.stat files are identical WISOMIP_ST run.stat files are identical WVORTEX_ST run.stat files are DIFFERENT (results are different after 1 time steps) WICE_AGRIF_ST run.stat files are identical
comment:5 Changed 3 years ago by techene
In 13895:
comment:6 Changed 3 years ago by techene
In 13914:
comment:7 Changed 3 years ago by techene
In 13915:
great Sibylle, thank you!