- Timestamp:
- 2016-05-22T20:11:06+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/DOM/domhgr.F90
r6595 r6596 95 95 CALL hgr_read ( glamt , glamu , glamv , glamf , & ! geographic position (required) 96 96 & gphit , gphiu , gphiv , gphif , & ! - - 97 & iff , ff ,& ! Coriolis parameter (if not on the sphere)97 & iff , ff_f , ff_t , & ! Coriolis parameter (if not on the sphere) 98 98 & e1t , e1u , e1v , e1f , & ! scale factors (required) 99 99 & e2t , e2u , e2v , e2f , & ! - - - … … 106 106 CALL usr_def_hgr( glamt , glamu , glamv , glamf , & ! geographic position (required) 107 107 & gphit , gphiu , gphiv , gphif , & ! 108 & iff , ff ,& ! Coriolis parameter (if domain not on the sphere)108 & iff , ff_f , ff_t , & ! Coriolis parameter (if domain not on the sphere) 109 109 & e1t , e1u , e1v , e1f , & ! scale factors (required) 110 110 & e2t , e2u , e2v , e2f , & ! … … 116 116 ! 117 117 IF( iff == 0 ) THEN ! Coriolis parameter has not been defined 118 IF(lwp) WRITE(numout,*) ' Coriolis parameter calculated on the sphere from gphif' 119 ff(:,:) = 2. * omega * SIN( rad * gphif(:,:) ) ! compute it on the sphere 118 IF(lwp) WRITE(numout,*) ' Coriolis parameter calculated on the sphere from gphif & gphit' 119 ff_f(:,:) = 2. * omega * SIN( rad * gphif(:,:) ) ! compute it on the sphere at f-point 120 ff_t(:,:) = 2. * omega * SIN( rad * gphit(:,:) ) ! - - - at t-point 120 121 ELSE 121 122 IF(lwp) WRITE(numout,*) ' Coriolis parameter have been read in "mesh_mask" file' … … 153 154 SUBROUTINE hgr_read( plamt , plamu , plamv , plamf , & ! gridpoints position (required) 154 155 & pphit , pphiu , pphiv , pphif , & 155 & kff , pff ,& ! Coriolis parameter (if not on the sphere)156 & kff , pff_f , pff_t , & ! Coriolis parameter (if not on the sphere) 156 157 & pe1t , pe1u , pe1v , pe1f , & ! scale factors (required) 157 158 & pe2t , pe2u , pe2v , pe2f , & … … 166 167 REAL(wp), DIMENSION(:,:), INTENT(out) :: pphit, pphiu, pphiv, pphif ! latitude outputs 167 168 INTEGER , INTENT(out) :: kff ! =1 Coriolis parameter read here, =0 otherwise 168 REAL(wp), DIMENSION(:,:), INTENT(out) :: pff 169 REAL(wp), DIMENSION(:,:), INTENT(out) :: pff_f, pff_t ! Coriolis factor at f-point (if found in file) 169 170 REAL(wp), DIMENSION(:,:), INTENT(out) :: pe1t, pe1u, pe1v, pe1f ! i-scale factors 170 171 REAL(wp), DIMENSION(:,:), INTENT(out) :: pe2t, pe2u, pe2v, pe2f ! j-scale factors … … 210 211 CALL iom_get( inum, jpdom_data, 'e2f' , pe2f , lrowattr=ln_use_jattr ) 211 212 ! 212 IF( iom_varid( inum, 'ff', ldstop = .FALSE. ) > 0 ) THEN 213 IF(lwp) WRITE(numout,*) ' ff read in mesh_mask file' 214 CALL iom_get( inum, jpdom_data, 'ff' , ff , lrowattr=ln_use_jattr ) 213 IF( iom_varid( inum, 'ff_f', ldstop = .FALSE. ) > 0 .AND. & 214 & iom_varid( inum, 'ff_t', ldstop = .FALSE. ) > 0 ) THEN 215 IF(lwp) WRITE(numout,*) ' Coriolis factor at f- and t-points read in mesh_mask file' 216 CALL iom_get( inum, jpdom_data, 'ff_f' , ff_f , lrowattr=ln_use_jattr ) 217 CALL iom_get( inum, jpdom_data, 'ff_t' , ff_t , lrowattr=ln_use_jattr ) 215 218 kff = 1 216 219 ELSE
Note: See TracChangeset
for help on using the changeset viewer.