Ignore:
Timestamp:
Apr 17, 2015, 4:23:39 PM (10 years ago)
Author:
fhourdin
Message:

Nouvelle option pour les drag océaniques séparant z0m, z0h, et z0q
pour la quantité de mouvement, la température et l'humidité.
La séparation z0m/z0h est activée par la clée iflag_z0_oce==1.
Par ailleurs, on impose le rapport z0q/z0h = f_z0qh_oce
Typiquement, f_z0qh_oce=1.55

New option to separate z0m, z0h and z0q
z0m and z0h differ if iflag_z0_oce==1.
f_z0qh_oce = z0q/z0h is a constant factor

Alina and Frederic

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/surf_ocean_mod.F90

    r2254 r2261  
    112112
    113113    IF ( f_z0qh_oce .ne. 1.) THEN
     114! Si on suit les formulations par exemple de Tessel, on
     115! a z0h=0.4*nu/u*, z0q=0.62*nu/u*, d'ou f_z0qh_oce=0.62/0.4=1.55
    114116       cdragq(:)=cdragh(:)*                                      &
    115117       log(z1lay(:)/z0h(:))/log(z1lay(:)/(f_z0qh_oce*z0h(:)))
     
    205207    z0h(1:knon)=z0m(1:knon) ! En attendant mieux
    206208
     209ELSE IF (iflag_z0_oce==1) THEN
     210    DO i = 1, knon
     211       tmp = MAX(cepdu2,u1(i)**2+v1(i)**2)
     212       z0m(i) = 0.018*cdragm(i) * (u1(i)**2+v1(i)**2)/RG  &
     213            +  0.11*14e-6 / SQRT(cdragm(i) * tmp)
     214       z0m(i) = MAX(1.5e-05,z0m(i))
     215       z0h(i)=0.62*14e-6 / SQRT(cdragm(i) * tmp)
     216    ENDDO  
     217
    207218ELSE
    208        STOP'Alina, au boulot :)'
     219       STOP'version non prevue'
    209220ENDIF
    210221!
Note: See TracChangeset for help on using the changeset viewer.