Ignore:
Timestamp:
Apr 30, 2015 7:05:52 AM (9 years ago)
Author:
maronga
Message:

Added support for RRTMG radiation code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/land_surface_model.f90

    r1572 r1585  
    2020! Current revisions:
    2121! -----------------
    22 !
     22! Modifications for RRTMG. Changed tables to PARAMETER type.
    2323!
    2424! Former revisions:
     
    8080!------------------------------------------------------------------------------!
    8181     USE arrays_3d,                                                            &
    82          ONLY:  pt, pt_p, q, q_p, qsws, rif, shf, ts, us, z0, z0h
     82         ONLY:  pt, pt_p, q_p, qsws, rif, shf, ts, us, z0, z0h
    8383
    8484     USE cloud_parameters,                                                     &
     
    9090                max_masks, precipitation, pt_surface, rho_surface,             &
    9191                roughness_length, surface_pressure, timestep_scheme, tsc,      &
    92                 z0h_factor
     92                z0h_factor, time_since_reference_point
    9393
    9494     USE indices,                                                              &
    95          ONLY:  nxlg, nxrg, nyng, nysg, nzb_s_inner
     95         ONLY:  nbgp, nxlg, nxrg, nyng, nysg, nzb, nzb_s_inner
    9696
    9797     USE kinds
     
    101101
    102102     USE radiation_model_mod,                                                  &
    103          ONLY:  irad_scheme, rad_net, rad_sw_in, sigma_sb
     103         ONLY:  radiation_scheme, rad_net, rad_sw_in, sigma_sb
    104104
    105105     USE statistics,                                                           &
     
    243243              qsws_veg_eb,      & !: surface flux of latent heat (vegetation portion)
    244244              qsws_veg_eb_av,   & !: average of qsws_veg_eb
     245              rad_net_l,        & !: local copy of rad_net (net radiation at surface)
    245246              r_a,              & !: aerodynamic resistance
    246247              r_a_av,           & !: avergae of r_a
     
    276277              t_soil_av, t_soil_1, t_soil_2,                                   &
    277278              m_soil_av, m_soil_1, m_soil_2
    278 
    279 
    280279#endif
    281280
     
    289288!
    290289!-- Predefined Land surface classes (veg_type)
    291     CHARACTER(26), DIMENSION(0:19) :: veg_type_name = (/          &
    292                                    'user defined',                & ! 0
    293                                    'crops, mixed farming',        & !  1
    294                                    'short grass',                 & !  2
    295                                    'evergreen needleleaf trees',  & !  3
    296                                    'deciduous needleleaf trees',  & !  4
    297                                    'evergreen broadleaf trees' ,  & !  5
    298                                    'deciduous broadleaf trees',   & !  6
    299                                    'tall grass',                  & !  7
    300                                    'desert',                      & !  8
    301                                    'tundra',                      & !  9
    302                                    'irrigated crops',             & ! 10
    303                                    'semidesert',                  & ! 11
    304                                    'ice caps and glaciers' ,      & ! 12
    305                                    'bogs and marshes',            & ! 13
    306                                    'inland water',                & ! 14
    307                                    'ocean',                       & ! 15
    308                                    'evergreen shrubs',            & ! 16
    309                                    'deciduous shrubs',            & ! 17
    310                                    'mixed forest/woodland',       & ! 18
    311                                    'interrupted forest'           & ! 19
    312                                                        /)
     290    CHARACTER(26), DIMENSION(0:19), PARAMETER :: veg_type_name = (/ &
     291                                   'user defined',                  & ! 0
     292                                   'crops, mixed farming',          & !  1
     293                                   'short grass',                   & !  2
     294                                   'evergreen needleleaf trees',    & !  3
     295                                   'deciduous needleleaf trees',    & !  4
     296                                   'evergreen broadleaf trees' ,    & !  5
     297                                   'deciduous broadleaf trees',     & !  6
     298                                   'tall grass',                    & !  7
     299                                   'desert',                        & !  8
     300                                   'tundra',                        & !  9
     301                                   'irrigated crops',               & ! 10
     302                                   'semidesert',                    & ! 11
     303                                   'ice caps and glaciers' ,        & ! 12
     304                                   'bogs and marshes',              & ! 13
     305                                   'inland water',                  & ! 14
     306                                   'ocean',                         & ! 15
     307                                   'evergreen shrubs',              & ! 16
     308                                   'deciduous shrubs',              & ! 17
     309                                   'mixed forest/woodland',         & ! 18
     310                                   'interrupted forest'             & ! 19
     311                                                                 /)
    313312
    314313!
    315314!-- Soil model classes (soil_type)
    316     CHARACTER(12), DIMENSION(0:7) :: soil_type_name = (/ &
    317                                    'user defined',        & ! 0
    318                                    'coarse',              & ! 1
    319                                    'medium',              & ! 2
    320                                    'medium-fine',         & ! 3
    321                                    'fine',                & ! 4
    322                                    'very fine' ,          & ! 5
    323                                    'organic',             & ! 6
    324                                    'loamy (CH)'           & ! 7
    325                                                         /)
     315    CHARACTER(12), DIMENSION(0:7), PARAMETER :: soil_type_name = (/ &
     316                                   'user defined',                  & ! 0
     317                                   'coarse',                        & ! 1
     318                                   'medium',                        & ! 2
     319                                   'medium-fine',                   & ! 3
     320                                   'fine',                          & ! 4
     321                                   'very fine' ,                    & ! 5
     322                                   'organic',                       & ! 6
     323                                   'loamy (CH)'                     & ! 7
     324                                                                 /)
    326325!
    327326!-- Land surface parameters according to the respective classes (veg_type)
     
    330329!-- Land surface parameters I
    331330!--                          r_canopy_min,     lai,   c_veg,     g_d
    332     REAL(wp), DIMENSION(0:3,1:19) :: veg_pars = RESHAPE( (/          &
    333                                  180.0_wp, 3.00_wp, 0.90_wp, 0.00_wp, & !  1
    334                                  110.0_wp, 2.00_wp, 0.85_wp, 0.00_wp, & !  2
    335                                  500.0_wp, 5.00_wp, 0.90_wp, 0.03_wp, & !  3
    336                                  500.0_wp, 5.00_wp, 0.90_wp, 0.03_wp, & !  4
    337                                  175.0_wp, 5.00_wp, 0.90_wp, 0.03_wp, & !  5
    338                                  240.0_wp, 6.00_wp, 0.99_wp, 0.13_wp, & !  6
    339                                  100.0_wp, 2.00_wp, 0.70_wp, 0.00_wp, & !  7
    340                                  250.0_wp, 0.05_wp, 0.00_wp, 0.00_wp, & !  8
    341                                   80.0_wp, 1.00_wp, 0.50_wp, 0.00_wp, & !  9
    342                                  180.0_wp, 3.00_wp, 0.90_wp, 0.00_wp, & ! 10
    343                                  150.0_wp, 0.50_wp, 0.10_wp, 0.00_wp, & ! 11
    344                                    0.0_wp, 0.00_wp, 0.00_wp, 0.00_wp, & ! 12
    345                                  240.0_wp, 4.00_wp, 0.60_wp, 0.00_wp, & ! 13
    346                                    0.0_wp, 0.00_wp, 0.00_wp, 0.00_wp, & ! 14
    347                                    0.0_wp, 0.00_wp, 0.00_wp, 0.00_wp, & ! 15
    348                                  225.0_wp, 3.00_wp, 0.50_wp, 0.00_wp, & ! 16
    349                                  225.0_wp, 1.50_wp, 0.50_wp, 0.00_wp, & ! 17
    350                                  250.0_wp, 5.00_wp, 0.90_wp, 0.03_wp, & ! 18
    351                                  175.0_wp, 2.50_wp, 0.90_wp, 0.03_wp  & ! 19
     331    REAL(wp), DIMENSION(0:3,1:19), PARAMETER :: veg_pars = RESHAPE( (/ &
     332                                 180.0_wp, 3.00_wp, 0.90_wp, 0.00_wp,  & !  1
     333                                 110.0_wp, 2.00_wp, 0.85_wp, 0.00_wp,  & !  2
     334                                 500.0_wp, 5.00_wp, 0.90_wp, 0.03_wp,  & !  3
     335                                 500.0_wp, 5.00_wp, 0.90_wp, 0.03_wp,  & !  4
     336                                 175.0_wp, 5.00_wp, 0.90_wp, 0.03_wp,  & !  5
     337                                 240.0_wp, 6.00_wp, 0.99_wp, 0.13_wp,  & !  6
     338                                 100.0_wp, 2.00_wp, 0.70_wp, 0.00_wp,  & !  7
     339                                 250.0_wp, 0.05_wp, 0.00_wp, 0.00_wp,  & !  8
     340                                  80.0_wp, 1.00_wp, 0.50_wp, 0.00_wp,  & !  9
     341                                 180.0_wp, 3.00_wp, 0.90_wp, 0.00_wp,  & ! 10
     342                                 150.0_wp, 0.50_wp, 0.10_wp, 0.00_wp,  & ! 11
     343                                   0.0_wp, 0.00_wp, 0.00_wp, 0.00_wp,  & ! 12
     344                                 240.0_wp, 4.00_wp, 0.60_wp, 0.00_wp,  & ! 13
     345                                   0.0_wp, 0.00_wp, 0.00_wp, 0.00_wp,  & ! 14
     346                                   0.0_wp, 0.00_wp, 0.00_wp, 0.00_wp,  & ! 15
     347                                 225.0_wp, 3.00_wp, 0.50_wp, 0.00_wp,  & ! 16
     348                                 225.0_wp, 1.50_wp, 0.50_wp, 0.00_wp,  & ! 17
     349                                 250.0_wp, 5.00_wp, 0.90_wp, 0.03_wp,  & ! 18
     350                                 175.0_wp, 2.50_wp, 0.90_wp, 0.03_wp   & ! 19
    352351                                 /), (/ 4, 19 /) )
    353352
    354353!
    355354!-- Land surface parameters II          z0,         z0h
    356     REAL(wp), DIMENSION(0:1,1:19) :: roughness_par = RESHAPE( (/ &
    357                                    0.25_wp,  0.25E-2_wp,         & !  1
    358                                    0.20_wp,  0.20E-2_wp,         & !  2
    359                                    2.00_wp,     2.00_wp,         & !  3
    360                                    2.00_wp,     2.00_wp,         & !  4
    361                                    2.00_wp,     2.00_wp,         & !  5
    362                                    2.00_wp,     2.00_wp,         & !  6
    363                                    0.47_wp,  0.47E-2_wp,         & !  7
    364                                   0.013_wp, 0.013E-2_wp,         & !  8
    365                                   0.034_wp, 0.034E-2_wp,         & !  9
    366                                     0.5_wp,  0.50E-2_wp,         & ! 10
    367                                    0.17_wp,  0.17E-2_wp,         & ! 11
    368                                  1.3E-3_wp,   1.3E-4_wp,         & ! 12
    369                                    0.83_wp,  0.83E-2_wp,         & ! 13
    370                                    0.00_wp,  0.00E-2_wp,         & ! 14
    371                                    0.00_wp,  0.00E-2_wp,         & ! 15
    372                                    0.10_wp,  0.10E-2_wp,         & ! 16
    373                                    0.25_wp,  0.25E-2_wp,         & ! 17
    374                                    2.00_wp,  2.00E-2_wp,         & ! 18
    375                                    1.10_wp,  1.10E-2_wp          & ! 19
     355    REAL(wp), DIMENSION(0:1,1:19), PARAMETER :: roughness_par = RESHAPE( (/ &
     356                                   0.25_wp,  0.25E-2_wp,                    & !  1
     357                                   0.20_wp,  0.20E-2_wp,                    & !  2
     358                                   2.00_wp,     2.00_wp,                    & !  3
     359                                   2.00_wp,     2.00_wp,                    & !  4
     360                                   2.00_wp,     2.00_wp,                    & !  5
     361                                   2.00_wp,     2.00_wp,                    & !  6
     362                                   0.47_wp,  0.47E-2_wp,                    & !  7
     363                                  0.013_wp, 0.013E-2_wp,                    & !  8
     364                                  0.034_wp, 0.034E-2_wp,                    & !  9
     365                                    0.5_wp,  0.50E-2_wp,                    & ! 10
     366                                   0.17_wp,  0.17E-2_wp,                    & ! 11
     367                                 1.3E-3_wp,   1.3E-4_wp,                    & ! 12
     368                                   0.83_wp,  0.83E-2_wp,                    & ! 13
     369                                   0.00_wp,  0.00E-2_wp,                    & ! 14
     370                                   0.00_wp,  0.00E-2_wp,                    & ! 15
     371                                   0.10_wp,  0.10E-2_wp,                    & ! 16
     372                                   0.25_wp,  0.25E-2_wp,                    & ! 17
     373                                   2.00_wp,  2.00E-2_wp,                    & ! 18
     374                                   1.10_wp,  1.10E-2_wp                     & ! 19
    376375                                 /), (/ 2, 19 /) )
    377376
    378377!
    379378!-- Land surface parameters III lambda_surface_s, lambda_surface_u, f_sw_in
    380     REAL(wp), DIMENSION(0:2,1:19) :: surface_pars = RESHAPE( (/          &
    381                                       10.0_wp,       10.0_wp, 0.05_wp, & !  1
    382                                       10.0_wp,       10.0_wp, 0.05_wp, & !  2
    383                                       20.0_wp,       15.0_wp, 0.03_wp, & !  3
    384                                       20.0_wp,       15.0_wp, 0.03_wp, & !  4
    385                                       20.0_wp,       15.0_wp, 0.03_wp, & !  5
    386                                       20.0_wp,       15.0_wp, 0.03_wp, & !  6
    387                                       10.0_wp,       10.0_wp, 0.05_wp, & !  7
    388                                       15.0_wp,       15.0_wp, 0.00_wp, & !  8
    389                                       10.0_wp,       10.0_wp, 0.05_wp, & !  9
    390                                       10.0_wp,       10.0_wp, 0.05_wp, & ! 10
    391                                       10.0_wp,       10.0_wp, 0.05_wp, & ! 11
    392                                       58.0_wp,       58.0_wp, 0.00_wp, & ! 12
    393                                       10.0_wp,       10.0_wp, 0.05_wp, & ! 13
    394                                     1.0E20_wp,     1.0E20_wp, 0.00_wp, & ! 14
    395                                     1.0E20_wp,     1.0E20_wp, 0.00_wp, & ! 15
    396                                       10.0_wp,       10.0_wp, 0.05_wp, & ! 16
    397                                       10.0_wp,       10.0_wp, 0.05_wp, & ! 17
    398                                       20.0_wp,       15.0_wp, 0.03_wp, & ! 18
    399                                       20.0_wp,       15.0_wp, 0.03_wp  & ! 19
     379    REAL(wp), DIMENSION(0:2,1:19), PARAMETER :: surface_pars = RESHAPE( (/ &
     380                                      10.0_wp,       10.0_wp, 0.05_wp,     & !  1
     381                                      10.0_wp,       10.0_wp, 0.05_wp,     & !  2
     382                                      20.0_wp,       15.0_wp, 0.03_wp,     & !  3
     383                                      20.0_wp,       15.0_wp, 0.03_wp,     & !  4
     384                                      20.0_wp,       15.0_wp, 0.03_wp,     & !  5
     385                                      20.0_wp,       15.0_wp, 0.03_wp,     & !  6
     386                                      10.0_wp,       10.0_wp, 0.05_wp,     & !  7
     387                                      15.0_wp,       15.0_wp, 0.00_wp,     & !  8
     388                                      10.0_wp,       10.0_wp, 0.05_wp,     & !  9
     389                                      10.0_wp,       10.0_wp, 0.05_wp,     & ! 10
     390                                      10.0_wp,       10.0_wp, 0.05_wp,     & ! 11
     391                                      58.0_wp,       58.0_wp, 0.00_wp,     & ! 12
     392                                      10.0_wp,       10.0_wp, 0.05_wp,     & ! 13
     393                                    1.0E20_wp,     1.0E20_wp, 0.00_wp,     & ! 14
     394                                    1.0E20_wp,     1.0E20_wp, 0.00_wp,     & ! 15
     395                                      10.0_wp,       10.0_wp, 0.05_wp,     & ! 16
     396                                      10.0_wp,       10.0_wp, 0.05_wp,     & ! 17
     397                                      20.0_wp,       15.0_wp, 0.03_wp,     & ! 18
     398                                      20.0_wp,       15.0_wp, 0.03_wp      & ! 19
    400399                                      /), (/ 3, 19 /) )
    401400
    402401!
    403402!-- Root distribution (sum = 1)  level 1, level 2, level 3, level 4,
    404     REAL(wp), DIMENSION(0:3,1:19) :: root_distribution = RESHAPE( (/ &
    405                                  0.24_wp, 0.41_wp, 0.31_wp, 0.04_wp, & !  1
    406                                  0.35_wp, 0.38_wp, 0.23_wp, 0.04_wp, & !  2
    407                                  0.26_wp, 0.39_wp, 0.29_wp, 0.06_wp, & !  3
    408                                  0.26_wp, 0.38_wp, 0.29_wp, 0.07_wp, & !  4
    409                                  0.24_wp, 0.38_wp, 0.31_wp, 0.07_wp, & !  5
    410                                  0.25_wp, 0.34_wp, 0.27_wp, 0.14_wp, & !  6
    411                                  0.27_wp, 0.27_wp, 0.27_wp, 0.09_wp, & !  7
    412                                  1.00_wp, 0.00_wp, 0.00_wp, 0.00_wp, & !  8
    413                                  0.47_wp, 0.45_wp, 0.08_wp, 0.00_wp, & !  9
    414                                  0.24_wp, 0.41_wp, 0.31_wp, 0.04_wp, & ! 10
    415                                  0.17_wp, 0.31_wp, 0.33_wp, 0.19_wp, & ! 11
    416                                  0.00_wp, 0.00_wp, 0.00_wp, 0.00_wp, & ! 12
    417                                  0.25_wp, 0.34_wp, 0.27_wp, 0.11_wp, & ! 13
    418                                  0.00_wp, 0.00_wp, 0.00_wp, 0.00_wp, & ! 14
    419                                  0.00_wp, 0.00_wp, 0.00_wp, 0.00_wp, & ! 15
    420                                  0.23_wp, 0.36_wp, 0.30_wp, 0.11_wp, & ! 16
    421                                  0.23_wp, 0.36_wp, 0.30_wp, 0.11_wp, & ! 17
    422                                  0.19_wp, 0.35_wp, 0.36_wp, 0.10_wp, & ! 18
    423                                  0.19_wp, 0.35_wp, 0.36_wp, 0.10_wp  & ! 19
     403    REAL(wp), DIMENSION(0:3,1:19), PARAMETER :: root_distribution = RESHAPE( (/ &
     404                                 0.24_wp, 0.41_wp, 0.31_wp, 0.04_wp,            & !  1
     405                                 0.35_wp, 0.38_wp, 0.23_wp, 0.04_wp,            & !  2
     406                                 0.26_wp, 0.39_wp, 0.29_wp, 0.06_wp,            & !  3
     407                                 0.26_wp, 0.38_wp, 0.29_wp, 0.07_wp,            & !  4
     408                                 0.24_wp, 0.38_wp, 0.31_wp, 0.07_wp,            & !  5
     409                                 0.25_wp, 0.34_wp, 0.27_wp, 0.14_wp,            & !  6
     410                                 0.27_wp, 0.27_wp, 0.27_wp, 0.09_wp,            & !  7
     411                                 1.00_wp, 0.00_wp, 0.00_wp, 0.00_wp,            & !  8
     412                                 0.47_wp, 0.45_wp, 0.08_wp, 0.00_wp,            & !  9
     413                                 0.24_wp, 0.41_wp, 0.31_wp, 0.04_wp,            & ! 10
     414                                 0.17_wp, 0.31_wp, 0.33_wp, 0.19_wp,            & ! 11
     415                                 0.00_wp, 0.00_wp, 0.00_wp, 0.00_wp,            & ! 12
     416                                 0.25_wp, 0.34_wp, 0.27_wp, 0.11_wp,            & ! 13
     417                                 0.00_wp, 0.00_wp, 0.00_wp, 0.00_wp,            & ! 14
     418                                 0.00_wp, 0.00_wp, 0.00_wp, 0.00_wp,            & ! 15
     419                                 0.23_wp, 0.36_wp, 0.30_wp, 0.11_wp,            & ! 16
     420                                 0.23_wp, 0.36_wp, 0.30_wp, 0.11_wp,            & ! 17
     421                                 0.19_wp, 0.35_wp, 0.36_wp, 0.10_wp,            & ! 18
     422                                 0.19_wp, 0.35_wp, 0.36_wp, 0.10_wp             & ! 19
    424423                                 /), (/ 4, 19 /) )
    425424
     
    429428!
    430429!-- Soil parameters I           alpha_vg,      l_vg,    n_vg, gamma_w_sat
    431     REAL(wp), DIMENSION(0:3,1:7) :: soil_pars = RESHAPE( (/                &
     430    REAL(wp), DIMENSION(0:3,1:7), PARAMETER :: soil_pars = RESHAPE( (/     &
    432431                                 3.83_wp,  1.250_wp, 1.38_wp,  6.94E-6_wp, & ! 1
    433432                                 3.14_wp, -2.342_wp, 1.28_wp,  1.16E-6_wp, & ! 2
     
    441440!
    442441!-- Soil parameters II              m_sat,     m_fc,   m_wilt,    m_res 
    443     REAL(wp), DIMENSION(0:3,1:7) :: m_soil_pars = RESHAPE( (/            &
     442    REAL(wp), DIMENSION(0:3,1:7), PARAMETER :: m_soil_pars = RESHAPE( (/ &
    444443                                 0.403_wp, 0.244_wp, 0.059_wp, 0.025_wp, & ! 1
    445444                                 0.439_wp, 0.347_wp, 0.151_wp, 0.010_wp, & ! 2
     
    490489!-- Public prognostic variables
    491490    PUBLIC m_liq_eb, m_liq_eb_av, m_soil, m_soil_av, t_soil, t_soil_av
    492 
    493491
    494492    INTERFACE init_lsm
     
    573571       ALLOCATE ( qsws_liq_eb(nysg:nyng,nxlg:nxrg) )
    574572       ALLOCATE ( qsws_veg_eb(nysg:nyng,nxlg:nxrg) )
     573       ALLOCATE ( rad_net_l(nysg:nyng,nxlg:nxrg) )
    575574       ALLOCATE ( r_a(nysg:nyng,nxlg:nxrg) )
    576575       ALLOCATE ( r_canopy(nysg:nyng,nxlg:nxrg) )
     
    583582#if ! defined( __nopointer )
    584583!
    585 !-- Initial assignment of the pointers
     584!--    Initial assignment of the pointers
    586585       t_soil    => t_soil_1;    t_soil_p    => t_soil_2
    587586       t_surface => t_surface_1; t_surface_p => t_surface_2
     
    890889!
    891890!--    Add timeseries for land surface model
     891
    892892       dots_label(dots_num+1) = "ghf_eb"
    893893       dots_label(dots_num+2) = "shf_eb"
     
    904904       dots_soil = dots_num + 1
    905905       dots_num  = dots_num + 8
    906 
    907906
    908907       RETURN
     
    957956       exn = ( surface_pressure / 1000.0_wp )**0.286_wp
    958957
     958       
    959959
    960960       DO i = nxlg, nxrg
     
    984984!--          f1: correction for incoming shortwave radiation (stomata close at
    985985!--          night)
    986              IF ( irad_scheme /= 0 )  THEN
    987                 f1 = MIN(1.0_wp, ( 0.004_wp * rad_sw_in(j,i) + 0.05_wp ) /     &
    988                               (0.81_wp * (0.004_wp * rad_sw_in(j,i) + 1.0_wp) ))
     986             IF ( radiation_scheme /= 'constant' )  THEN
     987                f1 = MIN( 1.0_wp, ( 0.004_wp * rad_sw_in(k,j,i) + 0.05_wp ) /&
     988                              (0.81_wp * (0.004_wp * rad_sw_in(k,j,i)        &
     989                               + 1.0_wp)) )
    989990             ELSE
    990991                f1 = 1.0_wp
     
    11121113!
    11131114!--          Add LW up so that it can be removed in prognostic equation
    1114              rad_net(j,i) = rad_net(j,i) + sigma_sb * t_surface(j,i) ** 4
     1115             rad_net_l(j,i) = rad_net(j,i) + sigma_sb * t_surface(j,i) ** 4
    11151116
    11161117             IF ( humidity )  THEN
     
    11181119!
    11191120!--             Numerator of the prognostic equation
    1120                 coef_1 = rad_net(j,i) + 3.0_wp * sigma_sb * t_surface(j,i) ** 4&
     1121                coef_1 = rad_net_l(j,i) + 3.0_wp * sigma_sb * t_surface(j,i) ** 4&
    11211122                         + f_shf / exn * T_1 + f_qsws * ( q_p(k+1,j,i) - q_s   &
    11221123                         + dq_s_dt * t_surface(j,i) ) + lambda_surface         &
     
    11321133!
    11331134!--             Numerator of the prognostic equation
    1134                 coef_1 = rad_net(j,i) + 3.0_wp * sigma_sb * t_surface(j,i) ** 4&
     1135                coef_1 = rad_net_l(j,i) + 3.0_wp * sigma_sb * t_surface(j,i) ** 4&
    11351136                         + f_shf / exn * T_1 + lambda_surface                  &
    11361137                         * t_soil(nzb_soil,j,i)
     
    11751176!
    11761177!--          Calculate fluxes
    1177              rad_net(j,i)   = rad_net(j,i) + 3.0_wp * sigma_sb                 &
     1178             rad_net_l(j,i)   = rad_net_l(j,i) + 3.0_wp * sigma_sb                 &
    11781179                              * t_surface(j,i)**4 - 4.0_wp * sigma_sb          &
    11791180                              * t_surface(j,i)**3 * t_surface_p(j,i)
     
    16211622          CASE ( 0 )
    16221623
    1623              t_surface = t_surface_p
    1624              t_soil    = t_soil_p
    1625              IF ( humidity )  THEN
    1626                 m_soil    = m_soil_p
    1627                 m_liq_eb  = m_liq_eb_p
    1628              ENDIF
    1629 
    1630 
    1631           CASE ( 1 )
    1632 
    16331624             t_surface  => t_surface_1; t_surface_p  => t_surface_2
    16341625             t_soil     => t_soil_1;    t_soil_p     => t_soil_2
     
    16381629             ENDIF
    16391630
     1631
     1632          CASE ( 1 )
     1633
     1634             t_surface  => t_surface_2; t_surface_p  => t_surface_1
     1635             t_soil     => t_soil_2;    t_soil_p     => t_soil_1
     1636             IF ( humidity )  THEN
     1637                m_soil    => m_soil_2;   m_soil_p    => m_soil_1
     1638                m_liq_eb  => m_liq_eb_2; m_liq_eb_p  => m_liq_eb_1
     1639             ENDIF
     1640
    16401641       END SELECT
    16411642#endif
Note: See TracChangeset for help on using the changeset viewer.