Changeset 4147 for branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN
- Timestamp:
- 2013-11-04T12:51:55+01:00 (10 years ago)
- Location:
- branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN/divcur.F90
r3294 r4147 226 226 227 227 IF( ln_rnf ) CALL sbc_rnf_div( hdivn ) ! runoffs (update hdivn field) 228 IF( nn_cla == 1 ) CALL cla_div ( kt ) ! Cross Land Advection (Update Hor. divergence)228 IF( nn_cla == 1 .AND. cp_cfg == 'orca' .AND. jp_cfg == 2 ) CALL cla_div ( kt ) ! Cross Land Advection (Update Hor. divergence) 229 229 230 230 ! 4. Lateral boundary conditions on hdivn and rotn -
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN/dynadv.F90
r3294 r4147 27 27 PUBLIC dyn_adv_init ! routine called by opa module 28 28 29 LOGICAL, PUBLIC :: ln_dynadv_vec = .TRUE.!: vector form flag30 LOGICAL, PUBLIC :: ln_dynadv_cen2 = .FALSE.!: flux form - 2nd order centered scheme flag31 LOGICAL, PUBLIC :: ln_dynadv_ubs = .FALSE.!: flux form - 3rd order UBS scheme flag29 LOGICAL, PUBLIC :: ln_dynadv_vec !: vector form flag 30 LOGICAL, PUBLIC :: ln_dynadv_cen2 !: flux form - 2nd order centered scheme flag 31 LOGICAL, PUBLIC :: ln_dynadv_ubs !: flux form - 3rd order UBS scheme flag 32 32 33 33 INTEGER :: nadv ! choice of the formulation and scheme for the advection … … 89 89 !!---------------------------------------------------------------------- 90 90 INTEGER :: ioptio 91 INTEGER :: ios ! Local integer output status for namelist read 91 92 !! 92 93 NAMELIST/namdyn_adv/ ln_dynadv_vec, ln_dynadv_cen2 , ln_dynadv_ubs 93 94 !!---------------------------------------------------------------------- 94 95 95 REWIND ( numnam ) ! Read Namelist namdyn_adv : momentum advection scheme 96 READ ( numnam, namdyn_adv ) 96 REWIND( numnam_ref ) ! Namelist namdyn_adv in reference namelist : Momentum advection scheme 97 READ ( numnam_ref, namdyn_adv, IOSTAT = ios, ERR = 901) 98 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in reference namelist', lwp ) 99 100 REWIND( numnam_cfg ) ! Namelist namdyn_adv in configuration namelist : Momentum advection scheme 101 READ ( numnam_cfg, namdyn_adv, IOSTAT = ios, ERR = 902 ) 102 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_adv in configuration namelist', lwp ) 103 WRITE ( numond, namdyn_adv ) 97 104 98 105 IF(lwp) THEN ! Namelist print -
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90
r3764 r4147 46 46 PUBLIC dyn_hpg_init ! routine called by opa module 47 47 48 ! 49 LOGICAL , PUBLIC :: ln_hpg_zco = .TRUE.!: z-coordinate - full steps50 LOGICAL , PUBLIC :: ln_hpg_zps = .FALSE.!: z-coordinate - partial steps (interpolation)51 LOGICAL , PUBLIC :: ln_hpg_sco = .FALSE.!: s-coordinate (standard jacobian formulation)52 LOGICAL , PUBLIC :: ln_hpg_djc = .FALSE.!: s-coordinate (Density Jacobian with Cubic polynomial)53 LOGICAL , PUBLIC :: ln_hpg_prj = .FALSE.!: s-coordinate (Pressure Jacobian scheme)54 LOGICAL , PUBLIC :: ln_dynhpg_imp = .FALSE.!: semi-implicite hpg flag48 ! !!* Namelist namdyn_hpg : hydrostatic pressure gradient 49 LOGICAL , PUBLIC :: ln_hpg_zco !: z-coordinate - full steps 50 LOGICAL , PUBLIC :: ln_hpg_zps !: z-coordinate - partial steps (interpolation) 51 LOGICAL , PUBLIC :: ln_hpg_sco !: s-coordinate (standard jacobian formulation) 52 LOGICAL , PUBLIC :: ln_hpg_djc !: s-coordinate (Density Jacobian with Cubic polynomial) 53 LOGICAL , PUBLIC :: ln_hpg_prj !: s-coordinate (Pressure Jacobian scheme) 54 LOGICAL , PUBLIC :: ln_dynhpg_imp !: semi-implicite hpg flag 55 55 56 56 INTEGER , PUBLIC :: nhpg = 0 ! = 0 to 7, type of pressure gradient scheme used ! (deduced from ln_hpg_... flags) (PUBLIC for TAM) … … 122 122 !!---------------------------------------------------------------------- 123 123 INTEGER :: ioptio = 0 ! temporary integer 124 INTEGER :: ios ! Local integer output status for namelist read 124 125 !! 125 126 NAMELIST/namdyn_hpg/ ln_hpg_zco, ln_hpg_zps, ln_hpg_sco, & … … 127 128 !!---------------------------------------------------------------------- 128 129 ! 129 REWIND( numnam ) ! Read Namelist namdyn_hpg 130 READ ( numnam, namdyn_hpg ) 130 REWIND( numnam_ref ) ! Namelist namdyn_hpg in reference namelist : Hydrostatic pressure gradient 131 READ ( numnam_ref, namdyn_hpg, IOSTAT = ios, ERR = 901) 132 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in reference namelist', lwp ) 133 134 REWIND( numnam_cfg ) ! Namelist namdyn_hpg in configuration namelist : Hydrostatic pressure gradient 135 READ ( numnam_cfg, namdyn_hpg, IOSTAT = ios, ERR = 902 ) 136 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_hpg in configuration namelist', lwp ) 137 WRITE ( numond, namdyn_hpg ) 131 138 ! 132 139 IF(lwp) THEN ! Control print -
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN/dynnept.F90
r3723 r4147 49 49 50 50 !! * Namelist namdyn_nept variables 51 LOGICAL, PUBLIC :: ln_neptsimp = .FALSE.! yes/no simplified neptune52 53 LOGICAL :: ln_smooth_neptvel = .FALSE.! yes/no smooth zunep, zvnep54 REAL(wp) :: rn_tslse = 1.2e4! value of lengthscale L at the equator55 REAL(wp) :: rn_tslsp = 3.0e3! value of lengthscale L at the pole51 LOGICAL, PUBLIC :: ln_neptsimp ! yes/no simplified neptune 52 53 LOGICAL :: ln_smooth_neptvel ! yes/no smooth zunep, zvnep 54 REAL(wp) :: rn_tslse ! value of lengthscale L at the equator 55 REAL(wp) :: rn_tslsp ! value of lengthscale L at the pole 56 56 !! Specify whether to ramp down the Neptune velocity in shallow 57 57 !! water, and the depth range controlling such ramping down 58 LOGICAL :: ln_neptramp = .FALSE.! ramp down Neptune velocity in shallow water59 REAL(wp) :: rn_htrmin = 100.0! min. depth of transition range60 REAL(wp) :: rn_htrmax = 200.0! max. depth of transition range58 LOGICAL :: ln_neptramp ! ramp down Neptune velocity in shallow water 59 REAL(wp) :: rn_htrmin ! min. depth of transition range 60 REAL(wp) :: rn_htrmax ! max. depth of transition range 61 61 62 62 !! * Module variables … … 114 114 NAMELIST/namdyn_nept/ ln_neptsimp, ln_smooth_neptvel, rn_tslse, rn_tslsp, & 115 115 ln_neptramp, rn_htrmin, rn_htrmax 116 INTEGER :: ios 116 117 !!---------------------------------------------------------------------- 117 118 ! Define the (simplified) Neptune parameters 118 119 ! ========================================== 119 120 120 REWIND( numnam ) ! Read Namelist namdyn_nept: Simplified Neptune 121 READ ( numnam, namdyn_nept ) 121 REWIND( numnam_ref ) ! Namelist namdyn_nept in reference namelist : Simplified Neptune 122 READ ( numnam_ref, namdyn_nept, IOSTAT = ios, ERR = 901) 123 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in reference namelist', lwp ) 124 125 REWIND( numnam_cfg ) ! Namelist namdyn_nept in reference namelist : Simplified Neptune 126 READ ( numnam_cfg, namdyn_nept, IOSTAT = ios, ERR = 902 ) 127 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_nept in configuration namelist', lwp ) 128 WRITE ( numond, namdyn_nept ) 122 129 123 130 IF(lwp) THEN ! Control print -
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_flt.F90
r3765 r4147 197 197 CALL Agrif_dyn( kt ) ! Update velocities on each coarse/fine interfaces 198 198 #endif 199 IF( nn_cla == 1 ) CALL cla_dynspg( kt ) ! Cross Land Advection (update (ua,va))199 IF( nn_cla == 1 .AND. cp_cfg == 'orca' .AND. jp_cfg == 2 ) CALL cla_dynspg( kt ) ! Cross Land Advection (update (ua,va)) 200 200 201 201 ! compute the next vertically averaged velocity (effect of the additional force not included) -
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/OPA_SRC/DYN/dynvor.F90
r3802 r4147 45 45 PUBLIC dyn_vor_init ! routine called by opa.F90 46 46 47 ! 48 LOGICAL, PUBLIC :: ln_dynvor_ene = .FALSE.!: energy conserving scheme49 LOGICAL, PUBLIC :: ln_dynvor_ens = .TRUE.!: enstrophy conserving scheme50 LOGICAL, PUBLIC :: ln_dynvor_mix = .FALSE.!: mixed scheme51 LOGICAL, PUBLIC :: ln_dynvor_een = .FALSE.!: energy and enstrophy conserving scheme47 ! !!* Namelist namdyn_vor: vorticity term 48 LOGICAL, PUBLIC :: ln_dynvor_ene !: energy conserving scheme 49 LOGICAL, PUBLIC :: ln_dynvor_ens !: enstrophy conserving scheme 50 LOGICAL, PUBLIC :: ln_dynvor_mix !: mixed scheme 51 LOGICAL, PUBLIC :: ln_dynvor_een !: energy and enstrophy conserving scheme 52 52 53 53 INTEGER :: nvor = 0 ! type of vorticity trend used … … 710 710 INTEGER :: ioptio ! local integer 711 711 INTEGER :: ji, jj, jk ! dummy loop indices 712 INTEGER :: ios ! Local integer output status for namelist read 712 713 !! 713 714 NAMELIST/namdyn_vor/ ln_dynvor_ens, ln_dynvor_ene, ln_dynvor_mix, ln_dynvor_een 714 715 !!---------------------------------------------------------------------- 715 716 716 REWIND ( numnam ) ! Read Namelist namdyn_vor : Vorticity scheme options 717 READ ( numnam, namdyn_vor ) 717 REWIND( numnam_ref ) ! Namelist namdyn_vor in reference namelist : Vorticity scheme options 718 READ ( numnam_ref, namdyn_vor, IOSTAT = ios, ERR = 901) 719 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in reference namelist', lwp ) 720 721 REWIND( numnam_cfg ) ! Namelist namdyn_vor in configuration namelist : Vorticity scheme options 722 READ ( numnam_cfg, namdyn_vor, IOSTAT = ios, ERR = 902 ) 723 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdyn_vor in configuration namelist', lwp ) 724 WRITE ( numond, namdyn_vor ) 718 725 719 726 IF(lwp) THEN ! Namelist print … … 721 728 WRITE(numout,*) 'dyn_vor_init : vorticity term : read namelist and control the consistency' 722 729 WRITE(numout,*) '~~~~~~~~~~~~' 723 WRITE(numout,*) ' Namelist namdyn_vor : oice of the vorticity term scheme'730 WRITE(numout,*) ' Namelist namdyn_vor : choice of the vorticity term scheme' 724 731 WRITE(numout,*) ' energy conserving scheme ln_dynvor_ene = ', ln_dynvor_ene 725 732 WRITE(numout,*) ' enstrophy conserving scheme ln_dynvor_ens = ', ln_dynvor_ens
Note: See TracChangeset
for help on using the changeset viewer.