Changeset 862 for LMDZ4/branches
- Timestamp:
- Nov 13, 2007, 3:11:17 PM (17 years ago)
- Location:
- LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd/ini_histmth.h
r850 r862 832 832 ENDIF 833 833 C 834 #if defined(INCA_AER) && defined(CPP_COUPLE) 835 CALL histdef(nid_mth, "tau", "cloud opt thickness", "-", 836 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 837 . "ave(X)", zstophy,zout) 838 CALL histdef(nid_mth, "CCM1", "CCM1", "", 839 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 840 . "ave(X)", zstophy,zout) 841 CALL histdef(nid_mth, "CCM2", "CCM2", "", 842 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 843 . "ave(X)", zstophy,zout) 844 CALL histdef(nid_mth, "taupi", "cloud opt thickn. (pi)", "-", 845 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 846 . "ave(X)", zstophy,zout) 847 CALL histdef(nid_mth, "cldemi", "emissivite IR", "-", 848 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 849 . "ave(X)", zstophy,zout) 850 CALL histdef(nid_mth, "SWTOAAS_ZERO", "?", "?", 851 . iim,jj_nb,nhori, 1,1,1, -99, 32, 852 . "ave(X)", zstophy,zout) 853 CALL histdef(nid_mth, "SWTOAAS_AER", "?", "?", 854 . iim,jj_nb,nhori, 1,1,1, -99, 32, 855 . "ave(X)", zstophy,zout) 856 CALL histdef(nid_mth, "SWTOAAS_NAT", "?", "?", 857 . iim,jj_nb,nhori, 1,1,1, -99, 32, 858 . "ave(X)", zstophy,zout) 859 CALL histdef(nid_mth, "SWTOAAS_AD", "?", "?", 860 . iim,jj_nb,nhori, 1,1,1, -99, 32, 861 . "ave(X)", zstophy,zout) 862 CALL histdef(nid_mth, "SWTOAAS_AI", "?", "?", 863 . iim,jj_nb,nhori, 1,1,1, -99, 32, 864 . "ave(X)", zstophy,zout) 865 CALL histdef(nid_mth, "SWTOACS_ZERO", "?", "?", 866 . iim,jj_nb,nhori, 1,1,1, -99, 32, 867 . "ave(X)", zstophy,zout) 868 CALL histdef(nid_mth, "SWTOACS_AER", "?", "?", 869 . iim,jj_nb,nhori, 1,1,1, -99, 32, 870 . "ave(X)", zstophy,zout) 871 CALL histdef(nid_mth, "SWTOACS_AD", "?", "?", 872 . iim,jj_nb,nhori, 1,1,1, -99, 32, 873 . "ave(X)", zstophy,zout) 874 CALL histdef(nid_mth, "SWTOACS_NAT", "?", "?", 875 . iim,jj_nb,nhori, 1,1,1, -99, 32, 876 . "ave(X)", zstophy,zout) 877 #endif 878 #ifndef INCA 834 879 if (nqmax.GE.3) THEN 835 880 DO iq=3,nqmax … … 840 885 ENDDO 841 886 ENDIF 887 #endif 842 888 c 843 889 ENDIF !lev_histmth.GE.4 … … 1739 1785 ENDIF 1740 1786 C 1787 #if defined(INCA_AER) && defined(CPP_COUPLE) 1788 CALL histdef(nid_mth, "tau", "cloud opt thickness", "-", 1789 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 1790 . "ave(X)", zstophy,zout) 1791 CALL histdef(nid_mth, "CCM1", "CCM1", "", 1792 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 1793 . "ave(X)", zstophy,zout) 1794 CALL histdef(nid_mth, "CCM2", "CCM2", "", 1795 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 1796 . "ave(X)", zstophy,zout) 1797 CALL histdef(nid_mth, "taupi", "cloud opt thickn. (pi)", "-", 1798 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 1799 . "ave(X)", zstophy,zout) 1800 CALL histdef(nid_mth, "cldemi", "emissivite IR", "-", 1801 . iim,jj_nb,nhori, klev,1,klev,nvert, 32, 1802 . "ave(X)", zstophy,zout) 1803 CALL histdef(nid_mth, "SWTOAAS_ZERO", "?", "?", 1804 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1805 . "ave(X)", zstophy,zout) 1806 CALL histdef(nid_mth, "SWTOAAS_AER", "?", "?", 1807 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1808 . "ave(X)", zstophy,zout) 1809 CALL histdef(nid_mth, "SWTOAAS_NAT", "?", "?", 1810 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1811 . "ave(X)", zstophy,zout) 1812 CALL histdef(nid_mth, "SWTOAAS_AD", "?", "?", 1813 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1814 . "ave(X)", zstophy,zout) 1815 CALL histdef(nid_mth, "SWTOAAS_AI", "?", "?", 1816 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1817 . "ave(X)", zstophy,zout) 1818 CALL histdef(nid_mth, "SWTOACS_ZERO", "?", "?", 1819 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1820 . "ave(X)", zstophy,zout) 1821 CALL histdef(nid_mth, "SWTOACS_AER", "?", "?", 1822 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1823 . "ave(X)", zstophy,zout) 1824 CALL histdef(nid_mth, "SWTOACS_AD", "?", "?", 1825 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1826 . "ave(X)", zstophy,zout) 1827 CALL histdef(nid_mth, "SWTOACS_NAT", "?", "?", 1828 . iim,jj_nb,nhori, 1,1,1, -99, 32, 1829 . "ave(X)", zstophy,zout) 1830 #endif 1831 #ifndef INCA 1741 1832 if (nqmax.GE.3) THEN 1742 1833 DO iq=3,nqmax … … 1747 1838 ENDDO 1748 1839 ENDIF 1749 1840 #endif 1750 1841 ENDIF !lev_histmth.GE.4 1751 1842 c -
LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd/physiq.F
r845 r862 1305 1305 c$OMP THREADPRIVATE(cg_ae) 1306 1306 1307 #ifdef INCA_AER 1308 #ifdef CPP_COUPLE 1309 ! Aerosol optical properties by INCA model 1310 REAL, SAVE, ALLOCATABLE :: tau_inca(:,:,:,:) 1311 REAL, SAVE, ALLOCATABLE :: piz_inca(:,:,:,:) 1312 REAL, SAVE, ALLOCATABLE :: cg_inca(:,:,:,:) 1313 REAL, SAVE, ALLOCATABLE :: ccm(:,:,:) 1314 CHARACTER*4 :: rfname(9) 1315 1316 REAL,SAVE,ALLOCATABLE :: topswad_inca(:), solswad_inca(:) ! Aerosol direct effect. 1317 REAL,SAVE,ALLOCATABLE :: topswad0_inca(:), solswad0_inca(:) ! Aerosol direct effect. 1318 REAL,SAVE,ALLOCATABLE :: topswai_inca(:), solswai_inca(:) ! Aerosol indirect effect. 1319 REAL,SAVE,ALLOCATABLE :: topsw_inca(:,:), solsw_inca(:,:) 1320 REAL,SAVE,ALLOCATABLE :: topsw0_inca(:,:), solsw0_inca(:,:) 1321 #endif 1322 #endif 1307 1323 REAL,SAVE,ALLOCATABLE :: topswad(:), solswad(:) ! Aerosol direct effect. 1308 1324 c$OMP THREADPRIVATE(topswad,solswad) … … 1441 1457 allocate( topswad(klon), solswad(klon)) 1442 1458 allocate( topswai(klon), solswai(klon) ) 1459 #ifdef INCA_AER 1460 #ifdef CPP_COUPLE 1461 allocate( topswad_inca(klon), solswad_inca(klon)) 1462 allocate( topswad0_inca(klon), solswad0_inca(klon)) 1463 allocate( topswai_inca(klon), solswai_inca(klon)) 1464 allocate( topsw_inca(klon,9), solsw_inca(klon,9)) 1465 allocate( topsw0_inca(klon,9), solsw0_inca(klon,9)) 1466 allocate( tau_inca(klon,klev,9,2)) 1467 allocate( piz_inca(klon,klev,9,2)) 1468 allocate( cg_inca(klon,klev,9,2)) 1469 allocate( ccm(klon,klev,2) ) 1470 #endif 1471 #endif 1443 1472 allocate( clwcon0(klon,klev),rnebcon0(klon,klev)) 1444 1473 allocate( tau_ae(klon,klev,2), piz_ae(klon,klev,2)) … … 1502 1531 solswai(:)=0. 1503 1532 solswad(:)=0. 1533 #ifdef INCA_AER 1534 #ifdef CPP_COUPLE 1535 tau_inca(:,:,:,:) = 0. 1536 piz_inca(:,:,:,:) = 0. 1537 cg_inca(:,:,:,:) = 0. 1538 ccm(:,:,:) = 0. 1539 topswai_inca(:) = 0. 1540 topswad_inca(:) = 0. 1541 topswad0_inca(:) = 0. 1542 topsw_inca(:,:) = 0. 1543 topsw0_inca(:,:) = 0. 1544 solswai_inca(:) = 0. 1545 solswad_inca(:) = 0. 1546 solswad0_inca(:) = 0. 1547 solsw_inca(:,:) = 0. 1548 solsw0_inca(:,:) = 0. 1549 #endif 1550 #endif 1504 1551 !rv 1505 ! anne1552 !ACo 1506 1553 d_u_con(:,:) = 0.0 1507 1554 d_v_con(:,:) = 0.0 … … 1513 1560 c nhistoW(:,:,:,:) = 0.0 1514 1561 c histoW(:,:,:,:) = 0.0 1515 ! fin anne1516 1562 1517 1563 cIM … … 2517 2563 cjq - Johannes Quaas, 27/11/2003 (quaas@lmd.jussieu.fr) 2518 2564 IF (ok_ade.OR.ok_aie) THEN 2565 #if defined(CPP_COUPLE) && !defined(INCA_AER) 2519 2566 ! Get sulfate aerosol distribution 2520 2567 CALL readsulfate(rjourvrai, debut, sulfate) … … 2524 2571 CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl, 2525 2572 . tau_ae, piz_ae, cg_ae, aerindex) 2573 #endif 2574 #if !defined(CPP_COUPLE) 2575 ! Get sulfate aerosol distribution 2576 CALL readsulfate(rjourvrai, debut, sulfate) 2577 CALL readsulfate_preind(rjourvrai, debut, sulfate_pi) 2578 2579 ! Calculate aerosol optical properties (Olivier Boucher) 2580 CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl, 2581 . tau_ae, piz_ae, cg_ae, aerindex) 2582 #endif 2526 2583 cym 2527 2584 ELSE … … 2700 2757 . flwp, fiwp, flwc, fiwc, 2701 2758 e ok_aie, 2759 #if defined(CPP_COUPLE) && defined(INCA_AER) 2760 e ccm(:,:,1), ccm(:,:,2), 2761 #else 2702 2762 e sulfate, sulfate_pi, 2763 #endif 2703 2764 e bl95_b0, bl95_b1, 2704 2765 s cldtaupi, re, fl) … … 2736 2797 endif 2737 2798 2799 2800 #if defined(CPP_COUPLE) && defined(INCA_AER) 2801 CALL radlwsw_inca ! nouveau rayonnement (compatible Arpege-IFS) 2802 e (kdlon,kflev,dist, rmu0, fract, 2803 e paprs, pplay,zxtsol,albsol, albsollw, t_seri,q_seri, 2804 e wo, 2805 e cldfra, cldemi, cldtau, 2806 s heat,heat0,cool,cool0,radsol,albpla, 2807 s topsw,toplw,solsw,sollw, 2808 s sollwdown, 2809 s topsw0,toplw0,solsw0,sollw0, 2810 s lwdn0, lwdn, lwup0, lwup, 2811 s swdn0, swdn, swup0, swup, 2812 e ok_ade, ok_aie, ! new for aerosol radiative effects 2813 e tau_inca, piz_inca, cg_inca, ! ="= 2814 s topswad_inca, solswad_inca, ! ="= 2815 s topswad0_inca, solswad0_inca, ! ="= 2816 s topsw_inca, topsw0_inca, 2817 s solsw_inca, solsw0_inca, 2818 e cldtaupi, ! ="= 2819 s topswai_inca, solswai_inca) ! ="= 2820 #else 2738 2821 CALL radlwsw ! nouveau rayonnement (compatible Arpege-IFS) 2739 2822 e (dist, rmu0, fract, … … 2752 2835 e cldtaupi, ! ="= 2753 2836 s topswai, solswai) ! ="= 2837 #endif 2754 2838 itaprad = 0 2755 2839 ENDIF … … 2985 3069 #ifdef INCA 2986 3070 I flxmass_w, 3071 #if defined(INCA_AER) && defined(CPP_COUPLE) 3072 I tau_inca, 3073 I piz_inca, 3074 I cg_inca, 3075 I ccm, 3076 I rfname, 3077 #endif 2987 3078 #endif 2988 3079 O tr_seri) -
LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd/phytrac.F
r793 r862 59 59 #ifdef INCA 60 60 I flxmass_w, 61 #if defined(INCA_AER) && defined(CPP_COUPLE) 62 I tau_inca, 63 I piz_inca, 64 I cg_inca, 65 I ccm, 66 I rfname, 67 #endif 61 68 #endif 62 69 O tr_seri) … … 140 147 REAL flxmass_w(klon,klev) 141 148 CHARACTER(len=8) :: solsym(nqmax) 149 #if defined(INCA_AER) && defined(CPP_COUPLE) 150 integer la 151 REAL :: tau_inca(klon,klev,9,2) 152 REAL :: piz_inca(klon,klev,9,2) 153 REAL :: cg_inca(klon,klev,9,2) 154 character*4 :: rfname(9) 155 REAL :: ccm(klon,klev,2) 156 #endif 142 157 #endif 143 158 c integer iflag_con … … 348 363 REAL :: dummy(klon,klev) 349 364 #endif 350 #ifdef INCA_AER351 integer la352 #endif353 365 c 354 366 c====================================================================== … … 509 521 510 522 #ifdef INCA_AER 511 512 ! Changement Anne 01/04/2005513 523 CALL aerosolmain (tr_seri, 514 524 $ pdtphys, … … 528 538 $ t_seri, ! for chimiaq 529 539 $ rh, 540 #ifdef CPP_COUPLE 541 $ tau_inca, 542 $ piz_inca, 543 $ cg_inca, 544 $ rfname, 545 $ ccm, 546 #endif 530 547 $ lafin) 531 ! fin changement anne532 533 548 #endif 534 549 -
LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd/write_histmth.h
r776 r862 819 819 ENDIF 820 820 C 821 822 #if defined(INCA_AER) && defined(CPP_COUPLE) 823 CALL histwrite_phy(nid_mth,"tau",itau_w,cldtau) 824 CALL histwrite_phy(nid_mth,"CCM1",itau_w,ccm(:,:,1)) 825 CALL histwrite_phy(nid_mth,"CCM2",itau_w,ccm(:,:,2)) 826 CALL histwrite_phy(nid_mth,"taupi",itau_w,cldtaupi) 827 CALL histwrite_phy(nid_mth,"cldemi",itau_w,cldemi) 828 CALL histwrite_phy(nid_mth,"SWTOAAS_ZERO",itau_w,topsw_inca(:,1)) 829 CALL histwrite_phy(nid_mth,"SWTOAAS_AER",itau_w,topsw_inca(:,2)) 830 CALL histwrite_phy(nid_mth,"SWTOAAS_NAT",itau_w,topsw_inca(:,3)) 831 CALL histwrite_phy(nid_mth,"SWTOAAS_AD",itau_w,topswad_inca(:)) 832 CALL histwrite_phy(nid_mth,"SWTOAAS_AI",itau_w,topswai_inca(:)) 833 CALL histwrite_phy(nid_mth,"SWTOACS_ZERO",itau_w,topsw0_inca(:,1)) 834 CALL histwrite_phy(nid_mth,"SWTOACS_AER",itau_w,topsw0_inca(:,2)) 835 CALL histwrite_phy(nid_mth,"SWTOACS_AD",itau_w,topswad0_inca(:)) 836 CALL histwrite_phy(nid_mth,"SWTOACS_NAT",itau_w,topsw0_inca(:,3)) 837 #endif 838 #ifndef INCA 821 839 IF (nqmax.GE.3) THEN 822 840 DO iq=3,nqmax … … 825 843 ENDDO 826 844 ENDIF 827 c 845 #endif 828 846 ENDIF !lev_histmth.GE.4 829 847 c … … 1797 1815 ENDIF 1798 1816 C 1817 #if defined(INCA_AER) && defined(CPP_COUPLE) 1818 CALL histwrite_phy(nid_mth,"tau",itau_w,cldtau) 1819 CALL histwrite_phy(nid_mth,"CCM1",itau_w,ccm(:,:,1)) 1820 CALL histwrite_phy(nid_mth,"CCM2",itau_w,ccm(:,:,2)) 1821 CALL histwrite_phy(nid_mth,"taupi",itau_w,cldtaupi) 1822 CALL histwrite_phy(nid_mth,"cldemi",itau_w,cldemi) 1823 CALL histwrite_phy(nid_mth,"SWTOAAS_ZERO",itau_w,topsw_inca(:,1)) 1824 CALL histwrite_phy(nid_mth,"SWTOAAS_AER",itau_w,topsw_inca(:,2)) 1825 CALL histwrite_phy(nid_mth,"SWTOAAS_NAT",itau_w,topsw_inca(:,3)) 1826 CALL histwrite_phy(nid_mth,"SWTOAAS_AD",itau_w,topswad_inca(:)) 1827 CALL histwrite_phy(nid_mth,"SWTOAAS_AI",itau_w,topswai_inca(:)) 1828 CALL histwrite_phy(nid_mth,"SWTOACS_ZERO",itau_w,topsw0_inca(:,1)) 1829 CALL histwrite_phy(nid_mth,"SWTOACS_AER",itau_w,topsw0_inca(:,2)) 1830 CALL histwrite_phy(nid_mth,"SWTOACS_AD",itau_w,topswad0_inca(:)) 1831 CALL histwrite_phy(nid_mth,"SWTOACS_NAT",itau_w,topsw0_inca(:,3)) 1832 #endif 1833 #ifndef INCA 1799 1834 IF (nqmax.GE.3) THEN 1800 1835 DO iq=3,nqmax … … 1804 1839 ENDIF 1805 1840 c 1841 #endif 1806 1842 ENDIF !lev_histmth.GE.4 1807 1843 c
Note: See TracChangeset
for help on using the changeset viewer.