Changeset 14086 for NEMO/trunk/src/NST/agrif_oce.F90
- Timestamp:
- 2020-12-04T12:37:14+01:00 (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/NST/agrif_oce.F90
r13286 r14086 23 23 LOGICAL , PUBLIC :: ln_spc_dyn = .FALSE. !: use zeros (.false.) or not (.true.) in 24 24 !: bdys dynamical fields interpolation 25 REAL(wp), PUBLIC :: rn_sponge_tra = 2800. !: sponge coeff. for tracers 26 REAL(wp), PUBLIC :: rn_sponge_dyn = 2800. !: sponge coeff. for dynamics 25 LOGICAL , PUBLIC :: ln_vert_remap = .FALSE. !: use vertical remapping 26 REAL(wp), PUBLIC :: rn_sponge_tra = 0.002 !: sponge coeff. for tracers 27 REAL(wp), PUBLIC :: rn_sponge_dyn = 0.002 !: sponge coeff. for dynamics 27 28 REAL(wp), PUBLIC :: rn_trelax_tra = 0.01 !: time relaxation parameter for tracers 28 29 REAL(wp), PUBLIC :: rn_trelax_dyn = 0.01 !: time relaxation parameter for momentum … … 30 31 ! 31 32 INTEGER , PUBLIC, PARAMETER :: nn_sponge_len = 2 !: Sponge width (in number of parent grid points) 33 INTEGER , PUBLIC, PARAMETER :: nn_shift_bar = 0 !: nb of coarse grid points by which we shift 2d interface 32 34 33 35 LOGICAL , PUBLIC :: spongedoneT = .FALSE. !: tracer sponge layer indicator … … 35 37 LOGICAL , PUBLIC :: lk_agrif_fstep = .TRUE. !: if true: first step 36 38 LOGICAL , PUBLIC :: lk_agrif_debug = .FALSE. !: if true: print debugging info 37 39 LOGICAL , PUBLIC :: lk_tint2d_notinterp = .FALSE. !: if true, no time interp 38 40 LOGICAL , PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: tabspongedone_tsn 39 41 # if defined key_top … … 46 48 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: fspu, fspv !: sponge arrays 47 49 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: fspt, fspf !: " " 50 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: fspu_2d,fspv_2d !: sponge arrays (2d mode) 51 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: fspt_2d, fspf_2d !: " " " " 48 52 49 53 ! Barotropic arrays used to store open boundary data during time-splitting loop: … … 51 55 INTEGER , PUBLIC, SAVE :: Kbb_a, Kmm_a, Krhs_a !: AGRIF module-specific copies of time-level indices 52 56 53 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: ht0_parent, hu0_parent, hv0_parent 54 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: mbkt_parent, mbku_parent, mbkv_parent 57 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: ht0_parent, hu0_parent, hv0_parent 58 REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) :: e3t0_parent, e3u0_parent, e3v0_parent 59 INTEGER, PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:) :: mbkt_parent, mbku_parent, mbkv_parent 55 60 56 INTEGER, PUBLIC :: tsn_id ! AGRIF profile for tracers interpolation and update 61 62 INTEGER, PUBLIC :: ts_interp_id, ts_update_id ! AGRIF profile for tracers interpolation and update 57 63 INTEGER, PUBLIC :: un_interp_id, vn_interp_id ! AGRIF profiles for interpolations 58 64 INTEGER, PUBLIC :: un_update_id, vn_update_id ! AGRIF profiles for udpates 59 INTEGER, PUBLIC :: tsn_sponge_id, un_sponge_id, vn_sponge_id ! AGRIF profiles for sponge layers 65 INTEGER, PUBLIC :: ts_sponge_id, un_sponge_id, vn_sponge_id ! AGRIF profiles for sponge layers (3d) 66 INTEGER, PUBLIC :: unb_sponge_id, vnb_sponge_id ! AGRIF profiles for sponge layers (2d) 60 67 INTEGER, PUBLIC :: tsini_id, uini_id, vini_id, sshini_id ! AGRIF profile for initialization 61 68 # if defined key_top 62 69 INTEGER, PUBLIC :: trn_id, trn_sponge_id 63 70 # endif 64 INTEGER, PUBLIC :: unb_id, vnb_id, ub2b_interp_id, vb2b_interp_id 65 INTEGER, PUBLIC :: ub2b_update_id, vb2b_update_id 66 INTEGER, PUBLIC :: e3t_id, e1u_id, e2v_id, sshn_id 71 INTEGER, PUBLIC :: unb_interp_id, vnb_interp_id, ub2b_interp_id, vb2b_interp_id 72 INTEGER, PUBLIC :: ub2b_update_id, vb2b_update_id, unb_update_id, vnb_update_id 73 INTEGER, PUBLIC :: ub2b_cor_id, vb2b_cor_id 74 INTEGER, PUBLIC :: e3t_id, sshn_id 67 75 INTEGER, PUBLIC :: scales_t_id 68 76 INTEGER, PUBLIC :: avt_id, avm_id, en_id ! TKE related identificators 69 INTEGER, PUBLIC :: mbkt_id, ht0_id 77 INTEGER, PUBLIC :: mbkt_id, ht0_id, e3t0_interp_id 70 78 INTEGER, PUBLIC :: glamt_id, gphit_id 79 INTEGER, PUBLIC :: batupd_id 71 80 INTEGER, PUBLIC :: kindic_agr 72 81 … … 74 83 !$AGRIF_DO_NOT_TREAT 75 84 LOGICAL, PUBLIC :: use_sign_north 76 REAL, PUBLIC :: sign_north85 REAL, PUBLIC :: sign_north 77 86 LOGICAL, PUBLIC :: l_ini_child = .FALSE. 78 # if defined key_vertical79 LOGICAL, PUBLIC :: l_vremap = .TRUE.80 # else81 87 LOGICAL, PUBLIC :: l_vremap = .FALSE. 82 # endif83 88 !$AGRIF_END_DO_NOT_TREAT 84 89 … … 100 105 ALLOCATE( fspu(jpi,jpj), fspv(jpi,jpj), & 101 106 & fspt(jpi,jpj), fspf(jpi,jpj), & 107 & fspu_2d(jpi,jpj), fspv_2d(jpi,jpj), & 108 & fspt_2d(jpi,jpj), fspf_2d(jpi,jpj), & 102 109 & tabspongedone_tsn(jpi,jpj), & 103 110 & utint_stage(jpi,jpj), vtint_stage(jpi,jpj), & … … 116 123 ! 117 124 END FUNCTION agrif_oce_alloc 118 119 125 #endif 120 126 !!======================================================================
Note: See TracChangeset
for help on using the changeset viewer.