- Timestamp:
- Jul 20, 2024, 12:00:23 PM (4 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/phylmd/lmdz_thermcell_height.F90
r5082 r5087 3 3 4 4 SUBROUTINE thermcell_height(ngrid,nlay,lalim,lmin,linter,lcong,lintercong,lmix, & 5 &zw2,zlev,lmax,zmax,zmax0,zmix,wmax,zcong)5 zw2,zlev,lmax,zmax,zmax0,zmix,wmax,zcong) 6 6 IMPLICIT NONE 7 7 … … 105 105 ! calcul de zlevinter 106 106 zlevinter(ig)=(zlev(ig,lmax(ig)+1)-zlev(ig,lmax(ig)))* & 107 &linter(ig)+zlev(ig,lmax(ig))-lmax(ig)*(zlev(ig,lmax(ig)+1) &108 &-zlev(ig,lmax(ig)))107 linter(ig)+zlev(ig,lmax(ig))-lmax(ig)*(zlev(ig,lmax(ig)+1) & 108 -zlev(ig,lmax(ig))) 109 109 !pour le cas ou on prend tjs lmin=1 110 110 ! zmax(ig)=max(zmax(ig),zlevinter(ig)-zlev(ig,lmin(ig))) … … 117 117 ! calcul de zlevintercong 118 118 zlevintercong(ig)=(zlev(ig,lcong(ig)+1)-zlev(ig,lcong(ig)))* & 119 &lintercong(ig)+zlev(ig,lcong(ig))-lcong(ig)*(zlev(ig,lcong(ig)+1) &120 &-zlev(ig,lcong(ig)))119 lintercong(ig)+zlev(ig,lcong(ig))-lcong(ig)*(zlev(ig,lcong(ig)+1) & 120 -zlev(ig,lcong(ig))) 121 121 zcong(ig)=zlevintercong(ig)-zlev(ig,1) 122 122 ! print*,"calcul zcong",lcong(ig),lintercong(ig),zlevintercong(ig),zcong(ig) … … 131 131 ! test 132 132 if (((zw2(ig,lmix(ig)-1)-zw2(ig,lmix(ig))) & 133 &*((zlev(ig,lmix(ig)))-(zlev(ig,lmix(ig)+1))) &134 &-(zw2(ig,lmix(ig))-zw2(ig,lmix(ig)+1)) &135 &*((zlev(ig,lmix(ig)-1))-(zlev(ig,lmix(ig)))))>1e-10) &136 &then133 *((zlev(ig,lmix(ig)))-(zlev(ig,lmix(ig)+1))) & 134 -(zw2(ig,lmix(ig))-zw2(ig,lmix(ig)+1)) & 135 *((zlev(ig,lmix(ig)-1))-(zlev(ig,lmix(ig)))))>1e-10) & 136 then 137 137 ! 138 138 zmix(ig)=((zw2(ig,lmix(ig)-1)-zw2(ig,lmix(ig))) & 139 &*((zlev(ig,lmix(ig)))**2-(zlev(ig,lmix(ig)+1))**2) &140 &-(zw2(ig,lmix(ig))-zw2(ig,lmix(ig)+1)) &141 &*((zlev(ig,lmix(ig)-1))**2-(zlev(ig,lmix(ig)))**2)) &142 &/(2.*((zw2(ig,lmix(ig)-1)-zw2(ig,lmix(ig))) &143 &*((zlev(ig,lmix(ig)))-(zlev(ig,lmix(ig)+1))) &144 &-(zw2(ig,lmix(ig))-zw2(ig,lmix(ig)+1)) &145 &*((zlev(ig,lmix(ig)-1))-(zlev(ig,lmix(ig))))))139 *((zlev(ig,lmix(ig)))**2-(zlev(ig,lmix(ig)+1))**2) & 140 -(zw2(ig,lmix(ig))-zw2(ig,lmix(ig)+1)) & 141 *((zlev(ig,lmix(ig)-1))**2-(zlev(ig,lmix(ig)))**2)) & 142 /(2.*((zw2(ig,lmix(ig)-1)-zw2(ig,lmix(ig))) & 143 *((zlev(ig,lmix(ig)))-(zlev(ig,lmix(ig)+1))) & 144 -(zw2(ig,lmix(ig))-zw2(ig,lmix(ig)+1)) & 145 *((zlev(ig,lmix(ig)-1))-(zlev(ig,lmix(ig)))))) 146 146 else 147 147 zmix(ig)=zlev(ig,lmix(ig)) … … 162 162 do l=1,nlay 163 163 if (zmix(ig)>=zlev(ig,l).and. & 164 &zmix(ig)<zlev(ig,l+1)) then164 zmix(ig)<zlev(ig,l+1)) then 165 165 lmix(ig)=l 166 166 endif
Note: See TracChangeset
for help on using the changeset viewer.