[5106] | 1 | SUBROUTINE geopot_loc( ngrid, teta, pk, pks, phis, phi ) |
---|
[5105] | 2 | USE parallel_lmdz |
---|
[5159] | 3 | USE lmdz_dimensions, ONLY: iim, jjm, llm, ndm |
---|
| 4 | USE lmdz_paramet |
---|
[5105] | 5 | IMPLICIT NONE |
---|
[1632] | 6 | |
---|
| 7 | |
---|
[5105] | 8 | !======================================================================= |
---|
[5159] | 9 | |
---|
[5105] | 10 | ! Auteur: P. Le Van |
---|
| 11 | ! ------- |
---|
[5159] | 12 | |
---|
[5105] | 13 | ! Objet: |
---|
| 14 | ! ------ |
---|
[5159] | 15 | |
---|
[5105] | 16 | ! ******************************************************************* |
---|
| 17 | ! .... calcul du geopotentiel aux milieux des couches ..... |
---|
| 18 | ! ******************************************************************* |
---|
[5159] | 19 | |
---|
[5105] | 20 | ! .... l'integration se fait de bas en haut .... |
---|
[5159] | 21 | |
---|
[5105] | 22 | ! .. ngrid,teta,pk,pks,phis sont des argum. d'entree pour le s-pg .. |
---|
| 23 | ! phi est un argum. de sortie pour le s-pg . |
---|
[5159] | 24 | |
---|
[5105] | 25 | !======================================================================= |
---|
| 26 | !----------------------------------------------------------------------- |
---|
| 27 | ! Declarations: |
---|
| 28 | ! ------------- |
---|
[1632] | 29 | |
---|
| 30 | |
---|
[5159] | 31 | |
---|
| 32 | |
---|
[5105] | 33 | ! Arguments: |
---|
| 34 | ! ---------- |
---|
| 35 | INTEGER :: ngrid |
---|
| 36 | REAL :: teta(ijb_u:ije_u,llm),pks(ijb_u:ije_u),phis(ijb_u:ije_u), & |
---|
| 37 | pk(ijb_u:ije_u,llm) , phi(ijb_u:ije_u,llm) |
---|
[1632] | 38 | |
---|
| 39 | |
---|
[5105] | 40 | ! Local: |
---|
| 41 | ! ------ |
---|
[1632] | 42 | |
---|
[5105] | 43 | INTEGER :: l, ij,ijb,ije |
---|
[1632] | 44 | |
---|
| 45 | |
---|
[5105] | 46 | !----------------------------------------------------------------------- |
---|
| 47 | ! calcul de phi au niveau 1 pres du sol ..... |
---|
| 48 | ijb=ij_begin |
---|
| 49 | ije=ij_end+iip1 |
---|
[1632] | 50 | |
---|
[5105] | 51 | IF (pole_sud) ije=ij_end |
---|
| 52 | |
---|
| 53 | DO ij = ijb, ije |
---|
| 54 | phi( ij,1 ) = phis( ij ) + teta(ij,1) * ( pks(ij) - pk(ij,1) ) |
---|
| 55 | ENDDO |
---|
| 56 | |
---|
| 57 | ! calcul de phi aux niveaux superieurs ....... |
---|
| 58 | |
---|
| 59 | DO l = 2,llm |
---|
| 60 | DO ij = ijb,ije |
---|
| 61 | phi(ij,l) = phi(ij,l-1) + 0.5 * ( teta(ij,l) + teta(ij,l-1) ) & |
---|
| 62 | * ( pk(ij,l-1) - pk(ij,l) ) |
---|
| 63 | ENDDO |
---|
| 64 | ENDDO |
---|
| 65 | |
---|
| 66 | |
---|
| 67 | END SUBROUTINE geopot_loc |
---|