Changeset 3294 for trunk/NEMOGCM/NEMO/OPA_SRC/OBC/obctra.F90
- Timestamp:
- 2012-01-28T17:44:18+01:00 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/OPA_SRC/OBC/obctra.F90
r2528 r3294 58 58 !! 59 59 !! ** Purpose : Compute tracer fields (t,s) along the open boundaries. 60 !! This routine is called by the tranxt.F routine and updates t a,sa60 !! This routine is called by the tranxt.F routine and updates tsa 61 61 !! which are the actual temperature and salinity fields. 62 62 !! The logical variable lp_obc_east, and/or lp_obc_west, and/or lp_obc_north, … … 101 101 IF( lk_mpp ) THEN !!bug ??? 102 102 IF( kt >= nit000+3 .AND. ln_rstart ) THEN 103 CALL lbc_lnk( t b, 'T', 1. )104 CALL lbc_lnk( sb, 'T', 1. )103 CALL lbc_lnk( tsb(:,:,:,jp_tem), 'T', 1. ) 104 CALL lbc_lnk( tsb(:,:,:,jp_sal), 'T', 1. ) 105 105 END IF 106 CALL lbc_lnk( t a, 'T', 1. )107 CALL lbc_lnk( sa, 'T', 1. )106 CALL lbc_lnk( tsa(:,:,:,jp_tem), 'T', 1. ) 107 CALL lbc_lnk( tsa(:,:,:,jp_sal), 'T', 1. ) 108 108 ENDIF 109 109 … … 116 116 !! 117 117 !! ** Purpose : 118 !! Apply the radiation algorithm on east OBC tracers t a,sa using the118 !! Apply the radiation algorithm on east OBC tracers tsa using the 119 119 !! phase velocities calculated in obc_rad_east subroutine in obcrad.F90 module 120 120 !! If the logical lfbceast is .TRUE., there is no radiation but only fixed OBC … … 143 143 DO jk = 1, jpkm1 144 144 DO jj = 1, jpj 145 t a(ji,jj,jk) = ta(ji,jj,jk) * (1. - temsk(jj,jk)) + &146 tfoe(jj,jk)*temsk(jj,jk)147 sa(ji,jj,jk) = sa(ji,jj,jk) * (1. - temsk(jj,jk)) + &148 sfoe(jj,jk)*temsk(jj,jk)145 tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) * (1. - temsk(jj,jk)) + & 146 tfoe(jj,jk)*temsk(jj,jk) 147 tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) * (1. - temsk(jj,jk)) + & 148 sfoe(jj,jk)*temsk(jj,jk) 149 149 END DO 150 150 END DO … … 191 191 ztau = (1.-zin ) * rtauein + zin * rtaue 192 192 z05cx = z05cx * zin 193 ! ... update ( ta, sa ) with radiative or climatological (t, s)194 t a(ji,jj,jk) = ta(ji,jj,jk) * (1. - temsk(jj,jk)) + &193 ! ... update tsa with radiative or climatological ts 194 tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) * (1. - temsk(jj,jk)) + & 195 195 temsk(jj,jk) * ( ( 1. - z05cx - ztau ) & 196 196 * tebnd(jj,jk,nib ,nitm) + 2.*z05cx & 197 197 * tebnd(jj,jk,nibm,nit ) + ztau * tfoe (jj,jk) ) & 198 198 / (1. + z05cx) 199 sa(ji,jj,jk) = sa(ji,jj,jk) * (1. - temsk(jj,jk)) + &199 tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) * (1. - temsk(jj,jk)) + & 200 200 temsk(jj,jk) * ( ( 1. - z05cx - ztau ) & 201 201 * sebnd(jj,jk,nib ,nitm) + 2.*z05cx & … … 216 216 !! 217 217 !! ** Purpose : 218 !! Apply the radiation algorithm on west OBC tracers t a,sa using the218 !! Apply the radiation algorithm on west OBC tracers tsa using the 219 219 !! phase velocities calculated in obc_rad_west subroutine in obcrad.F90 module 220 220 !! If the logical lfbcwest is .TRUE., there is no radiation but only fixed OBC … … 244 244 DO jk = 1, jpkm1 245 245 DO jj = 1, jpj 246 t a(ji,jj,jk) = ta(ji,jj,jk) * (1. - twmsk(jj,jk)) + &247 tfow(jj,jk)*twmsk(jj,jk)248 sa(ji,jj,jk) = sa(ji,jj,jk) * (1. - twmsk(jj,jk)) + &249 sfow(jj,jk)*twmsk(jj,jk)246 tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) * (1. - twmsk(jj,jk)) + & 247 tfow(jj,jk)*twmsk(jj,jk) 248 tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) * (1. - twmsk(jj,jk)) + & 249 sfow(jj,jk)*twmsk(jj,jk) 250 250 END DO 251 251 END DO … … 290 290 ztau = (1.-zin )*rtauwin + zin * rtauw 291 291 z05cx = z05cx * zin 292 ! ... update (ta,sa) with radiative or climatological (t,s)293 t a(ji,jj,jk) = ta(ji,jj,jk) * (1. - twmsk(jj,jk)) + &292 ! ... update tsa with radiative or climatological (ts) 293 tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) * (1. - twmsk(jj,jk)) + & 294 294 twmsk(jj,jk) * ( ( 1. + z05cx - ztau ) & 295 295 * twbnd(jj,jk,nib ,nitm) - 2.*z05cx & 296 296 * twbnd(jj,jk,nibm,nit ) + ztau * tfow (jj,jk) ) & 297 297 / (1. - z05cx) 298 sa(ji,jj,jk) = sa(ji,jj,jk) * (1. - twmsk(jj,jk)) + &298 tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) * (1. - twmsk(jj,jk)) + & 299 299 twmsk(jj,jk) * ( ( 1. + z05cx - ztau ) & 300 300 * swbnd(jj,jk,nib ,nitm) - 2.*z05cx & … … 343 343 DO jk = 1, jpkm1 344 344 DO ji = 1, jpi 345 t a(ji,jj,jk)= ta(ji,jj,jk) * (1.-tnmsk(ji,jk)) + &346 tnmsk(ji,jk) * tfon(ji,jk)347 sa(ji,jj,jk)= sa(ji,jj,jk) * (1.-tnmsk(ji,jk)) + &348 tnmsk(ji,jk) * sfon(ji,jk)345 tsa(ji,jj,jk,jp_tem)= tsa(ji,jj,jk,jp_tem) * (1.-tnmsk(ji,jk)) + & 346 tnmsk(ji,jk) * tfon(ji,jk) 347 tsa(ji,jj,jk,jp_sal)= tsa(ji,jj,jk,jp_sal) * (1.-tnmsk(ji,jk)) + & 348 tnmsk(ji,jk) * sfon(ji,jk) 349 349 END DO 350 350 END DO … … 392 392 ztau = (1.-zin ) * rtaunin + zin * rtaun 393 393 z05cx = z05cx * zin 394 ! ... update (ta,sa)with radiative or climatological (t, s)395 t a(ji,jj,jk) = ta(ji,jj,jk) * (1.-tnmsk(ji,jk)) + &394 ! ... update tsa with radiative or climatological (t, s) 395 tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) * (1.-tnmsk(ji,jk)) + & 396 396 tnmsk(ji,jk) * ( ( 1. - z05cx - ztau ) & 397 397 * tnbnd(ji,jk,nib ,nitm) + 2.*z05cx & 398 398 * tnbnd(ji,jk,nibm,nit ) + ztau * tfon (ji,jk) ) & 399 399 / (1. + z05cx) 400 sa(ji,jj,jk) = sa(ji,jj,jk) * (1.-tnmsk(ji,jk)) + &400 tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) * (1.-tnmsk(ji,jk)) + & 401 401 tnmsk(ji,jk) * ( ( 1. - z05cx - ztau ) & 402 402 * snbnd(ji,jk,nib ,nitm) + 2.*z05cx & … … 417 417 !! 418 418 !! ** Purpose : 419 !! Apply the radiation algorithm on south OBC tracers t a,sa using the419 !! Apply the radiation algorithm on south OBC tracers tsa using the 420 420 !! phase velocities calculated in obc_rad_south subroutine in obcrad.F90 module 421 421 !! If the logical lfbcsouth is .TRUE., there is no radiation but only fixed OBC … … 445 445 DO jk = 1, jpkm1 446 446 DO ji = 1, jpi 447 t a(ji,jj,jk)= ta(ji,jj,jk) * (1.-tsmsk(ji,jk)) + &448 tsmsk(ji,jk) * tfos(ji,jk)449 sa(ji,jj,jk)= sa(ji,jj,jk) * (1.-tsmsk(ji,jk)) + &450 tsmsk(ji,jk) * sfos(ji,jk)447 tsa(ji,jj,jk,jp_tem)= tsa(ji,jj,jk,jp_tem) * (1.-tsmsk(ji,jk)) + & 448 tsmsk(ji,jk) * tfos(ji,jk) 449 tsa(ji,jj,jk,jp_sal)= tsa(ji,jj,jk,jp_sal) * (1.-tsmsk(ji,jk)) + & 450 tsmsk(ji,jk) * sfos(ji,jk) 451 451 END DO 452 452 END DO … … 493 493 z05cx = z05cx * zin 494 494 495 !... update (ta,sa)with radiative or climatological (t, s)496 t a(ji,jj,jk) = ta(ji,jj,jk) * (1.-tsmsk(ji,jk)) + &495 !... update tsa with radiative or climatological (t, s) 496 tsa(ji,jj,jk,jp_tem) = tsa(ji,jj,jk,jp_tem) * (1.-tsmsk(ji,jk)) + & 497 497 tsmsk(ji,jk) * ( ( 1. + z05cx - ztau ) & 498 498 * tsbnd(ji,jk,nib ,nitm) - 2.*z05cx & 499 499 * tsbnd(ji,jk,nibm,nit ) + ztau * tfos (ji,jk) ) & 500 500 / (1. - z05cx) 501 sa(ji,jj,jk) = sa(ji,jj,jk) * (1.-tsmsk(ji,jk)) + &501 tsa(ji,jj,jk,jp_sal) = tsa(ji,jj,jk,jp_sal) * (1.-tsmsk(ji,jk)) + & 502 502 tsmsk(ji,jk) * ( ( 1. + z05cx - ztau ) & 503 503 * ssbnd(ji,jk,nib ,nitm) - 2.*z05cx &
Note: See TracChangeset
for help on using the changeset viewer.