- Timestamp:
- 2013-11-05T12:59:53+01:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_LOCEAN_2013/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zsms.F90
r4148 r4152 76 76 ENDIF 77 77 ! 78 IF( ln_rsttr .AND. kt == nittrc000 ) CALL p4z_rst( nittrc000, 'READ' ) !* read or initialize all required fields 78 IF( kt == nittrc000 ) THEN 79 ! 80 CALL p4z_che ! initialize the chemical constants 81 ! 82 IF( .NOT. ln_rsttr ) THEN ; CALL p4z_ph_ini ! set PH at kt=nit000 83 ELSE ; CALL p4z_rst( nittrc000, 'READ' ) !* read or initialize all required fields 84 ENDIF 85 ! 86 ENDIF 87 ! 79 88 IF( ln_pisdmp .AND. MOD( kt - nn_dttrc, nn_pisdmp ) == 0 ) CALL p4z_dmp( kt ) ! Relaxation of some tracers 80 89 ! … … 254 263 END SUBROUTINE p4z_sms_init 255 264 265 SUBROUTINE p4z_ph_ini 266 !!--------------------------------------------------------------------- 267 !! *** ROUTINE p4z_ini_ph *** 268 !! 269 !! ** Purpose : Initialization of chemical variables of the carbon cycle 270 !!--------------------------------------------------------------------- 271 INTEGER :: ji, jj, jk 272 REAL(wp) :: zcaralk, zbicarb, zco3 273 REAL(wp) :: ztmas, ztmas1 274 !!--------------------------------------------------------------------- 275 276 ! Set PH from total alkalinity, borat (???), akb3 (???) and ak23 (???) 277 ! -------------------------------------------------------- 278 DO jk = 1, jpk 279 DO jj = 1, jpj 280 DO ji = 1, jpi 281 ztmas = tmask(ji,jj,jk) 282 ztmas1 = 1. - tmask(ji,jj,jk) 283 zcaralk = trn(ji,jj,jk,jptal) - borat(ji,jj,jk) / ( 1. + 1.E-8 / ( rtrn + akb3(ji,jj,jk) ) ) 284 zco3 = ( zcaralk - trn(ji,jj,jk,jpdic) ) * ztmas + 0.5e-3 * ztmas1 285 zbicarb = ( 2. * trn(ji,jj,jk,jpdic) - zcaralk ) 286 hi(ji,jj,jk) = ( ak23(ji,jj,jk) * zbicarb / zco3 ) * ztmas + 1.e-9 * ztmas1 287 END DO 288 END DO 289 END DO 290 ! 291 END SUBROUTINE p4z_ph_ini 292 293 256 294 SUBROUTINE p4z_rst( kt, cdrw ) 257 295 !!--------------------------------------------------------------------- … … 282 320 ELSE 283 321 ! hi(:,:,:) = 1.e-9 284 ! Set PH from total alkalinity, borat (???), akb3 (???) and ak23 (???) 285 ! -------------------------------------------------------- 286 DO jk = 1, jpk 287 DO jj = 1, jpj 288 DO ji = 1, jpi 289 ztmas = tmask(ji,jj,jk) 290 ztmas1 = 1. - tmask(ji,jj,jk) 291 zcaralk = trn(ji,jj,jk,jptal) - borat(ji,jj,jk) / ( 1. + 1.E-8 / ( rtrn + akb3(ji,jj,jk) ) ) 292 zco3 = ( zcaralk - trn(ji,jj,jk,jpdic) ) * ztmas + 0.5e-3 * ztmas1 293 zbicarb = ( 2. * trn(ji,jj,jk,jpdic) - zcaralk ) 294 hi(ji,jj,jk) = ( ak23(ji,jj,jk) * zbicarb / zco3 ) * ztmas + 1.e-9 * ztmas1 295 END DO 296 END DO 297 END DO 322 CALL p4z_ph_ini 298 323 ENDIF 299 324 CALL iom_get( numrtr, jpdom_autoglo, 'Silicalim', xksi(:,:) )
Note: See TracChangeset
for help on using the changeset viewer.