Ignore:
Timestamp:
Mar 4, 2024, 6:58:03 PM (3 months ago)
Author:
crio
Message:

Nouvelle formulation du strig et correction thermiques montent trop haut

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/alpale_th.F90

    r4827 r4843  
    33!
    44SUBROUTINE alpale_th ( dtime, lmax_th, t_seri, cell_area,  &
    5                        cin, s2, n2, &
     5                       cin, s2, n2, strig, &
    66                       ale_bl_trig, ale_bl_stat, ale_bl,  &
    77                       alp_bl, alp_bl_stat, &
     
    3636  REAL, DIMENSION(klon), INTENT(IN)                          :: ale_bl_stat
    3737  REAL, DIMENSION(klon), INTENT(IN)                          :: cin
    38   REAL, DIMENSION(klon), INTENT(IN)                          :: s2, n2
     38  REAL, DIMENSION(klon), INTENT(IN)                          :: s2, n2, strig
    3939                                                               
    4040  REAL, DIMENSION(klon), INTENT(INOUT)                       :: ale_bl_trig, ale_bl
     
    161161                   if ( (ale_bl_stat(i) .gt. abs(cin(i))+1.e-10) )  then
    162162                      proba_notrig(i)=proba_notrig(i)* &
    163                          (1.-exp(-s_trig/s2(i)))**(n2(i)*dtime/tau_trig(i))
     163                         (1.-exp(-strig(i)/s2(i)))**(n2(i)*dtime/tau_trig(i))
    164164                      !        print *, 'proba_notrig(i) ',proba_notrig(i)
    165165                      if (random_notrig(i) .ge. proba_notrig(i)) then
     
    168168                         ale_bl_trig(i)=0.
    169169                      endif
    170                       birth_rate(i) = n2(i)*exp(-s_trig/s2(i))/(tau_trig(i)*cell_area(i))
     170                      birth_rate(i) = n2(i)*exp(-strig(i)/s2(i))/(tau_trig(i)*cell_area(i))
    171171!!!                      birth_rate(i) = max(birth_rate(i),1.e-18)
    172172                   else
     
    183183                   if ( (Ale_bl(i) .gt. abs(cin(i))+1.e-10) )  then
    184184                      proba_notrig(i)=proba_notrig(i)* &
    185                          (1.-exp(-s_trig/s2(i)))**(n2(i)*dtime/tau_trig(i))
     185                         (1.-exp(-strig(i)/s2(i)))**(n2(i)*dtime/tau_trig(i))
    186186                      !        print *, 'proba_notrig(i) ',proba_notrig(i)
    187187                      if (random_notrig(i) .ge. proba_notrig(i)) then
     
    190190                         ale_bl_trig(i)=0.
    191191                      endif
    192                       birth_rate(i) = n2(i)*exp(-s_trig/s2(i))/(tau_trig(i)*cell_area(i))
     192                      birth_rate(i) = n2(i)*exp(-strig(i)/s2(i))/(tau_trig(i)*cell_area(i))
    193193!!!                      birth_rate(i) = max(birth_rate(i),1.e-18)
    194194                   else
     
    283283        do i=1,klon
    284284           if ( (ale_bl_ref(i) .gt. abs(cin(i))+1.e-10) )  then
    285               birth_number = n2(i)*exp(-s_trig/s2(i))
     285              birth_number = n2(i)*exp(-strig(i)/s2(i))
    286286              birth_rate(i) = birth_number/(tau_trig(i)*cell_area(i))
    287287!!!              birth_rate(i) = max(birth_rate(i),1.e-18)
Note: See TracChangeset for help on using the changeset viewer.