Changeset 3100 for LMDZ6/trunk/libf
- Timestamp:
- Dec 3, 2017, 6:22:35 PM (7 years ago)
- Location:
- LMDZ6/trunk/libf/phylmd
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/phys_local_var_mod.F90
r3080 r3100 482 482 ! 483 483 !---2D budget variables 484 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_dry_ocs 485 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_dry_so2 484 486 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_dry_h2so4 485 487 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_dry_part 486 !$OMP THREADPRIVATE(budg_dep_dry_h2so4,budg_dep_dry_part) 488 !$OMP THREADPRIVATE(budg_dep_dry_ocs,budg_dep_dry_so2,budg_dep_dry_h2so4,budg_dep_dry_part) 489 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_wet_ocs 490 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_wet_so2 487 491 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_wet_h2so4 488 492 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_dep_wet_part 489 !$OMP THREADPRIVATE(budg_dep_wet_ h2so4,budg_dep_wet_part)493 !$OMP THREADPRIVATE(budg_dep_wet_ocs,budg_dep_wet_so2,budg_dep_wet_h2so4,budg_dep_wet_part) 490 494 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_emi_ocs 491 495 REAL, ALLOCATABLE, SAVE, DIMENSION(:) :: budg_emi_so2 … … 771 775 ALLOCATE (tau_strat_1020(klon,klev)) 772 776 ALLOCATE (tausum_strat(klon,3)) 777 ALLOCATE (budg_dep_dry_ocs(klon)) 778 ALLOCATE (budg_dep_wet_ocs(klon)) 779 ALLOCATE (budg_dep_dry_so2(klon)) 780 ALLOCATE (budg_dep_wet_so2(klon)) 773 781 ALLOCATE (budg_dep_dry_h2so4(klon)) 774 782 ALLOCATE (budg_dep_wet_h2so4(klon)) … … 1039 1047 DEALLOCATE (budg_3D_nucl) 1040 1048 DEALLOCATE (budg_3D_cond_evap) 1049 DEALLOCATE (budg_dep_dry_ocs) 1050 DEALLOCATE (budg_dep_wet_ocs) 1051 DEALLOCATE (budg_dep_dry_so2) 1052 DEALLOCATE (budg_dep_wet_so2) 1041 1053 DEALLOCATE (budg_dep_dry_h2so4) 1042 1054 DEALLOCATE (budg_dep_wet_h2so4) -
LMDZ6/trunk/libf/phylmd/phys_output_ctrlout_mod.F90
r3095 r3100 1303 1303 'vsed_aer', 'Strat. aerosol sedimentation velocity (mass-weighted)', 'm/s', (/ ('', i=1, 10) /)) 1304 1304 !--budget 2D 1305 TYPE(ctrl_out), SAVE :: o_budg_dep_dry_ocs = ctrl_out((/ 11, 11, 11, 11, 11, 11, 11, 11, 11, 1/), & 1306 'budg_dep_dry_ocs', 'OCS dry deposition flux', 'kg(S)/m2/s', (/ ('', i=1, 10) /)) 1307 TYPE(ctrl_out), SAVE :: o_budg_dep_wet_ocs = ctrl_out((/ 11, 11, 11, 11, 11, 11, 11, 11, 11, 1/), & 1308 'budg_dep_wet_ocs', 'OCS wet deposition flux', 'kg(S)/m2/s', (/ ('', i=1, 10) /)) 1309 TYPE(ctrl_out), SAVE :: o_budg_dep_dry_so2 = ctrl_out((/ 11, 11, 11, 11, 11, 11, 11, 11, 11, 1/), & 1310 'budg_dep_dry_so2', 'SO2 dry deposition flux', 'kg(S)/m2/s', (/ ('', i=1, 10) /)) 1311 TYPE(ctrl_out), SAVE :: o_budg_dep_wet_so2 = ctrl_out((/ 11, 11, 11, 11, 11, 11, 11, 11, 11, 1/), & 1312 'budg_dep_wet_so2', 'SO2 wet deposition flux', 'kg(S)/m2/s', (/ ('', i=1, 10) /)) 1305 1313 TYPE(ctrl_out), SAVE :: o_budg_dep_dry_h2so4 = ctrl_out((/ 11, 11, 11, 11, 11, 11, 11, 11, 11, 1/), & 1306 1314 'budg_dep_dry_h2so4', 'H2SO4 dry deposition flux', 'kg(S)/m2/s', (/ ('', i=1, 10) /)) -
LMDZ6/trunk/libf/phylmd/phys_output_write_mod.F90
r3095 r3100 198 198 o_budg_sed_part, o_R2SO4, o_OCS_lifetime, o_SO2_lifetime, & 199 199 o_budg_3D_backgr_ocs, o_budg_3D_backgr_so2, & 200 o_budg_dep_dry_ocs, o_budg_dep_wet_ocs, & 201 o_budg_dep_dry_so2, o_budg_dep_wet_so2, & 200 202 o_budg_dep_dry_h2so4, o_budg_dep_wet_h2so4, & 201 203 o_budg_dep_dry_part, o_budg_dep_wet_part, & … … 303 305 budg_sed_part, R2SO4, OCS_lifetime, SO2_lifetime, & 304 306 budg_3D_backgr_ocs, budg_3D_backgr_so2, & 307 budg_dep_dry_ocs, budg_dep_wet_ocs, & 308 budg_dep_dry_so2, budg_dep_wet_so2, & 305 309 budg_dep_dry_h2so4, budg_dep_wet_h2so4, & 306 310 budg_dep_dry_part, budg_dep_wet_part, & … … 1299 1303 CALL histwrite_phy(o_budg_3D_nucl, budg_3D_nucl) 1300 1304 CALL histwrite_phy(o_budg_3D_cond_evap, budg_3D_cond_evap) 1305 CALL histwrite_phy(o_budg_dep_dry_ocs, budg_dep_dry_ocs) 1306 CALL histwrite_phy(o_budg_dep_wet_ocs, budg_dep_wet_ocs) 1307 CALL histwrite_phy(o_budg_dep_dry_so2, budg_dep_dry_so2) 1308 CALL histwrite_phy(o_budg_dep_wet_so2, budg_dep_wet_so2) 1301 1309 CALL histwrite_phy(o_budg_dep_dry_h2so4, budg_dep_dry_h2so4) 1302 1310 CALL histwrite_phy(o_budg_dep_wet_h2so4, budg_dep_wet_h2so4) -
LMDZ6/trunk/libf/phylmd/phytrac_mod.F90
r3099 r3100 104 104 USE traccoag_mod 105 105 USE phys_local_var_mod, ONLY: mdw 106 USE phys_local_var_mod, ONLY: budg_dep_dry_ocs, budg_dep_wet_ocs 107 USE phys_local_var_mod, ONLY: budg_dep_dry_so2, budg_dep_wet_so2 106 108 USE phys_local_var_mod, ONLY: budg_dep_dry_h2so4, budg_dep_wet_h2so4 107 109 USE phys_local_var_mod, ONLY: budg_dep_dry_part, budg_dep_wet_part 108 USE infotrac, ONLY: nbtr_sulgas, id_ SO2_strat, id_H2SO4_strat110 USE infotrac, ONLY: nbtr_sulgas, id_OCS_strat, id_SO2_strat, id_H2SO4_strat 109 111 USE aerophys 110 112 #endif … … 701 703 IF (type_trac=='coag') THEN 702 704 ! initialize wet deposition flux of sulfur 705 budg_dep_wet_ocs(:)=0.0 706 budg_dep_wet_so2(:)=0.0 703 707 budg_dep_wet_h2so4(:)=0.0 704 708 budg_dep_wet_part(:)=0.0 … … 709 713 DO it = 1, nbtr 710 714 !do not include SO2 because most of it comes trom the troposphere 711 IF (it==id_H2SO4_strat) THEN 715 IF (it==id_OCS_strat) THEN 716 budg_dep_wet_ocs(i)=budg_dep_wet_ocs(i)+d_tr_cv(i,k,it)*(mSatom/mOCSmol) & 717 & *(paprs(i,k)-paprs(i,k+1))/RG/pdtphys 718 ELSEIF (it==id_SO2_strat) THEN 719 budg_dep_wet_so2(i)=budg_dep_wet_so2(i)+d_tr_cv(i,k,it)*(mSatom/mSO2mol) & 720 & *(paprs(i,k)-paprs(i,k+1))/RG/pdtphys 721 ELSEIF (it==id_H2SO4_strat) THEN 712 722 budg_dep_wet_h2so4(i)=budg_dep_wet_h2so4(i)+d_tr_cv(i,k,it)*(mSatom/mH2SO4mol) & 713 723 & *(paprs(i,k)-paprs(i,k+1))/RG/pdtphys … … 773 783 774 784 ! initialize dry deposition flux of sulfur 785 budg_dep_dry_ocs(:)=0.0 786 budg_dep_dry_so2(:)=0.0 775 787 budg_dep_dry_h2so4(:)=0.0 776 788 budg_dep_dry_part(:)=0.0 … … 807 819 IF (type_trac=='coag') THEN 808 820 ! compute dry deposition flux of sulfur (sum over gases and particles) 809 IF (it==id_H2SO4_strat) THEN 821 IF (it==id_OCS_strat) THEN 822 budg_dep_dry_ocs(:)=budg_dep_dry_ocs(:)-source(:,it)*(mSatom/mOCSmol) 823 ELSEIF (it==id_SO2_strat) THEN 824 budg_dep_dry_so2(:)=budg_dep_dry_so2(:)-source(:,it)*(mSatom/mSO2mol) 825 ELSEIF (it==id_H2SO4_strat) THEN 810 826 budg_dep_dry_h2so4(:)=budg_dep_dry_h2so4(:)-source(:,it)*(mSatom/mH2SO4mol) 811 827 ELSEIF (it.GT.nbtr_sulgas) THEN … … 893 909 DO k = 1, klev 894 910 DO it = 1, nbtr 895 IF (it==id_H2SO4_strat) THEN 911 IF (it==id_OCS_strat) THEN 912 budg_dep_wet_ocs(i)=budg_dep_wet_ocs(i)+d_tr_ls(i,k,it)*(mSatom/mOCSmol) & 913 & *(paprs(i,k)-paprs(i,k+1))/RG/pdtphys 914 ELSEIF (it==id_SO2_strat) THEN 915 budg_dep_wet_so2(i)=budg_dep_wet_so2(i)+d_tr_ls(i,k,it)*(mSatom/mSO2mol) & 916 & *(paprs(i,k)-paprs(i,k+1))/RG/pdtphys 917 ELSEIF (it==id_H2SO4_strat) THEN 896 918 budg_dep_wet_h2so4(i)=budg_dep_wet_h2so4(i)+d_tr_ls(i,k,it)*(mSatom/mH2SO4mol) & 897 919 & *(paprs(i,k)-paprs(i,k+1))/RG/pdtphys
Note: See TracChangeset
for help on using the changeset viewer.