Ignore:
Timestamp:
Jan 30, 2015, 2:57:13 PM (10 years ago)
Author:
Laurent Fairhead
Message:

Merged trunk changes -r2158:2186 into testing branch.

Location:
LMDZ5/branches/testing
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/testing

  • LMDZ5/branches/testing/libf/phylmd/climb_wind_mod.F90

    r1910 r2187  
    4444
    4545    ALLOCATE(alf1(klon), stat=ierr)
    46     IF (ierr /= 0) CALL abort_gcm(modname,'Pb in allocate alf2',1)
     46    IF (ierr /= 0) CALL abort_gcm(modname,'Pb in allocate alf1',1)
    4747
    4848    ALLOCATE(alf2(klon), stat=ierr)
     
    7474!
    7575  SUBROUTINE climb_wind_down(knon, dtime, coef_in, pplay, paprs, temp, delp, u_old, v_old, &
     76!!! nrlmd le 02/05/2011
     77       Ccoef_U_out, Ccoef_V_out, Dcoef_U_out, Dcoef_V_out, &
     78       Kcoef_m_out, alf_1_out, alf_2_out, &
     79!!!
    7680       Acoef_U_out, Acoef_V_out, Bcoef_U_out, Bcoef_V_out)
    7781!
     
    8185!
    8286!
    83     INCLUDE "YOMCST.h"
     87
    8488! Input arguments
    8589!****************************************************************************************
     
    101105    REAL, DIMENSION(klon), INTENT(OUT)       :: Bcoef_V_out
    102106
     107!!! nrlmd le 02/05/2011
     108    REAL, DIMENSION(klon,klev), INTENT(OUT)  :: Ccoef_U_out
     109    REAL, DIMENSION(klon,klev), INTENT(OUT)  :: Ccoef_V_out
     110    REAL, DIMENSION(klon,klev), INTENT(OUT)  :: Dcoef_U_out
     111    REAL, DIMENSION(klon,klev), INTENT(OUT)  :: Dcoef_V_out
     112    REAL, DIMENSION(klon,klev), INTENT(OUT)  :: Kcoef_m_out
     113    REAL, DIMENSION(klon), INTENT(OUT)       :: alf_1_out
     114    REAL, DIMENSION(klon), INTENT(OUT)       :: alf_2_out
     115!!!
     116
    103117! Local variables
    104118!****************************************************************************************
     
    106120    INTEGER                                  :: k, i
    107121
     122! Include
     123!****************************************************************************************
     124    INCLUDE "YOMCST.h"
     125    INCLUDE "compbl.h"   
    108126
    109127!****************************************************************************************
     
    148166    Bcoef_V_out = Bcoef_V
    149167
     168!****************************************************************************************
     169! 7)
     170! If Pbl is split, return also the other layers in output variables
     171!
     172!****************************************************************************************
     173!!! jyg le 07/02/2012
     174       IF (mod(iflag_pbl_split,2) .eq.1) THEN
     175!!! nrlmd le 02/05/2011
     176    DO k= 1, klev
     177      DO i= 1, klon
     178        Ccoef_U_out(i,k) = Ccoef_U(i,k)
     179        Ccoef_V_out(i,k) = Ccoef_V(i,k)
     180        Dcoef_U_out(i,k) = Dcoef_U(i,k)
     181        Dcoef_V_out(i,k) = Dcoef_V(i,k)
     182        Kcoef_m_out(i,k) = Kcoefm(i,k)
     183      ENDDO
     184    ENDDO
     185    DO i= 1, klon
     186      alf_1_out(i)   = alf1(i)
     187      alf_2_out(i)   = alf2(i)
     188    ENDDO
     189!!!     
     190       ENDIF  ! (mod(iflag_pbl_split,2) .eq.1)
     191!!!
     192
    150193  END SUBROUTINE climb_wind_down
    151194!
     
    209252       Bcoef(i) = -RG/buf
    210253    END DO
    211     acoef(knon+1: klon) = 0.
    212     bcoef(knon+1: klon) = 0.
    213254
    214255  END SUBROUTINE calc_coef
     
    218259
    219260  SUBROUTINE climb_wind_up(knon, dtime, u_old, v_old, flx_u1, flx_v1,  &
     261!!! nrlmd le 02/05/2011
     262       Acoef_U_in, Acoef_V_in, Bcoef_U_in, Bcoef_V_in, &
     263       Ccoef_U_in, Ccoef_V_in, Dcoef_U_in, Dcoef_V_in, &
     264       Kcoef_m_in, &
     265!!!
    220266       flx_u_new, flx_v_new, d_u_new, d_v_new)
    221267!
     
    228274!
    229275!****************************************************************************************
    230     INCLUDE "YOMCST.h"
    231276
    232277! Input arguments
     
    238283    REAL, DIMENSION(klon), INTENT(IN)       :: flx_u1, flx_v1 ! momentum flux
    239284
     285!!! nrlmd le 02/05/2011
     286    REAL, DIMENSION(klon), INTENT(IN)       :: Acoef_U_in,Acoef_V_in, Bcoef_U_in, Bcoef_V_in
     287    REAL, DIMENSION(klon,klev), INTENT(IN)  :: Ccoef_U_in, Ccoef_V_in, Dcoef_U_in, Dcoef_V_in
     288    REAL, DIMENSION(klon,klev), INTENT(IN)  :: Kcoef_m_in
     289!!!
     290
    240291! Output arguments
    241292!****************************************************************************************
     
    247298    REAL, DIMENSION(klon,klev)              :: u_new, v_new
    248299    INTEGER                                 :: k, i
     300
     301! Include
     302!****************************************************************************************
     303    INCLUDE "YOMCST.h"
     304    INCLUDE "compbl.h"   
    249305   
    250306!
    251307!****************************************************************************************
     308
     309!!! jyg le 07/02/2012
     310       IF (mod(iflag_pbl_split,2) .eq.1) THEN
     311!!! nrlmd le 02/05/2011
     312    DO i = 1, knon
     313      Acoef_U(i)=Acoef_U_in(i)
     314      Acoef_V(i)=Acoef_V_in(i)
     315      Bcoef_U(i)=Bcoef_U_in(i)
     316      Bcoef_V(i)=Bcoef_V_in(i)
     317    ENDDO
     318    DO k = 1, klev
     319      DO i = 1, knon
     320        Ccoef_U(i,k)=Ccoef_U_in(i,k)
     321        Ccoef_V(i,k)=Ccoef_V_in(i,k)
     322        Dcoef_U(i,k)=Dcoef_U_in(i,k)
     323        Dcoef_V(i,k)=Dcoef_V_in(i,k)
     324        Kcoefm(i,k)=Kcoef_m_in(i,k)
     325      ENDDO
     326    ENDDO
     327!!!
     328       ENDIF  ! (mod(iflag_pbl_split,2) .eq.1)
     329!!!
    252330
    253331! Niveau 1
Note: See TracChangeset for help on using the changeset viewer.