Changeset 3806
- Timestamp:
- Jan 20, 2021, 6:36:39 PM (4 years ago)
- Location:
- LMDZ6/trunk/libf/phylmd/Dust
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/Dust/dustemission_mod.F90
r3786 r3806 636 636 ALLOCATE( srel(nats,nclass) ) 637 637 ALLOCATE( srel2(nats,nclass) ) 638 !!AS: moved to subroutine dustemission_output_init639 !ALLOCATE( m1dflux(klon) )640 !ALLOCATE( m2dflux(klon) )641 !ALLOCATE( m3dflux(klon) )642 638 643 639 … … 684 680 !& .and.pctsrf(i)>0.5.and.Pini(i,nts)>0.)THEN 685 681 ! JE20150605<< easier to read 686 ! IF(pctsrf(i)>0.5.and.Pini(i,nts)>0.)THEN687 682 IF(pctsrf(i,is_ter)>0.5.and.Pini(i,nts)>0.)THEN 688 683 ! JE20150605>> … … 1275 1270 modwm=sqrt((wind10ms(kwb)**2)+(1.2*zwstar(i))**2) 1276 1271 ustarns=cdnms*modwm*100. 1277 !JE20150202 <<1278 ! Do not have too much sense.. and is not anymore in the chimere14b version.1279 !1280 ! utmin=umin/(cdnms*ceff)1281 ! IF(wind10cm(kwb).ge.utmin)THEN1282 ! ustarsalt=ustarns+ &1283 ! (0.3*(wind10cm(kwb)/100.-utmin/100.)**2.)1284 ! ELSE1285 ! ustarsalt=ustarns1286 ! ENDIF1287 ! ustarsalt should be :1288 1272 ustarsalt=ustarns 1289 !JE20150202 >>1290 1273 1291 1274 -
LMDZ6/trunk/libf/phylmd/Dust/phytracr_spl_mod.F90
r3786 r3806 34 34 CHARACTER*800 fileregionsdimsbb 35 35 CHARACTER*800 fileregionsdimswstar 36 ! CHARACTER*800 filescaleparamsind37 ! CHARACTER*800 filescaleparamsdust38 ! CHARACTER*800 filescaleparamsbb39 36 CHARACTER*100 paramname_ind 40 37 CHARACTER*100 paramname_bb … … 423 420 !$OMP THREADPRIVATE(flux_sparam_sscoa,u10m_ss,v10m_ss) 424 421 425 ! Select dust emission scheme ver the Sahara:422 ! Select dust emission scheme for the Sahara: 426 423 ! LOGICAL,PARAMETER,SAVE :: ok_chimeredust=.FALSE. 427 424 LOGICAL,PARAMETER :: ok_chimeredust=.TRUE. 428 425 !!!!!! !$OMP THREADPRIVATE(ok_chimeredust) 429 426 430 !OH REAL,SAVE :: scale_param_ssacc !Scaling parameter for Fine Sea Salt431 !OH REAL,SAVE :: scale_param_sscoa !Scaling parameter for Coarse Sea Salt432 !OH REAL,ALLOCATABLE,SAVE :: scale_param_ind(nbreg_ind) !Scaling parameter for industrial emissionsi of SO2433 !OH REAL,ALLOCATABLE,SAVE :: scale_param_bb(nbreg_bb) !Scaling parameter for biomas burning (SO2, BC & OM)434 !OH REAL,ALLOCATABLE,SAVE :: scale_param_ff(nbreg_ind) !Scaling parameter for industrial emissions (fossil fuel)435 !OH REAL,ALLOCATABLE,SAVE :: scale_param_dustacc(nbreg_dust) !Scaling parameter for Fine Dust436 !OH REAL,ALLOCATABLE,SAVE :: scale_param_dustcoa(nbreg_dust) !Scaling parameter for Coarse Dust437 !OH REAL,ALLOCATABLE,SAVE :: scale_param_dustsco(nbreg_dust) !Scaling parameter for SCoarse Dust438 !OH REAL,ALLOCATABLE,SAVE :: param_wstarBLperregion(nbreg_wstardust)439 !OH REAL,ALLOCATABLE,SAVE :: param_wstarWAKEperregion(nbreg_wstardust)440 !!!! !$OMP THREADPRIVATE( scale_param_ssacc, scale_param_sscoa, scale_param_ind, scale_param_bb, scale_param_ff, scale_param_dustacc, scale_param_dustcoa, scale_param_dustsco, param_wstarBLperregion, param_wstarWAKEperregion)441 442 427 443 428 CONTAINS … … 446 431 SUBROUTINE phytracr_spl_out_init() 447 432 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 448 !AS : This new subroutine centralises les ALLOCATE dont on a besoin au premier appel449 ! de phys_output_write_spl dansphysiq433 !AS : This subroutine centralises the ALLOCATE needed for the 1st call of 434 ! phys_output_write_spl in physiq 450 435 451 436 USE dimphy … … 455 440 ! pour les variables m[1-3]dflux 456 441 CALL dustemis_out_init() 457 458 !AS: moved here from section INITIALISATIONS of subroutine phytracr_spl_ini459 ! ALLOCATE variables from spla_output_write.h, section "traceur"460 442 461 443 !traceur … … 686 668 ALLOCATE( v10m_ss(klon)) 687 669 688 !AS: dans phys_output_write_spl, horsspla_output_write.h670 !AS: in phys_output_write_spl, but not in spla_output_write.h 689 671 !------------------------------------------------------ 690 672 ALLOCATE(d_tr_cl(klon,klev,nbtr)) … … 876 858 INTEGER, DIMENSION(:), ALLOCATABLE, SAVE :: masque_terra ! 877 859 !$OMP THREADPRIVATE(masque_aqua,masque_terra) 878 !!$OMP THREADPRIVATE(aod550_aqua,aod550_terra,aod670_aqua,aod670_terra)879 !!$OMP THREADPRIVATE(aod865_aqua,aod865_terra)880 860 881 861 INTEGER, SAVE :: nbreg_dust, nbreg_ind, nbreg_bb, nbreg_ss,nbreg_wstardust … … 1060 1040 REAL, intent(in) :: pmflxr(klon,klev+1), pmflxs(klon,klev+1) !--convection 1061 1041 REAL, intent(in) :: prfl(klon,klev+1), psfl(klon,klev+1) !--large-scale 1062 ! JE REAL pmflxr(klon,klev), pmflxs(klon,klev) !--convection ! Titane1063 ! JE REAL prfl(klon,klev), psfl(klon,klev) !--large-scale ! Titane1064 1042 REAL :: ql_incl ! contenu en eau liquide nuageuse dans le nuage ! ql_incl=oliq/rneb 1065 1043 REAL :: ql_incloud_ref ! ref value of in-cloud condensed water content … … 1131 1109 REAL flux_tr(klon,nbtr) 1132 1110 REAL m_conc(klon,klev) 1133 ! REAL sed_ss(klon) ! corresponds to tracer 31134 ! REAL sed_dust(klon) ! corresponds to tracer 41135 ! REAL sed_dustsco(klon) ! corresponds to tracer 41136 1111 REAL henry(nbtr) !--cste de Henry mol/l/atm 1137 1112 REAL kk(nbtr) !--coefficient de var avec T (K) … … 1157 1132 1158 1133 CHARACTER*2 str2 1159 LOGICAL ok_histrac 1160 !JE2014124 PARAMETER (ok_histrac=.true.) 1161 PARAMETER (ok_histrac=.false.) 1162 ! PARAMETER (ok_chimeredust=.false.) 1163 ! PARAMETER (ok_chimeredust=.true.) 1134 !!AS: LOGICAL ok_histrac 1135 !!!JE2014124 PARAMETER (ok_histrac=.true.) 1136 !! PARAMETER (ok_histrac=.false.) 1164 1137 INTEGER ndex2d(iim*(jjm+1)), ndex3d(iim*(jjm+1)*klev) 1165 1138 INTEGER nhori1, nhori2, nhori3, nhori4, nhori5, nvert … … 1176 1149 REAL zx_tmp_2d(iim,jjm+1), zx_tmp_3d(iim,jjm+1,klev) 1177 1150 REAL zx_tmp_fi2d(klon), zx_tmp_fi3d(klon, klev) 1178 ! REAL zx_lon(iim,jjm+1), zx_lat(iim,jjm+1)1179 1151 REAL zx_lon_glo(nbp_lon,nbp_lat), zx_lat_glo(nbp_lon,nbp_lat) 1180 1152 REAL zsto, zout, zout_h, zout_m, zjulian … … 1208 1180 ! JE for updating in cltrac 1209 1181 REAL,DIMENSION(klon,klev) :: delp ! epaisseur de couche (Pa) 1210 !JE20140507 REAL,DIMENSION(klon,nbtr) :: d_tr_dry ! Td depot sec/traceur (1st layer),ALLOCATABLE,SAVE jyg1211 !JE20140507 REAL,DIMENSION(klon,nbtr) :: flux_tr_dry1212 ! SAVE d_tr_dry1213 1182 !! JE for include gas to particle conversion in output 1214 1183 ! REAL his_g2pgas(klon) ! gastoparticle in gas units (check!) … … 1617 1586 print *,'ecrit_tra=', pdtphys, ecrit_tra 1618 1587 1619 IF (ok_histrac) THEN 1620 IF (is_mpi_root .AND. is_omp_root) THEN 1621 1622 itra=0 1623 ! 1624 CALL ymds2ju(1900, 1, 1, 0.0, zjulian) 1625 ! 1626 ! print *, 'klon,iim,jjm+1 = ',klon,iim,jjm+1 1627 print *, 'glo klon,iim,jjm+1 = ',klon_glo,nbp_lon,nbp_lat 1628 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,rlon,zx_lon_glo) 1629 ! 1630 ! DO i = 1, iim 1631 DO i = 1, nbp_lon 1632 zx_lon_glo(i,1) = rlon(i+1) 1633 zx_lon_glo(i,nbp_lat) = rlon(i+1) 1634 ENDDO 1635 ! 1636 CALL histbeg("histrac_spl", nbp_lon,zx_lon_glo, & 1637 nbp_lat,zx_lat_glo, & 1638 1,nbp_lon,1,nbp_lat, 0, zjulian, pdtphys, & 1639 nhori1, nid_tra1) 1640 ! 1641 CALL histbeg("lessivage_spl", nbp_lon,zx_lon_glo, & 1642 nbp_lat,zx_lat_glo, & 1643 1,nbp_lon,1,nbp_lat, 0, zjulian, pdtphys, & 1644 nhori2, nid_tra2) 1645 ! 1646 CALL histbeg("traceur_spl", nbp_lon,zx_lon_glo, & 1647 nbp_lat,zx_lat_glo, & 1648 1,nbp_lon,1,nbp_lat, 0, zjulian, pdtphys, & 1649 nhori3, nid_tra3) 1650 ! 1651 CALL histvert(nid_tra1, "presnivs", "Vertical levels", "mb", & 1652 nbp_lev, presnivs, nvert) 1653 ! 1654 CALL histvert(nid_tra2, "presnivs", "Vertical levels", "mb", & 1655 nbp_lev, presnivs, nvert) 1656 ! 1657 CALL histvert(nid_tra3, "presnivs", "Vertical levels", "mb", & 1658 nbp_lev, presnivs, nvert) 1659 ! 1660 zsto = pdtphys 1661 zout = pdtphys * FLOAT(ecrit_tra) 1662 zout_h = pdtphys * FLOAT(ecrit_tra_h) 1663 zout_m = pdtphys * FLOAT(ecrit_tra_m) 1664 print *,'zsto zout=', zsto, zout 1665 1666 ! 1667 !----------------- HISTORY FILES OF TRACER EMISSIONS ------------------- 1668 ! 1669 ! HISTRAC 1670 ! 1671 CALL histdef(nid_tra1, "fluxbb", "Flux BB", "mg/m2/s", & 1672 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1673 "ave(X)", zsto,zout) 1674 ! 1675 CALL histdef(nid_tra1, "fluxff", "Flux FF", "mg/m2/s", & 1676 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1677 "ave(X)", zsto,zout) 1678 ! 1679 CALL histdef(nid_tra1, "fluxbcbb", "Flux BC-BB", "mg/m2/s", & 1680 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1681 "ave(X)", zsto,zout) 1682 ! 1683 CALL histdef(nid_tra1, "fluxbcff", "Flux BC-FF", "mg/m2/s", & 1684 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1685 "ave(X)", zsto,zout) 1686 ! 1687 CALL histdef(nid_tra1, "fluxbcnff", "Flux BC-NFF", "mg/m2/s", & 1688 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1689 "ave(X)", zsto,zout) 1690 ! 1691 CALL histdef(nid_tra1, "fluxbcba", "Flux BC-BA", "mg/m2/s", & 1692 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1693 "ave(X)", zsto,zout) 1694 ! 1695 CALL histdef(nid_tra1, "fluxbc", "Flux BC", "mg/m2/s", & 1696 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1697 "ave(X)", zsto,zout) 1698 ! 1699 CALL histdef(nid_tra1, "fluxombb", "Flux OM-BB", "mg/m2/s" , & 1700 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1701 "ave(X)", zsto,zout) 1702 ! 1703 CALL histdef(nid_tra1, "fluxomff", "Flux OM-FF", "mg/m2/s", & 1704 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1705 "ave(X)", zsto,zout) 1706 ! 1707 CALL histdef(nid_tra1, "fluxomnff", "Flux OM-NFF", "mg/m2/s", & 1708 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1709 "ave(X)", zsto,zout) 1710 ! 1711 CALL histdef(nid_tra1, "fluxomba", "Flux OM-BA", "mg/m2/s", & 1712 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1713 "ave(X)", zsto,zout) 1714 ! 1715 CALL histdef(nid_tra1, "fluxomnat", "Flux OM-NT", "mg/m2/s", & 1716 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1717 "ave(X)", zsto,zout) 1718 ! 1719 CALL histdef(nid_tra1, "fluxom", "Flux OM", "mg/m2/s", & 1720 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1721 "ave(X)", zsto,zout) 1722 ! 1723 CALL histdef(nid_tra1,"fluxh2sff","Flux H2S FF","mgS/m2/s", & 1724 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1725 "ave(X)", zsto,zout) 1726 ! 1727 CALL histdef(nid_tra1,"fluxh2snff","Flux H2S non-FF", & 1728 "mgS/m2/s",nbp_lon,nbp_lat,nhori1, 1,1,1, & 1729 -99, 32, & 1730 "ave(X)", zsto,zout) 1731 ! 1732 CALL histdef(nid_tra1,"fluxso2ff","Flux SO2 FF","mgS/m2/s", & 1733 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1734 "ave(X)", zsto,zout) 1735 ! 1736 CALL histdef(nid_tra1,"fluxso2nff","Flux SO2 non-FF", & 1737 "mgS/m2/s",nbp_lon,nbp_lat,nhori1, 1,1,1, & 1738 -99, 32, & 1739 "ave(X)", zsto,zout) 1740 ! 1741 CALL histdef(nid_tra1, "fluxso2bb", "Flux SO2 BB","mgS/m2/s", & 1742 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1743 "ave(X)", zsto,zout) 1744 ! 1745 CALL histdef(nid_tra1,"fluxso2vol","Flux SO2 Vol","mgS/m2/s", & 1746 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1747 "ave(X)", zsto,zout) 1748 ! 1749 CALL histdef(nid_tra1, "fluxso2ba", "Flux SO2 Ba","mgS/m2/s", & 1750 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1751 "ave(X)", zsto,zout) 1752 ! 1753 CALL histdef(nid_tra1, "fluxso2", "Flux SO2","mgS/m2/s", & 1754 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1755 "ave(X)", zsto,zout) 1756 ! 1757 CALL histdef(nid_tra1,"fluxso4ff","Flux SO4 FF","mgS/m2/s", & 1758 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1759 "ave(X)", zsto,zout) 1760 ! 1761 CALL histdef(nid_tra1,"fluxso4nff","Flux SO4 non-FF", & 1762 "mgS/m2/s", nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1763 "ave(X)", zsto,zout) 1764 ! 1765 CALL histdef(nid_tra1, "fluxso4bb", "Flux SO4 BB","mgS/m2/s", & 1766 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1767 "ave(X)", zsto,zout) 1768 ! 1769 CALL histdef(nid_tra1, "fluxso4ba", "Flux SO4 Ba","mgS/m2/s", & 1770 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1771 "ave(X)", zsto,zout) 1772 ! 1773 CALL histdef(nid_tra1, "fluxso4", "Flux SO4","mgS/m2/s", & 1774 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1775 "ave(X)", zsto,zout) 1776 ! 1777 CALL histdef(nid_tra1, "fluxdms", "Flux DMS", "mgS/m2/s", & 1778 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1779 "ave(X)", zsto,zout) 1780 ! 1781 CALL histdef(nid_tra1,"fluxh2sbio","Flux H2S Bio","mgS/m2/s", & 1782 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1783 "ave(X)", zsto,zout) 1784 ! 1785 CALL histdef(nid_tra1, "fluxdustec", & 1786 "Flux Dust EC", "mg/m2/s", & 1787 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1788 "ave(X)", zsto,zout) 1789 ! 1790 CALL histdef(nid_tra1,"fluxddfine","DD Fine Mode","mg/m2/s", & 1791 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1792 "ave(X)", zsto,zout) 1793 ! 1794 CALL histdef(nid_tra1,"fluxddcoa","DD Coarse Mode","mg/m2/s", & 1795 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1796 "ave(X)", zsto,zout) 1797 ! 1798 CALL histdef(nid_tra1,"fluxddsco","DD SCoarse Mode","mg/m2/s", & 1799 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1800 "ave(X)", zsto,zout) 1801 ! 1802 CALL histdef(nid_tra1,"fluxdd","Flux DD","mg/m2/s", & 1803 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1804 "ave(X)", zsto,zout) 1805 ! 1806 CALL histdef(nid_tra1,"fluxssfine","SS Fine Mode","mg/m2/s", & 1807 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1808 "ave(X)", zsto,zout) 1809 ! 1810 CALL histdef(nid_tra1,"fluxsscoa","SS Coarse Mode","mg/m2/s", & 1811 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1812 "ave(X)", zsto,zout) 1813 ! 1814 CALL histdef(nid_tra1,"fluxss","Flux SS","mg/m2/s", & 1815 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1816 "ave(X)", zsto,zout) 1817 ! 1818 !nhl CALL histdef(nid_tra1,"fluxso4chem","SO4 chem prod", 1819 !nhl . "gAer/kgAir", 1820 !nhl . nbp_lon,nbp_lat,nhori1, nbp_lev,1,nbp_lev,nvert, 32, 1821 !nhl . "ave(X)", zsto,zout) 1822 ! 1823 CALL histdef(nid_tra1,"flux_sparam_ind","Ind emiss", & 1824 "mg/m2/s", & 1825 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1826 "ave(X)", zsto,zout) 1827 ! 1828 CALL histdef(nid_tra1,"flux_sparam_bb","BB emiss", & 1829 "mg/m2/s", & 1830 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1831 "ave(X)", zsto,zout) 1832 ! 1833 CALL histdef(nid_tra1,"flux_sparam_ff","FF emiss", & 1834 "mg/m2/s", & 1835 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1836 "ave(X)", zsto,zout) 1837 ! 1838 CALL histdef(nid_tra1,"flux_sparam_ddfine","DD fine emiss", & 1839 "mg/m2/s", & 1840 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1841 "ave(X)", zsto,zout) 1842 ! 1843 CALL histdef(nid_tra1,"flux_sparam_ddcoa","DD coarse emiss", & 1844 "mg/m2/s", & 1845 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1846 "ave(X)", zsto,zout) 1847 ! 1848 CALL histdef(nid_tra1,"flux_sparam_ddsco","DD Scoarse emiss", & 1849 "mg/m2/s", & 1850 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1851 "ave(X)", zsto,zout) 1852 ! 1853 CALL histdef(nid_tra1,"flux_sparam_ssfine","SS fine emiss", & 1854 "mg/m2/s", & 1855 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1856 "ave(X)", zsto,zout) 1857 ! 1858 CALL histdef(nid_tra1,"flux_sparam_sscoa","SS coarse emiss", & 1859 "mg/m2/s", & 1860 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1861 "ave(X)", zsto,zout) 1862 ! 1863 CALL histdef(nid_tra1,"u10m","Zonal wind at 10 m", & 1864 "m/s", & 1865 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1866 "ave(X)", zsto,zout) 1867 ! 1868 CALL histdef(nid_tra1,"v10m","Meridional wind at 10 m", & 1869 "m/s", & 1870 nbp_lon,nbp_lat,nhori1, 1,1,1, -99, 32, & 1871 "ave(X)", zsto,zout) 1872 ! 1873 !nhl CALL histdef(nid_tra1,"flux_sparam_sulf","SO4 chem prod", 1874 !nhl . "gAer/kgAir", 1875 !nhl . nbp_lon,nbp_lat,nhori1, nbp_lev,1,nbp_lev,nvert, 32, 1876 !nhl . "ave(X)", zsto,zout) 1877 ! 1878 ! TRACEUR 1879 ! 1880 CALL histdef(nid_tra3, "taue550", "Tau ext 550", " ", & 1881 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1882 "ave(X)", zsto,zout) 1883 ! 1884 CALL histdef(nid_tra3, "taue670", "Tau ext 670", " ", & 1885 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1886 "ave(X)", zsto,zout) 1887 ! 1888 CALL histdef(nid_tra3, "taue865", "Tau ext 865", " ", & 1889 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1890 "ave(X)", zsto,zout) 1891 ! 1892 CALL histdef(nid_tra3, "taue550_tr2", "Tau ext 550tr2", " ", & 1893 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1894 "ave(X)", zsto,zout) 1895 ! 1896 CALL histdef(nid_tra3, "taue670_tr2", "Tau ext 670tr2", " ", & 1897 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1898 "ave(X)", zsto,zout) 1899 ! 1900 CALL histdef(nid_tra3, "taue865_tr2", "Tau ext 865tr2", " ", & 1901 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1902 "ave(X)", zsto,zout) 1903 ! 1904 CALL histdef(nid_tra3, "taue550_ss", "Tau ext 550ss", " ", & 1905 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1906 "ave(X)", zsto,zout) 1907 ! 1908 CALL histdef(nid_tra3, "taue670_ss", "Tau ext 670ss", " ", & 1909 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1910 "ave(X)", zsto,zout) 1911 ! 1912 CALL histdef(nid_tra3, "taue865_ss", "Tau ext 865ss", " ", & 1913 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1914 "ave(X)", zsto,zout) 1915 ! 1916 CALL histdef(nid_tra3, "taue550_dust", "Tau ext 550dust", " " & 1917 ,nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1918 "ave(X)", zsto,zout) 1919 ! 1920 CALL histdef(nid_tra3, "taue670_dust", "Tau ext 670dust", " " & 1921 ,nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1922 "ave(X)", zsto,zout) 1923 ! 1924 CALL histdef(nid_tra3, "taue865_dust", "Tau ext 865dust", " " & 1925 ,nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1926 "ave(X)", zsto,zout) 1927 1928 CALL histdef(nid_tra3, "taue550_dustsco", & 1929 "Tau ext 550dustsco", " " & 1930 ,nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1931 "ave(X)", zsto,zout) 1932 ! 1933 CALL histdef(nid_tra3, "taue670_dustsco", & 1934 "Tau ext 670dustsco", " " & 1935 ,nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1936 "ave(X)", zsto,zout) 1937 ! 1938 CALL histdef(nid_tra3, "taue865_dustsco", & 1939 "Tau ext 865dustsco", " " & 1940 ,nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1941 "ave(X)", zsto,zout) 1942 1943 1944 CALL histdef(nid_tra3, "taue550_aqua", "Tau ext 550 aqua", " ", & 1945 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1946 "inst(X)", zout,zout) 1947 CALL histdef(nid_tra3, "taue550_terra", "Tau ext 550 terra", " ", & 1948 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1949 "inst(X)", zout,zout) 1950 CALL histdef(nid_tra3, "taue670_aqua", "Tau ext 670 aqua", " ", & 1951 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1952 "inst(X)", zout,zout) 1953 CALL histdef(nid_tra3, "taue670_terra", "Tau ext 670 terra", " ", & 1954 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1955 "inst(X)", zout,zout) 1956 CALL histdef(nid_tra3, "taue865_aqua", "Tau ext 865 aqua", " ", & 1957 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1958 "inst(X)", zout,zout) 1959 CALL histdef(nid_tra3, "taue865_terra", "Tau ext 865 terra", " ", & 1960 nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1961 "inst(X)", zout,zout) 1962 1963 1964 DO it=1, nbtr 1965 ! 1966 WRITE(str2,'(i2.2)') it 1967 ! 1968 CALL histdef(nid_tra3, "trm"//str2, "Burden No."//str2, & 1969 "mgS/m2", nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1970 "ave(X)", zsto,zout) 1971 ! 1972 CALL histdef(nid_tra3, "sconc"//str2, "Surf Conc. No."//str2, & 1973 "mg/m3", nbp_lon,nbp_lat,nhori3, 1,1,1, -99, 32, & 1974 "ave(X)", zsto,zout) 1975 ! 1976 ! LESSIVAGE 1977 ! 1978 CALL histdef(nid_tra2, "flux"//str2, "emission"//str2, & 1979 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 1980 "ave(X)", zsto,zout) 1981 ! 1982 CALL histdef(nid_tra2, "ds"//str2, "Depot sec No."//str2, & 1983 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 1984 "ave(X)", zsto,zout) 1985 ! 1986 CALL histdef(nid_tra2,"dh"//str2, & 1987 "Depot hum No."//str2, & 1988 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 1989 "ave(X)", zsto,zout) 1990 ! 1991 CALL histdef(nid_tra2,"dtrconv"//str2, & 1992 "Tiedke convective"//str2, & 1993 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 1994 "ave(X)", zsto,zout) 1995 1996 CALL histdef(nid_tra2,"dtherm"//str2, & 1997 "Thermals dtracer"//str2, & 1998 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 1999 "ave(X)", zsto,zout) 2000 2001 CALL histdef(nid_tra2,"dhkecv"//str2, & 2002 "KE dep hum convective"//str2, & 2003 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 2004 "ave(X)", zsto,zout) 2005 CALL histdef(nid_tra2,"dhkelsc"//str2, & 2006 "KE dep hum large scale"//str2, & 2007 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 2008 "ave(X)", zsto,zout) 2009 2010 2011 CALL histdef(nid_tra2,"d_tr_ds"//str2, & 2012 " Tendance dep sec"//str2, & 2013 "mgS/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, 32, & 2014 "ave(X)", zsto,zout) 2015 2016 2017 CALL histdef(nid_tra2,"d_tr_cv"//str2, & 2018 "cvltr d_tr_cv"//str2, & 2019 "mgS/m2/s", & 2020 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2021 "ave(X)", zsto,zout) 2022 CALL histdef(nid_tra2,"d_tr_trsp"//str2 & 2023 ,"cvltr d_tr_trsp"//str2, & 2024 "mgS/m2/s", & 2025 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2026 "ave(X)", zsto,zout) 2027 CALL histdef(nid_tra2,"d_tr_sscav"//str2 & 2028 ,"cvltr d_tr_sscav"//str2,"mgS/m2/s", & 2029 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2030 "ave(X)", zsto,zout) 2031 CALL histdef(nid_tra2,"d_tr_sat"//str2 & 2032 ,"cvltr d_tr_sat"//str2, & 2033 "mgS/m2/s", & 2034 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2035 "ave(X)", zsto,zout) 2036 CALL histdef(nid_tra2,"d_tr_uscav"//str2, & 2037 "cvltr d_tr_uscav"//str2, & 2038 "mgS/m2/s", & 2039 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2040 "ave(X)", zsto,zout) 2041 CALL histdef(nid_tra2,"d_tr_insc"//str2, & !!! 2042 "cvltr d_tr_insc"//str2, & 2043 "mgS/m2/s", & 2044 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2045 "ave(X)", zsto,zout) 2046 CALL histdef(nid_tra2,"d_tr_bcscav"//str2, & 2047 "cvltr d_tr_bcscav"//str2, & 2048 "mgS/m2/s", & 2049 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2050 "ave(X)", zsto,zout) 2051 CALL histdef(nid_tra2,"d_tr_evapls"//str2, & 2052 "cvltr d_tr_evapls"//str2, & 2053 "mgS/m2/s", & 2054 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2055 "ave(X)", zsto,zout) 2056 CALL histdef(nid_tra2,"d_tr_ls"//str2, & 2057 "cvltr d_tr_ls"//str2, & 2058 "mgS/m2/s", & 2059 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2060 "ave(X)", zsto,zout) !! 2061 CALL histdef(nid_tra2,"d_tr_dyn"//str2, & 2062 "large-scale d_tr_dyn"//str2, & 2063 "mgS/m2/s", & 2064 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2065 "ave(X)", zsto,zout) !! 2066 CALL histdef(nid_tra2,"d_tr_cl"//str2, & 2067 "cvltr d_tr_cl"//str2, & 2068 "mgS/m2/s", & 2069 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2070 "ave(X)", zsto,zout) !! 2071 CALL histdef(nid_tra2,"d_tr_th"//str2, & 2072 "cvltr d_tr_th"//str2, & 2073 "mgS/m2/s", & 2074 nbp_lon,nbp_lat,nhori2, nbp_lev,1,nbp_lev,nvert, 32, & 2075 "ave(X)", zsto,zout) !! 2076 2077 2078 2079 ! 2080 ENDDO 2081 ! 2082 CALL histdef(nid_tra2, "sed_ss", "Sedmet. Tr3", & 2083 "mg/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, -99, & 2084 32, & 2085 "ave(X)", zsto,zout) 2086 ! 2087 CALL histdef(nid_tra2, "sed_dust", "Sedmet. Tr4", & 2088 "mg/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, & 2089 -99, 32, & 2090 "ave(X)", zsto,zout) 2091 ! 2092 CALL histdef(nid_tra2, "sed_dustsco", "Sedmet. Tr5", & 2093 "mg/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1, & 2094 -99, 32, & 2095 "ave(X)", zsto,zout) 2096 ! 2097 CALL histdef(nid_tra2, "g2p_gas", "Gas2particle gas sink", & 2098 "mg-S/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1,-99, 32, & 2099 "ave(X)", zsto,zout) 2100 ! 2101 CALL histdef(nid_tra2, "g2p_aer", "Gas2particle tr2 src", & 2102 "mg/m2/s", nbp_lon,nbp_lat,nhori2, 1,1,1,-99,32, & 2103 "ave(X)", zsto,zout) 2104 ! 2105 !------------------------------------------------------------------- 2106 ! 2107 CALL histend(nid_tra1) 2108 ! 2109 CALL histend(nid_tra2) 2110 ! 2111 CALL histend(nid_tra3) 2112 ! 2113 !------------------------------------------------------------------- 2114 2115 ! nbjour=1 2116 ENDIF ! mpi root 2117 ENDIF !--ok_histrac 2118 2119 ! 2120 ! IF (.NOT.edgar.AND.bateau) THEN 2121 ! PRINT *,'ATTENTION risque de compter double les bateaux' 2122 ! STOP 2123 ! ENDIF 2124 ! 2125 ! 2126 ! 1588 !!AS deleting lines 1589 !! IF (ok_histrac) THEN 1590 !! IF (is_mpi_root .AND. is_omp_root) THEN 1591 !!-----many deleted lines---- 1592 !!! nbjour=1 1593 !! ENDIF ! mpi root 1594 !! ENDIF !--ok_histrac 1595 2127 1596 !$OMP END MASTER 2128 1597 !$OMP BARRIER … … 2138 1607 !$OMP MASTER 2139 1608 2140 !ALLOCATE(d_tr_cl(klon,klev,nbtr),d_tr_dry(klon,nbtr))2141 1609 ALLOCATE(d_tr_dry(klon,nbtr)) 2142 1610 ALLOCATE(flux_tr_dry(klon,nbtr),d_tr_dec(klon,klev,nbtr)) 2143 !ALLOCATE(d_tr_cv(klon,klev,nbtr))2144 !ALLOCATE(d_tr_insc(klon,klev,nbtr),d_tr_bcscav(klon,klev,nbtr))2145 !ALLOCATE(d_tr_evapls(klon,klev,nbtr),d_tr_ls(klon,klev,nbtr))2146 !ALLOCATE(qPrls(klon,nbtr),d_tr_trsp(klon,klev,nbtr))2147 1611 ALLOCATE(qPrls(klon,nbtr),qPr(klon,klev,nbtr)) 2148 !ALLOCATE(d_tr_sscav(klon,klev,nbtr),d_tr_sat(klon,klev,nbtr))2149 !ALLOCATE(d_tr_uscav(klon,klev,nbtr),qPr(klon,klev,nbtr))2150 1612 ALLOCATE(qDi(klon,klev,nbtr)) 2151 1613 ALLOCATE(qPa(klon,klev,nbtr),qMel(klon,klev,nbtr)) 2152 1614 ALLOCATE(qTrdi(klon,klev,nbtr),dtrcvMA(klon,klev,nbtr)) 2153 !ALLOCATE(d_tr_th(klon,klev,nbtr)) 2154 !ALLOCATE(d_tr_lessi_impa(klon,klev,nbtr)) 2155 !ALLOCATE(d_tr_lessi_nucl(klon,klev,nbtr)) 2156 2157 !ALLOCATE( diff_aod550_tot(klon) ) 2158 !ALLOCATE( diag_aod670_tot(klon) ) 2159 !ALLOCATE( diag_aod865_tot(klon) ) 2160 !ALLOCATE( diff_aod550_tr2(klon) ) 2161 !ALLOCATE( diag_aod670_tr2(klon) ) 2162 !ALLOCATE( diag_aod865_tr2(klon) ) 2163 !ALLOCATE( diag_aod550_ss(klon) ) 2164 !ALLOCATE( diag_aod670_ss(klon) ) 2165 !ALLOCATE( diag_aod865_ss(klon) ) 2166 !ALLOCATE( diag_aod550_dust(klon) ) 2167 !ALLOCATE( diag_aod670_dust(klon) ) 2168 !ALLOCATE( diag_aod865_dust(klon) ) 2169 !ALLOCATE( diag_aod550_dustsco(klon) ) 2170 !ALLOCATE( diag_aod670_dustsco(klon) ) 2171 !ALLOCATE( diag_aod865_dustsco(klon) ) 2172 2173 2174 !ALLOCATE( sconc01(klon) ) 2175 !ALLOCATE( trm01(klon) ) 2176 !ALLOCATE( sconc02(klon) ) 2177 !ALLOCATE( trm02(klon) ) 2178 !ALLOCATE( sconc03(klon) ) 2179 !ALLOCATE( trm03(klon) ) 2180 !ALLOCATE( sconc04(klon) ) 2181 !ALLOCATE( trm04(klon) ) 2182 !ALLOCATE( sconc05(klon) ) 2183 !ALLOCATE( trm05(klon) ) 2184 2185 2186 !ALLOCATE( flux01(klon) ) 2187 !ALLOCATE( flux02(klon) ) 2188 !ALLOCATE( flux03(klon) ) 2189 !ALLOCATE( flux04(klon) ) 2190 !ALLOCATE( flux05(klon) ) 2191 !ALLOCATE( ds01(klon) ) 2192 !ALLOCATE( ds02(klon) ) 2193 !ALLOCATE( ds03(klon) ) 2194 !ALLOCATE( ds04(klon) ) 2195 !ALLOCATE( ds05(klon) ) 2196 !ALLOCATE( dh01(klon) ) 2197 !ALLOCATE( dh02(klon) ) 2198 !ALLOCATE( dh03(klon) ) 2199 !ALLOCATE( dh04(klon) ) 2200 !ALLOCATE( dh05(klon) ) 2201 !ALLOCATE( dtrconv01(klon) ) 2202 !ALLOCATE( dtrconv02(klon) ) 2203 !ALLOCATE( dtrconv03(klon) ) 2204 !ALLOCATE( dtrconv04(klon) ) 2205 !ALLOCATE( dtrconv05(klon) ) 2206 !ALLOCATE( dtherm01(klon) ) 2207 !ALLOCATE( dtherm02(klon) ) 2208 !ALLOCATE( dtherm03(klon) ) 2209 !ALLOCATE( dtherm04(klon) ) 2210 !ALLOCATE( dtherm05(klon) ) 2211 !ALLOCATE( dhkecv01(klon) ) 2212 !ALLOCATE( dhkecv02(klon) ) 2213 !ALLOCATE( dhkecv03(klon) ) 2214 !ALLOCATE( dhkecv04(klon) ) 2215 !ALLOCATE( dhkecv05(klon) ) 2216 !ALLOCATE( d_tr_ds01(klon) ) 2217 !ALLOCATE( d_tr_ds02(klon) ) 2218 !ALLOCATE( d_tr_ds03(klon) ) 2219 !ALLOCATE( d_tr_ds04(klon) ) 2220 !ALLOCATE( d_tr_ds05(klon) ) 2221 !ALLOCATE( dhkelsc01(klon) ) 2222 !ALLOCATE( dhkelsc02(klon) ) 2223 !ALLOCATE( dhkelsc03(klon) ) 2224 !ALLOCATE( dhkelsc04(klon) ) 2225 !ALLOCATE( dhkelsc05(klon) ) 2226 !ALLOCATE( d_tr_cv01(klon,klev)) 2227 !ALLOCATE( d_tr_cv02(klon,klev)) 2228 !ALLOCATE( d_tr_cv03(klon,klev)) 2229 !ALLOCATE( d_tr_cv04(klon,klev)) 2230 !ALLOCATE( d_tr_cv05(klon,klev)) 2231 !ALLOCATE( d_tr_trsp01(klon,klev)) 2232 !ALLOCATE( d_tr_trsp02(klon,klev)) 2233 !ALLOCATE( d_tr_trsp03(klon,klev)) 2234 !ALLOCATE( d_tr_trsp04(klon,klev)) 2235 !ALLOCATE( d_tr_trsp05(klon,klev)) 2236 !ALLOCATE( d_tr_sscav01(klon,klev)) 2237 !ALLOCATE( d_tr_sscav02(klon,klev)) 2238 !ALLOCATE( d_tr_sscav03(klon,klev)) 2239 !ALLOCATE( d_tr_sscav04(klon,klev)) 2240 !ALLOCATE( d_tr_sscav05(klon,klev)) 2241 !ALLOCATE( d_tr_sat01(klon,klev)) 2242 !ALLOCATE( d_tr_sat02(klon,klev)) 2243 !ALLOCATE( d_tr_sat03(klon,klev)) 2244 !ALLOCATE( d_tr_sat04(klon,klev)) 2245 !ALLOCATE( d_tr_sat05(klon,klev)) 2246 !ALLOCATE( d_tr_uscav01(klon,klev)) 2247 !ALLOCATE( d_tr_uscav02(klon,klev)) 2248 !ALLOCATE( d_tr_uscav03(klon,klev)) 2249 !ALLOCATE( d_tr_uscav04(klon,klev)) 2250 !ALLOCATE( d_tr_uscav05(klon,klev)) 2251 2252 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2253 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2254 !ALLOCATE( d_tr_insc01(klon,klev)) 2255 !ALLOCATE( d_tr_insc02(klon,klev)) 2256 !ALLOCATE( d_tr_insc03(klon,klev)) 2257 !ALLOCATE( d_tr_insc04(klon,klev)) 2258 !ALLOCATE( d_tr_insc05(klon,klev)) 2259 !ALLOCATE( d_tr_bcscav01(klon,klev)) 2260 !ALLOCATE( d_tr_bcscav02(klon,klev)) 2261 !ALLOCATE( d_tr_bcscav03(klon,klev)) 2262 !ALLOCATE( d_tr_bcscav04(klon,klev)) 2263 !ALLOCATE( d_tr_bcscav05(klon,klev)) 2264 !ALLOCATE( d_tr_evapls01(klon,klev)) 2265 !ALLOCATE( d_tr_evapls02(klon,klev)) 2266 !ALLOCATE( d_tr_evapls03(klon,klev)) 2267 !ALLOCATE( d_tr_evapls04(klon,klev)) 2268 !ALLOCATE( d_tr_evapls05(klon,klev)) 2269 !ALLOCATE( d_tr_ls01(klon,klev)) 2270 !ALLOCATE( d_tr_ls02(klon,klev)) 2271 !ALLOCATE( d_tr_ls03(klon,klev)) 2272 !ALLOCATE( d_tr_ls04(klon,klev)) 2273 !ALLOCATE( d_tr_ls05(klon,klev)) 2274 !ALLOCATE( d_tr_dyn01(klon,klev)) 2275 !ALLOCATE( d_tr_dyn02(klon,klev)) 2276 !ALLOCATE( d_tr_dyn03(klon,klev)) 2277 !ALLOCATE( d_tr_dyn04(klon,klev)) 2278 !ALLOCATE( d_tr_dyn05(klon,klev)) 2279 !ALLOCATE( d_tr_cl01(klon,klev)) 2280 !ALLOCATE( d_tr_cl02(klon,klev)) 2281 !ALLOCATE( d_tr_cl03(klon,klev)) 2282 !ALLOCATE( d_tr_cl04(klon,klev)) 2283 !ALLOCATE( d_tr_cl05(klon,klev)) 2284 !ALLOCATE( d_tr_th01(klon,klev)) 2285 !ALLOCATE( d_tr_th02(klon,klev)) 2286 !ALLOCATE( d_tr_th03(klon,klev)) 2287 !ALLOCATE( d_tr_th04(klon,klev)) 2288 !ALLOCATE( d_tr_th05(klon,klev)) 2289 2290 !ALLOCATE( sed_ss3D(klon,klev)) 2291 !ALLOCATE( sed_dust3D(klon,klev)) 2292 !ALLOCATE( sed_dustsco3D(klon,klev)) 2293 2294 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2295 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2296 2297 !ALLOCATE( sed_ss(klon)) 2298 !ALLOCATE( sed_dust(klon)) 2299 !ALLOCATE( sed_dustsco(klon)) 2300 !ALLOCATE( his_g2pgas(klon)) 2301 !ALLOCATE( his_g2paer(klon)) 2302 2303 !ALLOCATE( fluxbb(klon)) 2304 !ALLOCATE( fluxff(klon)) 2305 !ALLOCATE( fluxbcbb(klon)) 2306 !ALLOCATE( fluxbcff(klon)) 2307 !ALLOCATE( fluxbcnff(klon)) 2308 !ALLOCATE( fluxbcba(klon)) 2309 !ALLOCATE( fluxbc(klon)) 2310 !ALLOCATE( fluxombb(klon)) 2311 !ALLOCATE( fluxomff(klon)) 2312 !ALLOCATE( fluxomnff(klon)) 2313 !ALLOCATE( fluxomba(klon)) 2314 !ALLOCATE( fluxomnat(klon)) 2315 !ALLOCATE( fluxom(klon)) 2316 !ALLOCATE( fluxh2sff(klon)) 2317 !ALLOCATE( fluxh2snff(klon)) 2318 !ALLOCATE( fluxso2ff(klon)) 2319 !ALLOCATE( fluxso2nff(klon)) 2320 !ALLOCATE( fluxso2bb(klon)) 2321 !ALLOCATE( fluxso2vol(klon)) 2322 !ALLOCATE( fluxso2ba(klon)) 2323 !ALLOCATE( fluxso2(klon)) 2324 !ALLOCATE( fluxso4ff(klon)) 2325 !ALLOCATE( fluxso4nff(klon)) 2326 !ALLOCATE( fluxso4bb(klon)) 2327 !ALLOCATE( fluxso4ba(klon)) 2328 !ALLOCATE( fluxso4(klon)) 2329 !ALLOCATE( fluxdms(klon)) 2330 !ALLOCATE( fluxh2sbio(klon)) 2331 !ALLOCATE( fluxdustec(klon)) 2332 !ALLOCATE( fluxddfine(klon)) 2333 !ALLOCATE( fluxddcoa(klon)) 2334 !ALLOCATE( fluxddsco(klon)) 2335 !ALLOCATE( fluxdd(klon)) 2336 !ALLOCATE( fluxssfine(klon)) 2337 !ALLOCATE( fluxsscoa(klon)) 2338 !ALLOCATE( fluxss(klon)) 2339 !ALLOCATE( flux_sparam_ind(klon)) 2340 !ALLOCATE( flux_sparam_bb(klon)) 2341 !ALLOCATE( flux_sparam_ff(klon)) 2342 !ALLOCATE( flux_sparam_ddfine(klon)) 2343 !ALLOCATE( flux_sparam_ddcoa(klon)) 2344 !ALLOCATE( flux_sparam_ddsco(klon)) 2345 !ALLOCATE( flux_sparam_ssfine(klon)) 2346 !ALLOCATE( flux_sparam_sscoa(klon)) 2347 !ALLOCATE( u10m_ss(klon)) 2348 !ALLOCATE( v10m_ss(klon)) 2349 2350 1615 1616 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 1617 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 2351 1618 ALLOCATE(d_tr_cv_o(klon,klev,nbtr)) 2352 1619 ALLOCATE(d_tr_trsp_o(klon,klev,nbtr)) … … 2375 1642 ALLOCATE(masque_aqua(klon)) 2376 1643 ALLOCATE(masque_terra(klon)) 2377 ! ALLOCATE(aod550_aqua(klon))2378 ! ALLOCATE(aod550_terra(klon))2379 ! ALLOCATE(aod670_aqua(klon))2380 ! ALLOCATE(aod670_terra(klon))2381 ! ALLOCATE(aod865_aqua(klon))2382 ! ALLOCATE(aod865_terra(klon))2383 2384 !ALLOCATE( aod550_terra(klon))2385 !ALLOCATE( aod550_tr2_terra(klon))2386 !ALLOCATE( aod550_ss_terra(klon))2387 !ALLOCATE( aod550_dust_terra(klon))2388 !ALLOCATE( aod550_dustsco_terra(klon))2389 !ALLOCATE( aod670_terra(klon))2390 !ALLOCATE( aod670_tr2_terra(klon))2391 !ALLOCATE( aod670_ss_terra(klon))2392 !ALLOCATE( aod670_dust_terra(klon))2393 !ALLOCATE( aod670_dustsco_terra(klon))2394 !ALLOCATE( aod865_terra(klon))2395 !ALLOCATE( aod865_tr2_terra(klon))2396 !ALLOCATE( aod865_ss_terra(klon))2397 !ALLOCATE( aod865_dust_terra(klon))2398 !ALLOCATE( aod865_dustsco_terra(klon))2399 2400 !ALLOCATE( aod550_aqua(klon))2401 !ALLOCATE( aod550_tr2_aqua(klon))2402 !ALLOCATE( aod550_ss_aqua(klon))2403 !ALLOCATE( aod550_dust_aqua(klon))2404 !ALLOCATE( aod550_dustsco_aqua(klon))2405 !ALLOCATE( aod670_aqua(klon))2406 !ALLOCATE( aod670_tr2_aqua(klon))2407 !ALLOCATE( aod670_ss_aqua(klon))2408 !ALLOCATE( aod670_dust_aqua(klon))2409 !ALLOCATE( aod670_dustsco_aqua(klon))2410 !ALLOCATE( aod865_aqua(klon))2411 !ALLOCATE( aod865_tr2_aqua(klon))2412 !ALLOCATE( aod865_ss_aqua(klon))2413 !ALLOCATE( aod865_dust_aqua(klon))2414 !ALLOCATE( aod865_dustsco_aqua(klon))2415 1644 2416 1645 2417 1646 masque_aqua(:)=0 2418 1647 masque_terra(:)=0 2419 ! aod550_aqua(:)=0.2420 ! aod550_terra(:)=0.2421 ! aod670_aqua(:)=0.2422 ! aod670_terra(:)=0.2423 ! aod865_aqua(:)=0.2424 ! aod865_terra(:)=0.2425 1648 2426 1649 aod550_terra(:)=0. … … 2715 1938 CLOSE(76) 2716 1939 CLOSE(77) 1940 CLOSE(95) 2717 1941 2718 1942 ENDIF ! mpi root … … 4116 3340 !new utc day: put in 0 everything 4117 3341 !JE20150518<< 4118 ! aod550_aqua(:) =0.4119 ! aod550_terra(:) =0.4120 ! aod670_aqua(:) =0.4121 ! aod670_terra(:) =0.4122 ! aod865_aqua(:) =0.4123 ! aod865_terra(:) =0.4124 3342 masque_aqua(:) =0 4125 3343 masque_terra(:) =0 … … 4158 3376 4159 3377 DO i=1,klon 4160 ! aod550_aqua(i)=aod550_aqua(i)+ &4161 ! masque_aqua_cur(i)*diff_aod550_tot(i)4162 ! aod670_aqua(i)=aod670_aqua(i)+ &4163 ! masque_aqua_cur(i)*diag_aod670_tot(i)4164 ! aod865_aqua(i)=aod865_aqua(i)+ &4165 ! masque_aqua_cur(i)*diag_aod865_tot(i)4166 3378 4167 3379 aod550_terra(i)=aod550_terra(i)+ & … … 4228 3440 aod865_dustsco_aqua(i)= aod865_dustsco_aqua(i) + & 4229 3441 masque_aqua_cur(i)*diag_aod865_dustsco(i) 4230 ! aod550_terra(i)=aod550_terra(i)+ & 4231 ! masque_terra_cur(i)*diff_aod550_tot(i) 4232 ! aod670_terra(i)=aod670_terra(i)+ & 4233 ! masque_terra_cur(i)*diag_aod670_tot(i) 4234 ! aod865_terra(i)=aod865_terra(i)+ & 4235 ! masque_terra_cur(i)*diag_aod865_tot(i) 4236 masque_aqua(i)=masque_aqua(i)+masque_aqua_cur(i) 3442 3443 masque_aqua(i)=masque_aqua(i)+masque_aqua_cur(i) 4237 3444 masque_terra(i)=masque_terra(i)+masque_terra_cur(i) 4238 3445 ENDDO … … 4307 3514 aod865_dustsco_terra(i)= -999. 4308 3515 ENDIF 4309 ! IF (masque_terra(i).GT. 0) THEN4310 ! aod550_terra(i) = aod550_terra(i)/masque_terra(i)4311 ! aod670_terra(i)=aod670_terra(i)/masque_terra(i)4312 ! aod865_terra(i)=aod865_terra(i)/masque_terra(i)4313 !4314 ! ELSE4315 ! aod550_terra(i) = -999.4316 ! aod670_terra(i) = -999.4317 ! aod865_terra(i) = -999.4318 ! ENDIF4319 3516 ENDDO 4320 ! !write dbg 4321 ! CALL writefield_phy("aod550_aqua",aod550_aqua,1) 4322 ! CALL writefield_phy("aod550_terra",aod550_terra,1) 4323 ! CALL writefield_phy("masque_aqua",float(masque_aqua),1) 4324 ! CALL writefield_phy("masque_terra",float(masque_terra),1) 4325 4326 4327 IF (ok_histrac) THEN 4328 ! write in output file 4329 call gather(aod550_aqua,aod550_aqua_glo) 4330 call gather(aod550_terra,aod550_terra_glo) 4331 call gather(aod670_aqua,aod670_aqua_glo) 4332 call gather(aod670_terra,aod670_terra_glo) 4333 call gather(aod865_aqua,aod865_aqua_glo) 4334 call gather(aod865_terra,aod865_terra_glo) 4335 4336 !$OMP MASTER 4337 IF (is_mpi_root .AND. is_omp_root) THEN 4338 4339 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, aod550_aqua_glo ,zx_tmp_2d) 4340 CALL histwrite(nid_tra3,"taue550_aqua",itra,zx_tmp_2d, & 4341 nbp_lon*(nbp_lat),ndex2d) 4342 4343 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, aod550_terra_glo ,zx_tmp_2d) 4344 CALL histwrite(nid_tra3,"taue550_terra",itra,zx_tmp_2d, & 4345 nbp_lon*(nbp_lat),ndex2d) 4346 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, aod670_aqua_glo ,zx_tmp_2d) 4347 CALL histwrite(nid_tra3,"taue670_aqua",itra,zx_tmp_2d, & 4348 nbp_lon*(nbp_lat),ndex2d) 4349 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, aod670_terra_glo ,zx_tmp_2d) 4350 CALL histwrite(nid_tra3,"taue670_terra",itra,zx_tmp_2d, & 4351 nbp_lon*(nbp_lat),ndex2d) 4352 4353 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, aod865_aqua_glo ,zx_tmp_2d) 4354 CALL histwrite(nid_tra3,"taue865_aqua",itra,zx_tmp_2d, & 4355 nbp_lon*(nbp_lat),ndex2d) 4356 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, aod865_terra_glo ,zx_tmp_2d) 4357 CALL histwrite(nid_tra3,"taue865_terra",itra,zx_tmp_2d, & 4358 nbp_lon*(nbp_lat),ndex2d) 4359 ENDIF 4360 !$OMP END MASTER 4361 !$OMP BARRIER 4362 ENDIF 4363 ! !put in 0 everything 4364 ! aod550_aqua(:) =0. 4365 ! aod550_terra(:) =0. 4366 ! aod670_aqua(:) =0. 4367 ! aod670_terra(:) =0. 4368 ! aod865_aqua(:) =0. 4369 ! aod865_terra(:) =0. 4370 ! masque_aqua(:) =0 4371 ! masque_terra(:) =0 4372 ENDIF 3517 3518 !!AS deleting lines 3519 !! IF (ok_histrac) THEN 3520 !!!! write in output file 3521 !!----many deleted lines 3522 !! ENDIF !mpi_root 3523 !!!$OMP END MASTER 3524 !!!$OMP BARRIER 3525 !! ENDIF !--ok_histrac 3526 3527 ENDIF ! jH_cur... 4373 3528 4374 3529 … … 4743 3898 ENDDO 4744 3899 4745 IF (ok_histrac) THEN 4746 ! 4747 ! SAVING VARIABLES IN TRACEUR 4748 ! 4749 call gather(diff_aod550_tot ,auxklon_glo ) 4750 !$OMP MASTER 4751 IF (is_mpi_root .AND. is_omp_root) THEN 4752 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4753 CALL histwrite(nid_tra3,"taue550",itra,zx_tmp_2d_glo, & 4754 nbp_lon*(nbp_lat),ndex2d) 4755 ENDIF ! mpi root 4756 !$OMP END MASTER 4757 !$OMP BARRIER 4758 call gather( diag_aod670_tot , auxklon_glo ) 4759 !$OMP MASTER 4760 IF (is_mpi_root .AND. is_omp_root) THEN 4761 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo,zx_tmp_2d_glo) 4762 CALL histwrite(nid_tra3,"taue670",itra,zx_tmp_2d_glo, & 4763 nbp_lon*(nbp_lat),ndex2d) 4764 ! 4765 ENDIF ! mpi root 4766 !$OMP END MASTER 4767 !$OMP BARRIER 4768 call gather( diag_aod865_tot , auxklon_glo ) 4769 !$OMP MASTER 4770 IF (is_mpi_root .AND. is_omp_root) THEN 4771 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo,zx_tmp_2d_glo) 4772 CALL histwrite(nid_tra3,"taue865",itra,zx_tmp_2d_glo, & 4773 nbp_lon*(nbp_lat),ndex2d) 4774 ! 4775 ENDIF ! mpi root 4776 !$OMP END MASTER 4777 !$OMP BARRIER 4778 call gather( diff_aod550_tr2 , auxklon_glo ) 4779 !$OMP MASTER 4780 IF (is_mpi_root .AND. is_omp_root) THEN 4781 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo,zx_tmp_2d_glo) 4782 CALL histwrite(nid_tra3,"taue550_tr2",itra,zx_tmp_2d_glo, & 4783 nbp_lon*(nbp_lat),ndex2d) 4784 ! 4785 ENDIF ! mpi root 4786 !$OMP END MASTER 4787 !$OMP BARRIER 4788 call gather( diag_aod670_tr2 , auxklon_glo ) 4789 !$OMP MASTER 4790 IF (is_mpi_root .AND. is_omp_root) THEN 4791 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo,zx_tmp_2d_glo) 4792 CALL histwrite(nid_tra3,"taue670_tr2",itra,zx_tmp_2d_glo, & 4793 nbp_lon*(nbp_lat),ndex2d) 4794 ! 4795 ENDIF ! mpi root 4796 !$OMP END MASTER 4797 !$OMP BARRIER 4798 call gather( diag_aod865_tr2 , auxklon_glo ) 4799 !$OMP MASTER 4800 IF (is_mpi_root .AND. is_omp_root) THEN 4801 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo,zx_tmp_2d_glo) 4802 CALL histwrite(nid_tra3,"taue865_tr2",itra,zx_tmp_2d_glo, & 4803 nbp_lon*(nbp_lat),ndex2d) 4804 ! 4805 ENDIF ! mpi root 4806 !$OMP END MASTER 4807 !$OMP BARRIER 4808 call gather( diag_aod550_ss, auxklon_glo ) 4809 !$OMP MASTER 4810 IF (is_mpi_root .AND. is_omp_root) THEN 4811 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4812 CALL histwrite(nid_tra3,"taue550_ss",itra,zx_tmp_2d_glo, & 4813 nbp_lon*(nbp_lat),ndex2d) 4814 ! 4815 ENDIF ! mpi root 4816 !$OMP END MASTER 4817 !$OMP BARRIER 4818 call gather( diag_aod670_ss , auxklon_glo ) 4819 !$OMP MASTER 4820 IF (is_mpi_root .AND. is_omp_root) THEN 4821 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4822 CALL histwrite(nid_tra3,"taue670_ss",itra,zx_tmp_2d_glo, & 4823 nbp_lon*(nbp_lat),ndex2d) 4824 ! 4825 ENDIF ! mpi root 4826 !$OMP END MASTER 4827 !$OMP BARRIER 4828 call gather( diag_aod865_ss, auxklon_glo ) 4829 !$OMP MASTER 4830 IF (is_mpi_root .AND. is_omp_root) THEN 4831 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4832 CALL histwrite(nid_tra3,"taue865_ss",itra,zx_tmp_2d_glo, & 4833 nbp_lon*(nbp_lat),ndex2d) 4834 ! 4835 ENDIF ! mpi root 4836 !$OMP END MASTER 4837 !$OMP BARRIER 4838 call gather( diag_aod550_dust, auxklon_glo ) 4839 !$OMP MASTER 4840 IF (is_mpi_root .AND. is_omp_root) THEN 4841 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4842 CALL histwrite(nid_tra3,"taue550_dust",itra,zx_tmp_2d_glo, & 4843 nbp_lon*(nbp_lat),ndex2d) 4844 ! 4845 ENDIF ! mpi root 4846 !$OMP END MASTER 4847 !$OMP BARRIER 4848 call gather( diag_aod670_dust, auxklon_glo ) 4849 !$OMP MASTER 4850 IF (is_mpi_root .AND. is_omp_root) THEN 4851 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4852 CALL histwrite(nid_tra3,"taue670_dust",itra,zx_tmp_2d_glo, & 4853 nbp_lon*(nbp_lat),ndex2d) 4854 ! 4855 ENDIF ! mpi root 4856 !$OMP END MASTER 4857 !$OMP BARRIER 4858 call gather( diag_aod865_dust, auxklon_glo ) 4859 !$OMP MASTER 4860 IF (is_mpi_root .AND. is_omp_root) THEN 4861 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4862 CALL histwrite(nid_tra3,"taue865_dust",itra,zx_tmp_2d_glo, & 4863 nbp_lon*(nbp_lat),ndex2d) 4864 ! 4865 ENDIF ! mpi root 4866 !$OMP END MASTER 4867 !$OMP BARRIER 4868 call gather( diag_aod550_dustsco, auxklon_glo ) 4869 !$OMP MASTER 4870 IF (is_mpi_root .AND. is_omp_root) THEN 4871 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4872 CALL histwrite(nid_tra3,"taue550_dustsco",itra,zx_tmp_2d_glo, & 4873 nbp_lon*(nbp_lat),ndex2d) 4874 ! 4875 ENDIF ! mpi root 4876 !$OMP END MASTER 4877 !$OMP BARRIER 4878 call gather( diag_aod670_dustsco, auxklon_glo ) 4879 !$OMP MASTER 4880 IF (is_mpi_root .AND. is_omp_root) THEN 4881 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4882 CALL histwrite(nid_tra3,"taue670_dustsco",itra,zx_tmp_2d_glo, & 4883 nbp_lon*(nbp_lat),ndex2d) 4884 ! 4885 ENDIF ! mpi root 4886 !$OMP END MASTER 4887 !$OMP BARRIER 4888 call gather( diag_aod865_dustsco, auxklon_glo ) 4889 !$OMP MASTER 4890 IF (is_mpi_root .AND. is_omp_root) THEN 4891 CALL gr_fi_ecrit(1, klon_glo,nbp_lon,nbp_lat, auxklon_glo ,zx_tmp_2d_glo) 4892 CALL histwrite(nid_tra3,"taue865_dustsco",itra,zx_tmp_2d_glo, & 4893 nbp_lon*(nbp_lat),ndex2d) 4894 ENDIF ! mpi root 4895 !$OMP END MASTER 4896 !$OMP BARRIER 4897 4898 !$OMP MASTER 4899 DO it=1,nbtr 4900 ! 4901 WRITE(str2,'(i2.2)') it 4902 ! 4903 call gather( trm, auxklonnbtr_glo ) 4904 ! !$OMP MASTER 4905 IF (is_mpi_root .AND. is_omp_root) THEN 4906 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) , zx_tmp_2d_glo) 4907 CALL histwrite(nid_tra3,"trm"//str2,itra,zx_tmp_2d_glo, & 4908 nbp_lon*(nbp_lat),ndex2d) 4909 ! 4910 ENDIF ! mpi root 4911 ! !$OMP END MASTER 4912 ! !$OMP BARRIER 4913 call gather( sconc_seri, auxklonnbtr_glo ) 4914 ! !$OMP MASTER 4915 IF (is_mpi_root .AND. is_omp_root) THEN 4916 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 4917 CALL histwrite(nid_tra3,"sconc"//str2,itra,zx_tmp_2d_glo, & 4918 nbp_lon*(nbp_lat),ndex2d) 4919 ENDIF ! mpi root 4920 ! !$OMP END MASTER 4921 ! !$OMP BARRIER 4922 ! 4923 ! SAVING VARIABLES IN LESSIVAGE 4924 ! 4925 call gather( flux_tr, auxklonnbtr_glo ) 4926 ! !$OMP MASTER 4927 IF (is_mpi_root .AND. is_omp_root) THEN 4928 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 4929 CALL histwrite(nid_tra2,"flux"//str2,itra,zx_tmp_2d_glo, & 4930 nbp_lon*(nbp_lat),ndex2d) 4931 ! 4932 ENDIF ! mpi root 4933 ! !$OMP END MASTER 4934 ! !$OMP BARRIER 4935 call gather( his_ds, auxklonnbtr_glo ) 4936 !! $OMP MASTER 4937 IF (is_mpi_root .AND. is_omp_root) THEN 4938 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 4939 CALL histwrite(nid_tra2,"ds"//str2,itra,zx_tmp_2d_glo, & 4940 nbp_lon*(nbp_lat),ndex2d) 4941 ! 4942 ENDIF 4943 ! !$OMP END MASTER 4944 ! !$OMP BARRIER 4945 ENDDO 4946 4947 DO it=1,nbtr 4948 WRITE(str2,'(i2.2)') it 4949 DO i=1, klon 4950 zx_tmp_fi2d(i) = his_dhlsc(i,it)+his_dhcon(i,it)+ & 4951 his_dhbclsc(i,it)+his_dhbccon(i,it) 4952 his_dh(i,it)= his_dhlsc(i,it)+his_dhcon(i,it)+ & 4953 his_dhbclsc(i,it)+his_dhbccon(i,it) 4954 4955 ENDDO 4956 ! 4957 call gather( zx_tmp_fi2d, auxklon_glo ) 4958 ! !$OMP MASTER 4959 IF (is_mpi_root .AND. is_omp_root) THEN 4960 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 4961 CALL histwrite(nid_tra2,"dh"//str2,itra,zx_tmp_2d_glo, & 4962 nbp_lon*(nbp_lat),ndex2d) 4963 ! 4964 ENDIF ! mpi root 4965 ! !$OMP END MASTER 4966 ! !$OMP BARRIER 4967 call gather( his_dhkecv, auxklonnbtr_glo ) 4968 ! !$OMP MASTER 4969 IF (is_mpi_root .AND. is_omp_root) THEN 4970 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 4971 CALL histwrite(nid_tra2,"dhkecv"//str2,itra,zx_tmp_2d_glo, & 4972 nbp_lon*(nbp_lat),ndex2d) 4973 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 4974 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 4975 ! 4976 ENDIF ! mpi root 4977 ! !$OMP END MASTER 4978 ! !$OMP BARRIER 4979 call gather( his_dhkelsc, auxklonnbtr_glo ) 4980 ! !$OMP MASTER 4981 IF (is_mpi_root .AND. is_omp_root) THEN 4982 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 4983 CALL histwrite(nid_tra2,"dhkelsc"//str2,itra,zx_tmp_2d_glo, & 4984 nbp_lon*(nbp_lat),ndex2d) 4985 ! 4986 4987 ENDIF ! mpi root 4988 ! !$OMP END MASTER 4989 ! !$OMP BARRIER 4990 ! call gather( d_tr_cv_o, auxklonklevnbtr_glo ) 4991 call gather( d_tr_cv, auxklonklevnbtr_glo ) 4992 ! !$OMP MASTER 4993 IF (is_mpi_root .AND. is_omp_root) THEN 4994 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 4995 zx_tmp_3d_glo) 4996 CALL histwrite(nid_tra2,"d_tr_cv"//str2,itra,zx_tmp_3d_glo, & 4997 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 4998 ! 4999 ENDIF ! mpi root 5000 ! !$OMP END MASTER 5001 ! !$OMP BARRIER 5002 call gather( d_tr_trsp_o, auxklonklevnbtr_glo ) 5003 ! !$OMP MASTER 5004 IF (is_mpi_root .AND. is_omp_root) THEN 5005 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5006 zx_tmp_3d_glo) 5007 CALL histwrite(nid_tra2,"d_tr_trsp"//str2,itra,zx_tmp_3d_glo, & 5008 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5009 ! 5010 ENDIF ! mpi root 5011 ! !$OMP END MASTER 5012 ! !$OMP BARRIER 5013 call gather( d_tr_sscav_o, auxklonklevnbtr_glo ) 5014 ! !$OMP MASTER 5015 IF (is_mpi_root .AND. is_omp_root) THEN 5016 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5017 zx_tmp_3d_glo) 5018 CALL histwrite(nid_tra2,"d_tr_sscav"//str2,itra,zx_tmp_3d_glo, & 5019 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5020 ! 5021 ENDIF ! mpi root 5022 ! !$OMP END MASTER 5023 ! !$OMP BARRIER 5024 call gather( d_tr_sat_o, auxklonklevnbtr_glo ) 5025 ! !$OMP MASTER 5026 IF (is_mpi_root .AND. is_omp_root) THEN 5027 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5028 zx_tmp_3d_glo) 5029 CALL histwrite(nid_tra2,"d_tr_sat"//str2,itra,zx_tmp_3d_glo, & 5030 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5031 ! 5032 ENDIF ! mpi root 5033 ! !$OMP END MASTER 5034 ! !$OMP BARRIER 5035 call gather( d_tr_uscav_o, auxklonklevnbtr_glo ) 5036 ! !$OMP MASTER 5037 IF (is_mpi_root .AND. is_omp_root) THEN 5038 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5039 zx_tmp_3d_glo) 5040 CALL histwrite(nid_tra2,"d_tr_uscav"//str2,itra,zx_tmp_3d_glo, & 5041 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5042 ! 5043 ENDIF ! mpi root 5044 ! !$OMP END MASTER 5045 ! !$OMP BARRIER 5046 5047 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5048 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5049 call gather( d_tr_insc_o, auxklonklevnbtr_glo ) 5050 ! !$OMP MASTER 5051 IF (is_mpi_root .AND. is_omp_root) THEN 5052 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5053 zx_tmp_3d_glo) 5054 CALL histwrite(nid_tra2,"d_tr_insc"//str2,itra,zx_tmp_3d_glo, & 5055 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5056 ! 5057 ENDIF ! mpi root 5058 ! !$OMP END MASTER 5059 ! !$OMP BARRIER 5060 5061 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5062 call gather( d_tr_bcscav_o, auxklonklevnbtr_glo ) 5063 ! !$OMP MASTER 5064 IF (is_mpi_root .AND. is_omp_root) THEN 5065 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5066 zx_tmp_3d_glo) 5067 CALL histwrite(nid_tra2,"d_tr_bcscav"//str2,itra,zx_tmp_3d_glo, & 5068 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5069 ! 5070 ENDIF ! mpi root 5071 ! !$OMP END MASTER 5072 ! !$OMP BARRIER 5073 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5074 call gather( d_tr_evapls_o, auxklonklevnbtr_glo ) 5075 ! !$OMP MASTER 5076 IF (is_mpi_root .AND. is_omp_root) THEN 5077 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5078 zx_tmp_3d_glo) 5079 CALL histwrite(nid_tra2,"d_tr_evapls"//str2,itra,zx_tmp_3d_glo, & 5080 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5081 ! 5082 ENDIF ! mpi root 5083 ! !$OMP END MASTER 5084 ! !$OMP BARRIER 5085 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5086 ! call gather( d_tr_ls_o, auxklonklevnbtr_glo ) 5087 call gather( d_tr_ls, auxklonklevnbtr_glo ) 5088 ! !$OMP MASTER 5089 IF (is_mpi_root .AND. is_omp_root) THEN 5090 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5091 zx_tmp_3d_glo) 5092 CALL histwrite(nid_tra2,"d_tr_ls"//str2,itra,zx_tmp_3d_glo, & 5093 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5094 5095 ENDIF ! mpi root 5096 ! !$OMP END MASTER 5097 ! !$OMP BARRIER 5098 5099 5100 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5101 ! call gather( d_tr_dyn_o, auxklonklevnbtr_glo ) 5102 call gather( d_tr_dyn, auxklonklevnbtr_glo ) 5103 ! !$OMP MASTER 5104 IF (is_mpi_root .AND. is_omp_root) THEN 5105 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5106 zx_tmp_3d_glo) 5107 CALL histwrite(nid_tra2,"d_tr_dyn"//str2,itra,zx_tmp_3d_glo, & 5108 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5109 5110 print*,'ECRTIURES TENDANCES MODIFIEES NON MAIS' 5111 ENDIF ! mpi root 5112 ! !$OMP END MASTER 5113 ! !$OMP BARRIER 5114 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5115 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5116 ! call gather( d_tr_cl_o, auxklonklevnbtr_glo ) 5117 call gather( d_tr_cl, auxklonklevnbtr_glo ) 5118 ! !$OMP MASTER 5119 IF (is_mpi_root .AND. is_omp_root) THEN 5120 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5121 zx_tmp_3d_glo) 5122 CALL histwrite(nid_tra2,"d_tr_cl"//str2,itra,zx_tmp_3d_glo, & 5123 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5124 5125 ENDIF ! mpi root 5126 ! !$OMP END MASTER 5127 ! !$OMP BARRIER 5128 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5129 ! call gather( d_tr_th_o, auxklonklevnbtr_glo ) 5130 call gather( d_tr_th, auxklonklevnbtr_glo ) 5131 ! !$OMP MASTER 5132 IF (is_mpi_root .AND. is_omp_root) THEN 5133 CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,auxklonklevnbtr_glo(1,1,it) , & 5134 zx_tmp_3d_glo) 5135 CALL histwrite(nid_tra2,"d_tr_th"//str2,itra,zx_tmp_3d_glo, & 5136 nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5137 5138 ENDIF ! mpi root 5139 ! !$OMP END MASTER 5140 ! !$OMP BARRIER 5141 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5142 call gather( dtrconv,auxklonnbtr_glo ) 5143 ! !$OMP MASTER 5144 IF (is_mpi_root .AND. is_omp_root) THEN 5145 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 5146 CALL histwrite(nid_tra2,"dtrconv"//str2,itra,zx_tmp_2d_glo, & 5147 nbp_lon*(nbp_lat),ndex2d) 5148 ! 5149 ENDIF ! mpi root 5150 ! !$OMP END MASTER 5151 ! !$OMP BARRIER 5152 call gather( his_th, auxklonnbtr_glo ) 5153 ! !$OMP MASTER 5154 IF (is_mpi_root .AND. is_omp_root) THEN 5155 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklonnbtr_glo(1,it) ,zx_tmp_2d_glo) 5156 CALL histwrite(nid_tra2,"dtherm"//str2,itra,zx_tmp_2d_glo, & 5157 nbp_lon*(nbp_lat),ndex2d) 5158 ENDIF ! mpi root 5159 ! !$OMP END MASTER 5160 ! !$OMP BARRIER 5161 ! 5162 5163 ENDDO 5164 ! 5165 !$OMP END MASTER 5166 !$OMP BARRIER 5167 call gather( sed_ss, auxklon_glo ) 5168 !$OMP MASTER 5169 IF (is_mpi_root .AND. is_omp_root) THEN 5170 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5171 CALL histwrite(nid_tra2,"sed_ss",itra,zx_tmp_2d_glo, & 5172 nbp_lon*(nbp_lat),ndex2d) 5173 ! 5174 ENDIF ! mpi root 5175 !$OMP END MASTER 5176 !$OMP BARRIER 5177 call gather( sed_dust, auxklon_glo ) 5178 !$OMP MASTER 5179 IF (is_mpi_root .AND. is_omp_root) THEN 5180 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5181 CALL histwrite(nid_tra2,"sed_dust",itra,zx_tmp_2d_glo, & 5182 nbp_lon*(nbp_lat),ndex2d) 5183 ! 5184 ENDIF ! mpi root 5185 !$OMP END MASTER 5186 !$OMP BARRIER 5187 call gather( sed_dustsco, auxklon_glo ) 5188 !$OMP MASTER 5189 IF (is_mpi_root .AND. is_omp_root) THEN 5190 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5191 CALL histwrite(nid_tra2,"sed_dustsco",itra,zx_tmp_2d_glo, & 5192 nbp_lon*(nbp_lat),ndex2d) 5193 ! 5194 ENDIF ! mpi root 5195 !$OMP END MASTER 5196 !$OMP BARRIER 5197 call gather( his_g2pgas, auxklon_glo ) 5198 !$OMP MASTER 5199 IF (is_mpi_root .AND. is_omp_root) THEN 5200 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5201 CALL histwrite(nid_tra2,"g2p_gas",itra,zx_tmp_2d_glo, & 5202 nbp_lon*(nbp_lat),ndex2d) 5203 ! 5204 ENDIF ! mpi root 5205 !$OMP END MASTER 5206 !$OMP BARRIER 5207 call gather( his_g2paer, auxklon_glo ) 5208 !$OMP MASTER 5209 IF (is_mpi_root .AND. is_omp_root) THEN 5210 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5211 CALL histwrite(nid_tra2,"g2p_aer",itra,zx_tmp_2d_glo, & 5212 nbp_lon*(nbp_lat),ndex2d) 5213 ! SAVING VARIABLES IN HISTRAC 5214 ! 5215 ENDIF ! mpi root 5216 !$OMP END MASTER 5217 !$OMP BARRIER 5218 call gather( fluxbb, auxklon_glo ) 5219 !$OMP MASTER 5220 IF (is_mpi_root .AND. is_omp_root) THEN 5221 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5222 CALL histwrite(nid_tra1,"fluxbb",itra,zx_tmp_2d_glo, & 5223 nbp_lon*(nbp_lat),ndex2d) 5224 ! 5225 ENDIF ! mpi root 5226 !$OMP END MASTER 5227 !$OMP BARRIER 5228 call gather( fluxff, auxklon_glo ) 5229 !$OMP MASTER 5230 IF (is_mpi_root .AND. is_omp_root) THEN 5231 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5232 CALL histwrite(nid_tra1,"fluxff",itra,zx_tmp_2d_glo, & 5233 nbp_lon*(nbp_lat),ndex2d) 5234 ! 5235 ! ======================== BC ============================= 5236 ENDIF ! mpi root 5237 !$OMP END MASTER 5238 !$OMP BARRIER 5239 call gather( fluxbcbb, auxklon_glo ) 5240 !$OMP MASTER 5241 IF (is_mpi_root .AND. is_omp_root) THEN 5242 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5243 CALL histwrite(nid_tra1,"fluxbcbb",itra,zx_tmp_2d_glo, & 5244 nbp_lon*(nbp_lat),ndex2d) 5245 ! 5246 ENDIF ! mpi root 5247 !$OMP END MASTER 5248 !$OMP BARRIER 5249 call gather( fluxbcff, auxklon_glo ) 5250 !$OMP MASTER 5251 IF (is_mpi_root .AND. is_omp_root) THEN 5252 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5253 CALL histwrite(nid_tra1,"fluxbcff",itra,zx_tmp_2d_glo, & 5254 nbp_lon*(nbp_lat),ndex2d) 5255 ! 5256 ENDIF ! mpi root 5257 !$OMP END MASTER 5258 !$OMP BARRIER 5259 call gather( fluxbcnff, auxklon_glo ) 5260 !$OMP MASTER 5261 IF (is_mpi_root .AND. is_omp_root) THEN 5262 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5263 CALL histwrite(nid_tra1,"fluxbcnff",itra,zx_tmp_2d_glo, & 5264 nbp_lon*(nbp_lat),ndex2d) 5265 ! 5266 ENDIF ! mpi root 5267 !$OMP END MASTER 5268 !$OMP BARRIER 5269 call gather( fluxbcba, auxklon_glo ) 5270 !$OMP MASTER 5271 IF (is_mpi_root .AND. is_omp_root) THEN 5272 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5273 CALL histwrite(nid_tra1,"fluxbcba",itra,zx_tmp_2d_glo, & 5274 nbp_lon*(nbp_lat),ndex2d) 5275 ! 5276 ENDIF ! mpi root 5277 !$OMP END MASTER 5278 !$OMP BARRIER 5279 call gather( fluxbc, auxklon_glo ) 5280 !$OMP MASTER 5281 IF (is_mpi_root .AND. is_omp_root) THEN 5282 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5283 CALL histwrite(nid_tra1,"fluxbc",itra,zx_tmp_2d_glo, & 5284 nbp_lon*(nbp_lat),ndex2d) 5285 ! ======================== OM ============================= 5286 ENDIF ! mpi root 5287 !$OMP END MASTER 5288 !$OMP BARRIER 5289 call gather( fluxombb, auxklon_glo ) 5290 !$OMP MASTER 5291 IF (is_mpi_root .AND. is_omp_root) THEN 5292 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5293 CALL histwrite(nid_tra1,"fluxombb",itra,zx_tmp_2d_glo, & 5294 nbp_lon*(nbp_lat),ndex2d) 5295 ! 5296 ENDIF ! mpi root 5297 !$OMP END MASTER 5298 !$OMP BARRIER 5299 call gather( fluxomff, auxklon_glo ) 5300 !$OMP MASTER 5301 IF (is_mpi_root .AND. is_omp_root) THEN 5302 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5303 CALL histwrite(nid_tra1,"fluxomff",itra,zx_tmp_2d_glo, & 5304 nbp_lon*(nbp_lat),ndex2d) 5305 ! 5306 ENDIF ! mpi root 5307 !$OMP END MASTER 5308 !$OMP BARRIER 5309 call gather( fluxomnff, auxklon_glo ) 5310 !$OMP MASTER 5311 IF (is_mpi_root .AND. is_omp_root) THEN 5312 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5313 CALL histwrite(nid_tra1,"fluxomnff",itra,zx_tmp_2d_glo, & 5314 nbp_lon*(nbp_lat),ndex2d) 5315 ! 5316 ENDIF ! mpi root 5317 !$OMP END MASTER 5318 !$OMP BARRIER 5319 call gather( fluxomba, auxklon_glo ) 5320 !$OMP MASTER 5321 IF (is_mpi_root .AND. is_omp_root) THEN 5322 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5323 CALL histwrite(nid_tra1,"fluxomba",itra,zx_tmp_2d_glo, & 5324 nbp_lon*(nbp_lat),ndex2d) 5325 ! 5326 ENDIF ! mpi root 5327 !$OMP END MASTER 5328 !$OMP BARRIER 5329 call gather( fluxomnat, auxklon_glo ) 5330 !$OMP MASTER 5331 IF (is_mpi_root .AND. is_omp_root) THEN 5332 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5333 CALL histwrite(nid_tra1,"fluxomnat",itra,zx_tmp_2d_glo, & 5334 nbp_lon*(nbp_lat),ndex2d) 5335 ! 5336 ENDIF ! mpi root 5337 !$OMP END MASTER 5338 !$OMP BARRIER 5339 call gather( fluxom, auxklon_glo ) 5340 !$OMP MASTER 5341 IF (is_mpi_root .AND. is_omp_root) THEN 5342 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5343 CALL histwrite(nid_tra1,"fluxom",itra,zx_tmp_2d_glo, & 5344 nbp_lon*(nbp_lat),ndex2d) 5345 ! ======================== SO4 ============================= 5346 ENDIF ! mpi root 5347 !$OMP END MASTER 5348 !$OMP BARRIER 5349 call gather( fluxso4ff, auxklon_glo ) 5350 !$OMP MASTER 5351 IF (is_mpi_root .AND. is_omp_root) THEN 5352 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5353 CALL histwrite(nid_tra1,"fluxso4ff",itra,zx_tmp_2d_glo, & 5354 nbp_lon*(nbp_lat),ndex2d) 5355 ! 5356 ENDIF ! mpi root 5357 !$OMP END MASTER 5358 !$OMP BARRIER 5359 call gather( fluxso4nff, auxklon_glo ) 5360 !$OMP MASTER 5361 IF (is_mpi_root .AND. is_omp_root) THEN 5362 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5363 CALL histwrite(nid_tra1,"fluxso4nff",itra,zx_tmp_2d_glo, & 5364 nbp_lon*(nbp_lat),ndex2d) 5365 ! 5366 ENDIF ! mpi root 5367 !$OMP END MASTER 5368 !$OMP BARRIER 5369 call gather( fluxso4bb, auxklon_glo ) 5370 !$OMP MASTER 5371 IF (is_mpi_root .AND. is_omp_root) THEN 5372 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5373 CALL histwrite(nid_tra1,"fluxso4bb",itra,zx_tmp_2d_glo, & 5374 nbp_lon*(nbp_lat),ndex2d) 5375 ! 5376 ENDIF ! mpi root 5377 !$OMP END MASTER 5378 !$OMP BARRIER 5379 call gather( fluxso4ba, auxklon_glo ) 5380 !$OMP MASTER 5381 IF (is_mpi_root .AND. is_omp_root) THEN 5382 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5383 CALL histwrite(nid_tra1,"fluxso4ba",itra,zx_tmp_2d_glo, & 5384 nbp_lon*(nbp_lat),ndex2d) 5385 ! 5386 ENDIF ! mpi root 5387 !$OMP END MASTER 5388 !$OMP BARRIER 5389 call gather( fluxso4, auxklon_glo ) 5390 !$OMP MASTER 5391 IF (is_mpi_root .AND. is_omp_root) THEN 5392 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo ,zx_tmp_2d_glo) 5393 CALL histwrite(nid_tra1,"fluxso4",itra,zx_tmp_2d_glo, & 5394 nbp_lon*(nbp_lat),ndex2d) 5395 ! ======================== H2S ============================= 5396 ENDIF ! mpi root 5397 !$OMP END MASTER 5398 !$OMP BARRIER 5399 call gather( fluxh2sff, auxklon_glo ) 5400 !$OMP MASTER 5401 IF (is_mpi_root .AND. is_omp_root) THEN 5402 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5403 CALL histwrite(nid_tra1,"fluxh2sff",itra,zx_tmp_2d_glo, & 5404 nbp_lon*(nbp_lat),ndex2d) 5405 ! 5406 ENDIF ! mpi root 5407 !$OMP END MASTER 5408 !$OMP BARRIER 5409 call gather( fluxh2snff, auxklon_glo ) 5410 !$OMP MASTER 5411 IF (is_mpi_root .AND. is_omp_root) THEN 5412 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5413 CALL histwrite(nid_tra1,"fluxh2snff",itra,zx_tmp_2d_glo, & 5414 nbp_lon*(nbp_lat),ndex2d) 5415 ! 5416 ENDIF ! mpi root 5417 !$OMP END MASTER 5418 !$OMP BARRIER 5419 call gather( fluxh2sbio, auxklon_glo ) 5420 !$OMP MASTER 5421 IF (is_mpi_root .AND. is_omp_root) THEN 5422 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5423 CALL histwrite(nid_tra1,"fluxh2sbio",itra,zx_tmp_2d_glo, & 5424 nbp_lon*(nbp_lat),ndex2d) 5425 ! ======================== SO2 ============================= 5426 ENDIF ! mpi root 5427 !$OMP END MASTER 5428 !$OMP BARRIER 5429 call gather( fluxso2ff, auxklon_glo ) 5430 !$OMP MASTER 5431 IF (is_mpi_root .AND. is_omp_root) THEN 5432 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5433 CALL histwrite(nid_tra1,"fluxso2ff",itra,zx_tmp_2d_glo, & 5434 nbp_lon*(nbp_lat),ndex2d) 5435 ! 5436 ENDIF ! mpi root 5437 !$OMP END MASTER 5438 !$OMP BARRIER 5439 call gather( fluxso2nff, auxklon_glo ) 5440 !$OMP MASTER 5441 IF (is_mpi_root .AND. is_omp_root) THEN 5442 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5443 CALL histwrite(nid_tra1,"fluxso2nff",itra,zx_tmp_2d_glo, & 5444 nbp_lon*(nbp_lat),ndex2d) 5445 ! 5446 ENDIF ! mpi root 5447 !$OMP END MASTER 5448 !$OMP BARRIER 5449 call gather( fluxso2bb, auxklon_glo ) 5450 !$OMP MASTER 5451 IF (is_mpi_root .AND. is_omp_root) THEN 5452 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5453 CALL histwrite(nid_tra1,"fluxso2bb",itra,zx_tmp_2d_glo, & 5454 nbp_lon*(nbp_lat),ndex2d) 5455 ! 5456 ENDIF ! mpi root 5457 !$OMP END MASTER 5458 !$OMP BARRIER 5459 call gather( fluxso2vol, auxklon_glo ) 5460 !$OMP MASTER 5461 IF (is_mpi_root .AND. is_omp_root) THEN 5462 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5463 CALL histwrite(nid_tra1,"fluxso2vol",itra,zx_tmp_2d_glo, & 5464 nbp_lon*(nbp_lat),ndex2d) 5465 ! 5466 ENDIF ! mpi root 5467 !$OMP END MASTER 5468 !$OMP BARRIER 5469 call gather( fluxso2ba, auxklon_glo ) 5470 !$OMP MASTER 5471 IF (is_mpi_root .AND. is_omp_root) THEN 5472 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5473 CALL histwrite(nid_tra1,"fluxso2ba",itra,zx_tmp_2d_glo, & 5474 nbp_lon*(nbp_lat),ndex2d) 5475 ! 5476 ENDIF ! mpi root 5477 !$OMP END MASTER 5478 !$OMP BARRIER 5479 call gather( fluxso2, auxklon_glo ) 5480 !$OMP MASTER 5481 IF (is_mpi_root .AND. is_omp_root) THEN 5482 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5483 CALL histwrite(nid_tra1,"fluxso2",itra,zx_tmp_2d_glo, & 5484 nbp_lon*(nbp_lat),ndex2d) 5485 ! 5486 ENDIF ! mpi root 5487 !$OMP END MASTER 5488 !$OMP BARRIER 5489 call gather( fluxdms, auxklon_glo ) 5490 !$OMP MASTER 5491 IF (is_mpi_root .AND. is_omp_root) THEN 5492 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5493 CALL histwrite(nid_tra1,"fluxdms",itra,zx_tmp_2d_glo, & 5494 nbp_lon*(nbp_lat),ndex2d) 5495 ! ======================== DD ============================= 5496 ENDIF ! mpi root 5497 !$OMP END MASTER 5498 !$OMP BARRIER 5499 call gather( fluxdustec, auxklon_glo ) 5500 !$OMP MASTER 5501 IF (is_mpi_root .AND. is_omp_root) THEN 5502 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5503 CALL histwrite(nid_tra1,"fluxdustec",itra,zx_tmp_2d_glo, & 5504 nbp_lon*(nbp_lat),ndex2d) 5505 ! 5506 ENDIF ! mpi root 5507 !$OMP END MASTER 5508 !$OMP BARRIER 5509 call gather( fluxddfine, auxklon_glo ) 5510 !$OMP MASTER 5511 IF (is_mpi_root .AND. is_omp_root) THEN 5512 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5513 CALL histwrite(nid_tra1,"fluxddfine",itra,zx_tmp_2d_glo, & 5514 nbp_lon*(nbp_lat),ndex2d) 5515 ! 5516 ENDIF ! mpi root 5517 !$OMP END MASTER 5518 !$OMP BARRIER 5519 call gather( fluxddcoa, auxklon_glo ) 5520 !$OMP MASTER 5521 IF (is_mpi_root .AND. is_omp_root) THEN 5522 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5523 CALL histwrite(nid_tra1,"fluxddcoa",itra,zx_tmp_2d_glo, & 5524 nbp_lon*(nbp_lat),ndex2d) 5525 ! 5526 ENDIF ! mpi root 5527 !$OMP END MASTER 5528 !$OMP BARRIER 5529 call gather( fluxddsco, auxklon_glo ) 5530 !$OMP MASTER 5531 IF (is_mpi_root .AND. is_omp_root) THEN 5532 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5533 CALL histwrite(nid_tra1,"fluxddsco",itra,zx_tmp_2d_glo, & 5534 nbp_lon*(nbp_lat),ndex2d) 5535 ! 5536 ENDIF ! mpi root 5537 !$OMP END MASTER 5538 !$OMP BARRIER 5539 call gather( fluxdd, auxklon_glo ) 5540 !$OMP MASTER 5541 IF (is_mpi_root .AND. is_omp_root) THEN 5542 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5543 CALL histwrite(nid_tra1,"fluxdd",itra,zx_tmp_2d_glo, & 5544 nbp_lon*(nbp_lat),ndex2d) 5545 ! ======================== SS ============================= 5546 ENDIF ! mpi root 5547 !$OMP END MASTER 5548 !$OMP BARRIER 5549 call gather( fluxssfine, auxklon_glo ) 5550 !$OMP MASTER 5551 IF (is_mpi_root .AND. is_omp_root) THEN 5552 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5553 CALL histwrite(nid_tra1,"fluxssfine",itra,zx_tmp_2d_glo, & 5554 nbp_lon*(nbp_lat),ndex2d) 5555 ! 5556 ENDIF ! mpi root 5557 !$OMP END MASTER 5558 !$OMP BARRIER 5559 call gather( fluxsscoa, auxklon_glo ) 5560 !$OMP MASTER 5561 IF (is_mpi_root .AND. is_omp_root) THEN 5562 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5563 CALL histwrite(nid_tra1,"fluxsscoa",itra,zx_tmp_2d_glo, & 5564 nbp_lon*(nbp_lat),ndex2d) 5565 ! 5566 ENDIF ! mpi root 5567 !$OMP END MASTER 5568 !$OMP BARRIER 5569 call gather( fluxss, auxklon_glo ) 5570 !$OMP MASTER 5571 IF (is_mpi_root .AND. is_omp_root) THEN 5572 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5573 CALL histwrite(nid_tra1,"fluxss",itra,zx_tmp_2d_glo, & 5574 nbp_lon*(nbp_lat),ndex2d) 5575 ! 5576 ENDIF ! mpi root 5577 !$OMP END MASTER 5578 !$OMP BARRIER 5579 5580 ! call gather( , auxklon_glo ) 5581 !!!! IF (is_mpi_root .AND. is_omp_root) THEN 5582 !nhl CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,fluxso4chem,zx_tmp_3d_glo) 5583 !nhl CALL histwrite(nid_tra1,"fluxso4chem",itra,zx_tmp_3d_glo, & 5584 !nhl . nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5585 ! 5586 call gather( flux_sparam_ind, auxklon_glo ) 5587 !$OMP MASTER 5588 IF (is_mpi_root .AND. is_omp_root) THEN 5589 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5590 CALL histwrite(nid_tra1,"flux_sparam_ind",itra,zx_tmp_2d_glo, & 5591 nbp_lon*(nbp_lat),ndex2d) 5592 ! 5593 ENDIF ! mpi root 5594 !$OMP END MASTER 5595 !$OMP BARRIER 5596 call gather( flux_sparam_bb, auxklon_glo ) 5597 !$OMP MASTER 5598 IF (is_mpi_root .AND. is_omp_root) THEN 5599 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5600 CALL histwrite(nid_tra1,"flux_sparam_bb",itra,zx_tmp_2d_glo, & 5601 nbp_lon*(nbp_lat),ndex2d) 5602 ! 5603 ENDIF ! mpi root 5604 !$OMP END MASTER 5605 !$OMP BARRIER 5606 call gather( flux_sparam_ff, auxklon_glo ) 5607 !$OMP MASTER 5608 IF (is_mpi_root .AND. is_omp_root) THEN 5609 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5610 CALL histwrite(nid_tra1,"flux_sparam_ff",itra,zx_tmp_2d_glo, & 5611 nbp_lon*(nbp_lat),ndex2d) 5612 ! 5613 ENDIF ! mpi root 5614 !$OMP END MASTER 5615 !$OMP BARRIER 5616 call gather( flux_sparam_ddfine, auxklon_glo ) 5617 !$OMP MASTER 5618 IF (is_mpi_root .AND. is_omp_root) THEN 5619 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5620 CALL histwrite(nid_tra1,"flux_sparam_ddfine",itra,zx_tmp_2d_glo, & 5621 nbp_lon*(nbp_lat),ndex2d) 5622 ! 5623 ENDIF ! mpi root 5624 !$OMP END MASTER 5625 !$OMP BARRIER 5626 call gather( flux_sparam_ddcoa, auxklon_glo ) 5627 !$OMP MASTER 5628 IF (is_mpi_root .AND. is_omp_root) THEN 5629 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5630 CALL histwrite(nid_tra1,"flux_sparam_ddcoa",itra,zx_tmp_2d_glo, & 5631 nbp_lon*(nbp_lat),ndex2d) 5632 ! 5633 ENDIF ! mpi root 5634 !$OMP END MASTER 5635 !$OMP BARRIER 5636 call gather( flux_sparam_ddsco, auxklon_glo ) 5637 !$OMP MASTER 5638 IF (is_mpi_root .AND. is_omp_root) THEN 5639 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5640 CALL histwrite(nid_tra1,"flux_sparam_ddsco",itra,zx_tmp_2d_glo, & 5641 nbp_lon*(nbp_lat),ndex2d) 5642 ! 5643 ENDIF ! mpi root 5644 !$OMP END MASTER 5645 !$OMP BARRIER 5646 call gather( flux_sparam_ssfine, auxklon_glo ) 5647 !$OMP MASTER 5648 IF (is_mpi_root .AND. is_omp_root) THEN 5649 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5650 CALL histwrite(nid_tra1,"flux_sparam_ssfine",itra,zx_tmp_2d_glo, & 5651 nbp_lon*(nbp_lat),ndex2d) 5652 ! 5653 ENDIF ! mpi root 5654 !$OMP END MASTER 5655 !$OMP BARRIER 5656 call gather( flux_sparam_sscoa, auxklon_glo ) 5657 !$OMP MASTER 5658 IF (is_mpi_root .AND. is_omp_root) THEN 5659 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5660 CALL histwrite(nid_tra1,"flux_sparam_sscoa",itra,zx_tmp_2d_glo, & 5661 nbp_lon*(nbp_lat),ndex2d) 5662 ! 5663 ENDIF ! mpi root 5664 !$OMP END MASTER 5665 !$OMP BARRIER 5666 call gather( u10m_ec, auxklon_glo ) 5667 !$OMP MASTER 5668 IF (is_mpi_root .AND. is_omp_root) THEN 5669 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5670 CALL histwrite(nid_tra1,"u10m",itra,zx_tmp_2d_glo, & 5671 nbp_lon*(nbp_lat),ndex2d) 5672 ! 5673 ENDIF ! mpi root 5674 !$OMP END MASTER 5675 !$OMP BARRIER 5676 call gather( v10m_ec, auxklon_glo ) 5677 !$OMP MASTER 5678 IF (is_mpi_root .AND. is_omp_root) THEN 5679 CALL gr_fi_ecrit(1,klon_glo,nbp_lon,nbp_lat,auxklon_glo,zx_tmp_2d_glo) 5680 CALL histwrite(nid_tra1,"v10m",itra,zx_tmp_2d_glo, & 5681 nbp_lon*(nbp_lat),ndex2d) 5682 ! 5683 ! call gather( , auxklon_glo ) 5684 !!! !$OMP MASTER 5685 ! IF (is_mpi_root .AND. is_omp_root) THEN 5686 !nhl CALL gr_fi_ecrit(nbp_lev,klon_glo,nbp_lon,nbp_lat,flux_sparam_sulf,zx_tmp_3d_glo) 5687 !nhl CALL histwrite(nid_tra1,"flux_sparam_sulf",itra,zx_tmp_3d_glo, & 5688 !nhl . nbp_lon*(nbp_lat)*nbp_lev,ndex3d) 5689 ! 5690 ENDIF ! mpi root 5691 !$OMP END MASTER 5692 !$OMP BARRIER 5693 5694 ENDIF ! ok_histrac 3900 !AS: commenting out and deleting lines 3901 !! IF (ok_histrac) THEN 3902 !! 3903 !! SAVING VARIABLES IN TRACEUR 3904 !!----- many lines deleted---- 3905 !! ENDIF ! ok_histrac 5695 3906 5696 3907 … … 5751 3962 dhkelsc04(i)=0. 5752 3963 dhkelsc05(i)=0. 5753 ! u10m_ss(i)=u10m_ec(i)5754 ! v10m_ss(i)=v10m_ec(i)5755 3964 !!!!!!!!!!!!!!!!!!!!!!!!!!!!! 5756 3965 … … 6192 4401 END SUBROUTINE readregions_spl 6193 4402 4403 !! AS: SUBROUTINE readscaleparams_spl pas appellee 6194 4404 SUBROUTINE readscaleparams_spl(scale_param, nbreg, & 6195 4405 filescaleparams) -
LMDZ6/trunk/libf/phylmd/Dust/read_vent.F
r2630 r3806 33 33 c 34 34 ncidu1=NCOPN('u10m.nc',NCNOWRIT,rcode) 35 varidu1=NCVID(ncidu1,'U WND',rcode)35 varidu1=NCVID(ncidu1,'U10M',rcode) 36 36 ncidv1=NCOPN('v10m.nc',NCNOWRIT,rcode) 37 varidv1=NCVID(ncidv1,'V WND',rcode)37 varidv1=NCVID(ncidv1,'V10M',rcode) 38 38 c 39 39 endif
Note: See TracChangeset
for help on using the changeset viewer.