Changeset 4511 for palm/trunk/SOURCE/time_integration.f90
- Timestamp:
- Apr 30, 2020 12:20:40 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/time_integration.f90
r4508 r4511 25 25 ! ----------------- 26 26 ! $Id$ 27 ! chemistry decycling replaced by explicit setting of lateral boundary conditions 28 ! 29 ! 4508 2020-04-24 13:32:20Z raasch 27 30 ! salsa decycling replaced by explicit setting of lateral boundary conditions 28 31 ! … … 242 245 243 246 USE chem_modules, & 244 ONLY: bc_cs_t_val, chem_species, emissions_anthropogenic, emiss_read_legacy_mode, & 245 n_matched_vars 246 247 #if defined( __parallel ) 248 USE chem_modules, & 249 ONLY: cs_name 250 #endif 251 252 USE chemistry_model_mod, & 253 ONLY: chem_boundary_conds 247 ONLY: bc_cs_t_val, chem_species, communicator_chem, emissions_anthropogenic, & 248 emiss_read_legacy_mode, n_matched_vars 254 249 255 250 USE control_parameters, & … … 469 464 INTEGER(iwp) :: icc !< additional index for aerosol mass bins 470 465 INTEGER(iwp) :: ig !< index for salsa gases 471 INTEGER(iwp) :: lsp !<472 466 INTEGER(iwp) :: mid !< masked output running index 473 #if defined( __parallel )474 INTEGER(iwp) :: lsp_usr !<475 467 INTEGER(iwp) :: n !< loop counter for chemistry species 476 #endif477 468 478 469 REAL(wp) :: dt_3d_old !< temporary storage of timestep to be used for … … 675 666 bc_q_t_val = ( q_init(nzt+1) - q_init(nzt) ) / dzu(nzt+1) 676 667 IF ( air_chemistry ) THEN 677 DO lsp= 1, nvar678 bc_cs_t_val = ( chem_species( lsp)%conc_pr_init(nzt+1)&679 - chem_species( lsp)%conc_pr_init(nzt) )&668 DO n = 1, nvar 669 bc_cs_t_val = ( chem_species(n)%conc_pr_init(nzt+1) & 670 - chem_species(n)%conc_pr_init(nzt) ) & 680 671 / dzu(nzt+1) 681 672 ENDDO … … 824 815 IF ( passive_scalar ) CALL exchange_horiz( s_p, nbgp ) 825 816 IF ( air_chemistry ) THEN 826 DO lsp = 1, nvar 827 CALL exchange_horiz( chem_species(lsp)%conc_p, nbgp ) 817 DO n = 1, nvar 818 CALL exchange_horiz( chem_species(n)%conc_p, nbgp, & 819 alternative_communicator = communicator_chem ) 828 820 ENDDO 829 821 ENDIF … … 932 924 IF ( air_chemistry ) THEN 933 925 DO n = 1, nvar 934 CALL exchange_horiz( chem_species(n)%conc, nbgp ) 926 CALL exchange_horiz( chem_species(n)%conc, nbgp, & 927 alternative_communicator = communicator_chem ) 935 928 ENDDO 936 929 ENDIF … … 960 953 !-- Set boundary conditions again after interpolation and anterpolation. 961 954 CALL pmci_boundary_conds 962 963 !964 !-- Set chemistry boundary conditions (decycling)965 IF ( air_chemistry ) THEN966 DO lsp = 1, nvar967 lsp_usr = 1968 DO WHILE ( TRIM( cs_name( lsp_usr ) ) /= 'novalue' )969 IF ( TRIM( chem_species(lsp)%name ) == TRIM( cs_name(lsp_usr) ) ) THEN970 CALL chem_boundary_conds( chem_species(lsp)%conc, &971 chem_species(lsp)%conc_pr_init )972 ENDIF973 lsp_usr = lsp_usr + 1974 ENDDO975 ENDDO976 ENDIF977 955 978 956 CALL cpu_log( log_point(60), 'nesting', 'stop' )
Note: See TracChangeset
for help on using the changeset viewer.