Changeset 10516 for NEMO/trunk/tests
- Timestamp:
- 2019-01-15T17:31:25+01:00 (5 years ago)
- Location:
- NEMO/trunk/tests
- Files:
-
- 1 deleted
- 13 edited
- 1 copied
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/tests/ICE_ADV2D/EXPREF/file_def_nemo-ice.xml
r10515 r10516 11 11 12 12 13 <file_group id=" 1d" output_freq="1d" output_level="10" enabled=".TRUE."> <!-- 1 day files -->13 <file_group id="5ts" output_freq="5ts" output_level="10" enabled=".TRUE."> <!-- 1 day files --> 14 14 15 15 <file id="file1" name_suffix="_icemod" description="ice variables" enabled=".true." > … … 21 21 <field field_ref="snwvolu" name="snvolu" /> 22 22 <field field_ref="icethic" name="sithic" /> 23 <field field_ref="icethic" name="sithic_max" operation="maximum" /> 24 <field field_ref="icethic" name="sithic_min" operation="minimum" /> 25 <field field_ref="iceneg_pres" name="sineg_pres" /> 26 <field field_ref="iceneg_volu" name="sineg_volu" /> 27 <field field_ref="fasticepres" name="fasticepres" /> 23 28 <field field_ref="icevolu" name="sivolu" /> 24 29 <field field_ref="iceconc" name="siconc" /> -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/1_namelist_cfg
r10073 r10516 2 2 !! NEMO/OCE Configuration namelist : overwrite defaults values defined in SHARED/namelist_ref 3 3 !!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 4 !! ICE DYN (SAS BIPERIODIC) configuration!!4 !! ICE_AGRIF configuration !! 5 5 !!====================================================================== 6 6 !! *** Domain & Run management namelists *** !! … … 18 18 ! 19 19 !----------------------------------------------------------------------- 20 &namusr_def ! ICE DYNuser defined namelist20 &namusr_def ! ICE_AGRIF user defined namelist 21 21 !----------------------------------------------------------------------- 22 22 rn_dx = 1000. ! horizontal resolution in meters … … 29 29 !----------------------------------------------------------------------- 30 30 nn_no = 0 ! job number (no more used...) 31 cn_exp = "ICE DYN"! experience name31 cn_exp = "ICE_AGRIF" ! experience name 32 32 nn_it000 = 1 ! first time step 33 33 nn_itend = 1500 ! last time step (std 5475) … … 48 48 ln_read_cfg = .false. ! (=T) read the domain configuration file 49 49 ! ! (=F) user defined configuration ==>>> see usrdef(_...) modules 50 cn_domcfg = "ICE DYN_domcfg" ! domain configuration filename50 cn_domcfg = "ICE_AGRIF_domcfg" ! domain configuration filename 51 51 / 52 52 !!====================================================================== -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/1_namelist_ice_cfg
r10432 r10516 28 28 &namitd ! Ice discretization 29 29 !------------------------------------------------------------------------------ 30 rn_himin = 0.1 ! minimum ice thickness (m) used in remapping31 30 / 32 31 !------------------------------------------------------------------------------ -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/README
r9789 r10516 2 2 Purpose 3 3 ------- 4 This demonstration case can serve to different purposes: 5 6 1) The main one: study of the advection of a patch of ice in a bi-periodic channel with a slab ocean (i.e. 1 ocean layer) 7 ==> set ln_icethd=false in namelist_ice_cfg 8 9 2) Secondary: study of ice thermodynamics in the same basin 10 ==> set ln_icedyn=false in namelist_ice_cfg 11 ==> eventually change usrdef_sbc.F90 in MY_SRC to fit your needs 4 This demonstration case can be used to study the advection of a patch of ice in a bi-periodic channel 5 with a slab ocean (i.e. 1 ocean layer) and an agrif zoom in the center 12 6 13 7 ----------- … … 17 11 18 12 a) A simple channel at 3km horizontal resolution (slightly variable => +- 10%) 19 ==> remove key_agrif in cpp keys13 ==> in MY_SRC/usrdef_hgr.F90, uncomment the part "variable scale factors" and comment part "constant scale factors" 20 14 21 b) Same as a) but with an Agrif zoom in the center 1:3, and 3 ghost cells22 ==> add key_agrif in cpp keys15 b) A simple channel at 3km horizontal resolution (constant scale factors) 16 ==> in MY_SRC/usrdef_hgr.F90, comment the part "variable scale factors" and uncomment part "constant scale factors" 23 17 24 18 ---------- … … 27 21 28 22 a) Compile and run the model once to get a mesh_mask.nc file with the following command: 29 ../../../makenemo - a TEST_CASES -n ICEDYN-m X64_ADA -j 430 poe ./opa -procs123 ../../../makenemo -r ICE_AGRIF -n ICE_AGRIF -m X64_ADA -j 4 24 mpirun ./nemo -np 1 31 25 32 26 b) Create the initial condition file for sea-ice (initice.nc) by running this python script: … … 34 28 35 29 c) Run the model a second time 36 poe ./opa -procs430 mpirun ./nemo -np 4 37 31 38 32 --------------- 39 33 What to look at 40 34 --------------- 41 In case of purpose 1, One can test 42 --- 43 a) the advection scheme: Ultimate-Macho (ln_adv_UMx=T) versus Prather (ln_adv_Pra=T) 35 the advection through an agrif zoom 1:3 44 36 for a square (ice concentration) or a gaussian (ice volume) 45 with either a constant velocity (ln_dynADV =T)37 with either a constant velocity (ln_dynADV2D=T) 46 38 or a constant ice-atm. stress, thus velocity is calculated by rheology (ln_dynRHGADV=T) 47 39 with 1 or 5 ice categories (jpl=1 or 5) 48 49 b) the advection through an agrif zoom 1:3 50 51 In case of purpose 2, one can test conservation of properties: 52 --- 53 c) ice should not change at all if surface fluxes = 0 and SST = freezing temperature 54 55 -------------------------------------- 56 Interpretation of the results (remarks) 57 -------------------------------------- 58 - Prather conserves the max values but also creates side lobes 59 - UM does not conserve the max but does not create side lobes 60 - The "unmoving" ice (if any) is due to ice rheology which states that ice mass below a certain thresold (1kg/m2) is considered to move at the ocean velocity (thus 0 m/s) 40 (note that ln_dynADV2D=T only works with jpl=1) -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/file_def_nemo-ice.xml
r10413 r10516 11 11 12 12 13 <file_group id=" 1d" output_freq="1d" output_level="10" enabled=".TRUE."> <!-- 1 day files -->13 <file_group id="5ts" output_freq="5ts" output_level="10" enabled=".TRUE."> <!-- 1 day files --> 14 14 15 15 <file id="file1" name_suffix="_icemod" description="ice variables" enabled=".true." > -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/make_INITICE.py
r9019 r10516 89 89 90 90 # -------------------------------------- 91 # for basin=99x99km with dx=1km ; dy=3km92 #sigx=-0.0493 #sigy=-0.04*9.94 #xshift=50.-1.95 #yshift=17.-1.96 #dlat=797 #dlon=2198 99 # --------------------------------------100 91 # for basin=99x99km with dx=1km ; dy=1km 101 92 #sigx=-0.04 … … 114 105 # cdfsmi[:,y,x] = rn_smi_ini 115 106 # 116 # --- Lipscomb 2004 experiment ---117 #cdfhti[:,:,:]=1.118 #cdfati[:,:,:]=0.1119 #for y in np.arange(0,LAT1,1) :120 # for x in np.arange(0,LON1,1) :121 # if (x > ceil(0.5*xshift) and x < xshift): # and (y > ceil(0.5*yshift) and y < yshift):122 # cdfati[:,y,x] = rn_ati_ini / (ceil(0.5*xshift)*ceil(0.5*yshift)) * (x - ceil(0.5*xshift)) * (y - ceil(0.5*yshift))123 # cdfsmi[:,y,x] = rn_smi_ini / (ceil(0.5*xshift)*ceil(0.5*yshift)) * (x - ceil(0.5*xshift)) * (y - ceil(0.5*yshift))124 # cdfhti[:,y,x] = rn_hti_ini125 # cdfhts[:,y,x] = rn_hts_ini126 # if (x >= 25. and x < 50.):127 # cdfati[:,y,x] = 0.9 * (x - 25.) / 25.128 # cdfhti[:,y,x] = 1.129 # elif (x >= 50. and x <= 75.):130 # cdfati[:,y,x] = 0.9131 # cdfhti[:,y,x] = 1.132 # if (x > 30. and x < 70.):133 # cdfhti[:,y,x] = 0.2134 135 107 136 108 # ---------------------------------------------- 137 # for basin= 99x99km with dx=1km ; dy=1km + AGRIF109 # for basin=300x300km with dx=3km ; dy=3km + AGRIF 138 110 sigx=-0.012 139 111 sigy=-0.012 -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/namelist_cfg
r10073 r10516 2 2 !! NEMO/OCE Configuration namelist : overwrite default values defined in SHARED/namelist_ref 3 3 !!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 4 !! ICE DYN (SAS BIPERIODIC) configuration!!4 !! ICE_AGRIF configuration !! 5 5 !!====================================================================== 6 6 !! *** Domain & Run management namelists *** !! … … 18 18 ! 19 19 !----------------------------------------------------------------------- 20 &namusr_def ! ICE DYNuser defined namelist20 &namusr_def ! ICE_AGRIF user defined namelist 21 21 !----------------------------------------------------------------------- 22 22 rn_dx = 3000. ! horizontal resolution in meters … … 29 29 !----------------------------------------------------------------------- 30 30 nn_no = 0 ! job number (no more used...) 31 cn_exp = "ICE DYN"! experience name31 cn_exp = "ICE_AGRIF" ! experience name 32 32 nn_it000 = 1 ! first time step 33 33 nn_itend = 500 ! last time step (std 5475) … … 48 48 ln_read_cfg = .false. ! (=T) read the domain configuration file 49 49 ! ! (=F) user defined configuration ==>>> see usrdef(_...) modules 50 cn_domcfg = "ICE DYN_domcfg" ! domain configuration filename50 cn_domcfg = "ICE_AGRIF_domcfg" ! domain configuration filename 51 51 / 52 52 !!====================================================================== -
NEMO/trunk/tests/ICE_AGRIF/EXPREF/namelist_ice_cfg
r10432 r10516 28 28 &namitd ! Ice discretization 29 29 !------------------------------------------------------------------------------ 30 rn_himin = 0.1 ! minimum ice thickness (m) used in remapping31 30 / 32 31 !------------------------------------------------------------------------------ -
NEMO/trunk/tests/ICE_AGRIF/MY_SRC/usrdef_hgr.F90
r10074 r10516 3 3 !! *** MODULE usrdef_hgr *** 4 4 !! 5 !! === ICE DYNconfiguration ===5 !! === ICE_AGRIF configuration === 6 6 !! 7 7 !! User defined : mesh and Coriolis parameter of a user configuration … … 11 11 12 12 !!---------------------------------------------------------------------- 13 !! usr_def_hgr : initialize the horizontal mesh for ICE DYNconfiguration13 !! usr_def_hgr : initialize the horizontal mesh for ICE_AGRIF configuration 14 14 !!---------------------------------------------------------------------- 15 15 USE dom_oce ! ocean space and time domain … … 45 45 !! 46 46 !! ** Method : set all intent(out) argument to a proper value 47 !! ICE DYNconfiguration : uniform grid spacing (rn_dx)47 !! ICE_AGRIF configuration : uniform grid spacing (rn_dx) 48 48 !! without Coriolis force (f=0) 49 49 !! … … 68 68 ! 69 69 IF(lwp) WRITE(numout,*) 70 IF(lwp) WRITE(numout,*) 'usr_def_hgr : ICE DYNconfiguration bassin'70 IF(lwp) WRITE(numout,*) 'usr_def_hgr : ICE_AGRIF configuration bassin' 71 71 IF(lwp) WRITE(numout,*) 72 72 IF(lwp) WRITE(numout,*) ' f-plane with irregular grid-spacing (+- 10%)' -
NEMO/trunk/tests/ICE_AGRIF/MY_SRC/usrdef_nam.F90
r10161 r10516 3 3 !! *** MODULE usrdef_nam *** 4 4 !! 5 !! === ICE DYNconfiguration ===5 !! === ICE_AGRIF configuration === 6 6 !! 7 7 !! User defined : set the domain characteristics of a user configuration … … 48 48 !! ** Method : read in namusr_def containing all the user specific namelist parameter 49 49 !! 50 !! Here ICE DYNconfiguration50 !! Here ICE_AGRIF configuration 51 51 !! 52 52 !! ** input : - namusr_def namelist found in namelist_cfg … … 81 81 WRITE( ldnam(:), namusr_def ) 82 82 ! 83 cd_cfg = 'ICE DYN' ! name & resolution (not used)83 cd_cfg = 'ICE_AGRIF' ! name & resolution (not used) 84 84 kk_cfg = INT( rn_dx ) 85 85 ! 86 ! Global Domain size: ICE DYNdomain is 300 km x 300 Km x 10 m86 ! Global Domain size: ICE_AGRIF domain is 300 km x 300 Km x 10 m 87 87 kpi = INT( 300.e3 / rn_dx ) -1 88 88 kpj = INT( 300.e3 / rn_dy ) -1 … … 103 103 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1 104 104 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1 105 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ICE DYN test case'; ii = ii + 1105 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ICE_AGRIF test case' ; ii = ii + 1 106 106 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 1 107 107 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' ; ii = ii + 1 108 WRITE(ldtxt(ii),*) ' ICE DYN domain = 300 km x 300Km x 1 grid-point '; ii = ii + 1108 WRITE(ldtxt(ii),*) ' ICE_AGRIF domain = 300 km x 300Km x 1 grid-point ' ; ii = ii + 1 109 109 WRITE(ldtxt(ii),*) ' LX [km]: ', zlx ; ii = ii + 1 110 110 WRITE(ldtxt(ii),*) ' LY [km]: ', zly ; ii = ii + 1 … … 115 115 ! 116 116 ! ! Set the lateral boundary condition of the global domain 117 kperio = 7 ! ICE DYNconfiguration : bi-periodic basin117 kperio = 7 ! ICE_AGRIF configuration : bi-periodic basin 118 118 #if defined key_agrif 119 119 IF( .NOT. Agrif_Root() ) THEN … … 124 124 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 125 125 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 126 WRITE(ldtxt(ii),*) ' ICE DYN : bi-periodic basin jperio = ', kperio; ii = ii + 1126 WRITE(ldtxt(ii),*) ' ICE_AGRIF : bi-periodic basin jperio = ', kperio ; ii = ii + 1 127 127 ! 128 128 END SUBROUTINE usr_def_nam -
NEMO/trunk/tests/ICE_AGRIF/MY_SRC/usrdef_sbc.F90
r10074 r10516 3 3 !! *** MODULE usrdef_sbc *** 4 4 !! 5 !! === ICE DYNconfiguration ===5 !! === ICE_AGRIF configuration === 6 6 !! 7 7 !! User defined : surface forcing of a user configuration … … 11 11 12 12 !!---------------------------------------------------------------------- 13 !! usr_def_sbc : user defined surface bounday conditions in ICE DYNcase13 !! usr_def_sbc : user defined surface bounday conditions in ICE_AGRIF case 14 14 !!---------------------------------------------------------------------- 15 15 USE oce ! ocean dynamics and tracers … … 49 49 !! condition, i.e. the momentum, heat and freshwater fluxes. 50 50 !! 51 !! ** Method : all 0 fields, for ICE DYNcase51 !! ** Method : all 0 fields, for ICE_AGRIF case 52 52 !! CAUTION : never mask the surface stress field ! 53 53 !! … … 61 61 IF( kt == nit000 ) THEN 62 62 ! 63 IF(lwp) WRITE(numout,*)' usrdef_sbc_oce : ICE DYNcase: NO surface forcing'63 IF(lwp) WRITE(numout,*)' usrdef_sbc_oce : ICE_AGRIF case: NO surface forcing' 64 64 ! --- oce variables --- ! 65 65 utau(:,:) = 0._wp … … 91 91 INTEGER, INTENT(in) :: kt ! ocean time step 92 92 !!--------------------------------------------------------------------- 93 IF( kt==nit000 .AND. lwp) WRITE(numout,*)' usrdef_sbc_ice : ICE DYNcase: constant stress forcing'93 IF( kt==nit000 .AND. lwp) WRITE(numout,*)' usrdef_sbc_ice : ICE_AGRIF case: constant stress forcing' 94 94 ! 95 95 utau_ice(:,:) = 1.3_wp ! <=> 0.5 m/s … … 112 112 !!--------------------------------------------------------------------- 113 113 ! 114 IF( kt==nit000 .AND. lwp) WRITE(numout,*)' usrdef_sbc_ice : ICE DYNcase: NO flux forcing'114 IF( kt==nit000 .AND. lwp) WRITE(numout,*)' usrdef_sbc_ice : ICE_AGRIF case: NO flux forcing' 115 115 ! 116 116 ! ocean variables (renaming) -
NEMO/trunk/tests/ICE_AGRIF/MY_SRC/usrdef_zgr.F90
r10074 r10516 3 3 !! *** MODULE usrdef_zgr *** 4 4 !! 5 !! === ICE DYNcase ===5 !! === ICE_AGRIF case === 6 6 !! 7 7 !! Ocean domain : user defined vertical coordinate system … … 59 59 ! 60 60 IF(lwp) WRITE(numout,*) 61 IF(lwp) WRITE(numout,*) 'usr_def_zgr : ICE DYN configuration (slab ocean - advection of an ice patch in a biperiodic square box domain)'62 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~ '61 IF(lwp) WRITE(numout,*) 'usr_def_zgr : ICE_AGRIF configuration ' 62 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~ (slab ocean - advection of an ice patch in a biperiodic square box domain)' 63 63 ! 64 64 ! 65 ! type of vertical coordinate ==>>> here ICE DYN: slab ocean always65 ! type of vertical coordinate ==>>> here ICE_AGRIF : slab ocean always 66 66 ! --------------------------- 67 67 ld_zco = .TRUE. ! z-full-step coordinate -
NEMO/trunk/tests/demo_cfgs.txt
r10515 r10516 3 3 LOCK_EXCHANGE OCE 4 4 OVERFLOW OCE 5 ICE DYNOCE NST SAS ICE5 ICE_AGRIF OCE NST SAS ICE 6 6 ICE_ADV1D OCE SAS ICE 7 7 ICE_ADV2D OCE SAS ICE
Note: See TracChangeset
for help on using the changeset viewer.