Ignore:
Timestamp:
Nov 28, 2014, 4:36:29 PM (10 years ago)
Author:
Laurent Fairhead
Message:

Merged trunk changes -r2070:2158 into testing branch. Compilation problems introduced by revision r2155 have been corrected by hand

Location:
LMDZ5/branches/testing
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/branches/testing

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

    r1910 r2160  
    55
    66SUBROUTINE calbeta_clim(klon,time,lat_radian,beta)
    7  
    8 !======================================================================
    9 ! Auteur(s): A.K. TRAORE
    10 !======================================================================
    11 !USE phys_local_var_mod, ONLY : ideal_beta !pour faire la variable dans le
    12 ! physiq.f pour des sorties directes de beta
    13 !==============================================
    147
    15 implicit none
    16 integer klon,nt,j,it
    17 real logbeta(klon),pi
    18 real lat(klon),lat_radian(klon)
    19 integer time
    20 real time_radian
    21 real lat_sahel,beta(klon)
    22 real lat_nord,lat_sud
    23 !==============================================
     8  !======================================================================
     9  ! Auteur(s): A.K. TRAORE
     10  !======================================================================
    2411
    25 pi=2.*asin(1.)
    26 beta=0.
    27    
    28             !calcul des cordonnees
     12  !USE phys_local_var_mod, ONLY : ideal_beta !pour faire la variable dans le
     13  ! physiq.f pour des sorties directes de beta
    2914
    30 !  print*,'LATITUDES BETA ',lat_radian
    31    time_radian=(time+15.)*2.*pi/360.
     15  USE phys_cal_mod, only: year_len
    3216
    33    print*,'BETA time_radian',time_radian,time
     17  implicit none
     18  integer klon,nt,j,it
     19  real logbeta(klon),pi
     20  real lat(klon),lat_radian(klon)
     21  integer time
     22  real time_radian
     23  real lat_sahel,beta(klon)
     24  real lat_nord,lat_sud
    3425
    35    lat(:)=180.*lat_radian(:)/pi !lat(:)=lat_radian(:)
    36        
    37    lat_sahel=-5*sin(time_radian)+13
    38    lat_nord=lat_sahel+25.
    39    lat_sud=lat_sahel-25.
    40 do j=1,klon
    41     !===========
    42         if (lat(j) < 5. ) then
    43                
    44                 logbeta(j)=0.2*(lat(j)-lat_sud)-1.6
    45                 beta(j)=10**(logbeta(j))
    46                 beta(j)=max(beta(j),0.03)
    47                 beta(j)=min(beta(j),0.22)
    48 !              print*,'j,lat,lat_radian,beta',j,lat(j),lat_radian(j),beta(j)
    49     !===========
    50         elseif (lat(j) < 22.) then !lat(j)<22.
    51                
    52                 logbeta(j)=-0.25*(lat(j)-lat_sahel)-1.6
    53                 beta(j)=10**(logbeta(j))
    54                 beta(j)=max(beta(j),1.e-2)
    55                 beta(j)=min(beta(j),0.22)
    56 !              print*,'j,lat,lat_radian,beta',j,lat(j),lat_radian(j),beta(j)
    57     !===========
    58         else
    59               logbeta(j)=0.25*(lat(j)-lat_nord)-1.
    60               beta(j)=10**(logbeta(j))
    61               beta(j)=max(beta(j),1.e-2)
    62               beta(j)=min(beta(j),0.25)
    63 !              print*,'j,lat,lat_radian,beta',j,lat(j),lat_radian(j),beta(j)
    64         endif
    65     !===========
    66 enddo
    67 end
     26  include "iniprint.h"
     27  !==============================================
     28
     29  pi=2.*asin(1.)
     30  beta=0.
     31
     32  !calcul des cordonnees
     33
     34  ! print*,'LATITUDES BETA ',lat_radian
     35  time_radian=(time+15.)*2.*pi / year_len
     36
     37  if (prt_level >= 1) print *, 'time_radian time', time_radian, time
     38
     39  lat(:)=180.*lat_radian(:)/pi !lat(:)=lat_radian(:)
     40
     41  lat_sahel=-5*sin(time_radian)+13
     42  lat_nord=lat_sahel+25.
     43  lat_sud=lat_sahel-25.
     44  do j=1,klon
     45     !===========
     46     if (lat(j) < 5. ) then
     47
     48        logbeta(j)=0.2*(lat(j)-lat_sud)-1.6
     49        beta(j)=10**(logbeta(j))
     50        beta(j)=max(beta(j),0.03)
     51        beta(j)=min(beta(j),0.22)
     52        ! print*,'j,lat,lat_radian,beta',j,lat(j),lat_radian(j),beta(j)
     53        !===========
     54     elseif (lat(j) < 22.) then !lat(j)<22.
     55
     56        logbeta(j)=-0.25*(lat(j)-lat_sahel)-1.6
     57        beta(j)=10**(logbeta(j))
     58        beta(j)=max(beta(j),1.e-2)
     59        beta(j)=min(beta(j),0.22)
     60        ! print*,'j,lat,lat_radian,beta',j,lat(j),lat_radian(j),beta(j)
     61        !===========
     62     else
     63        logbeta(j)=0.25*(lat(j)-lat_nord)-1.
     64        beta(j)=10**(logbeta(j))
     65        beta(j)=max(beta(j),1.e-2)
     66        beta(j)=min(beta(j),0.25)
     67        ! print*,'j,lat,lat_radian,beta',j,lat(j),lat_radian(j),beta(j)
     68     endif
     69     !===========
     70  enddo
     71
     72end SUBROUTINE calbeta_clim
Note: See TracChangeset for help on using the changeset viewer.