Ignore:
Timestamp:
Apr 17, 2020 4:14:16 PM (4 years ago)
Author:
schwenkel
Message:

Implementation of ice microphysics

File:
1 edited

Legend:

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

    r4469 r4502  
    2525! -----------------
    2626! $Id$
     27! Implementation of ice microphysics
     28!
     29! 4469 2020-03-23 14:31:00Z suehring
    2730! fix mistakenly committed version
    2831!
     
    240243               sums_wssas_ws_l, sums_wsus_ws_l, sums_wsvs_ws_l,                &
    241244               sums_wsqcs_ws_l, sums_wsqrs_ws_l,                               &
     245               sums_wsqis_ws_l, sums_wsnis_ws_l,                               &
    242246               sums_wsncs_ws_l, sums_wsnrs_ws_l,                               &
    243247               hom, weight_substep
     
    19381942             ENDDO
    19391943
     1944          CASE ( 'qi' )
     1945
     1946             DO  k = nzb, nzt
     1947                sums_wsqis_ws_l(k,tn)  = sums_wsqis_ws_l(k,tn) +               &
     1948                    ( flux_t(k) / ( w(k,j,i) + SIGN( 1.0E-20_wp, w(k,j,i) ) )  &
     1949                                * ( w(k,j,i) - hom(k,1,3,0)                 )  &
     1950                    + diss_t(k) / ( ABS(w(k,j,i)) + 1.0E-20_wp              )  &
     1951                                *   ABS( w(k,j,i) - hom(k,1,3,0)            )  &
     1952                    ) * weight_substep(intermediate_timestep_count)
     1953             ENDDO
    19401954
    19411955          CASE ( 'qr' )
     
    19541968             DO  k = nzb, nzt
    19551969                sums_wsncs_ws_l(k,tn)  = sums_wsncs_ws_l(k,tn) +               &
     1970                    ( flux_t(k) / ( w(k,j,i) + SIGN( 1.0E-20_wp, w(k,j,i) ) )  &
     1971                                * ( w(k,j,i) - hom(k,1,3,0)                 )  &
     1972                    + diss_t(k) / ( ABS(w(k,j,i)) + 1.0E-20_wp              )  &
     1973                                *   ABS( w(k,j,i) - hom(k,1,3,0)            )  &
     1974                    ) * weight_substep(intermediate_timestep_count)
     1975             ENDDO
     1976
     1977          CASE ( 'ni' )
     1978
     1979             DO  k = nzb, nzt
     1980                sums_wsnis_ws_l(k,tn)  = sums_wsnis_ws_l(k,tn) +               &
    19561981                    ( flux_t(k) / ( w(k,j,i) + SIGN( 1.0E-20_wp, w(k,j,i) ) )  &
    19571982                                * ( w(k,j,i) - hom(k,1,3,0)                 )  &
     
    37983823           CASE ( 'aerosol_mass', 'aerosol_number', 'salsa_gas' )
    37993824              sk_num = 9
     3825           CASE ( 'ni' )
     3826              sk_num = 10
     3827           CASE ( 'qi' )
     3828              sk_num = 11
    38003829           CASE DEFAULT
    38013830              sk_num = 0
     
    38243853       !$ACC PRESENT(sums_wsqrs_ws_l, sums_wsncs_ws_l) &
    38253854       !$ACC PRESENT(sums_wsnrs_ws_l, sums_wsss_ws_l) &
     3855       !$ACC PRESENT(sums_wsnis_ws_l, sums_wsqis_ws_l) &
    38263856       !$ACC PRESENT(sums_salsa_ws_l)
    38273857       DO  i = nxl, nxr
     
    45174547                               *   ABS(w(k,j,i) - hom(k,1,3,0)             )   &
    45184548                           ) * weight_substep(intermediate_timestep_count)
     4549                    CASE ( 10 )
     4550                       !$ACC ATOMIC
     4551                       sums_wsnis_ws_l(k,tn)  = sums_wsnis_ws_l(k,tn)          &
     4552                          + ( flux_t(k)                                        &
     4553                                / ( w(k,j,i) + SIGN( 1.0E-20_wp, w(k,j,i) ) )  &
     4554                                * ( w(k,j,i) - hom(k,1,3,0)                 )  &
     4555                            + diss_t(k)                                        &
     4556                                / ( ABS(w(k,j,i)) + 1.0E-20_wp              )  &
     4557                                *   ABS(w(k,j,i) - hom(k,1,3,0)             )  &
     4558                            ) * weight_substep(intermediate_timestep_count)
     4559                    CASE ( 11 )
     4560                       !$ACC ATOMIC
     4561                       sums_wsqis_ws_l(k,tn)  = sums_wsqis_ws_l(k,tn)          &
     4562                          + ( flux_t(k)                                        &
     4563                                / ( w(k,j,i) + SIGN( 1.0E-20_wp, w(k,j,i) ) )  &
     4564                                * ( w(k,j,i) - hom(k,1,3,0)                 )  &
     4565                            + diss_t(k)                                        &
     4566                                / ( ABS(w(k,j,i)) + 1.0E-20_wp              )  &
     4567                                *   ABS(w(k,j,i) - hom(k,1,3,0)             )  &
     4568                            ) * weight_substep(intermediate_timestep_count)
    45194569
    45204570                END SELECT
Note: See TracChangeset for help on using the changeset viewer.