Changeset 5116 for LMDZ6/branches/Amaury_dev/libf/dyn3d_common/disvert.F90
- Timestamp:
- Jul 24, 2024, 2:54:37 PM (2 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/branches/Amaury_dev/libf/dyn3d_common/disvert.F90
r5113 r5116 3 3 SUBROUTINE disvert() 4 4 5 use ioipsl, only: getin6 use new_unit_m, only: new_unit7 use lmdz_assert, only: assert5 use ioipsl, ONLY: getin 6 use new_unit_m, ONLY: new_unit 7 use lmdz_assert, ONLY: assert 8 8 USE comvert_mod, ONLY: ap, bp, aps, bps, nivsigs, nivsig, dpres, presnivs, & 9 9 pseudoalt, pa, preff, scaleheight, presinter … … 47 47 REAL alpha, beta, deltaz 48 48 REAL x 49 character(len=*),parameter :: modname="disvert"50 51 character(len=24):: vert_sampling49 CHARACTER(LEN=*),parameter :: modname="disvert" 50 51 CHARACTER(LEN=24):: vert_sampling 52 52 ! (allowed values are "param", "tropo", "strato" and "read") 53 53 … … 62 62 CALL getin('vert_sampling', vert_sampling) 63 63 WRITE(lunout,*) TRIM(modname)//' vert_sampling = ' // vert_sampling 64 if (llm==39 .and. vert_sampling=="strato") then64 if (llm==39 .and. vert_sampling=="strato") THEN 65 65 dsigmin=0.3 ! Vieille option par défaut pour CMIP5 66 66 else … … 82 82 CLOSE(99) 83 83 alpha=deltaz/(llm*scaleheight) 84 write(lunout, *)trim(modname),':scaleheight, alpha, k0, k1, beta', &84 WRITE(lunout, *)trim(modname),':scaleheight, alpha, k0, k1, beta', & 85 85 scaleheight, alpha, k0, k1, beta 86 86 … … 96 96 dzk1=alpha*tanh(l/k0) 97 97 dzk2=alpha*tanh((llm-k1)/k0)*beta**(l-(llm-k1))/log(beta) 98 write(lunout, *)l, sig(l+1), zk, zk-zkm1, dzk1, dzk298 WRITE(lunout, *)l, sig(l+1), zk, zk-zkm1, dzk1, dzk2 99 99 zkm1=zk 100 100 enddo … … 332 332 ENDDO 333 333 334 write(lunout, *) trim(modname),': BP '335 write(lunout, *) bp336 write(lunout, *) trim(modname),': AP '337 write(lunout, *) ap338 339 write(lunout, *) 'Niveaux de pressions approximatifs aux centres des'340 write(lunout, *)'couches calcules pour une pression de surface =', preff341 write(lunout, *) 'et altitudes equivalentes pour une hauteur d echelle de '342 write(lunout, *) scaleheight,' km'334 WRITE(lunout, *) trim(modname),': BP ' 335 WRITE(lunout, *) bp 336 WRITE(lunout, *) trim(modname),': AP ' 337 WRITE(lunout, *) ap 338 339 WRITE(lunout, *) 'Niveaux de pressions approximatifs aux centres des' 340 WRITE(lunout, *)'couches calcules pour une pression de surface =', preff 341 WRITE(lunout, *) 'et altitudes equivalentes pour une hauteur d echelle de ' 342 WRITE(lunout, *) scaleheight,' km' 343 343 DO l = 1, llm 344 344 dpres(l) = bp(l) - bp(l+1) … … 347 347 presnivs(l) = 0.5 *( ap(l)+bp(l)*preff + ap(l+1)+bp(l+1)*preff ) 348 348 pseudoalt(l) = log(preff/presnivs(l))*scaleheight 349 write(lunout, *)'PRESNIVS(', l, ')=', presnivs(l), ' Z ~ ', &349 WRITE(lunout, *)'PRESNIVS(', l, ')=', presnivs(l), ' Z ~ ', & 350 350 pseudoalt(l) & 351 351 , ' DZ ~ ', scaleheight*log((ap(l)+bp(l)*preff)/ & … … 354 354 DO l=1, llmp1 355 355 presinter(l)= ( ap(l)+bp(l)*preff) 356 write(lunout, *)'PRESINTER(', l, ')=', presinter(l)356 WRITE(lunout, *)'PRESINTER(', l, ')=', presinter(l) 357 357 ENDDO 358 358 359 write(lunout, *) trim(modname),': PRESNIVS '360 write(lunout, *) presnivs359 WRITE(lunout, *) trim(modname),': PRESNIVS ' 360 WRITE(lunout, *) presnivs 361 361 362 362 CONTAINS
Note: See TracChangeset
for help on using the changeset viewer.