- Timestamp:
- 2016-11-06T17:31:33+01:00 (8 years ago)
- Location:
- branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM
- Files:
-
- 1 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domain.F90
r7188 r7200 22 22 !! dom_nam : read and contral domain namelists 23 23 !! dom_ctl : control print for the ocean domain 24 !! cfg_write : create the "domain_cfg.nc" file containing all required configuration information 24 !! domain_cfg : read the global domain size in domain configuration file 25 !! cfg_write : create the domain configuration file 25 26 !!---------------------------------------------------------------------- 26 27 USE oce ! ocean variables … … 48 49 PRIVATE 49 50 50 PUBLIC dom_init ! called by opa.F90 51 PUBLIC dom_init ! called by nemogcm.F90 52 PUBLIC domain_cfg ! called by nemogcm.F90 51 53 52 54 !!------------------------------------------------------------------------- … … 110 112 END SELECT 111 113 WRITE(numout,*) ' Ocean model configuration used:' 112 WRITE(numout,*) ' c p_cfg = ', cp_cfg113 WRITE(numout,*) ' jp_cfg = ', jp_cfg114 WRITE(numout,*) ' cn_cfg = ', cn_cfg 115 WRITE(numout,*) ' nn_cfg = ', nn_cfg 114 116 ENDIF 115 117 ! … … 123 125 CALL dom_glo ! global domain versus local domain 124 126 CALL dom_nam ! read namelist ( namrun, namdom ) 125 CALL dom_clo( c p_cfg, jp_cfg ) ! Closed seas and lake127 CALL dom_clo( cn_cfg, nn_cfg ) ! Closed seas and lake 126 128 CALL dom_hgr ! Horizontal mesh 127 129 CALL dom_zgr( ik_top, ik_bot ) ! Vertical mesh and bathymetry … … 287 289 INTEGER :: ios ! Local integer output status for namelist read 288 290 !!---------------------------------------------------------------------- 289 291 ! 290 292 REWIND( numnam_ref ) ! Namelist namrun in reference namelist : Parameters of the run 291 293 READ ( numnam_ref, namrun, IOSTAT = ios, ERR = 901) 292 294 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namrun in reference namelist', lwp ) 293 295 ! 294 296 REWIND( numnam_cfg ) ! Namelist namrun in configuration namelist : Parameters of the run 295 297 READ ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 ) … … 380 382 READ ( numnam_ref, namdom, IOSTAT = ios, ERR = 903) 381 383 903 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 382 383 384 ! 384 385 REWIND( numnam_cfg ) ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) … … 414 415 READ ( numnam_ref, namnc4, IOSTAT = ios, ERR = 907) 415 416 907 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namnc4 in reference namelist', lwp ) 416 417 ! 417 418 REWIND( numnam_cfg ) ! Namelist namnc4 in configuration namelist : NETCDF 418 419 READ ( numnam_cfg, namnc4, IOSTAT = ios, ERR = 908 ) … … 492 493 493 494 495 SUBROUTINE domain_cfg( ldtxt, ldnam, cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 496 !!---------------------------------------------------------------------- 497 !! *** ROUTINE dom_nam *** 498 !! 499 !! ** Purpose : read the domain size in domain configuration file 500 !! 501 !! ** Method : 502 !! 503 !!---------------------------------------------------------------------- 504 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information 505 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 506 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution 507 INTEGER , INTENT(out) :: kpi, kpj, kpk ! global domain sizes 508 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 509 ! 510 INTEGER :: inum, ii ! local integer 511 REAL(wp) :: zorca_res ! local scalars 512 REAL(wp) :: ziglo, zjglo, zkglo, zperio ! - - 513 !!---------------------------------------------------------------------- 514 ! 515 ii = 1 516 WRITE(ldtxt(ii),*) ' ' ; ii = ii+1 517 WRITE(ldtxt(ii),*) 'domain_cfg : domain size read in', TRIM( cn_domcfg ), ' file' ; ii = ii+1 518 WRITE(ldtxt(ii),*) '~~~~~~~~~~ ' ; ii = ii+1 519 ! 520 CALL iom_open( cn_domcfg, inum ) 521 ! 522 ! !- ORCA family specificity 523 IF( iom_varid( inum, 'ORCA' , ldstop = .FALSE. ) > 0 .AND. & 524 & iom_varid( inum, 'ORCA_resolution', ldstop = .FALSE. ) > 0 ) THEN 525 ! 526 cd_cfg = 'ORCA' 527 CALL iom_get( inum, 'ORCA_resolution', zorca_res ) ; kk_cfg = INT( zorca_res ) 528 ! 529 WRITE(ldtxt(ii),*) ' ' ; ii = ii+1 530 WRITE(ldtxt(ii),*) ' ==>>> ORCA configuration ' ; ii = ii+1 531 WRITE(ldtxt(ii),*) ' ' ; ii = ii+1 532 ! 533 ELSE !- cd_cfg & k_cfg are not used 534 cd_cfg = 'UNKNOWN' 535 kk_cfg = -9999999 536 ENDIF 537 ! 538 CALL iom_get( inum, 'jpiglo', ziglo ) ; jpiglo = INT( ziglo ) 539 CALL iom_get( inum, 'jpjglo', zjglo ) ; jpjglo = INT( zjglo ) 540 CALL iom_get( inum, 'jpkglo', zkglo ) ; jpkglo = INT( zkglo ) 541 CALL iom_get( inum, 'jperio', zperio ) ; jperio = INT( zperio ) 542 CALL iom_close( inum ) 543 ! 544 WRITE(ldtxt(ii),*) ' cn_cfg = ', TRIM(cd_cfg), ' nn_cfg = ', kk_cfg ; ii = ii+1 545 WRITE(ldtxt(ii),*) ' jpiglo = ', jpiglo ; ii = ii+1 546 WRITE(ldtxt(ii),*) ' jpjglo = ', jpjglo , ' jpkglo = ', jpkglo ; ii = ii +1 547 WRITE(ldtxt(ii),*) ' jpkglo = ', jpkglo ; ii = ii +1 548 WRITE(ldtxt(ii),*) ' type of global domain lateral boundary jperio = ', jperio ; ii = ii +1 549 ! 550 END SUBROUTINE domain_cfg 551 552 494 553 SUBROUTINE cfg_write 495 554 !!---------------------------------------------------------------------- 496 555 !! *** ROUTINE cfg_write *** 497 556 !! 498 !! ** Purpose : Create the " domain_cfg" file, a NetCDF file which557 !! ** Purpose : Create the "cn_domcfg_out" file, a NetCDF file which 499 558 !! contains all the ocean domain informations required to 500 559 !! define an ocean configuration. … … 503 562 !! ocean configuration. 504 563 !! 505 !! ** output file : domain_cfg.nc : domain size, characteristics, horizontal mesh, 506 !! Coriolis parameter, depth and vertical scale factors 564 !! ** output file : domcfg_out.nc : domain size, characteristics, horizontal 565 !! mesh, Coriolis parameter, and vertical scale factors 566 !! NB: also contain ORCA family information 507 567 !!---------------------------------------------------------------------- 508 568 INTEGER :: ji, jj, jk ! dummy loop indices 509 569 INTEGER :: izco, izps, isco, icav 510 INTEGER :: inum ! temprary units for 'domain_cfg.nc' file570 INTEGER :: inum ! local units 511 571 CHARACTER(len=21) :: clnam ! filename (mesh and mask informations) 512 572 REAL(wp), DIMENSION(jpi,jpj) :: z2d ! workspace … … 514 574 ! 515 575 IF(lwp) WRITE(numout,*) 516 IF(lwp) WRITE(numout,*) 'cfg_write : create the "domain_cfg.nc" file containing all required configuration information'576 IF(lwp) WRITE(numout,*) 'cfg_write : create the domain configuration file (', TRIM(cn_domcfg_out),'.nc)' 517 577 IF(lwp) WRITE(numout,*) '~~~~~~~~~' 518 578 ! 519 579 ! ! ============================= ! 520 ! ! create 'dom ain_cfg.nc' file !580 ! ! create 'domcfg_out.nc' file ! 521 581 ! ! ============================= ! 522 582 ! 523 clnam = 'dom ain_cfg' ! filename (configuration information)583 clnam = 'domcfg_out' ! filename (configuration information) 524 584 CALL iom_open( TRIM(clnam), inum, ldwrt = .TRUE., kiolib = jprstlib ) 525 585 586 ! 587 ! !== ORCA family specificities ==! 588 IF( cn_cfg == "ORCA" ) THEN 589 CALL iom_rstput( 0, 0, inum, 'ORCA' , 1._wp , ktype = jp_i4 ) 590 CALL iom_rstput( 0, 0, inum, 'ORCA_index', REAL( nn_cfg, wp), ktype = jp_i4 ) 591 ENDIF 592 ! 526 593 ! !== global domain size ==! 527 594 ! … … 574 641 ! !== vertical mesh ==! 575 642 ! 576 CALL iom_rstput( 0, 0, inum, 'e3t_1d' , e3t_1d 577 CALL iom_rstput( 0, 0, inum, 'e3w_1d' , e3w_1d 578 ! 579 CALL iom_rstput( 0, 0, inum, 'e3t_0' , e3t_0 580 CALL iom_rstput( 0, 0, inum, 'e3u_0' , e3u_0 581 CALL iom_rstput( 0, 0, inum, 'e3v_0' , e3v_0 582 CALL iom_rstput( 0, 0, inum, 'e3f_0' , e3f_0 583 CALL iom_rstput( 0, 0, inum, 'e3w_0' , e3w_0 584 CALL iom_rstput( 0, 0, inum, 'e3uw_0' , e3uw_0 585 CALL iom_rstput( 0, 0, inum, 'e3vw_0' , e3vw_0 643 CALL iom_rstput( 0, 0, inum, 'e3t_1d' , e3t_1d , ktype = jp_r8 ) ! reference 1D-coordinate 644 CALL iom_rstput( 0, 0, inum, 'e3w_1d' , e3w_1d , ktype = jp_r8 ) 645 ! 646 CALL iom_rstput( 0, 0, inum, 'e3t_0' , e3t_0 , ktype = jp_r8 ) ! vertical scale factors 647 CALL iom_rstput( 0, 0, inum, 'e3u_0' , e3u_0 , ktype = jp_r8 ) 648 CALL iom_rstput( 0, 0, inum, 'e3v_0' , e3v_0 , ktype = jp_r8 ) 649 CALL iom_rstput( 0, 0, inum, 'e3f_0' , e3f_0 , ktype = jp_r8 ) 650 CALL iom_rstput( 0, 0, inum, 'e3w_0' , e3w_0 , ktype = jp_r8 ) 651 CALL iom_rstput( 0, 0, inum, 'e3uw_0' , e3uw_0 , ktype = jp_r8 ) 652 CALL iom_rstput( 0, 0, inum, 'e3vw_0' , e3vw_0 , ktype = jp_r8 ) 586 653 ! 587 654 ! !== wet top and bottom level ==! (caution: multiplied by ssmask) -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domhgr.F90
r6894 r7200 21 21 !!---------------------------------------------------------------------- 22 22 !! dom_hgr : initialize the horizontal mesh 23 !! hgr_read : read "coordinate" NetCDFfile23 !! hgr_read : read horizontal information in the domain configuration file 24 24 !!---------------------------------------------------------------------- 25 25 USE dom_oce ! ocean space and time domain … … 91 91 IF( ln_read_cfg ) THEN !== read in mesh_mask.nc file ==! 92 92 IF(lwp) WRITE(numout,*) 93 IF(lwp) WRITE(numout,*) ' read horizontal mesh in "domain_cfg"file'93 IF(lwp) WRITE(numout,*) ' read horizontal mesh in ', TRIM( cn_domcfg ), ' file' 94 94 ! 95 95 CALL hgr_read ( glamt , glamu , glamv , glamf , & ! geographic position (required) … … 121 121 ELSE 122 122 IF( ln_read_cfg ) THEN 123 IF(lwp) WRITE(numout,*) ' Coriolis parameter have been read in "domain_cfg"file'123 IF(lwp) WRITE(numout,*) ' Coriolis parameter have been read in ', TRIM( cn_domcfg ), ' file' 124 124 ELSE 125 125 IF(lwp) WRITE(numout,*) ' Coriolis parameter have been set in usr_def_hgr routine' … … 186 186 ENDIF 187 187 ! 188 CALL iom_open( 'domain_cfg', inum )188 CALL iom_open( cn_domcfg, inum ) 189 189 ! 190 190 CALL iom_get( inum, jpdom_data, 'glamt', plamt, lrowattr=ln_use_jattr ) … … 210 210 IF( iom_varid( inum, 'ff_f', ldstop = .FALSE. ) > 0 .AND. & 211 211 & iom_varid( inum, 'ff_t', ldstop = .FALSE. ) > 0 ) THEN 212 IF(lwp) WRITE(numout,*) ' Coriolis factor at f- and t-points read in domain_cfgfile'212 IF(lwp) WRITE(numout,*) ' Coriolis factor at f- and t-points read in ', TRIM( cn_domcfg ), ' file' 213 213 CALL iom_get( inum, jpdom_data, 'ff_f' , pff_f , lrowattr=ln_use_jattr ) 214 214 CALL iom_get( inum, jpdom_data, 'ff_t' , pff_t , lrowattr=ln_use_jattr ) … … 219 219 ! 220 220 IF( iom_varid( inum, 'e1e2u', ldstop = .FALSE. ) > 0 ) THEN 221 IF(lwp) WRITE(numout,*) ' e1e2u & e1e2v read in domain_cfgfile'221 IF(lwp) WRITE(numout,*) ' e1e2u & e1e2v read in ', TRIM( cn_domcfg ), ' file' 222 222 CALL iom_get( inum, jpdom_data, 'e1e2u' , pe1e2u , lrowattr=ln_use_jattr ) 223 223 CALL iom_get( inum, jpdom_data, 'e1e2v' , pe1e2v , lrowattr=ln_use_jattr ) -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/dommsk.F90
r7111 r7200 140 140 END DO 141 141 END DO 142 !SF add here lbc_lnk: bug not still understood : cause now domain_cfg is read ! 142 !SF add here lbc_lnk: bug not still understood : cause now domain configuration is read ! 143 !!gm I don't understand why... 143 144 CALL lbc_lnk( tmask , 'T', 1._wp ) ! Lateral boundary conditions 144 145 … … 263 264 ! -------------------------------- 264 265 ! 265 CALL usr_def_fmask( c p_cfg, jp_cfg, fmask )266 CALL usr_def_fmask( cn_cfg, nn_cfg, fmask ) 266 267 ! 267 268 ! -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90
r6667 r7200 232 232 END DO 233 233 END DO 234 IF( c p_cfg == "orca" .AND. jp_cfg == 3 ) THEN ! ORCA2: Suppress ztilde in the Foxe Basin for ORCA2234 IF( cn_cfg == "orca" .AND. nn_cfg == 3 ) THEN ! ORCA2: Suppress ztilde in the Foxe Basin for ORCA2 235 235 ii0 = 103 ; ii1 = 111 236 236 ij0 = 128 ; ij1 = 135 ; -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domzgr.F90
r7189 r7200 23 23 !!---------------------------------------------------------------------- 24 24 !! dom_zgr : read or set the ocean vertical coordinate system 25 !! zgr_read : read the vertical domain coordinate and mask in domain_cfgfile25 !! zgr_read : read the vertical information in the domain configuration file 26 26 !! zgr_top_bot : ocean top and bottom level for t-, u, and v-points with 1 as minimum value 27 27 !!--------------------------------------------------------------------- … … 89 89 IF( ln_read_cfg ) THEN !== read in mesh_mask.nc file ==! 90 90 IF(lwp) WRITE(numout,*) 91 IF(lwp) WRITE(numout,*) ' Read vertical mesh in "domain_cfg"file'91 IF(lwp) WRITE(numout,*) ' Read vertical mesh in ', TRIM( cn_domcfg ), ' file' 92 92 ! 93 93 CALL zgr_read ( ln_zco , ln_zps , ln_sco, ln_isfcav, & … … 120 120 IF(lwp) THEN ! Control print 121 121 WRITE(numout,*) 122 WRITE(numout,*) ' Type of vertical coordinate (read in domain_cfg.nc or set through user defined routines) :'122 WRITE(numout,*) ' Type of vertical coordinate (read in ', TRIM( cn_domcfg ), ' file or set in userdef_nam) :' 123 123 WRITE(numout,*) ' z-coordinate - full steps ln_zco = ', ln_zco 124 124 WRITE(numout,*) ' z-coordinate - partial steps ln_zps = ', ln_zps … … 178 178 !! *** ROUTINE zgr_read *** 179 179 !! 180 !! ** Purpose : Read the vertical information in a domain_cfg.ncfile180 !! ** Purpose : Read the vertical information in the domain configuration file 181 181 !! 182 182 !!---------------------------------------------------------------------- … … 198 198 IF(lwp) THEN 199 199 WRITE(numout,*) 200 WRITE(numout,*) ' zgr_read : read the vertical coordinates in "domain_cfg.nc"file'201 WRITE(numout,*) ' ~~~~~~~~ jpiglo = ', jpiglo, ' jpjglo = ', jpjglo, ' jpkglo = ', jpkglo202 ENDIF 203 ! 204 CALL iom_open( 'domain_cfg', inum )205 ! 206 ! !type of vertical coordinate200 WRITE(numout,*) ' zgr_read : read the vertical coordinates in ', TRIM( cn_domcfg ), ' file' 201 WRITE(numout,*) ' ~~~~~~~~' 202 ENDIF 203 ! 204 CALL iom_open( cn_domcfg, inum ) 205 ! 206 ! !* type of vertical coordinate 207 207 CALL iom_get( inum, 'ln_zco' , z_zco ) 208 208 CALL iom_get( inum, 'ln_zps' , z_zps ) … … 212 212 IF( z_sco == 0._wp ) THEN ; ld_sco = .false. ; ELSE ; ld_sco = .true. ; ENDIF 213 213 ! 214 ! !ocean cavities under iceshelves214 ! !* ocean cavities under iceshelves 215 215 CALL iom_get( inum, 'ln_isfcav', z_cav ) 216 216 IF( z_cav == 0._wp ) THEN ; ld_isfcav = .false. ; ELSE ; ld_isfcav = .true. ; ENDIF 217 217 ! 218 ! ! 1D vertical scale factors (reference coordinate)219 CALL iom_get( inum, jpdom_unknown, 'e3t_1d' , pe3t_1d ) 218 ! !* vertical scale factors 219 CALL iom_get( inum, jpdom_unknown, 'e3t_1d' , pe3t_1d ) ! 1D reference coordinate 220 220 CALL iom_get( inum, jpdom_unknown, 'e3w_1d' , pe3w_1d ) 221 221 ! 222 ! ! 3D vertical scale factors 223 CALL iom_get( inum, jpdom_data, 'e3t_0' , pe3t , lrowattr=ln_use_jattr ) 222 CALL iom_get( inum, jpdom_data, 'e3t_0' , pe3t , lrowattr=ln_use_jattr ) ! 3D coordinate 224 223 CALL iom_get( inum, jpdom_data, 'e3u_0' , pe3u , lrowattr=ln_use_jattr ) 225 224 CALL iom_get( inum, jpdom_data, 'e3v_0' , pe3v , lrowattr=ln_use_jattr ) … … 229 228 CALL iom_get( inum, jpdom_data, 'e3vw_0' , pe3vw , lrowattr=ln_use_jattr ) 230 229 ! 231 ! ! 1D & 3D depths 232 ! 233 ! ! old depth definition (obsolescent feature) 230 ! !* depths 231 ! !- old depth definition (obsolescent feature) 234 232 IF( iom_varid( inum, 'gdept_1d', ldstop = .FALSE. ) > 0 .AND. & 235 233 & iom_varid( inum, 'gdepw_1d', ldstop = .FALSE. ) > 0 .AND. & … … 237 235 & iom_varid( inum, 'gdepw_0' , ldstop = .FALSE. ) > 0 ) THEN 238 236 CALL ctl_warn( 'zgr_read : old definition of depths and scale factors used ', & 239 & 'depths at t- and w-points read in domain_cfgfile')237 & ' depths at t- and w-points read in the domain configuration file') 240 238 CALL iom_get( inum, jpdom_unknown, 'gdept_1d', pdept_1d ) 241 239 CALL iom_get( inum, jpdom_unknown, 'gdepw_1d', pdepw_1d ) … … 243 241 CALL iom_get( inum, jpdom_data , 'gdepw_0' , pdepw , lrowattr=ln_use_jattr ) 244 242 ! 245 ELSE ! depths computed from e3. scale factors 246 ! 243 ELSE !- depths computed from e3. scale factors 247 244 CALL e3_to_depth( pe3t_1d, pe3w_1d, pdept_1d, pdepw_1d ) ! 1D reference depth 245 CALL e3_to_depth( pe3t , pe3w , pdept , pdepw ) ! 3D depths 248 246 IF(lwp) THEN 249 247 WRITE(numout,*) … … 252 250 WRITE(numout, "(10x, i4, 4f9.2)" ) ( jk, pdept_1d(jk), pdepw_1d(jk), pe3t_1d(jk), pe3w_1d(jk), jk = 1, jpk ) 253 251 ENDIF 254 ! 255 CALL e3_to_depth( pe3t , pe3w , pdept , pdepw ) ! 3D depths 256 ! 257 ENDIF 258 ! 259 ! ! ocean top and bottom level 260 CALL iom_get( inum, jpdom_data, 'bottom_level' , z2d , lrowattr=ln_use_jattr ) ! nb of ocean T-points 252 ENDIF 253 ! 254 ! !* ocean top and bottom level 255 CALL iom_get( inum, jpdom_data, 'top_level' , z2d , lrowattr=ln_use_jattr ) ! 1st wet T-points (ISF) 256 k_top(:,:) = INT( z2d(:,:) ) 257 CALL iom_get( inum, jpdom_data, 'bottom_level' , z2d , lrowattr=ln_use_jattr ) ! last wet T-points 261 258 k_bot(:,:) = INT( z2d(:,:) ) 262 CALL iom_get( inum, jpdom_data, 'top_level' , z2d , lrowattr=ln_use_jattr ) ! nb of ocean T-points (ISF)263 k_top(:,:) = INT( z2d(:,:) )264 259 ! 265 260 CALL iom_close( inum ) -
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/dtatsd.F90
r6580 r7200 155 155 ! 156 156 ! 157 !!gm This should be removed from the code ===>>>> T & S files has to be changed 158 ! 157 159 ! !== ORCA_R2 configuration and T & S damping ==! 158 IF( c p_cfg == "orca" .AND. jp_cfg == 2 .AND. ln_tsd_tradmp ) THEN ! some hand made alterations160 IF( cn_cfg == "orca" .AND. nn_cfg == 2 .AND. ln_tsd_tradmp ) THEN ! some hand made alterations 159 161 ! 160 162 ij0 = 101 ; ij1 = 109 ! Reduced T & S in the Alboran Sea … … 178 180 sf_tsd(jp_tem)%fnow( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) , 14:20 ) = 6.0_wp 179 181 ENDIF 182 !!gm end 180 183 ! 181 184 ptsd(:,:,:,jp_tem) = sf_tsd(jp_tem)%fnow(:,:,:) ! NO mask
Note: See TracChangeset
for help on using the changeset viewer.