Ignore:
Timestamp:
Oct 7, 2020 1:25:11 PM (4 years ago)
Author:
schwenkel
Message:

Move exchange_horiz from time_integration to modules

File:
1 edited

Legend:

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

    r4671 r4731  
    2626! -----------------
    2727! $Id$
     28! Move exchange_horiz from time_integration to modules
     29!
     30! 4671 2020-09-09 20:27:58Z pavelkrc
    2831! Implementation of downward facing USM and LSM surfaces
    2932!
     
    29342937!> routine for exchange horiz of chemical quantities
    29352938!--------------------------------------------------------------------------------------------------!
    2936  SUBROUTINE chem_exchange_horiz_bounds
     2939 SUBROUTINE chem_exchange_horiz_bounds( location )
    29372940
    29382941    USE exchange_horiz_mod,                                                                        &
     
    29402943
    29412944   INTEGER(iwp) ::  lsp       !<
    2942 
    2943 !
    2944 !--    Loop over chemical species
    2945        CALL cpu_log( log_point_s(84), 'chem.exch-horiz', 'start' )
    2946        DO  lsp = 1, nvar
    2947           CALL exchange_horiz( chem_species(lsp)%conc, nbgp,                                       &
    2948                                alternative_communicator = communicator_chem )
    2949        ENDDO
    2950 
    2951        CALL chem_boundary_conditions( horizontal_conditions_only = .TRUE. )
    2952 
    2953        CALL cpu_log( log_point_s(84), 'chem.exch-horiz', 'stop' )
    2954 
     2945   INTEGER(iwp) ::  n
     2946
     2947   CHARACTER (LEN=*), INTENT(IN) ::  location !< call location string
     2948
     2949   SELECT CASE ( location )
     2950
     2951       CASE ( 'before_prognostic_equation' )
     2952!
     2953!--       Loop over chemical species
     2954          CALL cpu_log( log_point_s(84), 'chem.exch-horiz', 'start' )
     2955          DO  lsp = 1, nvar
     2956             CALL exchange_horiz( chem_species(lsp)%conc, nbgp,                                    &
     2957                                  alternative_communicator = communicator_chem )
     2958          ENDDO
     2959
     2960          CALL chem_boundary_conditions( horizontal_conditions_only = .TRUE. )
     2961
     2962          CALL cpu_log( log_point_s(84), 'chem.exch-horiz', 'stop' )
     2963
     2964       CASE ( 'after_prognostic_equation' )
     2965
     2966          IF ( air_chemistry )  THEN
     2967             DO  n = 1, nvar
     2968                CALL exchange_horiz( chem_species(n)%conc_p, nbgp,                                 &
     2969                                     alternative_communicator = communicator_chem )
     2970             ENDDO
     2971          ENDIF
     2972
     2973       CASE ( 'after_anterpolation' )
     2974
     2975          IF ( air_chemistry )  THEN
     2976             DO  n = 1, nvar
     2977                CALL exchange_horiz( chem_species(n)%conc, nbgp,                                   &
     2978                                     alternative_communicator = communicator_chem )
     2979             ENDDO
     2980          ENDIF
     2981
     2982    END SELECT
    29552983
    29562984 END SUBROUTINE chem_exchange_horiz_bounds
Note: See TracChangeset for help on using the changeset viewer.