Changeset 2528 for trunk/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcopt.F90
- Timestamp:
- 2010-12-27T18:33:53+01:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcopt.F90
r1800 r2528 30 30 # include "top_substitute.h90" 31 31 !!---------------------------------------------------------------------- 32 !! NEMO/TOP 2.0 , LOCEAN-IPSL (2007)32 !! NEMO/TOP 3.3 , NEMO Consortium (2010) 33 33 !! $Id$ 34 !! Software governed by the CeCILL licence ( modipsl/doc/NEMO_CeCILL.txt)34 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) 35 35 !!---------------------------------------------------------------------- 36 36 … … 78 78 zparg (:,:,1) = zpar0m(:,:) * 0.5 79 79 80 !!gm optimisation : introduce zcoef and LOG computed once for all81 82 80 ! ! Photosynthetically Available Radiation (PAR) 83 81 zcoef = 12 * redf / rcchl / rpig ! -------------------------------------- … … 85 83 DO jj = 1, jpj 86 84 DO ji = 1, jpi 87 !!gm zpig = MAX( TINY(0.), trn(ji,jj,jk-1,jpphy) ) * zcoef 88 !!gm zkr = xkr0 + xkrp * EXP( xlr * LOG(zpig) ) 89 !!gm zkg = xkg0 + xkgp * EXP( xlg * LOG(zpig) ) 90 zpig = LOG( MAX( TINY(0.), trn(ji,jj,jk-1,jpphy) ) * zcoef ) 85 zpig = LOG( MAX( TINY(0.), trn(ji,jj,jk-1,jp_lob_phy) ) * zcoef ) 91 86 zkr = xkr0 + xkrp * EXP( xlr * zpig ) 92 87 zkg = xkg0 + xkgp * EXP( xlg * zpig ) … … 96 91 END DO 97 92 END DO 98 !!gm optimisation : suppress one division99 93 DO jk = 1, jpkm1 ! mean par at t-levels 100 94 DO jj = 1, jpj 101 95 DO ji = 1, jpi 102 zpig = LOG( MAX( TINY(0.), trn(ji,jj,jk,jp phy) ) * zcoef )96 zpig = LOG( MAX( TINY(0.), trn(ji,jj,jk,jp_lob_phy) ) * zcoef ) 103 97 zkr = xkr0 + xkrp * EXP( xlr * zpig ) 104 98 zkg = xkg0 + xkgp * EXP( xlg * zpig ) 105 !!gm zparr(ji,jj,jk) = zparr(ji,jj,jk) / zkr / fse3t(ji,jj,jk) * ( 1 - EXP( -zkr * fse3t(ji,jj,jk) ) )106 !!gm zparg(ji,jj,jk) = zparg(ji,jj,jk) / zkg / fse3t(ji,jj,jk) * ( 1 - EXP( -zkg * fse3t(ji,jj,jk) ) )107 99 zparr(ji,jj,jk) = zparr(ji,jj,jk) / ( zkr * fse3t(ji,jj,jk) ) * ( 1 - EXP( -zkr * fse3t(ji,jj,jk) ) ) 108 100 zparg(ji,jj,jk) = zparg(ji,jj,jk) / ( zkg * fse3t(ji,jj,jk) ) * ( 1 - EXP( -zkg * fse3t(ji,jj,jk) ) )
Note: See TracChangeset
for help on using the changeset viewer.