- Timestamp:
- 2020-09-14T17:40:34+02:00 (4 years ago)
- Location:
- NEMO/branches/2019/dev_r11351_fldread_with_XIOS
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11351_fldread_with_XIOS
- Property svn:externals
-
old new 3 3 ^/utils/build/mk@HEAD mk 4 4 ^/utils/tools@HEAD tools 5 ^/vendors/AGRIF/dev @HEADext/AGRIF5 ^/vendors/AGRIF/dev_r12970_AGRIF_CMEMS ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM 7 7 ^/vendors/IOIPSL@HEAD ext/IOIPSL 8 9 # SETTE 10 ^/utils/CI/sette@13382 sette
-
- Property svn:externals
-
NEMO/branches/2019/dev_r11351_fldread_with_XIOS/src/OCE/FLO/flodom.F90
r10425 r13463 6 6 !! History : OPA ! 1998-07 (Y.Drillet, CLIPPER) Original code 7 7 !! NEMO 3.3 ! 2011-09 (C.Bricaud,S.Law-Chune Mercator-Ocean): add ARIANE convention + comsecitc changes 8 !!----------------------------------------------------------------------9 #if defined key_floats10 !!----------------------------------------------------------------------11 !! 'key_floats' float trajectories12 8 !!---------------------------------------------------------------------- 13 9 !! flo_dom : initialization of floats … … 44 40 CONTAINS 45 41 46 SUBROUTINE flo_dom 42 SUBROUTINE flo_dom( Kmm ) 47 43 !! --------------------------------------------------------------------- 48 44 !! *** ROUTINE flo_dom *** … … 53 49 !! the longitude (degree) and the depth (m). 54 50 !!---------------------------------------------------------------------- 51 INTEGER, INTENT(in) :: Kmm ! ocean time level index 52 ! 55 53 INTEGER :: jfl ! dummy loop 56 54 INTEGER :: inum ! logical unit for file read … … 94 92 CALL flo_add_new_ariane_floats(jpnrstflo+1,jpnfl) 95 93 ELSE !Add new floats with long/lat convention 96 CALL flo_add_new_floats( jpnrstflo+1,jpnfl)94 CALL flo_add_new_floats(Kmm,jpnrstflo+1,jpnfl) 97 95 ENDIF 98 96 ENDIF … … 106 104 CALL flo_add_new_ariane_floats(1,jpnfl) 107 105 ELSE !Add new floats with long/lat convention 108 CALL flo_add_new_floats( 1,jpnfl)106 CALL flo_add_new_floats(Kmm,1,jpnfl) 109 107 ENDIF 110 108 … … 113 111 END SUBROUTINE flo_dom 114 112 115 SUBROUTINE flo_add_new_floats( kfl_start, kfl_end)113 SUBROUTINE flo_add_new_floats(Kmm, kfl_start, kfl_end) 116 114 !! ------------------------------------------------------------- 117 115 !! *** SUBROUTINE add_new_arianefloats *** … … 128 126 !! ** Method : 129 127 !!---------------------------------------------------------------------- 128 INTEGER, INTENT(in) :: Kmm 130 129 INTEGER, INTENT(in) :: kfl_start, kfl_end 131 130 !! … … 156 155 ikmfl(jfl) = 0 157 156 # if defined key_mpp_mpi 158 DO ji = MAX( nldi,2), nlei159 DO jj = MAX( nldj,2), nlej! NO vector opt.157 DO ji = MAX(Nis0,2), Nie0 158 DO jj = MAX(Njs0,2), Nje0 ! NO vector opt. 160 159 # else 161 160 DO ji = 2, jpi … … 174 173 ihtest(jfl) = ihtest(jfl)+1 175 174 DO jk = 1, jpk-1 176 IF( (gdepw _n(ji,jj,jk) <= flzz(jfl)) .AND. (gdepw_n(ji,jj,jk+1) > flzz(jfl)) ) THEN175 IF( (gdepw(ji,jj,jk,Kmm) <= flzz(jfl)) .AND. (gdepw(ji,jj,jk+1,Kmm) > flzz(jfl)) ) THEN 177 176 ikmfl(jfl) = jk 178 177 ivtest(jfl) = ivtest(jfl) + 1 … … 236 235 zgifl(jfl)= (iimfl(jfl)-0.5) + zdxab/e1u(iimfl(jfl)-1,ijmfl(jfl)) + (mig(1)-1) 237 236 zgjfl(jfl)= (ijmfl(jfl)-0.5) + zdyad/e2v(iimfl(jfl),ijmfl(jfl)-1) + (mjg(1)-1) 238 zgkfl(jfl) = (( gdepw _n(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)+1) - flzz(jfl) )* ikmfl(jfl)) &239 & / ( gdepw _n(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)+1) &240 & - gdepw _n(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)) ) &241 & + (( flzz(jfl)-gdepw _n(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)) ) *(ikmfl(jfl)+1)) &242 & / ( gdepw _n(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)+1) &243 & - gdepw _n(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)) )237 zgkfl(jfl) = (( gdepw(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)+1,Kmm) - flzz(jfl) )* ikmfl(jfl)) & 238 & / ( gdepw(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)+1,Kmm) & 239 & - gdepw(iimfl(jfl),ijmfl(jfl),ikmfl(jfl) ,Kmm) ) & 240 & + (( flzz(jfl)-gdepw(iimfl(jfl),ijmfl(jfl),ikmfl(jfl),Kmm) ) *(ikmfl(jfl)+1)) & 241 & / ( gdepw(iimfl(jfl),ijmfl(jfl),ikmfl(jfl)+1,Kmm) & 242 & - gdepw(iimfl(jfl),ijmfl(jfl),ikmfl(jfl),Kmm) ) 244 243 ELSE 245 244 zgifl(jfl) = 0.e0 … … 437 436 IF( ABS(dlx) > 1.0_wp ) dlx = 1.0_wp 438 437 ! 439 dld = ATAN( DSQRT( 1._wp * ( 1._wp-dlx )/( 1._wp+dlx ) )) * 222.24_wp / dls438 dld = ATAN(SQRT( 1._wp * ( 1._wp-dlx )/( 1._wp+dlx ) )) * 222.24_wp / dls 440 439 flo_dstnce = dld * 1000._wp 441 440 ! … … 455 454 END FUNCTION flo_dom_alloc 456 455 457 458 #else459 !!----------------------------------------------------------------------460 !! Default option Empty module461 !!----------------------------------------------------------------------462 CONTAINS463 SUBROUTINE flo_dom ! Empty routine464 WRITE(*,*) 'flo_dom: : You should not have seen this print! error?'465 END SUBROUTINE flo_dom466 #endif467 468 456 !!====================================================================== 469 457 END MODULE flodom
Note: See TracChangeset
for help on using the changeset viewer.