Changeset 3363 for branches/2012/dev_r3322_NOCS09_SAS/NEMOGCM
- Timestamp:
- 2012-04-24T13:24:17+02:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_r3322_NOCS09_SAS/NEMOGCM/NEMO/SAS_SRC/sbcssm.F90
r3362 r3363 33 33 PRIVATE 34 34 35 PUBLIC sbc_ssm_init ! called by opa.F90 36 PUBLIC sbc_ssm ! called by step.F90 37 38 CHARACTER(len=100) :: cn_dir = './' !: Root directory for location of ssm files 39 LOGICAL :: ln_3d_uv = .true. !: specify whether input velocity data is 3D 35 PUBLIC sbc_ssm_sas_init ! called by opa.F90 36 PUBLIC sbc_ssm ! called by step.F90 37 38 CHARACTER(len=100) :: cn_dir = './' !: Root directory for location of ssm files 39 LOGICAL :: ln_3d_uv = .true. !: specify whether input velocity data is 3D 40 INTEGER , SAVE :: nfld_3d 41 INTEGER , SAVE :: nfld_2d 40 42 41 43 INTEGER , PARAMETER :: jpfld_3d = 4 ! maximum number of files to read … … 118 120 ENDIF 119 121 120 IF( jfld_3d > 0 ) CALL fld_read( kt, 1, sf_ssm_3d ) !== read data at kt time step ==!121 IF( jfld_2d > 0 ) CALL fld_read( kt, 1, sf_ssm_2d ) !== read data at kt time step ==!122 IF( nfld_3d > 0 ) CALL fld_read( kt, 1, sf_ssm_3d ) !== read data at kt time step ==! 123 IF( nfld_2d > 0 ) CALL fld_read( kt, 1, sf_ssm_2d ) !== read data at kt time step ==! 122 124 ! 123 125 IF( ln_3d_uv ) THEN … … 162 164 INTEGER :: ierr, ierr0, ierr1, ierr2, ierr3 ! return error code 163 165 INTEGER :: ifpr ! dummy loop indice 164 INTEGER :: jfld_3d, jfld_2d ! dummy loop arguments165 166 INTEGER :: inum, idv, idimv, jpm ! local integer 166 167 !! … … 202 203 IF( ln_3d_uv ) THEN 203 204 jf_usp = 1 ; jf_vsp = 2 204 jfld_3d = 2205 jfld_2d = 3205 nfld_3d = 2 206 nfld_2d = 3 206 207 slf_3d(jf_usp) = sn_usp ; slf_3d(jf_vsp) = sn_vsp 207 208 ELSE 208 209 jf_usp = 4 ; jf_vsp = 5 209 jfld_3d = 0210 jfld_2d = 5210 nfld_3d = 0 211 nfld_2d = 5 211 212 slf_2d(jf_usp) = sn_usp ; slf_2d(jf_vsp) = sn_vsp 212 213 ENDIF … … 214 215 slf_2d(jf_tem) = sn_tem ; slf_2d(jf_sal) = sn_sal ; slf_2d(jf_ssh) = sn_ssh 215 216 ! 216 IF( jfld_3d > 0 ) THEN217 ALLOCATE( sf_ssm_3d( jfld_3d), STAT=ierr ) ! set sf structure217 IF( nfld_3d > 0 ) THEN 218 ALLOCATE( sf_ssm_3d(nfld_3d), STAT=ierr ) ! set sf structure 218 219 IF( ierr > 0 ) THEN 219 220 CALL ctl_stop( 'sbc_ssm: unable to allocate sf structure' ) ; RETURN 220 221 ENDIF 221 DO ifpr = 1, jfld_3d222 DO ifpr = 1, nfld_3d 222 223 ALLOCATE( sf_ssm_3d(ifpr)%fnow(jpi,jpj,jpk) , STAT=ierr0 ) 223 224 IF( slf_3d(ifpr)%ln_tint ) ALLOCATE( sf_ssm_3d(ifpr)%fdta(jpi,jpj,jpk,2) , STAT=ierr1 ) … … 230 231 ENDIF 231 232 232 IF( jfld_2d > 0 ) THEN233 ALLOCATE( sf_ssm_2d( jfld_2d), STAT=ierr ) ! set sf structure233 IF( nfld_2d > 0 ) THEN 234 ALLOCATE( sf_ssm_2d(nfld_2d), STAT=ierr ) ! set sf structure 234 235 IF( ierr > 0 ) THEN 235 236 CALL ctl_stop( 'sbc_ssm: unable to allocate sf 2d structure' ) ; RETURN 236 237 ENDIF 237 DO ifpr = 1, jfld_2d238 DO ifpr = 1, nfld_2d 238 239 ALLOCATE( sf_ssm_2d(ifpr)%fnow(jpi,jpj,1) , STAT=ierr0 ) 239 240 IF( slf_2d(ifpr)%ln_tint ) ALLOCATE( sf_ssm_2d(ifpr)%fdta(jpi,jpj,1,2) , STAT=ierr1 ) … … 259 260 ENDIF 260 261 ! 261 END SUBROUTINE sbc_ssm_ init262 END SUBROUTINE sbc_ssm_sas_init 262 263 263 264 !!======================================================================
Note: See TracChangeset
for help on using the changeset viewer.