| 1 | !$gpum horizontal klon |
|---|
| 2 | MODULE evappot_mod |
|---|
| 3 | PRIVATE |
|---|
| 4 | |
|---|
| 5 | PUBLIC evappot |
|---|
| 6 | |
|---|
| 7 | CONTAINS |
|---|
| 8 | |
|---|
| 9 | SUBROUTINE evappot(klon,nbsrf,ftsol,pplay,cdragh, & |
|---|
| 10 | & t_seri,q_seri,u_seri,v_seri,evap_pot) |
|---|
| 11 | |
|---|
| 12 | USE yoethf_mod_h |
|---|
| 13 | USE yomcst_mod_h |
|---|
| 14 | IMPLICIT NONE |
|---|
| 15 | |
|---|
| 16 | |
|---|
| 17 | INCLUDE "FCTTRE.h" |
|---|
| 18 | |
|---|
| 19 | |
|---|
| 20 | INTEGER :: klon, nbsrf |
|---|
| 21 | REAL, DIMENSION(klon,nbsrf) :: ftsol,evap_pot |
|---|
| 22 | REAL, DIMENSION(klon) :: pplay,t_seri,wind,q_seri,u_seri,v_seri,cdragh |
|---|
| 23 | |
|---|
| 24 | INTEGER :: nsrf,i |
|---|
| 25 | REAL, DIMENSION(klon,nbsrf) :: qsat_ftsol |
|---|
| 26 | REAL, DIMENSION(klon) :: rhos, norme_u |
|---|
| 27 | REAL :: t_coup |
|---|
| 28 | |
|---|
| 29 | t_coup=234. ! Quelle horreur !!!!! |
|---|
| 30 | |
|---|
| 31 | DO nsrf = 1, nbsrf |
|---|
| 32 | DO i = 1, klon |
|---|
| 33 | IF (ftsol(i,nsrf).LT.t_coup) THEN |
|---|
| 34 | qsat_ftsol(i,nsrf) = qsats(ftsol(i,nsrf))/pplay(i) |
|---|
| 35 | ELSE |
|---|
| 36 | qsat_ftsol(i,nsrf) = qsatl(ftsol(i,nsrf))/pplay(i) |
|---|
| 37 | ENDIF |
|---|
| 38 | ENDDO |
|---|
| 39 | ENDDO |
|---|
| 40 | ! ========================================================== c |
|---|
| 41 | ! Calcul de l'evaporation Potentielle |
|---|
| 42 | |
|---|
| 43 | |
|---|
| 44 | rhos(:) = pplay(:)/(RD*t_seri(:)) |
|---|
| 45 | norme_u(:)=1.+sqrt(u_seri(:)*u_seri(:)+v_seri(:)*v_seri(:)) |
|---|
| 46 | DO nsrf = 1, nbsrf |
|---|
| 47 | evap_pot(:,nsrf)=rhos(:)*cdragh(:)*norme_u(:)*(qsat_ftsol(:,nsrf)-q_seri(:)) |
|---|
| 48 | ENDDO |
|---|
| 49 | RETURN |
|---|
| 50 | |
|---|
| 51 | END SUBROUTINE evappot |
|---|
| 52 | |
|---|
| 53 | END MODULE evappot_mod |
|---|