6    pdel, m_allaer, delt, &
 
    7    rhcl, ai, flag_aerosol, &
 
   57   REAL, 
DIMENSION(klon,klev), 
INTENT(in)   :: pdel
 
   58   REAL, 
INTENT(in)                         :: delt
 
   59   REAL, 
DIMENSION(klon,klev,naero_tot), 
INTENT(in) :: m_allaer
 
   60   REAL, 
DIMENSION(klon,klev), 
INTENT(in)   :: RHcl     
 
   61   INTEGER,
INTENT(in)                       :: flag_aerosol
 
   62   REAL, 
DIMENSION(klon,klev), 
INTENT(in)   :: pplay
 
   63   REAL, 
DIMENSION(klon,klev), 
INTENT(in)   :: t_seri
 
   64   REAL, 
DIMENSION(klev),      
INTENT(in)   :: presnivs
 
   68   REAL, 
DIMENSION(klon), 
INTENT(out)          :: ai      
 
   69   REAL, 
DIMENSION(klon,nwave,naero_tot), 
INTENT(out)      :: tausum
 
   70   REAL, 
DIMENSION(klon,klev,nwave,naero_tot), 
INTENT(out) :: tau
 
   76   INTEGER, 
PARAMETER :: las = 
nwave 
   79   INTEGER :: i, k, ierr, m, aerindex
 
   80   INTEGER :: spsol, spinsol, spss, la
 
   82   INTEGER, 
PARAMETER :: la443 = 1
 
   83   INTEGER, 
PARAMETER :: la550 = 2
 
   84   INTEGER, 
PARAMETER :: la670 = 3
 
   85   INTEGER, 
PARAMETER :: la765 = 4
 
   86   INTEGER, 
PARAMETER :: la865 = 5
 
   87   INTEGER, 
PARAMETER :: nbre_RH=12
 
   88   INTEGER, 
PARAMETER :: naero_soluble=7   
 
   90   INTEGER, 
PARAMETER :: naero_insoluble=3 
 
   91   INTEGER, 
PARAMETER :: nb_level = 19     
 
   92   LOGICAL, 
SAVE :: firstcall=.
true.
 
   98   REAL, 
SAVE, 
DIMENSION(nb_level) :: presnivs_19  
 
  101   REAL, 
SAVE, 
DIMENSION(nb_level) :: A1_ASSSM_19, A2_ASSSM_19, A3_ASSSM_19,&
 
  102           B1_ASSSM_19, B2_ASSSM_19, C1_ASSSM_19, C2_ASSSM_19,&
 
  103           A1_CSSSM_19, A2_CSSSM_19, A3_CSSSM_19,&
 
  104           B1_CSSSM_19, B2_CSSSM_19, C1_CSSSM_19, C2_CSSSM_19, &
 
  105           A1_SSSSM_19, A2_SSSSM_19, A3_SSSSM_19,&
 
  106           B1_SSSSM_19, B2_SSSSM_19, C1_SSSSM_19, C2_SSSSM_19
 
  115   REAL, 
ALLOCATABLE,  
DIMENSION(:), 
SAVE :: &
 
  116           A1_ASSSM, A2_ASSSM, A3_ASSSM,&
 
  117           B1_ASSSM, B2_ASSSM, C1_ASSSM, C2_ASSSM,&
 
  118           A1_CSSSM, A2_CSSSM, A3_CSSSM,&
 
  119           B1_CSSSM, B2_CSSSM, C1_CSSSM, C2_CSSSM, &
 
  120           A1_SSSSM, A2_SSSSM, A3_SSSSM,&
 
  121           B1_SSSSM, B2_SSSSM, C1_SSSSM, C2_SSSSM
 
  130   REAL,
PARAMETER :: RH_tab(nbre_rh)=(/0.,10.,20.,30.,40.,50.,60.,70.,80.,85.,90.,95./)
 
  132   REAL :: tau_ae5wv_int 
 
  133   REAL :: piz_ae5wv_int 
 
  135   REAL, 
PARAMETER :: RH_MAX=95.
 
  136   REAL :: taue670(
klon)       
 
  137   REAL :: taue865(
klon)       
 
  140   REAL, 
PARAMETER ::  gravit = 9.80616    
 
  141   INTEGER, 
ALLOCATABLE, 
DIMENSION(:)  :: aerosol_name
 
  148   REAL :: alpha_aers_5wv(nbre_rh,las,naero_soluble)   
 
  150   REAL :: alpha_aeri_5wv(las,naero_insoluble)         
 
  151   REAL :: cg_aers_5wv(nbre_rh,las,naero_soluble)      
 
  153   REAL :: cg_aeri_5wv(las,naero_insoluble)            
 
  154   REAL :: piz_aers_5wv(nbre_rh,las,naero_soluble)   
 
  156   REAL :: piz_aeri_5wv(las,naero_insoluble)           
 
  158   REAL, 
