Changeset 954 for LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd/physiq.F
- Timestamp:
- Apr 30, 2008, 3:14:57 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/branches/LMDZ4_V3_patches/libf/phylmd/physiq.F
r943 r954 1 1 ! 2 2 ! $Header$ 3 ! 3 4 ! 4 5 c … … 1305 1306 c$OMP THREADPRIVATE(cg_ae) 1306 1307 1307 #ifdef INCA_AER 1308 #ifdef CPP_COUPLE 1308 #ifdef INCA 1309 1309 ! Aerosol optical properties by INCA model 1310 1310 REAL, SAVE, ALLOCATABLE :: tau_inca(:,:,:,:) … … 1319 1319 REAL,SAVE,ALLOCATABLE :: topsw_inca(:,:), solsw_inca(:,:) 1320 1320 REAL,SAVE,ALLOCATABLE :: topsw0_inca(:,:), solsw0_inca(:,:) 1321 #endif1322 1321 #endif 1323 1322 REAL,SAVE,ALLOCATABLE :: topswad(:), solswad(:) ! Aerosol direct effect. … … 1339 1338 SAVE ok_ade, ok_aie, bl95_b0, bl95_b1 1340 1339 c$OMP THREADPRIVATE(ok_ade, ok_aie, bl95_b0, bl95_b1) 1340 LOGICAL, SAVE :: aerosol_couple ! true : calcul des aerosols dans INCA 1341 ! false : lecture des aerosol dans un fichier 1342 c$OMP THREADPRIVATE(aerosol_couple) 1341 1343 1342 1344 c … … 1457 1459 allocate( topswad(klon), solswad(klon)) 1458 1460 allocate( topswai(klon), solswai(klon) ) 1459 #ifdef INCA_AER 1460 #ifdef CPP_COUPLE 1461 #ifdef INCA 1461 1462 allocate( topswad_inca(klon), solswad_inca(klon)) 1462 1463 allocate( topswad0_inca(klon), solswad0_inca(klon)) … … 1468 1469 allocate( cg_inca(klon,klev,9,2)) 1469 1470 allocate( ccm(klon,klev,2) ) 1470 #endif1471 1471 #endif 1472 1472 allocate( clwcon0(klon,klev),rnebcon0(klon,klev)) … … 1530 1530 solswai(:)=0. 1531 1531 solswad(:)=0. 1532 #ifdef INCA_AER 1533 #ifdef CPP_COUPLE 1532 #ifdef INCA 1534 1533 tau_inca(:,:,:,:) = 0. 1535 1534 piz_inca(:,:,:,:) = 0. … … 1547 1546 solsw0_inca(:,:) = 0. 1548 1547 #endif 1549 #endif1550 1548 !rv 1551 1549 !ACo … … 1570 1568 cIM . iflag_cldcon,ratqsbas,ratqshaut, if_ebil, 1571 1569 . iflag_cldcon,ratqsbas,ratqshaut, 1572 . ok_ade, ok_aie, 1570 . ok_ade, ok_aie,aerosol_couple, 1573 1571 . bl95_b0, bl95_b1, 1574 1572 . iflag_thermals,nsplit_thermals) … … 2578 2576 cjq - Johannes Quaas, 27/11/2003 (quaas@lmd.jussieu.fr) 2579 2577 IF (ok_ade.OR.ok_aie) THEN 2580 #if defined(CPP_COUPLE) && !defined(INCA_AER) 2581 ! Get sulfate aerosol distribution 2582 CALL readsulfate(rjourvrai, debut, sulfate) 2583 CALL readsulfate_preind(rjourvrai, debut, sulfate_pi) 2584 2585 ! Calculate aerosol optical properties (Olivier Boucher) 2586 CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl, 2587 . tau_ae, piz_ae, cg_ae, aerindex) 2588 #endif 2589 #if !defined(CPP_COUPLE) 2590 ! Get sulfate aerosol distribution 2591 CALL readsulfate(rjourvrai, debut, sulfate) 2592 CALL readsulfate_preind(rjourvrai, debut, sulfate_pi) 2593 2594 ! Calculate aerosol optical properties (Olivier Boucher) 2595 CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl, 2596 . tau_ae, piz_ae, cg_ae, aerindex) 2597 #endif 2578 IF ( .NOT. aerosol_couple ) THEN 2579 ! Get sulfate aerosol distribution 2580 CALL readsulfate(rjourvrai, debut, sulfate) 2581 CALL readsulfate_preind(rjourvrai, debut, sulfate_pi) 2582 2583 ! Calculate aerosol optical properties (Olivier Boucher) 2584 CALL aeropt(pplay, paprs, t_seri, sulfate, rhcl, 2585 . tau_ae, piz_ae, cg_ae, aerindex) 2598 2586 cym 2587 ENDIF 2588 2599 2589 ELSE 2600 2590 tau_ae(:,:,:)=0.0 … … 2773 2763 c parametres pour diagnostiques: 2774 2764 c 2765 2766 IF (aerosol_couple ) THEN 2767 #ifdef INCA_AER 2768 sulfate(:,:) = ccm(:,:,1) 2769 sulfate_pi(:,:) = ccm(:,:,2) 2770 #endif 2771 ENDIF 2772 2775 2773 if (ok_newmicro) then 2776 2774 CALL newmicro (paprs, pplay,ok_newmicro, … … 2779 2777 . flwp, fiwp, flwc, fiwc, 2780 2778 e ok_aie, 2781 #if defined(CPP_COUPLE) && defined(INCA_AER)2782 e ccm(:,:,1), ccm(:,:,2),2783 #else2784 2779 e sulfate, sulfate_pi, 2785 #endif2786 2780 e bl95_b0, bl95_b1, 2787 2781 s cldtaupi, re, fl) … … 2819 2813 endif 2820 2814 2821 2822 #if defined(CPP_COUPLE) && defined(INCA_AER) 2823 CALL radlwsw_inca ! nouveau rayonnement (compatible Arpege-IFS) 2824 e (kdlon,kflev,dist, rmu0, fract, 2825 e paprs, pplay,zxtsol,albsol, albsollw, t_seri,q_seri, 2826 e wo, 2827 e cldfra, cldemi, cldtau, 2828 s heat,heat0,cool,cool0,radsol,albpla, 2829 s topsw,toplw,solsw,sollw, 2830 s sollwdown, 2831 s topsw0,toplw0,solsw0,sollw0, 2832 s lwdn0, lwdn, lwup0, lwup, 2833 s swdn0, swdn, swup0, swup, 2834 e ok_ade, ok_aie, ! new for aerosol radiative effects 2835 e tau_inca, piz_inca, cg_inca, ! ="= 2836 s topswad_inca, solswad_inca, ! ="= 2837 s topswad0_inca, solswad0_inca, ! ="= 2838 s topsw_inca, topsw0_inca, 2839 s solsw_inca, solsw0_inca, 2840 e cldtaupi, ! ="= 2841 s topswai_inca, solswai_inca) ! ="= 2842 #else 2843 CALL radlwsw ! nouveau rayonnement (compatible Arpege-IFS) 2844 e (dist, rmu0, fract, 2845 e paprs, pplay,zxtsol,albsol, albsollw, t_seri,q_seri, 2846 e wo, 2847 e cldfra, cldemi, cldtau, 2848 s heat,heat0,cool,cool0,radsol,albpla, 2849 s topsw,toplw,solsw,sollw, 2850 s sollwdown, 2851 s topsw0,toplw0,solsw0,sollw0, 2852 s lwdn0, lwdn, lwup0, lwup, 2853 s swdn0, swdn, swup0, swup, 2854 e ok_ade, ok_aie, ! new for aerosol radiative effects 2855 e tau_ae, piz_ae, cg_ae, ! ="= 2856 s topswad, solswad, ! ="= 2857 e cldtaupi, ! ="= 2858 s topswai, solswai) ! ="= 2859 #endif 2815 IF (aerosol_couple) THEN 2816 #ifdef INCA_AER 2817 CALL radlwsw_inca 2818 e (kdlon,kflev,dist, rmu0, fract, solaire, 2819 e paprs, pplay,zxtsol,albsol, albsollw, t_seri,q_seri, 2820 e wo, 2821 e cldfra, cldemi, cldtau, 2822 s heat,heat0,cool,cool0,radsol,albpla, 2823 s topsw,toplw,solsw,sollw, 2824 s sollwdown, 2825 s topsw0,toplw0,solsw0,sollw0, 2826 s lwdn0, lwdn, lwup0, lwup, 2827 s swdn0, swdn, swup0, swup, 2828 e ok_ade, ok_aie, 2829 e tau_inca, piz_inca, cg_inca, 2830 s topswad_inca, solswad_inca, 2831 s topswad0_inca, solswad0_inca, 2832 s topsw_inca, topsw0_inca, 2833 s solsw_inca, solsw0_inca, 2834 e cldtaupi, 2835 s topswai_inca, solswai_inca) 2836 #endif 2837 ELSE 2838 CALL radlwsw ! nouveau rayonnement (compatible Arpege-IFS) 2839 e (dist, rmu0, fract, 2840 e paprs, pplay,zxtsol,albsol, albsollw, t_seri,q_seri, 2841 e wo, 2842 e cldfra, cldemi, cldtau, 2843 s heat,heat0,cool,cool0,radsol,albpla, 2844 s topsw,toplw,solsw,sollw, 2845 s sollwdown, 2846 s topsw0,toplw0,solsw0,sollw0, 2847 s lwdn0, lwdn, lwup0, lwup, 2848 s swdn0, swdn, swup0, swup, 2849 e ok_ade, ok_aie, ! new for aerosol radiative effects 2850 e tau_ae, piz_ae, cg_ae, ! ="= 2851 s topswad, solswad, ! ="= 2852 e cldtaupi, ! ="= 2853 s topswai, solswai) ! ="= 2854 ENDIF 2855 2860 2856 itaprad = 0 2861 2857 ENDIF … … 3089 3085 I upwd, 3090 3086 I dnwd, 3087 I aerosol_couple, 3091 3088 #ifdef INCA 3092 3089 I flxmass_w, 3093 #if defined(INCA_AER) && defined(CPP_COUPLE)3094 3090 I tau_inca, 3095 3091 I piz_inca, … … 3097 3093 I ccm, 3098 3094 I rfname, 3099 #endif3100 3095 #endif 3101 3096 O tr_seri)
Note: See TracChangeset
for help on using the changeset viewer.