Ignore:
Timestamp:
Apr 14, 2017, 12:38:26 PM (8 years ago)
Author:
jyg
Message:

Changing from a binary code to a decimal code:
iflag_pbl_split= 0-> no splitting;
1-> vdf splitting;
10-> thermals splitting;
11-> full splitting

Location:
LMDZ5/trunk/libf/phylmd
Files:
5 edited

Legend:

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

    r2804 r2852  
    221221!****************************************************************************************
    222222!!! jyg le 07/02/2012
    223        IF (mod(iflag_pbl_split,2) .eq.1) THEN
     223!!jyg       IF (mod(iflag_pbl_split,2) .eq.1) THEN
     224       IF (mod(iflag_pbl_split,10) .ge.1) THEN
    224225!!! nrlmd le 02/05/2011
    225226    DO k= 1, klev
     
    240241    ENDDO
    241242!!!     
    242        ENDIF  ! (mod(iflag_pbl_split,2) .eq.1)
     243       ENDIF  ! (mod(iflag_pbl_split,2) .ge.1)
    243244!!!
    244245
     
    377378
    378379!!! jyg le 07/02/2012
    379        IF (mod(iflag_pbl_split,2) .eq.1) THEN
     380!!jyg       IF (mod(iflag_pbl_split,2) .eq.1) THEN
     381       IF (mod(iflag_pbl_split,10) .ge.1) THEN
    380382!!! nrlmd le 02/05/2011
    381383    DO i = 1, knon
     
    399401    ENDDO
    400402!!!     
    401        ENDIF  ! (mod(iflag_pbl_split,2) .eq.1)
     403       ENDIF  ! (mod(iflag_pbl_split,2) .ge.1)
    402404!!!
    403405
  • LMDZ5/trunk/libf/phylmd/climb_wind_mod.F90

    r2311 r2852  
    172172!****************************************************************************************
    173173!!! jyg le 07/02/2012
    174        IF (mod(iflag_pbl_split,2) .eq.1) THEN
     174!!jyg       IF (mod(iflag_pbl_split,2) .eq.1) THEN
     175       IF (mod(iflag_pbl_split,10) .ge.1) THEN
    175176!!! nrlmd le 02/05/2011
    176177    DO k= 1, klev
     
    188189    ENDDO
    189190!!!     
    190        ENDIF  ! (mod(iflag_pbl_split,2) .eq.1)
     191       ENDIF  ! (mod(iflag_pbl_split,2) .ge.1)
    191192!!!
    192193
     
    308309
    309310!!! jyg le 07/02/2012
    310        IF (mod(iflag_pbl_split,2) .eq.1) THEN
     311!!jyg       IF (mod(iflag_pbl_split,2) .eq.1) THEN
     312       IF (mod(iflag_pbl_split,10) .ge.1) THEN
    311313!!! nrlmd le 02/05/2011
    312314    DO i = 1, knon
     
    326328    ENDDO
    327329!!!
    328        ENDIF  ! (mod(iflag_pbl_split,2) .eq.1)
     330       ENDIF  ! (mod(iflag_pbl_split,2) .ge.1)
    329331!!!
    330332
  • LMDZ5/trunk/libf/phylmd/conf_phys_m.F90

    r2820 r2852  
    13691369    !
    13701370    !Config Key  = iflag_pbl_split
    1371     !Config Desc = binary flag: least signif bit = split vdf; next bit = split thermals
     1371    !Config Desc = decimal flag: least signif digit = split vdf; next digit = split thermals
    13721372    !Config Def  = 0
    1373     !Config Help = 0-> no splitting; 1-> vdf splitting; 2-> thermals splitting; 3-> full splitting
     1373    !Config Help = 0-> no splitting; 1-> vdf splitting; 10-> thermals splitting; 11-> full splitting
    13741374    !
    13751375    iflag_pbl_split_omp = 0
    1376     CALL getin('iflag_pbl_split',iflag_pbl_split_omp)
     1376    call getin('iflag_pbl_split',iflag_pbl_split_omp)
    13771377    !
    13781378    !Config Key  = iflag_order2_sollw
  • LMDZ5/trunk/libf/phylmd/pbl_surface_mod.F90

    r2680 r2852  
    66! Planetary Boundary Layer and Surface module
    77!
    8 ! This module manage the calculation of turbulent diffusion in the boundary layer
     8! This module manages the calculation of turbulent diffusion in the boundary layer
    99! and all interactions towards the differents sub-surfaces.
    1010!
     
    778778      IF (prt_level >=10) print *,' -> pbl_surface, itap ',itap
    779779!
    780       iflag_split = mod(iflag_pbl_split,2)
     780!!jyg      iflag_split = mod(iflag_pbl_split,2)
     781      iflag_split = mod(iflag_pbl_split,10)
    781782
    782783!****************************************************************************************
     
    12391240        ENDDO
    12401241!
    1241        IF (iflag_split .eq.1) THEN
     1242       IF (iflag_split .ge.1) THEN
    12421243!!! nrlmd le 02/05/2011
    12431244        DO k = 1, klev
     
    12871288        ENDDO
    12881289!!!
    1289        ENDIF  ! (iflag_split .eq.1)
     1290       ENDIF  ! (iflag_split .ge.1)
    12901291!!!
    12911292       DO k = 1, nsoilmx
     
    20472048         print*,'effusivity,facteur,cstar', effusivity, facteur,wake_cstar(j)
    20482049        ENDDO
    2049        ENDIF
     2050       ENDIF  ! (prt_level >=10)
    20502051
    20512052!!! jyg le 07/02/2012
     
    22822283
    22832284!!! jyg le 07/02/2012
    2284        IF (iflag_split .eq.1) THEN
     2285       IF (iflag_split .ge.1) THEN
    22852286!!!
    22862287!!! nrlmd le 02/05/2011
     
    23022303        END DO
    23032304!!!     
    2304        ENDIF  ! (iflag_split .eq.1)
     2305       ENDIF  ! (iflag_split .ge.1)
    23052306!!!
    23062307!!! nrlmd le 02/05/2011
     
    23372338        END DO
    23382339
    2339        ELSE
     2340       ELSE  ! (iflag_split .eq.0)
    23402341        DO k = 1, klev
    23412342          DO j = 1, knon
     
    23842385       
    23852386!!! jyg le 07/02/2012
    2386        IF (iflag_split .eq.1) THEN
     2387       IF (iflag_split .ge.1) THEN
    23872388!!!
    23882389!!! nrlmd+jyg le 02/05/2011 et le 20/02/2012
     
    24072408        END DO
    24082409!!!
    2409        ENDIF  ! (iflag_split .eq.1)
     2410       ENDIF  ! (iflag_split .ge.1)
    24102411!!!
    24112412       
     
    27522753
    27532754!!! jyg le 07/02/2012
    2754        IF (iflag_split .eq.1) THEN
     2755       IF (iflag_split .ge.1) THEN
    27552756!!!
    27562757!!! nrlmd & jyg les 02/05/2011, 05/02/2012
     
    27772778    END DO
    27782779!!!
    2779        ENDIF  ! (iflag_split .eq.1)
     2780       ENDIF  ! (iflag_split .ge.1)
    27802781!!!
    27812782
  • LMDZ5/trunk/libf/phylmd/physiq_mod.F90

    r2851 r2852  
    21372137
    21382138       !jyg+nrlmd<
    2139        IF (prt_level .ge. 2 .and. mod(iflag_pbl_split,2) .eq. 1) THEN
     2139!!jyg       IF (prt_level .ge. 2 .and. mod(iflag_pbl_split,2) .eq. 1) THEN
     2140       IF (prt_level .ge. 2 .and. mod(iflag_pbl_split,10) .ge. 1) THEN
    21402141          print *,'debut du splitting de la PBL'
    21412142       ENDIF
     
    22172218       !
    22182219       !  Add turbulent diffusion tendency to the wake difference variables
    2219        IF (mod(iflag_pbl_split,2) .NE. 0) THEN
     2220!!jyg       IF (mod(iflag_pbl_split,2) .NE. 0) THEN
     2221       IF (mod(iflag_pbl_split,10) .NE. 0) THEN
    22202222!jyg<
    22212223          d_deltat_vdf(:,:) = d_t_vdf_w(:,:)-d_t_vdf_x(:,:)
     
    28292831       IF (iflag_thermals>=1) THEN
    28302832          !jyg<
    2831           IF (mod(iflag_pbl_split/2,2) .EQ. 1) THEN
     2833!!       IF (mod(iflag_pbl_split/2,2) .EQ. 1) THEN
     2834       IF (mod(iflag_pbl_split/10,10) .GE. 1) THEN
    28322835             !  Appel des thermiques avec les profils exterieurs aux poches
    28332836             DO k=1,klev
     
    28742877          !
    28752878          !jyg<
    2876           IF (mod(iflag_pbl_split/2,2) .EQ. 1) THEN
     2879!!jyg          IF (mod(iflag_pbl_split/2,2) .EQ. 1) THEN
     2880          IF (mod(iflag_pbl_split/10,10) .GE. 1) THEN
    28772881             !  Si les thermiques ne sont presents que hors des
    28782882             !  poches, la tendance moyenne associ\'ee doit etre
     
    28962900             call prt_enerbil('the',itap)
    28972901          !
    2898           ENDIF  ! (mod(iflag_pbl_split/2,2) .EQ. 1)
     2902          ENDIF  ! (mod(iflag_pbl_split/10,10) .GE. 1)
    28992903          !
    29002904          CALL add_phys_tend(d_u_ajs,d_v_ajs,d_t_ajs,d_q_ajs,  &
Note: See TracChangeset for help on using the changeset viewer.