Changeset 5868
- Timestamp:
- 2015-11-06T19:07:02+01:00 (8 years ago)
- Location:
- branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM
- Files:
-
- 2 deleted
- 41 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/AMM12/EXP00/namelist_cfg
r5836 r5868 347 347 !----------------------------------------------------------------------- 348 348 ! ! explicit free surface ("key_dynspg_exp") 349 ! ! filtered free surface ("key_dynspg_flt")350 349 ! ! split-explicit free surface ("key_dynspg_ts") 351 350 … … 408 407 / 409 408 !----------------------------------------------------------------------- 410 &namsol ! elliptic solver / island / free surface411 !-----------------------------------------------------------------------412 /413 !-----------------------------------------------------------------------414 409 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 415 410 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/C1D_PAPA/EXP00/namelist_cfg
r5836 r5868 295 295 / 296 296 !----------------------------------------------------------------------- 297 &namsol ! elliptic solver / island / free surface298 !-----------------------------------------------------------------------299 nn_solv = 2 ! elliptic solver: =1 preconditioned conjugate gradient (pcg)300 nn_nmin = 210 ! minimum of iterations for the SOR solver301 rn_sor = 1.96 ! optimal coefficient for SOR solver (to be adjusted with the domain)302 /303 !-----------------------------------------------------------------------304 297 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 305 298 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE/EXP00/namelist_cfg
r5836 r5868 341 341 / 342 342 !----------------------------------------------------------------------- 343 &namsol ! elliptic solver / island / free surface344 !-----------------------------------------------------------------------345 nn_solv = 2 ! elliptic solver: =1 preconditioned conjugate gradient (pcg)346 nn_nmin = 210 ! minimum of iterations for the SOR solver347 rn_sor = 1.96 ! optimal coefficient for SOR solver (to be adjusted with the domain)348 /349 !-----------------------------------------------------------------------350 343 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 351 344 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE/cpp_GYRE.fcm
r5836 r5868 1 bld::tool::fppkeys key_dynspg_ fltkey_zdftke key_iomput key_mpp_mpi1 bld::tool::fppkeys key_dynspg_ts key_zdftke key_iomput key_mpp_mpi -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE_BFM/EXP00/namelist_cfg
r5836 r5868 345 345 / 346 346 !----------------------------------------------------------------------- 347 &namsol ! elliptic solver / island / free surface348 !-----------------------------------------------------------------------349 nn_solv = 2 ! elliptic solver: =1 preconditioned conjugate gradient (pcg)350 nn_nmin = 210 ! minimum of iterations for the SOR solver351 rn_sor = 1.96 ! optimal coefficient for SOR solver (to be adjusted with the domain)352 /353 !-----------------------------------------------------------------------354 347 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 355 348 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE_BFM/cpp_GYRE_BFM.fcm
r5836 r5868 1 bld::tool::fppkeys key_dynspg_ fltkey_zdftke key_top key_my_trc key_mpp_mpi key_iomput1 bld::tool::fppkeys key_dynspg_ts key_zdftke key_top key_my_trc key_mpp_mpi key_iomput 2 2 inc $BFMDIR/src/nemo/bfm.fcm -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE_PISCES/EXP00/namelist_cfg
r5836 r5868 244 244 / 245 245 !----------------------------------------------------------------------- 246 &namsol ! elliptic solver / island / free surface247 !-----------------------------------------------------------------------248 nn_solv = 2 ! elliptic solver: =1 preconditioned conjugate gradient (pcg)249 nn_nmin = 210 ! minimum of iterations for the SOR solver250 rn_sor = 1.96 ! optimal coefficient for SOR solver (to be adjusted with the domain)251 /252 !-----------------------------------------------------------------------253 246 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 254 247 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE_PISCES/cpp_GYRE_PISCES.fcm
r5836 r5868 1 bld::tool::fppkeys key_dynspg_ fltkey_zdftke key_top key_pisces_reduced key_mpp_mpi1 bld::tool::fppkeys key_dynspg_ts key_zdftke key_top key_pisces_reduced key_mpp_mpi -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE_XIOS/EXP00/namelist_cfg
r5836 r5868 300 300 / 301 301 !----------------------------------------------------------------------- 302 &namsol ! elliptic solver / island / free surface303 !-----------------------------------------------------------------------304 nn_solv = 2 ! elliptic solver: =1 preconditioned conjugate gradient (pcg)305 nn_nmin = 210 ! minimum of iterations for the SOR solver306 rn_sor = 1.96 ! optimal coefficient for SOR solver (to be adjusted with the domain)307 /308 !-----------------------------------------------------------------------309 302 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 310 303 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/GYRE_XIOS/cpp_GYRE_XIOS.fcm
r5836 r5868 1 bld::tool::fppkeys key_dynspg_ fltkey_zdftke key_iomput key_mpp_mpi1 bld::tool::fppkeys key_dynspg_ts key_zdftke key_iomput key_mpp_mpi -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/1_namelist_cfg
r5836 r5868 246 246 / 247 247 !----------------------------------------------------------------------- 248 &namsol ! elliptic solver / island / free surface249 !-----------------------------------------------------------------------250 /251 !-----------------------------------------------------------------------252 248 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 253 249 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/namelist_cfg
r5836 r5868 228 228 / 229 229 !----------------------------------------------------------------------- 230 &namsol ! elliptic solver / island / free surface231 !-----------------------------------------------------------------------232 /233 !-----------------------------------------------------------------------234 230 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 235 231 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM/cpp_ORCA2_LIM.fcm
r5836 r5868 1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ fltkey_zdftke key_zdfddm key_zdftmx key_mpp_mpi key_iomput1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ts key_zdftke key_zdfddm key_zdftmx key_mpp_mpi key_iomput -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM3/EXP00/1_namelist_cfg
r5836 r5868 245 245 / 246 246 !----------------------------------------------------------------------- 247 &namsol ! elliptic solver / island / free surface248 !-----------------------------------------------------------------------249 /250 !-----------------------------------------------------------------------251 247 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 252 248 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM3/EXP00/namelist_cfg
r5836 r5868 236 236 / 237 237 !----------------------------------------------------------------------- 238 &namsol ! elliptic solver / island / free surface239 !-----------------------------------------------------------------------240 /241 !-----------------------------------------------------------------------242 238 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 243 239 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM_CFC_C14b/EXP00/1_namelist_cfg
r5836 r5868 11 11 !! 8 - Verical physics (namzdf, namzdf_ric, namzdf_tke, namzdf_kpp, namzdf_ddm, namzdf_tmx) 12 12 !! 9 - diagnostics (namnc4, namtrd, namspr, namflo, namptr, namhsb) 13 !! 10 - miscellaneous (nam sol, nammpp, nammpp_dyndist, namctl)13 !! 10 - miscellaneous (nammpp, nammpp_dyndist, namctl) 14 14 !! 11 - Obs & Assim (namobs, nam_asminc) 15 15 !!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> … … 559 559 !----------------------------------------------------------------------- 560 560 ! ! explicit free surface ("key_dynspg_exp") 561 ! ! filtered free surface ("key_dynspg_flt")562 561 ! ! split-explicit free surface ("key_dynspg_ts") 563 562 … … 702 701 !! nammpp_dyndist Massively Parallel domain decomposition ("key_agrif" && "key_mpp_dyndist") 703 702 !! namctl Control prints & Benchmark 704 !! namsol elliptic solver / island / free surface 705 !!====================================================================== 706 ! 707 !----------------------------------------------------------------------- 708 &namsol ! elliptic solver / island / free surface 709 !----------------------------------------------------------------------- 710 nn_solv = 1 ! elliptic solver: =1 preconditioned conjugate gradient (pcg) 711 ! =2 successive-over-relaxation (sor) 712 nn_sol_arp = 0 ! absolute/relative (0/1) precision convergence test 713 rn_eps = 1.e-6 ! absolute precision of the solver 714 nn_nmin = 300 ! minimum of iterations for the SOR solver 715 nn_nmax = 800 ! maximum of iterations for the SOR solver 716 nn_nmod = 10 ! frequency of test for the SOR solver 717 rn_resmax = 1.e-10 ! absolute precision for the SOR solver 718 rn_sor = 1.92 ! optimal coefficient for SOR solver (to be adjusted with the domain) 719 / 703 !!====================================================================== 704 ! 720 705 !----------------------------------------------------------------------- 721 706 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM_CFC_C14b/EXP00/namelist_cfg
r5836 r5868 299 299 / 300 300 !----------------------------------------------------------------------- 301 &namsol ! elliptic solver / island / free surface302 !-----------------------------------------------------------------------303 /304 !-----------------------------------------------------------------------305 301 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 306 302 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM_CFC_C14b/cpp_ORCA2_LIM_CFC_C14b.fcm
r5836 r5868 1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ fltkey_zdftke key_zdfddm key_zdftmx key_top key_cfc key_c14b key_iomput key_mpp_mpi1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ts key_zdftke key_zdfddm key_zdftmx key_top key_cfc key_c14b key_iomput key_mpp_mpi -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM_PISCES/EXP00/namelist_cfg
r5836 r5868 228 228 / 229 229 !----------------------------------------------------------------------- 230 &namsol ! elliptic solver / island / free surface231 !-----------------------------------------------------------------------232 /233 !-----------------------------------------------------------------------234 230 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) 235 231 !----------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_LIM_PISCES/cpp_ORCA2_LIM_PISCES.fcm
r5836 r5868 1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ fltkey_zdftke key_zdfddm key_zdftmx key_top key_pisces key_mpp_mpi key_iomput1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ts key_zdftke key_zdfddm key_zdftmx key_top key_pisces key_mpp_mpi key_iomput -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/ORCA2_SAS_LIM/cpp_ORCA2_SAS_LIM.fcm
r5836 r5868 1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ fltkey_zdftke key_zdfddm key_zdftmx key_iomput key_mpp_mpi1 bld::tool::fppkeys key_trabbl key_lim2 key_dynspg_ts key_zdftke key_zdfddm key_zdftmx key_iomput key_mpp_mpi -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/SHARED/field_def.xml
r5836 r5868 672 672 <field id="ketrd_hpg" long_name="ke-trend: hydrostatic pressure gradient" unit="W/s^3" /> 673 673 <field id="ketrd_spg" long_name="ke-trend: surface pressure gradient" unit="W/s^3" /> 674 <field id="ketrd_spgexp" long_name="ke-trend: surface pressure gradient (explicit)" unit="W/s^3" />675 <field id="ketrd_spgflt" long_name="ke-trend: surface pressure gradient (filter)" unit="W/s^3" />676 <field id="ssh_flt" long_name="filtered contribution to ssh (dynspg_flt)" unit="m" grid_ref="grid_T_2D" />677 674 <field id="w0" long_name="surface vertical velocity" unit="m/s" grid_ref="grid_T_2D" /> 678 675 <field id="pw0_exp" long_name="surface pressure flux due to ssh" unit="W/s^2" grid_ref="grid_T_2D" /> … … 716 713 <field id="utrd_hpg" long_name="i-trend: hydrostatic pressure gradient" unit="m/s^2" /> 717 714 <field id="utrd_spg" long_name="i-trend: surface pressure gradient" unit="m/s^2" /> 718 <field id="utrd_spgexp" long_name="i-trend: surface pressure gradient (explicit)" unit="m/s^2" />719 <field id="utrd_spgflt" long_name="i-trend: surface pressure gradient (filtered)" unit="m/s^2" />720 715 <field id="utrd_keg" long_name="i-trend: KE gradient or hor. adv." unit="m/s^2" /> 721 716 <field id="utrd_rvo" long_name="i-trend: relative vorticity or metric term" unit="m/s^2" /> … … 736 731 <field id="vtrd_hpg" long_name="j-trend: hydrostatic pressure gradient" unit="m/s^2" /> 737 732 <field id="vtrd_spg" long_name="j-trend: surface pressure gradient" unit="m/s^2" /> 738 <field id="vtrd_spgexp" long_name="j-trend: surface pressure gradient (explicit)" unit="m/s^2" />739 <field id="vtrd_spgflt" long_name="j-trend: surface pressure gradient (filtered)" unit="m/s^2" />740 733 <field id="vtrd_keg" long_name="j-trend: KE gradient or hor. adv." unit="m/s^2" /> 741 734 <field id="vtrd_rvo" long_name="j-trend: relative vorticity or metric term" unit="m/s^2" /> -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/CONFIG/SHARED/namelist_ref
r5836 r5868 13 13 !! 8 - Verical physics (namzdf, namzdf_ric, namzdf_tke, namzdf_ddm, namzdf_tmx) 14 14 !! 9 - diagnostics (namnc4, namtrd, namspr, namflo, namhsb, namsto) 15 !! 10 - miscellaneous (nam sol, nammpp, namctl)15 !! 10 - miscellaneous (nammpp, namctl) 16 16 !! 11 - Obs & Assim (namobs, nam_asminc) 17 17 !!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> … … 870 870 !----------------------------------------------------------------------- 871 871 ! ! explicit free surface ("key_dynspg_exp") 872 ! ! filtered free surface ("key_dynspg_flt")873 872 ! ! split-explicit free surface ("key_dynspg_ts") 874 873 … … 1005 1004 !! *** Miscellaneous namelists *** 1006 1005 !!====================================================================== 1007 !! namsol elliptic solver / island / free surface1008 1006 !! nammpp Massively Parallel Processing ("key_mpp_mpi) 1009 1007 !! namctl Control prints & Benchmark … … 1014 1012 !!====================================================================== 1015 1013 ! 1016 !-----------------------------------------------------------------------1017 &namsol ! elliptic solver / island / free surface1018 !-----------------------------------------------------------------------1019 nn_solv = 1 ! elliptic solver: =1 preconditioned conjugate gradient (pcg)1020 ! =2 successive-over-relaxation (sor)1021 nn_sol_arp = 0 ! absolute/relative (0/1) precision convergence test1022 rn_eps = 1.e-6 ! absolute precision of the solver1023 nn_nmin = 300 ! minimum of iterations for the SOR solver1024 nn_nmax = 800 ! maximum of iterations for the SOR solver1025 nn_nmod = 10 ! frequency of test for the SOR solver1026 rn_resmax = 1.e-10 ! absolute precision for the SOR solver1027 rn_sor = 1.92 ! optimal coefficient for SOR solver (to be adjusted with the domain)1028 /1029 1014 !----------------------------------------------------------------------- 1030 1015 &nammpp ! Massively Parallel Processing ("key_mpp_mpi) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/NST_SRC/agrif_opa_interp.F90
r5656 r5868 22 22 USE oce 23 23 USE dom_oce 24 USE sol_oce25 24 USE agrif_oce 26 25 USE phycst … … 38 37 39 38 PUBLIC Agrif_tra, Agrif_dyn, Agrif_ssh, Agrif_dyn_ts, Agrif_ssh_ts, Agrif_dta_ts 40 PUBLIC interpun, interpvn , interpun2d, interpvn2d39 PUBLIC interpun, interpvn 41 40 PUBLIC interptsn, interpsshn 42 41 PUBLIC interpunb, interpvnb, interpub2b, interpvb2b … … 95 94 CALL Agrif_Bc_variable(un_interp_id,procname=interpun) 96 95 CALL Agrif_Bc_variable(vn_interp_id,procname=interpvn) 97 98 #if defined key_dynspg_flt99 CALL Agrif_Bc_variable(e1u_id,calledweight=1., procname=interpun2d)100 CALL Agrif_Bc_variable(e2v_id,calledweight=1., procname=interpvn2d)101 #endif102 96 103 97 Agrif_UseSpecialValue = .FALSE. … … 126 120 127 121 IF((nbondi == -1).OR.(nbondi == 2)) THEN 128 #if defined key_dynspg_flt129 DO jk=1,jpkm1130 DO jj=j1,j2131 ua(2,jj,jk) = (ua(2,jj,jk) - z2dt * znugdt * laplacu(2,jj))*umask(2,jj,jk)132 END DO133 END DO134 135 spgu(2,:)=0.136 137 DO jk=1,jpkm1138 DO jj=1,jpj139 spgu(2,jj)=spgu(2,jj)+fse3u(2,jj,jk)*ua(2,jj,jk)140 END DO141 END DO142 143 DO jj=1,jpj144 IF (umask(2,jj,1).NE.0.) THEN145 spgu(2,jj)=spgu(2,jj)/hu(2,jj)146 ENDIF147 END DO148 #else149 122 spgu(2,:) = ua_b(2,:) 150 #endif151 123 152 124 DO jk=1,jpkm1 … … 198 170 199 171 IF((nbondi == 1).OR.(nbondi == 2)) THEN 200 #if defined key_dynspg_flt201 DO jk=1,jpkm1202 DO jj=j1,j2203 ua(nlci-2,jj,jk) = (ua(nlci-2,jj,jk)- z2dt * znugdt * laplacu(nlci-2,jj))*umask(nlci-2,jj,jk)204 END DO205 END DO206 spgu(nlci-2,:)=0.207 DO jk=1,jpkm1208 DO jj=1,jpj209 spgu(nlci-2,jj)=spgu(nlci-2,jj)+fse3u(nlci-2,jj,jk)*ua(nlci-2,jj,jk)210 ENDDO211 ENDDO212 DO jj=1,jpj213 IF (umask(nlci-2,jj,1).NE.0.) THEN214 spgu(nlci-2,jj)=spgu(nlci-2,jj)/hu(nlci-2,jj)215 ENDIF216 END DO217 #else218 172 spgu(nlci-2,:) = ua_b(nlci-2,:) 219 #endif 173 220 174 DO jk=1,jpkm1 221 175 DO jj=j1,j2 … … 266 220 267 221 IF((nbondj == -1).OR.(nbondj == 2)) THEN 268 269 #if defined key_dynspg_flt270 DO jk=1,jpkm1271 DO ji=1,jpi272 va(ji,2,jk) = (va(ji,2,jk) - z2dt * znugdt * laplacv(ji,2))*vmask(ji,2,jk)273 END DO274 END DO275 276 spgv(:,2)=0.277 278 DO jk=1,jpkm1279 DO ji=1,jpi280 spgv(ji,2)=spgv(ji,2)+fse3v(ji,2,jk)*va(ji,2,jk)281 END DO282 END DO283 284 DO ji=1,jpi285 IF (vmask(ji,2,1).NE.0.) THEN286 spgv(ji,2)=spgv(ji,2)/hv(ji,2)287 ENDIF288 END DO289 #else290 222 spgv(:,2)=va_b(:,2) 291 #endif292 223 293 224 DO jk=1,jpkm1 … … 341 272 IF((nbondj == 1).OR.(nbondj == 2)) THEN 342 273 343 #if defined key_dynspg_flt344 DO jk=1,jpkm1345 DO ji=1,jpi346 va(ji,nlcj-2,jk) = (va(ji,nlcj-2,jk)-z2dt * znugdt * laplacv(ji,nlcj-2))*vmask(ji,nlcj-2,jk)347 END DO348 END DO349 350 351 spgv(:,nlcj-2)=0.352 353 DO jk=1,jpkm1354 DO ji=1,jpi355 spgv(ji,nlcj-2)=spgv(ji,nlcj-2)+fse3v(ji,nlcj-2,jk)*va(ji,nlcj-2,jk)356 END DO357 END DO358 359 DO ji=1,jpi360 IF (vmask(ji,nlcj-2,1).NE.0.) THEN361 spgv(ji,nlcj-2)=spgv(ji,nlcj-2)/hv(ji,nlcj-2)362 ENDIF363 END DO364 365 #else366 274 spgv(:,nlcj-2)=va_b(:,nlcj-2) 367 #endif368 275 369 276 DO jk=1,jpkm1 … … 828 735 END SUBROUTINE interpun 829 736 830 831 SUBROUTINE interpun2d(ptab,i1,i2,j1,j2,before)832 !!---------------------------------------------833 !! *** ROUTINE interpun ***834 !!---------------------------------------------835 !836 INTEGER, INTENT(in) :: i1,i2,j1,j2837 REAL(wp), DIMENSION(i1:i2,j1:j2), INTENT(inout) :: ptab838 LOGICAL, INTENT(in) :: before839 !840 INTEGER :: ji,jj841 REAL(wp) :: ztref842 REAL(wp) :: zrhoy843 !!---------------------------------------------844 !845 ztref = 1.846 847 IF (before) THEN848 DO jj=j1,j2849 DO ji=i1,MIN(i2,nlci-1)850 ptab(ji,jj) = e2u(ji,jj) * ((gcx(ji+1,jj) - gcx(ji,jj))/e1u(ji,jj))851 END DO852 END DO853 ELSE854 zrhoy = Agrif_Rhoy()855 DO jj=j1,j2856 laplacu(i1:i2,jj) = ztref * (ptab(i1:i2,jj)/(zrhoy*e2u(i1:i2,jj))) !*umask(i1:i2,jj,1)857 END DO858 ENDIF859 !860 END SUBROUTINE interpun2d861 862 863 737 SUBROUTINE interpvn(ptab,i1,i2,j1,j2,k1,k2, before) 864 738 !!--------------------------------------------- … … 895 769 ! 896 770 END SUBROUTINE interpvn 897 898 SUBROUTINE interpvn2d(ptab,i1,i2,j1,j2,before)899 !!---------------------------------------------900 !! *** ROUTINE interpvn ***901 !!---------------------------------------------902 !903 INTEGER, INTENT(in) :: i1,i2,j1,j2904 REAL(wp), DIMENSION(i1:i2,j1:j2), INTENT(inout) :: ptab905 LOGICAL, INTENT(in) :: before906 !907 INTEGER :: ji,jj908 REAL(wp) :: zrhox909 REAL(wp) :: ztref910 !!---------------------------------------------911 !912 ztref = 1.913 IF (before) THEN914 !interpv entre 1 et k2 et interpv2d en jpkp1915 DO jj=j1,MIN(j2,nlcj-1)916 DO ji=i1,i2917 ptab(ji,jj) = e1v(ji,jj) * ((gcx(ji,jj+1) - gcx(ji,jj))/e2v(ji,jj)) * vmask(ji,jj,1)918 END DO919 END DO920 ELSE921 zrhox = Agrif_Rhox()922 DO ji=i1,i2923 laplacv(ji,j1:j2) = ztref * (ptab(ji,j1:j2)/(zrhox*e1v(ji,j1:j2)))924 END DO925 ENDIF926 !927 END SUBROUTINE interpvn2d928 771 929 772 SUBROUTINE interpunb(ptab,i1,i2,j1,j2,before,nb,ndir) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/NST_SRC/agrif_top_interp.F90
r5656 r5868 4 4 USE oce 5 5 USE dom_oce 6 USE sol_oce7 6 USE agrif_oce 8 7 USE agrif_top_sponge -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/NST_SRC/agrif_user.F90
r5656 r5868 104 104 USE dom_oce 105 105 USE nemogcm 106 USE sol_oce107 106 USE in_out_manager 108 107 USE agrif_opa_update … … 172 171 USE dom_oce 173 172 USE nemogcm 174 USE sol_oce175 173 USE lib_mpp 176 174 USE in_out_manager -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/ASM/asmbkg.F90
r5836 r5868 34 34 USE zdfmxl ! Mixed layer depth 35 35 USE dom_oce, ONLY : ndastp 36 USE sol_oce, ONLY : gcx ! Solver variables defined in memory37 36 USE in_out_manager ! I/O manager 38 37 USE iom ! I/O module … … 114 113 CALL iom_rstput( kt, nitbkg_r, inum, 'en' , en ) 115 114 #endif 116 CALL iom_rstput( kt, nitbkg_r, inum, 'gcx' , gcx )117 115 ! 118 116 CALL iom_close( inum ) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn.F90
r4689 r5868 35 35 PRIVATE 36 36 37 PUBLIC bdy_dyn ! routine called in dynspg_flt (if lk_dynspg_flt) or 38 ! dyn_nxt (if lk_dynspg_ts or lk_dynspg_exp) 37 PUBLIC bdy_dyn ! routine called in dyn_nxt 39 38 40 39 # include "domzgr_substitute.h90" -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/BDY/bdyvol.F90
r5836 r5868 10 10 !! 3.4 ! 2011 (D. Storkey) rewrite in preparation for OBC-BDY merge 11 11 !!---------------------------------------------------------------------- 12 #if defined key_bdy && defined key_dynspg_flt12 #if defined key_bdy 13 13 !!---------------------------------------------------------------------- 14 !! 'key_bdy' AND unstructured open boundary conditions 15 !! 'key_dynspg_flt' filtered free surface 14 !! 'key_bdy' unstructured open boundary conditions 16 15 !!---------------------------------------------------------------------- 17 16 USE oce ! ocean dynamics and tracers … … 30 29 PRIVATE 31 30 32 PUBLIC bdy_vol ! routine called by dynspg_flt.h9031 PUBLIC bdy_vol 33 32 34 33 !! * Substitutions … … 45 44 !! *** ROUTINE bdyvol *** 46 45 !! 47 !! ** Purpose : This routine is called in dynspg_flt to control48 !! the volume of the system.A correction velocity is calculated46 !! ** Purpose : This routine controls the volume of the system. 47 !! A correction velocity is calculated 49 48 !! to correct the total transport through the unstructured OBC. 50 49 !! The total depth used is constant (H0) to be consistent with the -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90
r5836 r5868 30 30 USE zdf_oce ! ocean vertical physics 31 31 USE ldftra ! lateral physics: eddy diffusivity coef. 32 USE sol_oce ! solver variables33 32 USE sbc_oce ! Surface boundary condition: ocean fields 34 33 USE sbc_ice ! Surface boundary condition: ice fields -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/DOM/istate.F90
r5836 r5868 35 35 USE dtauvd ! data: U & V current (dta_uvd routine) 36 36 USE domvvl ! varying vertical mesh 37 USE dynspg_oce ! pressure gradient schemes38 USE dynspg_flt ! filtered free surface39 USE sol_oce ! ocean solver variables40 37 ! 41 38 USE in_out_manager ! I/O manager … … 133 130 ENDIF 134 131 ! 135 IF( lk_agrif ) THEN ! read free surface arrays in restart file136 IF( ln_rstart ) THEN137 IF( lk_dynspg_flt ) THEN ! read or initialize the following fields138 ! ! gcx, gcxb for agrif_opa_init139 IF( sol_oce_alloc() > 0 ) CALL ctl_stop('agrif sol_oce_alloc: allocation of arrays failed')140 CALL flt_rst( nit000, 'READ' )141 ENDIF142 ENDIF ! explicit case not coded yet with AGRIF143 ENDIF144 !145 132 ! 146 133 ! Initialize "now" and "before" barotropic velocities: … … 445 432 !! p=integral [ rau*g dz ] 446 433 !!---------------------------------------------------------------------- 447 USE dynspg ! surface pressure gradient (dyn_spg routine)448 434 USE divhor ! hor. divergence (div_hor routine) 449 435 USE lbclnk ! ocean lateral boundary condition (or mpp link) 450 436 ! 451 437 INTEGER :: ji, jj, jk ! dummy loop indices 452 INTEGER :: indic ! ???453 438 REAL(wp) :: zmsv, zphv, zmsu, zphu, zalfg ! temporary scalars 454 439 REAL(wp), POINTER, DIMENSION(:,:,:) :: zprn … … 517 502 vb(:,:,:) = vn(:,:,:) 518 503 519 ! WARNING !!!!!520 ! after initializing u and v, we need to calculate the initial streamfunction bsf.521 ! Otherwise, only the trend will be computed and the model will blow up (inconsistency).522 ! to do that, we call dyn_spg with a special trick:523 ! we fill ua and va with the velocities divided by dt, and the streamfunction will be brought to the524 ! right value assuming the velocities have been set up in one time step.525 ! we then set bsfd to zero (first guess for next step is d(psi)/dt = 0.)526 ! sets up s false trend to calculate the barotropic streamfunction.527 528 ua(:,:,:) = ub(:,:,:) / rdt529 va(:,:,:) = vb(:,:,:) / rdt530 531 ! calls dyn_spg. we assume euler time step, starting from rest.532 indic = 0533 CALL dyn_spg( nit000, indic ) ! surface pressure gradient534 !535 ! the new velocity is ua*rdt536 !537 CALL lbc_lnk( ua, 'U', -1. )538 CALL lbc_lnk( va, 'V', -1. )539 540 ub(:,:,:) = ua(:,:,:) * rdt541 vb(:,:,:) = va(:,:,:) * rdt542 ua(:,:,:) = 0.e0543 va(:,:,:) = 0.e0544 un(:,:,:) = ub(:,:,:)545 vn(:,:,:) = vb(:,:,:)546 504 ! 547 505 !!gm Check here call to div_hor should not be necessary -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/DYN/dynnxt.F90
r5643 r5868 78 78 !! (lk_vvl=T), the leap-frog is applied on thickness weighted 79 79 !! velocity. 80 !! Note also that in filtered free surface (lk_dynspg_flt=T),81 !! the time stepping has already been done in dynspg module82 80 !! 83 81 !! * Apply lateral boundary conditions on after velocity … … 101 99 INTEGER :: ji, jj, jk ! dummy loop indices 102 100 INTEGER :: iku, ikv ! local integers 103 #if ! defined key_dynspg_flt104 101 REAL(wp) :: z2dt ! temporary scalar 105 #endif106 102 REAL(wp) :: zue3a, zue3n, zue3b, zuf, zec ! local scalars 107 103 REAL(wp) :: zve3a, zve3n, zve3b, zvf, z1_2dt ! - - … … 120 116 IF(lwp) WRITE(numout,*) '~~~~~~~' 121 117 ENDIF 122 123 #if defined key_dynspg_flt124 !125 ! Next velocity : Leap-frog time stepping already done in dynspg_flt.F routine126 ! -------------127 128 ! Update after velocity on domain lateral boundaries (only local domain required)129 ! --------------------------------------------------130 CALL lbc_lnk( ua, 'U', -1. ) ! local domain boundaries131 CALL lbc_lnk( va, 'V', -1. )132 !133 #else134 118 135 119 # if defined key_dynspg_exp … … 201 185 CALL Agrif_dyn( kt ) !* AGRIF zoom boundaries 202 186 # endif 203 #endif204 187 205 188 IF( l_trddyn ) THEN ! prepare the atf trend computation + some diagnostics -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg.F90
r5836 r5868 21 21 USE dynspg_exp ! surface pressure gradient (dyn_spg_exp routine) 22 22 USE dynspg_ts ! surface pressure gradient (dyn_spg_ts routine) 23 USE dynspg_flt ! surface pressure gradient (dyn_spg_flt routine)24 23 USE dynadv ! dynamics: vector invariant versus flux form 25 24 USE dynhpg, ONLY: ln_dynhpg_imp … … 32 31 USE in_out_manager ! I/O manager 33 32 USE lib_mpp ! MPP library 34 USE solver ! solver initialization35 33 USE wrk_nemo ! Memory Allocation 36 34 USE timing ! Timing … … 55 53 CONTAINS 56 54 57 SUBROUTINE dyn_spg( kt , kindic)55 SUBROUTINE dyn_spg( kt ) 58 56 !!---------------------------------------------------------------------- 59 57 !! *** ROUTINE dyn_spg *** … … 80 78 ! 81 79 INTEGER, INTENT(in ) :: kt ! ocean time-step index 82 INTEGER, INTENT( out) :: kindic ! solver flag83 80 ! 84 81 INTEGER :: ji, jj, jk ! dummy loop indices … … 171 168 CASE ( 0 ) ; CALL dyn_spg_exp( kt ) ! explicit 172 169 CASE ( 1 ) ; CALL dyn_spg_ts ( kt ) ! time-splitting 173 CASE ( 2 ) ; CALL dyn_spg_flt( kt, kindic ) ! filtered174 170 ! 175 171 END SELECT 176 172 ! 177 173 IF( l_trddyn ) THEN ! save the surface pressure gradient trends for further diagnostics 178 SELECT CASE ( nspg ) 179 CASE ( 0, 1 ) 180 ztrdu(:,:,:) = ua(:,:,:) - ztrdu(:,:,:) 181 ztrdv(:,:,:) = va(:,:,:) - ztrdv(:,:,:) 182 CASE( 2 ) 183 z2dt = 2. * rdt 184 IF( neuler == 0 .AND. kt == nit000 ) z2dt = rdt 185 ztrdu(:,:,:) = ( ua(:,:,:) - ub(:,:,:) ) / z2dt - ztrdu(:,:,:) 186 ztrdv(:,:,:) = ( va(:,:,:) - vb(:,:,:) ) / z2dt - ztrdv(:,:,:) 187 END SELECT 174 ztrdu(:,:,:) = ua(:,:,:) - ztrdu(:,:,:) 175 ztrdv(:,:,:) = va(:,:,:) - ztrdv(:,:,:) 188 176 CALL trd_dyn( ztrdu, ztrdv, jpdyn_spg, kt ) 189 177 ! … … 217 205 WRITE(numout,*) ' Explicit free surface lk_dynspg_exp = ', lk_dynspg_exp 218 206 WRITE(numout,*) ' Free surface with time splitting lk_dynspg_ts = ', lk_dynspg_ts 219 WRITE(numout,*) ' Filtered free surface cst volume lk_dynspg_flt = ', lk_dynspg_flt220 207 ENDIF 221 208 … … 233 220 IF(lk_dynspg_exp) ioptio = ioptio + 1 234 221 IF(lk_dynspg_ts ) ioptio = ioptio + 1 235 IF(lk_dynspg_flt) ioptio = ioptio + 1236 222 ! 237 223 IF( ioptio > 1 .OR. ( ioptio == 0 .AND. .NOT. lk_c1d ) ) & … … 242 228 IF( lk_dynspg_exp) nspg = 0 243 229 IF( lk_dynspg_ts ) nspg = 1 244 IF( lk_dynspg_flt) nspg = 2 230 245 231 ! 246 232 IF(lwp) THEN … … 248 234 IF( nspg == 0 ) WRITE(numout,*) ' explicit free surface' 249 235 IF( nspg == 1 ) WRITE(numout,*) ' free surface with time splitting scheme' 250 IF( nspg == 2 ) WRITE(numout,*) ' filtered free surface' 251 ENDIF 252 253 #if defined key_dynspg_flt 254 CALL solver_init( nit000 ) ! Elliptic solver initialisation 255 #endif 236 ENDIF 256 237 ! ! Control of hydrostatic pressure choice 257 238 IF( lk_dynspg_ts .AND. ln_dynhpg_imp ) CALL ctl_stop( 'Semi-implicit hpg not compatible with time splitting' ) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/DYN/dynspg_oce.F90
r5836 r5868 26 26 #else 27 27 LOGICAL, PUBLIC, PARAMETER :: lk_dynspg_ts = .FALSE. !: Free surface with time splitting flag 28 #endif29 #if defined key_dynspg_flt30 LOGICAL, PUBLIC, PARAMETER :: lk_dynspg_flt = .TRUE. !: Filtered free surface cst volume flag31 #else32 LOGICAL, PUBLIC, PARAMETER :: lk_dynspg_flt = .FALSE. !: Filtered free surface cst volume flag33 28 #endif 34 29 ! !!! Time splitting scheme (key_dynspg_ts) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/TRD/trd_oce.F90
r5215 r5868 71 71 INTEGER, PUBLIC, PARAMETER :: jpdyn_bfri = 12 !: implicit bottom friction (ln_bfrimp=.TRUE.) 72 72 INTEGER, PUBLIC, PARAMETER :: jpdyn_ken = 13 !: use for calculation of KE 73 INTEGER, PUBLIC, PARAMETER :: jpdyn_spgflt = 14 !: filter contribution to surface pressure gradient (spg_flt)74 INTEGER, PUBLIC, PARAMETER :: jpdyn_spgexp = 15 !: explicit contribution to surface pressure gradient (spg_flt)75 73 ! 76 74 !!---------------------------------------------------------------------- -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/TRD/trddyn.F90
r5215 r5868 113 113 CASE( jpdyn_spg ) ; CALL iom_put( "utrd_spg", putrd ) ! surface pressure gradient 114 114 CALL iom_put( "vtrd_spg", pvtrd ) 115 CASE( jpdyn_spgexp ); CALL iom_put( "utrd_spgexp", putrd ) ! surface pressure gradient (explicit)116 CALL iom_put( "vtrd_spgexp", pvtrd )117 CASE( jpdyn_spgflt ); CALL iom_put( "utrd_spgflt", putrd ) ! surface pressure gradient (filtered)118 CALL iom_put( "vtrd_spgflt", pvtrd )119 115 CASE( jpdyn_pvo ) ; CALL iom_put( "utrd_pvo", putrd ) ! planetary vorticity 120 116 CALL iom_put( "vtrd_pvo", pvtrd ) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/TRD/trdken.F90
r5836 r5868 120 120 CASE( jpdyn_hpg ) ; CALL iom_put( "ketrd_hpg", zke ) ! hydrostatic pressure gradient 121 121 CASE( jpdyn_spg ) ; CALL iom_put( "ketrd_spg", zke ) ! surface pressure gradient 122 CASE( jpdyn_spgexp ); CALL iom_put( "ketrd_spgexp", zke ) ! surface pressure gradient (explicit)123 CASE( jpdyn_spgflt ); CALL iom_put( "ketrd_spgflt", zke ) ! surface pressure gradient (filter)124 122 CASE( jpdyn_pvo ) ; CALL iom_put( "ketrd_pvo", zke ) ! planetary vorticity 125 123 CASE( jpdyn_rvo ) ; CALL iom_put( "ketrd_rvo", zke ) ! relative vorticity (or metric term) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/step.F90
r5836 r5868 214 214 #endif 215 215 CALL dyn_hpg( kstp ) ! horizontal gradient of Hydrostatic pressure 216 CALL dyn_spg( kstp , indic )! surface pressure gradient216 CALL dyn_spg( kstp ) ! surface pressure gradient 217 217 218 218 ua_sv(:,:,:) = ua(:,:,:) ! Save trends (barotropic trend has been fully updated at this stage) … … 329 329 CALL dyn_bfr( kstp ) ! bottom friction 330 330 CALL dyn_zdf( kstp ) ! vertical diffusion 331 CALL dyn_spg( kstp , indic )! surface pressure gradient331 CALL dyn_spg( kstp ) ! surface pressure gradient 332 332 ENDIF 333 333 CALL dyn_nxt( kstp ) ! lateral velocity at next time step -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/OPA_SRC/stpctl.F90
r3294 r5868 16 16 USE oce ! ocean dynamics and tracers variables 17 17 USE dom_oce ! ocean space and time domain variables 18 USE sol_oce ! ocean space and time domain variables19 18 USE in_out_manager ! I/O manager 20 19 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 21 20 USE lib_mpp ! distributed memory computing 22 USE dynspg_oce ! pressure gradient schemes23 21 USE c1d ! 1D vertical configuration 24 22 … … 43 41 !! ** Method : - Save the time step in numstp 44 42 !! - Print it each 50 time steps 45 !! - Print solver statistics in numsol 46 !! - Stop the run IF problem for the solver ( indec < 0 ) 43 !! - Stop the run IF problem ( indic < 0 ) 47 44 !! 48 45 !! ** Actions : 'time.step' file containing the last ocean time-step … … 50 47 !!---------------------------------------------------------------------- 51 48 INTEGER, INTENT( in ) :: kt ! ocean time-step index 52 INTEGER, INTENT( inout ) :: kindic ! indicator of solver convergence49 INTEGER, INTENT( inout ) :: kindic ! error indicator 53 50 !! 54 51 INTEGER :: ji, jj, jk ! dummy loop indices … … 143 140 IF( lk_c1d ) RETURN ! No log file in case of 1D vertical configuration 144 141 145 ! log file (solver or ssh statistics) 146 ! -------- 147 IF( lk_dynspg_flt ) THEN ! elliptic solver statistics (if required) 148 ! 149 IF(lwp) WRITE(numsol,9200) kt, niter, res, SQRT(epsr)/eps ! Solver 150 ! 151 IF( kindic < 0 .AND. zsmin > 0.e0 .AND. zumax <= 20.e0 ) THEN ! create a abort file if problem found 152 IF(lwp) THEN 153 WRITE(numout,*) ' stpctl: the elliptic solver DO not converge or explode' 154 WRITE(numout,*) ' ====== ' 155 WRITE(numout,9200) kt, niter, res, sqrt(epsr)/eps 156 WRITE(numout,*) 157 WRITE(numout,*) ' stpctl: output of last fields' 158 WRITE(numout,*) ' ====== ' 159 ENDIF 160 ENDIF 161 ! 162 ELSE !* ssh statistics (and others...) 163 IF( kt == nit000 .AND. lwp ) THEN ! open ssh statistics file (put in solver.stat file) 164 CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 165 ENDIF 166 ! 167 zssh2 = SUM( sshn(:,:) * sshn(:,:) * tmask_i(:,:) ) 168 IF( lk_mpp ) CALL mpp_sum( zssh2 ) ! sum over the global domain 169 ! 170 IF(lwp) WRITE(numsol,9300) kt, zssh2, zumax, zsmin ! ssh statistics 171 ! 142 ! log file (ssh statistics) 143 ! -------- !* ssh statistics (and others...) 144 IF( kt == nit000 .AND. lwp ) THEN ! open ssh statistics file (put in solver.stat file) 145 CALL ctl_opn( numsol, 'solver.stat', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 172 146 ENDIF 147 ! 148 zssh2 = SUM( sshn(:,:) * sshn(:,:) * tmask_i(:,:) ) 149 IF( lk_mpp ) CALL mpp_sum( zssh2 ) ! sum over the global domain 150 ! 151 IF(lwp) WRITE(numsol,9300) kt, zssh2, zumax, zsmin ! ssh statistics 152 ! 173 153 174 154 9200 FORMAT('it:', i8, ' iter:', i4, ' r: ',e16.10, ' b: ',e16.10 ) -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/NEMO/SAS_SRC/diawri.F90
r5836 r5868 26 26 USE dom_oce ! ocean space and time domain 27 27 USE zdf_oce ! ocean vertical physics 28 USE sol_oce ! solver variables29 28 USE sbc_oce ! Surface boundary condition: ocean fields 30 29 USE sbc_ice ! Surface boundary condition: ice fields -
branches/2015/dev_r5847_MERCATOR9_solveur_simplification/NEMOGCM/SETTE/sette.sh
r5840 r5868 168 168 set_namelist namelist_cfg ln_clobber .true. 169 169 set_namelist namelist_cfg nn_fwb 0 170 set_namelist namelist_cfg nn_solv 2171 170 set_namelist namelist_cfg jpni 2 172 171 set_namelist namelist_cfg jpnj 2 … … 192 191 set_namelist namelist_cfg ln_clobber .true. 193 192 set_namelist namelist_cfg nn_fwb 0 194 set_namelist namelist_cfg nn_solv 2195 193 set_namelist namelist_cfg jpni 2 196 194 set_namelist namelist_cfg jpnj 2 … … 238 236 set_namelist namelist_cfg ln_ctl .false. 239 237 set_namelist namelist_cfg ln_clobber .true. 240 set_namelist namelist_cfg nn_solv 2241 238 set_namelist namelist_cfg jpni 1 242 239 set_namelist namelist_cfg jpnj 4 … … 265 262 set_namelist namelist_cfg ln_ctl .false. 266 263 set_namelist namelist_cfg ln_clobber .true. 267 set_namelist namelist_cfg nn_solv 2268 264 set_namelist namelist_cfg jpni 2 269 265 set_namelist namelist_cfg jpnj 2 … … 304 300 set_namelist namelist_cfg jpnj 4 305 301 set_namelist namelist_cfg jpnij 8 306 set_namelist namelist_cfg nn_solv 2307 302 set_namelist namelist_top_cfg ln_trcdta .false. 308 303 set_namelist namelist_top_cfg ln_diatrc .false. … … 340 335 set_namelist namelist_cfg jpnj 4 341 336 set_namelist namelist_cfg jpnij 8 342 set_namelist namelist_cfg nn_solv 2343 337 set_namelist namelist_top_cfg ln_diatrc .false. 344 338 set_namelist namelist_top_cfg ln_rsttr .true. … … 398 392 set_namelist namelist_cfg jpnj 4 399 393 set_namelist namelist_cfg jpnij 16 400 set_namelist namelist_cfg nn_solv 2401 394 set_namelist namelist_top_cfg ln_trcdta .false. 402 395 set_namelist namelist_top_cfg ln_diatrc .false. … … 437 430 set_namelist namelist_cfg jpnj 8 438 431 set_namelist namelist_cfg jpnij 16 439 set_namelist namelist_cfg nn_solv 2440 432 set_namelist namelist_top_cfg ln_trcdta .false. 441 433 set_namelist namelist_top_cfg ln_diatrc .false. … … 658 650 set_namelist namelist_cfg jpnj 2 659 651 set_namelist namelist_cfg jpnij 4 660 set_namelist namelist_cfg nn_solv 2661 652 if [ ${USING_MPMD} == "yes" ] ; then 662 653 set_xio_using_server iodef.xml true … … 682 673 set_namelist namelist_cfg jpnj 2 683 674 set_namelist namelist_cfg jpnij 4 684 set_namelist namelist_cfg nn_solv 2685 675 set_namelist namelist_cfg cn_ocerst_in \"O2L3_LONG_00000075_restart\" 686 676 set_namelist namelist_ice_cfg cn_icerst_in \"O2L3_LONG_00000075_restart_ice\" … … 723 713 set_namelist namelist_cfg jpnj 4 724 714 set_namelist namelist_cfg jpnij 16 725 set_namelist namelist_cfg nn_solv 2726 715 if [ ${USING_MPMD} == "yes" ] ; then 727 716 set_xio_using_server iodef.xml true … … 748 737 set_namelist namelist_cfg jpnj 8 749 738 set_namelist namelist_cfg jpnij 16 750 set_namelist namelist_cfg nn_solv 2751 739 if [ ${USING_MPMD} == "yes" ] ; then 752 740 set_xio_using_server iodef.xml true … … 1019 1007 set_namelist namelist_cfg ln_clobber .true. 1020 1008 set_namelist namelist_cfg nn_fwb 0 1021 set_namelist namelist_cfg nn_solv 21022 1009 set_namelist namelist_cfg jpni 2 1023 1010 set_namelist namelist_cfg jpnj 2 … … 1043 1030 set_namelist namelist_cfg ln_clobber .true. 1044 1031 set_namelist namelist_cfg nn_fwb 0 1045 set_namelist namelist_cfg nn_solv 21046 1032 set_namelist namelist_cfg jpni 2 1047 1033 set_namelist namelist_cfg jpnj 2 … … 1088 1074 set_namelist namelist_cfg ln_ctl .false. 1089 1075 set_namelist namelist_cfg ln_clobber .true. 1090 set_namelist namelist_cfg nn_solv 21091 1076 set_namelist namelist_cfg jpni 1 1092 1077 set_namelist namelist_cfg jpnj 4 … … 1115 1100 set_namelist namelist_cfg ln_ctl .false. 1116 1101 set_namelist namelist_cfg ln_clobber .true. 1117 set_namelist namelist_cfg nn_solv 21118 1102 set_namelist namelist_cfg jpni 2 1119 1103 set_namelist namelist_cfg jpnj 2 … … 1154 1138 set_namelist namelist_cfg jpnj 4 1155 1139 set_namelist namelist_cfg jpnij 16 1156 set_namelist namelist_cfg nn_solv 21157 1140 set_namelist namelist_cfg ln_t3d .true. 1158 1141 set_namelist namelist_cfg ln_s3d .true. … … 1193 1176 set_namelist namelist_cfg jpnj 8 1194 1177 set_namelist namelist_cfg jpnij 16 1195 set_namelist namelist_cfg nn_solv 21196 1178 set_namelist namelist_cfg ln_t3d .true. 1197 1179 set_namelist namelist_cfg ln_s3d .true. … … 1347 1329 set_namelist namelist_cfg jpnj 2 1348 1330 set_namelist namelist_cfg jpnij 4 1349 set_namelist namelist_cfg nn_solv 21350 1331 # 1351 1332 set_namelist 1_namelist_cfg cn_exp \"O2LP_LONG\" … … 1380 1361 1381 1362 set_namelist namelist_cfg jpnij 4 1382 set_namelist namelist_cfg nn_solv 21383 1363 set_namelist 1_namelist_cfg cn_exp \"O2LP_SHORT\" 1384 1364 set_namelist 1_namelist_cfg nn_it000 151 … … 1432 1412 set_namelist namelist_cfg jpnj 4 1433 1413 set_namelist namelist_cfg jpnij 16 1434 set_namelist namelist_cfg nn_solv 21435 1414 # 1436 1415 set_namelist 1_namelist_cfg nn_it000 1 … … 1464 1443 set_namelist namelist_cfg jpnj 8 1465 1444 set_namelist namelist_cfg jpnij 16 1466 set_namelist namelist_cfg nn_solv 21467 1445 # 1468 1446 set_namelist 1_namelist_cfg nn_it000 1
Note: See TracChangeset
for help on using the changeset viewer.