DIMENSION(klon,klev,naero_tot) :: mass_temp
 
  163   REAL :: radry = 287.054
 
  165   REAL :: fact_RH(nbre_rh)
 
  170        100426.5,  98327.6, 95346.5, 90966.8, 84776.9, &
 
  171        76536.5,   66292.2, 54559.3, 42501.8, 31806, &
 
  172        23787.5,   18252.7, 13996,   10320.8, 7191.1, &
 
  173        4661.7,    2732.9,  1345.6,  388.2/
 
  176   DATA a1_asssm_19/ 4.373e+00,  4.361e+00,  4.331e+00, &
 
  177                  4.278e+00,  4.223e+00,  4.162e+00, &
 
  178                  4.103e+00,  4.035e+00,  3.962e+00, &
 
  179                  3.904e+00,  3.871e+00,  3.847e+00, &
 
  180                  3.824e+00,  3.780e+00,  3.646e+00, &
 
  181                  3.448e+00,  3.179e+00,  2.855e+00,  2.630e+00/
 
  182   DATA a2_asssm_19/ 2.496e+00,  2.489e+00,  2.472e+00, &
 
  183                  2.442e+00,  2.411e+00,  2.376e+00, &
 
  184                  2.342e+00,  2.303e+00,  2.261e+00, &
 
  185                  2.228e+00,  2.210e+00,  2.196e+00, &
 
  186                  2.183e+00,  2.158e+00,  2.081e+00, &
 
  187                  1.968e+00,  1.814e+00,  1.630e+00,  1.501e+00/
 
  188   DATA a3_asssm_19/-4.688e-02, -4.676e-02, -4.644e-02, &
 
  189                 -4.587e-02, -4.528e-02, -4.463e-02, &
 
  190                 -4.399e-02, -4.326e-02, -4.248e-02, &
 
  191                 -4.186e-02, -4.151e-02, -4.125e-02, &
 
  192                 -4.100e-02, -4.053e-02, -3.910e-02, &
 
  193                 -3.697e-02, -3.408e-02, -3.061e-02, -2.819e-02/
 
  194   DATA b1_asssm_19/ 1.165e-08,  1.145e-08,  1.097e-08, &
 
  195                  1.012e-08,  9.233e-09,  8.261e-09, &
 
  196                  7.297e-09,  6.201e-09,  5.026e-09, &
 
  197                  4.098e-09,  3.567e-09,  3.187e-09, &
 
  198                  2.807e-09,  2.291e-09,  2.075e-09, &
 
  199                  1.756e-09,  1.322e-09,  8.011e-10, 4.379e-10/
 
  200   DATA b2_asssm_19/ 2.193e-08,  2.192e-08,  2.187e-08, &
 
  201                  2.179e-08,  2.171e-08,  2.162e-08, &
 
  202                  2.153e-08,  2.143e-08,  2.132e-08, &
 
  203                  2.124e-08,  2.119e-08,  2.115e-08, &
 
  204                  2.112e-08,  2.106e-08,  2.100e-08, &
 
  205                  2.090e-08,  2.077e-08,  2.061e-08,  2.049e-08/
 
  206   DATA c1_asssm_19/ 7.365e-01,  7.365e-01,  7.365e-01, &
 
  207                  7.364e-01,  7.363e-01,  7.362e-01, &
 
  208                  7.361e-01,  7.359e-01,  7.358e-01, &
 
  209                  7.357e-01,  7.356e-01,  7.356e-01, &
 
  210                  7.356e-01,  7.355e-01,  7.354e-01, &
 
  211                  7.352e-01,  7.350e-01,  7.347e-01,  7.345e-01/
 
  212   DATA c2_asssm_19/ 5.833e-02,  5.835e-02,  5.841e-02, &
 
  213                  5.850e-02,  5.859e-02,  5.870e-02, &
 
  214                  5.880e-02,  5.891e-02,  5.904e-02, &
 
  215                  5.914e-02,  5.920e-02,  5.924e-02, &
 
  216                  5.928e-02,  5.934e-02,  5.944e-02, &
 
  217                  5.959e-02,  5.979e-02,  6.003e-02,  6.020e-02/
 
  219   DATA a1_csssm_19/ 7.403e-01,  7.422e-01,  7.626e-01, &
 
  220                  8.019e-01,  8.270e-01,  8.527e-01, &
 
  221                  8.702e-01,  8.806e-01,  8.937e-01, &
 
  222                  9.489e-01,  1.030e+00,  1.105e+00, &
 
  223                  1.199e+00,  1.357e+00,  1.660e+00, &
 
  224                  2.540e+00,  4.421e+00,  2.151e+00,  9.518e-01/
 
  225   DATA a2_csssm_19/ 4.522e-01,  4.532e-01,  4.644e-01, &
 
  226                  4.859e-01,  4.996e-01,  5.137e-01, &
 
  227                  5.233e-01,  5.290e-01,  5.361e-01, &
 
  228                  5.655e-01,  6.085e-01,  6.483e-01, &
 
  229                  6.979e-01,  7.819e-01,  9.488e-01, &
 
  230                  1.450e+00,  2.523e+00,  1.228e+00,  5.433e-01/
 
  231   DATA a3_csssm_19/-8.516e-03, -8.535e-03, -8.744e-03, &
 
  232                 -9.148e-03, -9.406e-03, -9.668e-03, &
 
  233                 -9.848e-03, -9.955e-03, -1.009e-02, &
 
  234                 -1.064e-02, -1.145e-02, -1.219e-02, &
 
  235                 -1.312e-02, -1.470e-02, -1.783e-02, &
 
  236                 -2.724e-02, -4.740e-02, -2.306e-02, -1.021e-02/
 
  237   DATA b1_csssm_19/ 2.535e-07,  2.530e-07,  2.479e-07, &
 
  238                  2.380e-07,  2.317e-07,  2.252e-07, &
 
  239                  2.208e-07,  2.182e-07,  2.149e-07, &
 
  240                  2.051e-07,  1.912e-07,  1.784e-07, &
 
  241                  1.624e-07,  1.353e-07,  1.012e-07, &
 
  242                  6.016e-08,  2.102e-08,  0.000e+00,  0.000e+00/
 
  243   DATA b2_csssm_19/ 1.221e-07,  1.217e-07,  1.179e-07, &
 
  244                  1.104e-07,  1.056e-07,  1.008e-07, &
 
  245                  9.744e-08,  9.546e-08,  9.299e-08, &
 
  246                  8.807e-08,  8.150e-08,  7.544e-08, &
 
  247                  6.786e-08,  5.504e-08,  4.080e-08, &
 
  248                  2.960e-08,  2.300e-08,  2.030e-08,  1.997e-08/
 
  249   DATA c1_csssm_19/ 7.659e-01,  7.658e-01,  7.652e-01, &
 
  250                  7.639e-01,  7.631e-01,  7.623e-01, &
 
  251                  7.618e-01,  7.614e-01,  7.610e-01, &
 
  252                  7.598e-01,  7.581e-01,  7.566e-01, &
 
  253                  7.546e-01,  7.513e-01,  7.472e-01, &
 
  254                  7.423e-01,  7.376e-01,  7.342e-01,  7.334e-01/
 
  255   DATA c2_csssm_19/ 3.691e-02,  3.694e-02,  3.729e-02, &
 
  256                  3.796e-02,  3.839e-02,  3.883e-02, &
 
  257                  3.913e-02,  3.931e-02,  3.953e-02, &
 
  258                  4.035e-02,  4.153e-02,  4.263e-02, &
 
  259                  4.400e-02,  4.631e-02,  4.933e-02, &
 
  260                  5.331e-02,  5.734e-02,  6.053e-02,  6.128e-02/
 
  262   DATA a1_ssssm_19/ 2.836e-01,  2.876e-01,  2.563e-01, &
 
  263                  2.414e-01,  2.541e-01,  2.546e-01, &
 
  264                  2.572e-01,  2.638e-01,  2.781e-01, &
 
  265                  3.167e-01,  4.209e-01,  5.286e-01, &
 
  266                  6.959e-01,  9.233e-01,  1.282e+00, &
 
  267                  1.836e+00,  2.981e+00,  4.355e+00,  4.059e+00/
 
  268   DATA a2_ssssm_19/ 1.608e-01,  1.651e-01,  1.577e-01, &
 
  269                  1.587e-01,  1.686e-01,  1.690e-01, &
 
  270                  1.711e-01,  1.762e-01,  1.874e-01, &
 
  271                  2.138e-01,  2.751e-01,  3.363e-01, &
 
  272                  4.279e-01,  5.519e-01,  7.421e-01, &
 
  273                  1.048e+00,  1.702e+00,  2.485e+00,  2.317e+00/
 
  274   DATA a3_ssssm_19/-3.025e-03, -3.111e-03, -2.981e-03, &
 
  275                 -3.005e-03, -3.193e-03, -3.200e-03, &
 
  276                 -3.239e-03, -3.336e-03, -3.548e-03, &
 
  277                 -4.047e-03, -5.196e-03, -6.345e-03, &
 
  278                 -8.061e-03, -1.038e-02, -1.395e-02, &
 
  279                 -1.970e-02, -3.197e-02, -4.669e-02, -4.352e-02/
 
  280   DATA b1_ssssm_19/ 6.759e-07,  6.246e-07,  5.542e-07, &
 
  281                  4.953e-07,  4.746e-07,  4.738e-07, &
 
  282                  4.695e-07,  4.588e-07,  4.354e-07, &
 
  283                  3.947e-07,  3.461e-07,  3.067e-07, &
 
  284                  2.646e-07,  2.095e-07,  1.481e-07, &
 
  285                  9.024e-08,  5.747e-08,  2.384e-08,  6.599e-09/
 
  286   DATA b2_ssssm_19/ 5.977e-07,  5.390e-07,  4.468e-07, &
 
  287                  3.696e-07,  3.443e-07,  3.433e-07, &
 
  288                  3.380e-07,  3.249e-07,  2.962e-07, &
 
  289                  2.483e-07,  1.989e-07,  1.623e-07, &
 
  290                  1.305e-07,  9.015e-08,  6.111e-08, &
 
  291                  3.761e-08,  2.903e-08,  2.337e-08,  2.147e-08/
 
  292   DATA c1_ssssm_19/ 8.120e-01,  8.084e-01,  8.016e-01, &
 
  293                  7.953e-01,  7.929e-01,  7.928e-01, &
 
  294                  7.923e-01,  7.910e-01,  7.882e-01, &
 
  295                  7.834e-01,  7.774e-01,  7.725e-01, &
 
  296                  7.673e-01,  7.604e-01,  7.529e-01, &
 
  297                  7.458e-01,  7.419e-01,  7.379e-01,  7.360e-01/
 
  298   DATA c2_ssssm_19/ 2.388e-02,  2.392e-02,  2.457e-02,  2.552e-02, &
 
  299                  2.615e-02,  2.618e-02,  2.631e-02,  2.663e-02, &
 
  300                  2.735e-02,  2.875e-02,  3.113e-02,  3.330e-02, &
 
  301                  3.615e-02,  3.997e-02,  4.521e-02,  5.038e-02, &
 
  302                  5.358e-02,  5.705e-02,  5.887e-02/
 
  314  DATA alpha_aers_5wv/ & 
 
  316        7.930,7.930,7.930,7.930,7.930,7.930,     & 
 
  317        7.930,7.930,10.893,12.618,14.550,16.613, & 
 
  318        7.658,7.658,7.658,7.658,7.658,7.658,     & 
 
  319        7.658,7.658,10.351,11.879,13.642,15.510, & 
 
  320        7.195,7.195,7.195,7.195,7.195,7.195,     & 
 
  321        7.195,7.195,9.551,10.847,12.381,13.994,  & 
 
  322        6.736,6.736,6.736,6.736,6.736,6.736,     & 
 
  323        6.736,6.736,8.818,9.938,11.283,12.687,   & 
 
  324        6.277,6.277,6.277,6.277,6.277,6.277,     & 
 
  325        6.277,6.277,8.123,9.094,10.275,11.501,   & 
 
  327        6.676,6.676,6.676,6.676,6.710,6.934,   & 
 
  328        7.141,7.569,8.034,8.529,9.456,10.511,  & 
 
  329        5.109,5.109,5.109,5.109,5.189,5.535,   & 
 
  330        5.960,6.852,8.008,9.712,12.897,19.676, & 
 
  331        3.718,3.718,3.718,3.718,3.779,4.042,   & 
 
  332        4.364,5.052,5.956,7.314,9.896,15.688,  & 
 
  333        2.849,2.849,2.849,2.849,2.897,3.107,   & 
 
  334        3.365,3.916,4.649,5.760,7.900,12.863,  & 
 
  335        2.229,2.229,2.229,2.229,2.268,2.437,   & 
 
  336        2.645,3.095,3.692,4.608,6.391,10.633,  & 
 
  338        5.751,6.215,6.690,7.024,7.599,8.195,      & 
 
  339        9.156,10.355,12.660,14.823,18.908,24.508, & 
 
  340        4.320,4.675,5.052,5.375,5.787,6.274,      & 
 
  341        7.066,8.083,10.088,12.003,15.697,21.133,  & 
 
  342        3.079,3.351,3.639,3.886,4.205,4.584,      & 
 
  343        5.206,6.019,7.648,9.234,12.391,17.220,    & 
 
  344        2.336,2.552,2.781,2.979,3.236,3.540,      & 
 
  345        4.046,4.711,6.056,7.388,10.093,14.313,    & 
 
  346        1.777,1.949,2.134,2.292,2.503,2.751,      & 
 
  347        3.166,3.712,4.828,5.949,8.264,11.922,     & 
 
  349        5.751,6.215,6.690,7.024,7.599,8.195,      & 
 
  350        9.156,10.355,12.660,14.823,18.908,24.508, & 
 
  351        4.320,4.675,5.052,5.375,5.787,6.274,      & 
 
  352        7.066,8.083,10.088,12.003,15.697,21.133,  & 
 
  353        3.079,3.351,3.639,3.886,4.205,4.584,      & 
 
  354        5.206,6.019,7.648,9.234,12.391,17.220,    & 
 
  355        2.336,2.552,2.781,2.979,3.236,3.540,      & 
 
  356        4.046,4.711,6.056,7.388,10.093,14.313,    & 
 
  357        1.777,1.949,2.134,2.292,2.503,2.751,      & 
 
  358        3.166,3.712,4.828,5.949,8.264,11.922,     & 
 
  360        0.50,0.90,1.05,1.21,1.40,2.41, &  
 
  361        2.66,3.11,3.88,4.52,5.69,8.84, &  
 
  362        0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  363        0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  364      0.52,0.93,1.08,1.24,1.43,2.47, &  
 
  365      2.73,3.20,3.99,4.64,5.84,9.04, &  
 
  366      0.52,0.93,1.09,1.25,1.44,2.50, &  
 
  367      2.76,3.23,4.03,4.68,5.89,9.14, &  
 
  368      0.52,0.94,1.09,1.26,1.45,2.51, &  
 
  369      2.78,3.25,4.06,4.72,5.94,9.22, &  
 
  371        0.50,0.90,1.05,1.21,1.40,2.41, &  
 
  372        2.66,3.11,3.88,4.52,5.69,8.84, &  
 
  373        0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  374        0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  375      0.52,0.93,1.08,1.24,1.43,2.47, &  
 
  376      2.73,3.20,3.99,4.64,5.84,9.04, &  
 
  377      0.52,0.93,1.09,1.25,1.44,2.50, &  
 
  378      2.76,3.23,4.03,4.68,5.89,9.14, &  
 
  379      0.52,0.94,1.09,1.26,1.45,2.51, &  
 
  380      2.78,3.25,4.06,4.72,5.94,9.22, &  
 
  382      4.28, 7.17, 8.44, 9.85,11.60,22.44,  &  
 
  383      25.34,30.54,39.38,46.52,59.33,91.77, &  
 
  384        0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  385        0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  386      2.48, 4.22, 5.02, 5.94, 7.11,15.29,  &  
 
  387      17.70,22.31,30.73,38.06,52.15,90.59, &  
 
  388      1.90, 3.29, 3.94, 4.69, 5.65, 12.58, &  
 
  389      14.68,18.77,26.41,33.25,46.77,85.50, &  
 
  390      1.47, 2.59, 3.12, 3.74, 4.54, 10.42, &  
 
  391      12.24,15.82,22.66,28.91,41.54,79.33/ 
 
  393   DATA alpha_aeri_5wv/ &
 
  395         0.759, 0.770, 0.775, 0.775, 0.772, & 
 
  397         11.536,10.033, 8.422, 7.234, 6.270, & 
 
  399         5.042, 3.101, 1.890, 1.294, 0.934/ 
 
  403       .651, .651, .651, .651, .651, .651, & 
 
  404       .651, .651, .738, .764, .785, .800, & 
 
  405       .597, .597, .597, .597, .597, .597, & 
 
  406       .597, .597, .695, .725, .751, .770, & 
 
  407       .543, .543, .543, .543, .543, .543, & 
 
  408       .543, .543, .650, .684, .714, .736, &  
 
  409       .504, .504, .504, .504, .504, .504, & 
 
  410       .504, .504, .614, .651, .683, .708, &  
 
  411       .469, .469, .469, .469, .469, .469, & 
 
  412       .469, .469, .582, .620, .655, .681, & 
 
  414       .679, .679, .679, .679, .683, .691, & 
 
  415       .703, .720, .736, .751, .766, .784, & 
 
  416       .656, .656, .656, .656, .659, .669, & 
 
  417       .681, .699, .717, .735, .750, .779, &  
 
  418       .623, .623, .623, .623, .627, .637, & 
 
  419       .649, .668, .688, .709, .734, .762, & 
 
  420       .592, .592, .592, .592, .595, .605, & 
 
  421       .618, .639, .660, .682, .711, .743, & 
 
  422       .561, .561, .561, .561, .565, .575, & 
 
  423       .588, .609, .632, .656, .688, .724, & 
 
  425       .671, .684, .697, .704, .714, .723, & 
 
  426       .734, .746, .762, .771, .781, .789, & 
 
  427       .653, .666, .678, .687, .697, .707, & 
 
  428       .719, .732, .751, .762, .775, .789, & 
 
  429       .622, .635, .648, .657, .667, .678, & 
 
  430       .691, .705, .728, .741, .758, .777, & 
 
  431       .591, .604, .617, .627, .638, .650, & 
 
  432       .664, .679, .704, .719, .739, .761, & 
 
  433       .560, .574, .587, .597, .609, .621, &  
 
  434       .637, .653, .680, .697, .719, .745, & 
 
  436       .671, .684, .697, .704, .714, .723, & 
 
  437       .734, .746, .762, .771, .781, .789, & 
 
  438       .653, .666, .678, .687, .697, .707, & 
 
  439       .719, .732, .751, .762, .775, .789, & 
 
  440       .622, .635, .648, .657, .667, .678, & 
 
  441       .691, .705, .728, .741, .758, .777, & 
 
  442       .591, .604, .617, .627, .638, .650, & 
 
  443       .664, .679, .704, .719, .739, .761, & 
 
  444       .560, .574, .587, .597, .609, .621, &  
 
  445       .637, .653, .680, .697, .719, .745, & 
 
  447       0.730,0.753,0.760,0.766,0.772,0.793, &  
 
  448       0.797,0.802,0.809,0.813,0.820,0.830, &  
 
  449       0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  450       0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  451       0.721,0.744,0.750,0.756,0.762,0.784, &  
 
  452       0.787,0.793,0.800,0.804,0.811,0.822, &  
 
  453       0.717,0.741,0.747,0.753,0.759,0.780, &  
 
  454       0.784,0.789,0.795,0.800,0.806,0.817, &  
 
  455       0.715,0.739,0.745,0.751,0.757,0.777, &   
 
  456       0.781,0.786,0.793,0.797,0.803,0.814, &  
 
  458       0.730,0.753,0.760,0.766,0.772,0.793, &  
 
  459       0.797,0.802,0.809,0.813,0.820,0.830, &  
 
  460       0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  461       0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  462       0.721,0.744,0.750,0.756,0.762,0.784, &  
 
  463       0.787,0.793,0.800,0.804,0.811,0.822, &  
 
  464       0.717,0.741,0.747,0.753,0.759,0.780, &  
 
  465       0.784,0.789,0.795,0.800,0.806,0.817, &  
 
  466       0.715,0.739,0.745,0.751,0.757,0.777, &   
 
  467       0.781,0.786,0.793,0.797,0.803,0.814, &  
 
  469       0.698,0.722,0.729,0.736,0.743,0.765, &  
 
  470       0.768,0.773,0.777,0.779,0.781,0.779, &  
 
  471       0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  472       0.000,0.000,0.000,0.000,0.000,0.000, &  
 
  473       0.658,0.691,0.701,0.710,0.720,0.756, &  
 
  474       0.763,0.771,0.782,0.788,0.795,0.801, &  
 
  475       0.632,0.668,0.679,0.690,0.701,0.743, &  
 
  476       0.750,0.762,0.775,0.783,0.792,0.804, &  
 
  477       0.605,0.644,0.656,0.669,0.681,0.729, &  
 
  478       0.737,0.750,0.765,0.775,0.787,0.803/
 
  483      0.714, 0.697, 0.688, 0.683, 0.679, &
 
  485      0.511, 0.445, 0.384, 0.342, 0.307, &
 
  487      0.596, 0.536, 0.466, 0.409, 0.359/
 
  491   .445, .445, .445, .445, .445, .445, & 
 
  492   .445, .445, .470, .487, .508, .531, & 
 
  493   .442, .442, .442, .442, .442, .442, & 
 
  494   .442, .442, .462, .481, .506, .533, & 
 
  495   .427, .427, .427, .427, .427, .427, & 
 
  496   .427, .427, .449, .470, .497, .526, & 
 
  497   .413, .413, .413, .413, .413, .413, & 
 
  498   .413, .413, .437, .458, .486, .516, & 
 
  499   .399, .399, .399, .399, .399, .399, & 
 
  500   .399, .399, .423, .445, .473, .506, & 
 
  502   .975, .975, .975, .975, .975, .977, & 
 
  503   .979, .982, .984, .987, .990, .994, & 
 
  504   .972, .972, .972, .972, .973, .974, & 
 
  505   .977, .980, .983, .986, .989, .993, & 
 
  506   .963, .963, .963, .963, .964, .966, & 
 
  507   .969, .974, .977, .982, .986, .991, & 
 
  508   .955, .955, .955, .955, .955, .958, & 
 
  509   .962, .967, .972, .977, .983, .989, & 
 
  510   .944, .944, .944, .944, .944, .948, & 
 
  511   .952, .959, .962, .972, .979, .987, & 
 
  513   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  514   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  515   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  516   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  517   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  518   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  519   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  520   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  521   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  522   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  524   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  525   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  526   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  527   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  528   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  529   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  530   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  531   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  532   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  533   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  535   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  536   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  537   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  538   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  539   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  540   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  541   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  542   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  543   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  544   1.000,1.000,1.000,1.000,1.000,1.000, & 
 
  546   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  547   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  548   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  549   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  550   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  551   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  552   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  553   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  554   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  555   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  557   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  558   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  559   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  560   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  561   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  562   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  563   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  564   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  565   1.000,1.000,1.000,1.000,1.000,1.000, &  
 
  566   1.000,1.000,1.000,1.000,1.000,1.000/ 
 
  571      0.944, 0.970, 0.977, 0.982, 0.987, &
 
  573      0.415, 0.387, 0.355, 0.328, 0.301, &
 
  575      0.972, 0.963, 0.943, 0.923, 0.897/
 
  581     IF (.NOT. 
ALLOCATED(a1_asssm)) 
THEN 
  582         ALLOCATE(a1_asssm(
klev),a2_asssm(
klev), a3_asssm(
klev),&
 
  588         IF (ierr /= 0) 
CALL abort_physic(
'aeropt_5mw', 
'pb in allocation 1',1)
 
  592      CALL pres2lev(a1_asssm_19, a1_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  593      CALL pres2lev(a2_asssm_19, a2_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  594      CALL pres2lev(a3_asssm_19, a3_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  595      CALL pres2lev(b1_asssm_19, b1_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  596      CALL pres2lev(b2_asssm_19, b2_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  597      CALL pres2lev(c1_asssm_19, c1_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  598      CALL pres2lev(c2_asssm_19, c2_asssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  600      CALL pres2lev(a1_csssm_19, a1_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  601      CALL pres2lev(a2_csssm_19, a2_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  602      CALL pres2lev(a3_csssm_19, a3_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  603      CALL pres2lev(b1_csssm_19, b1_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  604      CALL pres2lev(b2_csssm_19, b2_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  605      CALL pres2lev(c1_csssm_19, c1_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  606      CALL pres2lev(c2_csssm_19, c2_csssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  608      CALL pres2lev(a1_ssssm_19, a1_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  609      CALL pres2lev(a2_ssssm_19, a2_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  610      CALL pres2lev(a3_ssssm_19, a3_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  611      CALL pres2lev(b1_ssssm_19, b1_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  612      CALL pres2lev(b2_ssssm_19, b2_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  613      CALL pres2lev(c1_ssssm_19, c1_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  614      CALL pres2lev(c2_ssssm_19, c2_ssssm, nb_level, 
klev, presnivs_19, presnivs, 1, 1, .
false.)
 
  626       zrho=pplay(i,k)/t_seri(i,k)/rd                  
 
  627       dh(i,k)=pdel(i,k)/(gravit*zrho)
 
  628       mass_temp(i,k,:) = m_allaer(i,k,:) / zrho / 1.e+9
 
  629       zdp1(i,k)=pdel(i,k)/(gravit*delt)     
 
  635   IF (flag_aerosol .EQ. 1) 
THEN  
  637      ALLOCATE (aerosol_name(nb_aer)) 
 
  640   ELSEIF (flag_aerosol .EQ. 2) 
THEN 
  642      ALLOCATE (aerosol_name(nb_aer)) 
 
  645   ELSEIF (flag_aerosol .EQ. 3) 
THEN  
  647      ALLOCATE (aerosol_name(nb_aer)) 
 
  650   ELSEIF (flag_aerosol .EQ. 4) 
THEN  
  652      ALLOCATE (aerosol_name(nb_aer)) 
 
  656   ELSEIF (flag_aerosol .EQ. 5) 
THEN  
  658      ALLOCATE (aerosol_name(nb_aer)) 
 
  660   ELSEIF (flag_aerosol .EQ. 6) 
THEN  
  662      ALLOCATE (aerosol_name(nb_aer)) 
 
  691     fact_rh(n)=1./(rh_tab(n+1)-rh_tab(n))
 
  698       rh(i,k)=min(rhcl(i,k)*100.,rh_max)
 
  699       rh_num(i,k) = int( rh(i,k)/10. + 1.)
 
  700       IF (rh(i,k).GT.85.) rh_num(i,k)=10
 
  701       IF (rh(i,k).GT.90.) rh_num(i,k)=11
 
  702       delta(i,k)=(rh(i,k)-rh_tab(rh_num(i,k)))*fact_rh(rh_num(i,k))
 
  758       used_tau(spsol)=.
true.
 
  760       used_tau(naero_soluble+spinsol)=.
true.
 
  763     aerindex=aerosol_name(m)
 
  769         IF((la.EQ.2).AND.(spss.NE.0)) 
THEN  
  777                 tau_ae5wv_int=a1_asssm(k)+a2_asssm(k)*h+a3_asssm(k)/(h-1.05)
 
  778                 tau(i,k,la,aerindex) = mass_temp(i,k,aerindex)*1000.*zdp1(i,k)   &
 
  779                                    *tau_ae5wv_int*delt*fac
 
  780                 tausum(i,la,aerindex)=tausum(i,la,aerindex)+tau(i,k,la,aerindex)
 
  792                 tau_ae5wv_int=a1_csssm(k)+a2_csssm(k)*h+a3_csssm(k)/(h-1.05)
 
  793                 tau(i,k,la,aerindex) = mass_temp(i,k,aerindex)*1000.*zdp1(i,k)  &
 
  794                                    *tau_ae5wv_int*delt*fac
 
  795                 tausum(i,la,aerindex) = tausum(i,la,aerindex)+tau(i,k,la,aerindex)
 
  807                 tau_ae5wv_int=a1_ssssm(k)+a2_ssssm(k)*h+a3_ssssm(k)/(h-1.05)
 
  808                 tau(i,k,la,aerindex) = mass_temp(i,k,aerindex)*1000.*zdp1(i,k)  &
 
  809                                    *tau_ae5wv_int*delt*fac
 
  810                 tausum(i,la,aerindex)=tausum(i,la,aerindex)+tau(i,k,la,aerindex)
 
  819               tau_ae5wv_int = alpha_aers_5wv(rh_num(i,k),la,spsol)+delta(i,k)* &
 
  820                              (alpha_aers_5wv(rh_num(i,k)+1,la,spsol) - & 
 
  821                               alpha_aers_5wv(rh_num(i,k),la,spsol))
 
  823               tau(i,k,la,aerindex) = mass_temp(i,k,aerindex)*1000.*zdp1(i,k)   &
 
  824                                  *tau_ae5wv_int*delt*fac
 
  825               tausum(i,la,aerindex)=tausum(i,la,aerindex)+tau(i,k,la,aerindex)
 
  834             tau_ae5wv_int = alpha_aeri_5wv(la,spinsol)
 
  835             tau(i,k,la,aerindex) = mass_temp(i,k,aerindex)*1000.*zdp1(i,k)* &
 
  836                                                 tau_ae5wv_int*delt*fac
 
  837             tausum(i,la,aerindex)= tausum(i,la,aerindex)+tau(i,k,la,aerindex)
 
  845     IF (.NOT.used_tau(m)) tau(:,:,:,m)=0.
 
  884   DEALLOCATE(aerosol_name) 
 
integer, parameter id_asssm_phy
 
integer, parameter id_aipomm_phy
 
integer, parameter id_aspomm_phy
 
real, dimension(:), allocatable, save od550lt1aer
 
subroutine pres2lev(varo, varn, lmo, lmn, po, pn, ni, nj, ok_invertp)
 
real, dimension(:,:), allocatable, save ec550aer
 
integer, parameter id_csssm_phy
 
!$Id!Parameters for nlm real spfac!IM cf epmax real ptcrit real omtrain real dttrig real tau
 
real, dimension(:), allocatable, save od865aer
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
 
integer, parameter id_asbcm_phy
 
subroutine aeropt_5wv(pdel, m_allaer, delt, RHcl, ai, flag_aerosol, pplay, t_seri, tausum, tau, presnivs)
 
integer, parameter id_aibcm_phy
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL pplay
 
integer, parameter id_asso4m_phy
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true
 
real, dimension(:), allocatable, save od550aer
 
integer, parameter naero_spc
 
integer, parameter id_ssssm_phy
 
subroutine abort_physic(modname, message, ierr)
 
integer, parameter id_csso4m_phy
 
integer, parameter id_cidustm_phy