Changeset 4901 for palm/trunk


Ignore:
Timestamp:
Mar 4, 2021 9:24:08 PM (4 years ago)
Author:
banzhafs
Message:

removed unnecessary informative message and unused code from chemistry_model_mod

File:
1 edited

Legend:

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

    r4899 r4901  
    2626! -----------------
    2727! $Id$
     28! removed unnecessary informative messages,
     29! removed unused code in chem_depo subroutine
     30!
     31! 4899 2021-03-04 16:42:21Z raasch
    2832! small adjustments regarding r4897
    2933!
     
    18631867!
    18641868!-- At the moment the evaluation is done with both emiss_lod and mode_emis but once salsa has been
    1865 !-- migrated to emiss_lod the .OR. mode_emis conditions can be removed (ecc 20190513)
     1869!-- migrated to emiss_lod the .OR. mode_emis conditions can be removed
    18661870    IF     ( ( emiss_lod == 1 )  .OR.  ( mode_emis == 'DEFAULT' ) )        THEN
    18671871        WRITE ( io, 5 )
     
    25352539         side_street_id,                                                                           &
    25362540         photolysis_scheme,                                                                        &
    2537          wall_csflux,                                                                              &
     2541         wall_csflux,                                                                              &         
    25382542         surface_csflux,                                                                           &
    25392543         surface_csflux_name,                                                                      &
     
    26522656!--       force emission_read_legacy_mode to TRUE (not yet implemented)
    26532657
    2654        IF ( emiss_read_legacy_mode )  THEN       !< notify legacy read mode
    2655 
    2656           message_string = 'Legacy emission read mode activated&'           //                     &
    2657                            'All emissions data will be loaded '             //                     &
    2658                            'prior to start of simulation'
    2659           CALL message( 'chem_parin', 'PA0735', 0, 0, 0, 6, 0 )
    2660 
    2661        ELSE                                     !< if new read mode selected
     2658       IF ( .NOT. emiss_read_legacy_mode )  THEN    !< if new read mode selected
    26622659
    26632660          IF ( emiss_lod < 2 )  THEN            !< check LOD compatibility
     
    51305127!--    Total canopy conductance (gc_tot) and resistance Rc (rc_tot):
    51315128       CALL rc_rctot( gstom, gsoil_eff, gw, gc_tot, rc_tot )
    5132 !
    5133 !--    Needed to include compensation point for NH3
    5134 !--    Compensation points (always returns ccomp_tot; currently ccomp_tot != 0 only for NH3):
    5135 !--    CALL rc_comp_point( compnam,lu,day_of_year,t,gw,gstom,gsoil_eff,gc_tot,&
    5136 !--          lai_present, sai_present, &
    5137 !--          ccomp_tot, &
    5138 !--          conc_ijk_ugm3=conc_ijk_ugm3,c_ave_prev_nh3=c_ave_prev_nh3, &
    5139 !--          c_ave_prev_so2=c_ave_prev_so2,gamma_soil_water=gamma_soil_water, &
    5140 !--          tsea=tsea,cw=cw,cstom=cstom,csoil=csoil )
    5141 !
    5142 !--    Effective Rc based on compensation points:
    5143 !--        IF ( PRESENT( rc_eff ) )  THEN
    5144 !--          check on required arguments:
    5145 !--           IF ( ( .NOT. PRESENT( conc_ijk_ugm3 ) )  .OR.  ( .NOT. PRESENT( ra ) )  .OR.         &
    5146 !--                ( .NOT. PRESENT( rb ) ) )  THEN
    5147 !--              STOP 'output argument rc_eff requires input arguments conc_ijk_ugm3, ra and rb'
    5148 !--           ENDIF
    5149 !
    5150 !--           Compute rc_eff :
    5151 !--           CALL rc_comp_point_rc_eff(ccomp_tot,conc_ijk_ugm3,ra,rb,rc_tot,rc_eff)
    5152 !--        ENDIF
     5129
    51535130    ENDIF
    51545131
     
    59295906
    59305907!--------------------------------------------------------------------------------------------------!
    5931 !> rc_comp_point_rc_eff: calculate the effective resistance Rc
    5932 !> based on one or more compensation points
    5933 !--------------------------------------------------------------------------------------------------!
    5934 !> NH3rc (see depac v3.6 is based on Avero workshop Marc Sutton. p. 173. Sutton 1998 AE 473-480)
    5935 !>
    5936 !> Documentation by Ferd Sauter, 2008; see also documentation block in header of depac subroutine.
    5937 !> FS 2009-01-29: variable names made consistent with DEPAC
    5938 !> FS 2009-03-04: use total compensation point
    5939 !>
    5940 !> C: with total compensation point   ! D: approximation of C
    5941 !>                                    !    with classical approach
    5942 !>  zr --------- Catm                 !  zr --------- Catm
    5943 !>         |                          !         |
    5944 !>         Ra                         !         Ra
    5945 !>         |                          !         |
    5946 !>         Rb                         !         Rb
    5947 !>         |                          !         |
    5948 !>  z0 --------- Cc                   !  z0 --------- Cc
    5949 !>         |                          !         |
    5950 !>        Rc                          !        Rc_eff
    5951 !>         |                          !         |
    5952 !>     --------- Ccomp_tot            !     --------- C=0
    5953 !>
    5954 !>
    5955 !> The effective Rc is defined such that instead of using
    5956 !>
    5957 !>   F = -vd*[Catm - Ccomp_tot]                                    (1)
    5958 !>
    5959 !> we can use the 'normal' flux formula
    5960 !>
    5961 !>   F = -vd'*Catm,                                                (2)
    5962 !>
    5963 !> with vd' = 1/(Ra + Rb + Rc')                                    (3)
    5964 !>
    5965 !> and Rc' the effective Rc (rc_eff).
    5966 !>                                                (Catm - Ccomp_tot)
    5967 !> vd'*Catm = vd*(Catm - Ccomp_tot) <=> vd' = vd* ------------------
    5968 !>                                                      Catm
    5969 !>
    5970 !>                                        (Catm - Ccomp_tot)
    5971 !> 1/(Ra + Rb + Rc') = (1/Ra + Rb + Rc) * ------------------
    5972 !>                                              Catm
    5973 !>
    5974 !>                                          Catm
    5975 !> (Ra + Rb + Rc') = (Ra + Rb + Rc) * ------------------
    5976 !>                                     (Catm - Ccomp_tot)
    5977 !>
    5978 !>                              Catm
    5979 !> Rc' = (Ra + Rb + Rc) * ------------------ - Ra - Rb
    5980 !>                        (Catm - Ccomp_tot)
    5981 !>
    5982 !>                        Catm                           Catm
    5983 !> Rc' = (Ra + Rb) [------------------ - 1 ] + Rc * ------------------
    5984 !>                  (Catm - Ccomp_tot)              (Catm - Ccomp_tot)
    5985 !>
    5986 !> Rc' = [(Ra + Rb)*Ccomp_tot + Rc*Catm ] / (Catm - Ccomp_tot)
    5987 !>
    5988 ! -------------------------------------------------------------------------------------------
    5989 ! SUBROUTINE rc_comp_point_rc_eff( ccomp_tot, conc_ijk_ugm3, ra, rb, rc_tot, rc_eff )
    5990 !
    5991 !
    5992 !!-- Input/output variables:
    5993 !    REAL(wp), INTENT(IN) ::  ccomp_tot     !< total compensation point (weighed average of separate compensation points) (ug/m3)
    5994 !    REAL(wp), INTENT(IN) ::  conc_ijk_ugm3 !< atmospheric concentration (ug/m3) above Catm
    5995 !    REAL(wp), INTENT(IN) ::  ra            !< aerodynamic resistance (s/m)
    5996 !    REAL(wp), INTENT(IN) ::  rb            !< boundary layer resistance (s/m)
    5997 !    REAL(wp), INTENT(IN) ::  rc_tot        !< total canopy resistance (s/m)
    5998 !
    5999 !    REAL(wp), INTENT(OUT) ::  rc_eff       !< effective total canopy resistance (s/m)
    6000 !
    6001 !    !
    6002 !!-- Compute effective resistance:
    6003 !    IF ( ccomp_tot == 0.0_wp )  THEN
    6004 !       !
    6005 !!--    Trace with no compensiation point ( or compensation point equal to zero)
    6006 !       rc_eff = rc_tot
    6007 !
    6008 !    ELSE IF ( ccomp_tot > 0.0_wp  .AND.  ( abs( conc_ijk_ugm3 - ccomp_tot ) < 1.e-8 ) )  THEN
    6009 !       !
    6010 !!--   Surface concentration (almost) equal to atmospheric concentration
    6011 !!--    no exchange between surface and atmosphere, infinite RC --> vd=0
    6012 !       rc_eff = 9999999999.0_wp
    6013 !
    6014 !    ELSE IF ( ccomp_tot > 0.0_wp )  THEN
    6015 !       !
    6016 !!--    Compensation point available, calculate effective resistance
    6017 !       rc_eff = ( ( ra + rb ) * ccomp_tot + rc_tot * conc_ijk_ugm3 ) / ( conc_ijk_ugm3 - ccomp_tot )
    6018 !
    6019 !    ELSE
    6020 !       rc_eff = -999.0_wp
    6021 !       message_string = 'This should not be possible, check ccomp_tot'
    6022 !       CALL message( 'rc_comp_point_rc_eff', 'PA....', 1, 2, 0, 6, 0 )
    6023 !    ENDIF
    6024 !
    6025 !    RETURN
    6026 !
    6027 ! END SUBROUTINE rc_comp_point_rc_eff
    6028 
    6029 
    6030 !--------------------------------------------------------------------------------------------------!
    60315908!> missing: check for data that correspond with a missing deposition path this data is represented
    60325909!>          by -999
Note: See TracChangeset for help on using the changeset viewer.