12 |
|
|
13 |
! This is the main procedure for the "physics" part of the program. |
! This is the main procedure for the "physics" part of the program. |
14 |
|
|
15 |
|
use aaam_bud_m, only: aaam_bud |
16 |
USE abort_gcm_m, ONLY: abort_gcm |
USE abort_gcm_m, ONLY: abort_gcm |
17 |
use ajsec_m, only: ajsec |
use ajsec_m, only: ajsec |
18 |
USE calendar, ONLY: ymds2ju |
USE calendar, ONLY: ymds2ju |
35 |
use drag_noro_m, only: drag_noro |
use drag_noro_m, only: drag_noro |
36 |
USE fcttre, ONLY: foeew, qsatl, qsats, thermcep |
USE fcttre, ONLY: foeew, qsatl, qsats, thermcep |
37 |
USE hgardfou_m, ONLY: hgardfou |
USE hgardfou_m, ONLY: hgardfou |
38 |
USE histcom, ONLY: histsync |
USE histsync_m, ONLY: histsync |
39 |
USE histwrite_m, ONLY: histwrite |
USE histwrite_m, ONLY: histwrite |
40 |
USE indicesol, ONLY: clnsurf, epsfra, is_lic, is_oce, is_sic, is_ter, & |
USE indicesol, ONLY: clnsurf, epsfra, is_lic, is_oce, is_sic, is_ter, & |
41 |
nbsrf |
nbsrf |
51 |
USE phytrac_m, ONLY: phytrac |
USE phytrac_m, ONLY: phytrac |
52 |
USE qcheck_m, ONLY: qcheck |
USE qcheck_m, ONLY: qcheck |
53 |
use radlwsw_m, only: radlwsw |
use radlwsw_m, only: radlwsw |
54 |
|
use sugwd_m, only: sugwd |
55 |
USE suphec_m, ONLY: ra, rcpd, retv, rg, rlvtt, romega, rsigma, rtt |
USE suphec_m, ONLY: ra, rcpd, retv, rg, rlvtt, romega, rsigma, rtt |
56 |
USE temps, ONLY: annee_ref, day_ref, itau_phy |
USE temps, ONLY: annee_ref, day_ref, itau_phy |
57 |
USE yoethf_m, ONLY: r2es, rvtmp2 |
USE yoethf_m, ONLY: r2es, rvtmp2 |
778 |
|
|
779 |
IF (ok_orodr) THEN |
IF (ok_orodr) THEN |
780 |
rugoro = MAX(1e-5, zstd * zsig / 2) |
rugoro = MAX(1e-5, zstd * zsig / 2) |
781 |
CALL SUGWD(klon, llm, paprs, play) |
CALL SUGWD(paprs, play) |
782 |
else |
else |
783 |
rugoro = 0. |
rugoro = 0. |
784 |
ENDIF |
ENDIF |
905 |
! Mettre en action les conditions aux limites (albedo, sst, etc.). |
! Mettre en action les conditions aux limites (albedo, sst, etc.). |
906 |
|
|
907 |
! Prescrire l'ozone et calculer l'albedo sur l'ocean. |
! Prescrire l'ozone et calculer l'albedo sur l'ocean. |
908 |
if (nqmx >= 5) then |
wo = ozonecm(REAL(julien), paprs) |
|
wo = qx(:, :, 5) * zmasse / dobson_u / 1e3 |
|
|
else IF (MOD(itap - 1, lmt_pas) == 0) THEN |
|
|
wo = ozonecm(REAL(julien), paprs) |
|
|
ENDIF |
|
909 |
|
|
910 |
! Évaporation de l'eau liquide nuageuse : |
! Évaporation de l'eau liquide nuageuse : |
911 |
DO k = 1, llm |
DO k = 1, llm |
1655 |
ENDDO |
ENDDO |
1656 |
ENDDO |
ENDDO |
1657 |
|
|
1658 |
!IM calcul composantes axiales du moment angulaire et couple des montagnes |
CALL aaam_bud(ra, rg, romega, rlat, rlon, pphis, zustrdr, zustrli, & |
1659 |
|
zustrph, zvstrdr, zvstrli, zvstrph, paprs, u, v, aam, torsfc) |
|
CALL aaam_bud(27, klon, llm, time, ra, rg, romega, rlat, rlon, pphis, & |
|
|
zustrdr, zustrli, zustrph, zvstrdr, zvstrli, zvstrph, paprs, u, v, & |
|
|
aam, torsfc) |
|
1660 |
|
|
1661 |
IF (if_ebil >= 2) THEN |
IF (if_ebil >= 2) THEN |
1662 |
ztit = 'after orography' |
ztit = 'after orography' |