Changeset 2600 for LMDZ5/trunk/libf/dynphy_lonlat
- Timestamp:
- Jul 23, 2016, 7:45:38 AM (8 years ago)
- Location:
- LMDZ5/trunk/libf/dynphy_lonlat
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/dynphy_lonlat/calfis.F
r2597 r2600 35 35 #endif 36 36 USE comconst_mod, ONLY: cpp, daysec, dtphys, dtvr, kappa, pi 37 USE comvert_mod, ONLY: preff, presnivs 37 38 38 39 IMPLICIT NONE … … 90 91 c ------------------ 91 92 92 #include "dimensions.h"93 #include "paramet.h"94 #include "temps.h"93 include "dimensions.h" 94 include "paramet.h" 95 include "temps.h" 95 96 96 97 INTEGER ngridmx 97 98 PARAMETER( ngridmx = 2+(jjm-1)*iim - 1/jjm ) 98 99 99 #include "comvert.h" 100 #include "comgeom2.h" 101 #include "iniprint.h" 100 include "comgeom2.h" 101 include "iniprint.h" 102 102 103 103 c Arguments : -
LMDZ5/trunk/libf/dynphy_lonlat/calfis_loc.F
r2597 r2600 50 50 USE callphysiq_mod, ONLY: call_physiq 51 51 #endif 52 USE comvert_mod, ONLY: preff, presnivs 52 53 USE comconst_mod, ONLY: cpp, daysec, dtphys, dtvr, kappa, pi 53 54 … … 115 116 PARAMETER( ngridmx = 2+(jjm-1)*iim - 1/jjm ) 116 117 117 include "comvert.h"118 118 include "comgeom2.h" 119 119 include "iniprint.h" … … 277 277 ALLOCATE(flxwfi(klon,llm)) 278 278 c$OMP END MASTER 279 c$OMP BARRIER 279 c$OMP BARRIER 280 280 ELSE 281 281 debut = .FALSE. … … 365 365 enddo 366 366 ENDDO 367 c$OMP END DO NOWAIT 367 c$OMP END DO NOWAIT 368 368 ENDDO 369 369 … … 382 382 enddo 383 383 ENDDO 384 c$OMP END DO NOWAIT 384 c$OMP END DO NOWAIT 385 385 386 386 c CALL gr_dyn_fi_p(llm,iip1,jjp1,klon,pphi,zphi) … … 403 403 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK) 404 404 DO l=1,llm 405 406 407 405 DO ig=1,klon 406 zphi(ig,l)=zphi(ig,l)-zphis(ig) 407 ENDDO 408 408 ENDDO 409 409 c$OMP END DO NOWAIT … … 532 532 DO i=2,iim 533 533 z1(i) =(rlonu(i)-rlonu(i-1))*pvcov(i,jjm,l)/cv(i,jjm) 534 534 ENDDO 535 535 536 536 DO i=1,iim 537 537 zcos(i) = COS(rlonv(i))*z1(i) 538 538 zsin(i) = SIN(rlonv(i))*z1(i) 539 539 ENDDO 540 540 541 541 zufi(klon,l) = SSUM(iim,zcos,1)/pi … … 590 590 allocate(zdpsrf_omp(klon)) 591 591 allocate(flxwfi_omp(klon,llm)) 592 592 first_omp=.false. 593 593 endif 594 594 595 595 596 596 klon=klon_omp 597 597 offset=klon_omp_begin-1 … … 600 600 do i=1,klon 601 601 zplev_omp(i,l)=zplev(offset+i,l) 602 603 enddo 604 602 enddo 603 enddo 604 605 605 do l=1,llm 606 606 do i=1,klon 607 608 609 enddo 610 611 do l=1,llm 612 do i=1,klon 613 614 615 enddo 616 607 zplay_omp(i,l)=zplay(offset+i,l) 608 enddo 609 enddo 610 611 do l=1,llm 612 do i=1,klon 613 zphi_omp(i,l)=zphi(offset+i,l) 614 enddo 615 enddo 616 617 617 do i=1,klon 618 618 zphis_omp(i)=zphis(offset+i) 619 619 enddo 620 620 621 621 622 622 do l=1,llm 623 623 presnivs_omp(l)=presnivs(l) 624 624 enddo 625 626 do l=1,llm 627 do i=1,klon 628 629 630 enddo 631 632 do l=1,llm 633 do i=1,klon 634 635 636 enddo 637 638 do l=1,llm 639 do i=1,klon 640 641 642 enddo 643 644 do l=1,llm 645 do i=1,klon 646 647 648 enddo 649 625 626 do l=1,llm 627 do i=1,klon 628 zufi_omp(i,l)=zufi(offset+i,l) 629 enddo 630 enddo 631 632 do l=1,llm 633 do i=1,klon 634 zvfi_omp(i,l)=zvfi(offset+i,l) 635 enddo 636 enddo 637 638 do l=1,llm 639 do i=1,klon 640 zrfi_omp(i,l)=zrfi(offset+i,l) 641 enddo 642 enddo 643 644 do l=1,llm 645 do i=1,klon 646 ztfi_omp(i,l)=ztfi(offset+i,l) 647 enddo 648 enddo 649 650 650 do iq=1,nqtot 651 651 do l=1,llm 652 652 do i=1,klon 653 653 zqfi_omp(i,l,iq)=zqfi(offset+i,l,iq) 654 655 656 enddo 657 658 do l=1,llm 659 do i=1,klon 660 661 662 enddo 663 664 do l=1,llm 665 do i=1,klon 666 667 668 enddo 669 654 enddo 655 enddo 656 enddo 657 658 do l=1,llm 659 do i=1,klon 660 zdufi_omp(i,l)=zdufi(offset+i,l) 661 enddo 662 enddo 663 664 do l=1,llm 665 do i=1,klon 666 zdvfi_omp(i,l)=zdvfi(offset+i,l) 667 enddo 668 enddo 669 670 670 do l=1,llm 671 671 do i=1,klon 672 672 zdtfi_omp(i,l)=zdtfi(offset+i,l) 673 674 enddo 675 673 enddo 674 enddo 675 676 676 do iq=1,nqtot 677 677 do l=1,llm 678 678 do i=1,klon 679 680 679 zdqfi_omp(i,l,iq)=zdqfi(offset+i,l,iq) 680 enddo 681 681 enddo 682 682 enddo 683 683 684 684 do i=1,klon 685 685 zdpsrf_omp(i)=zdpsrf(offset+i) 686 686 enddo 687 687 … … 689 689 do i=1,klon 690 690 flxwfi_omp(i,l)=flxwfi(offset+i,l) 691 691 enddo 692 692 enddo 693 693 … … 749 749 do i=1,klon 750 750 zplev(offset+i,l)=zplev_omp(i,l) 751 752 enddo 753 751 enddo 752 enddo 753 754 754 do l=1,llm 755 755 do i=1,klon 756 757 758 enddo 759 760 do l=1,llm 761 do i=1,klon 762 763 764 enddo 765 756 zplay(offset+i,l)=zplay_omp(i,l) 757 enddo 758 enddo 759 760 do l=1,llm 761 do i=1,klon 762 zphi(offset+i,l)=zphi_omp(i,l) 763 enddo 764 enddo 765 766 766 767 767 do i=1,klon 768 768 zphis(offset+i)=zphis_omp(i) 769 769 enddo 770 770 771 771 772 772 do l=1,llm 773 773 presnivs(l)=presnivs_omp(l) 774 774 enddo 775 776 do l=1,llm 777 do i=1,klon 778 779 780 enddo 781 782 do l=1,llm 783 do i=1,klon 784 785 786 enddo 787 788 do l=1,llm 789 do i=1,klon 790 791 792 enddo 793 775 776 do l=1,llm 777 do i=1,klon 778 zufi(offset+i,l)=zufi_omp(i,l) 779 enddo 780 enddo 781 782 do l=1,llm 783 do i=1,klon 784 zvfi(offset+i,l)=zvfi_omp(i,l) 785 enddo 786 enddo 787 788 do l=1,llm 789 do i=1,klon 790 ztfi(offset+i,l)=ztfi_omp(i,l) 791 enddo 792 enddo 793 794 794 do iq=1,nqtot 795 795 do l=1,llm 796 796 do i=1,klon 797 797 zqfi(offset+i,l,iq)=zqfi_omp(i,l,iq) 798 799 800 enddo 801 802 do l=1,llm 803 do i=1,klon 804 805 806 enddo 807 808 do l=1,llm 809 do i=1,klon 810 811 812 enddo 813 798 enddo 799 enddo 800 enddo 801 802 do l=1,llm 803 do i=1,klon 804 zdufi(offset+i,l)=zdufi_omp(i,l) 805 enddo 806 enddo 807 808 do l=1,llm 809 do i=1,klon 810 zdvfi(offset+i,l)=zdvfi_omp(i,l) 811 enddo 812 enddo 813 814 814 do l=1,llm 815 815 do i=1,klon 816 816 zdtfi(offset+i,l)=zdtfi_omp(i,l) 817 818 enddo 819 817 enddo 818 enddo 819 820 820 do iq=1,nqtot 821 821 do l=1,llm 822 822 do i=1,klon 823 824 823 zdqfi(offset+i,l,iq)=zdqfi_omp(i,l,iq) 824 enddo 825 825 enddo 826 826 enddo 827 827 828 828 do i=1,klon 829 829 zdpsrf(offset+i)=zdpsrf_omp(i) 830 830 enddo 831 831 … … 929 929 930 930 if (.not. is_south_pole_dyn) then 931 931 pdpsfi(:,jj_end:jj_end+1)=0 932 932 endif 933 933 c$OMP END MASTER … … 1045 1045 pdqfi(:,jj_begin:jj_end,l,:)=0. 1046 1046 ENDDO 1047 c$OMP END DO NOWAIT 1047 c$OMP END DO NOWAIT 1048 1048 1049 1049 C … … 1056 1056 !CDIR ON_ADB(index_j) 1057 1057 !cdir NODEP 1058 1058 DO ig0=kstart,kend 1059 1059 i=index_i(ig0) 1060 1060 j=index_j(ig0) … … 1062 1062 if (i==1) pdqfi(iip1,j,l,iiq) = zdqfi(ig0,l,iq) 1063 1063 ENDDO 1064 1065 1066 1064 1065 IF (is_north_pole_dyn) then 1066 DO i=1,iip1 1067 1067 pdqfi(i,1,l,iiq) = zdqfi(1,l,iq) 1068 1069 1070 1071 1072 1068 ENDDO 1069 ENDIF 1070 1071 IF (is_south_pole_dyn) then 1072 DO i=1,iip1 1073 1073 pdqfi(i,jjp1,l,iiq) = zdqfi(klon,l,iq) 1074 1075 1076 1074 ENDDO 1075 ENDIF 1076 1077 1077 ENDDO 1078 c$OMP END DO NOWAIT 1078 c$OMP END DO NOWAIT 1079 1079 ENDDO 1080 1080 … … 1136 1136 pdvfi(i,j,l)=0.5*(zdvfi2(ig0,l)+zdvfi2(ig0+iim,l))*cv(i,j) 1137 1137 if (i==1) pdvfi(iip1,j,l) = 0.5*(zdvfi2(ig0,l)+ 1138 $ 1139 $ 1138 $ zdvfi2(ig0+iim,l)) 1139 $ *cv(i,j) 1140 1140 enddo 1141 1141 -
LMDZ5/trunk/libf/dynphy_lonlat/calfis_p.F
r2597 r2600 47 47 USE callphysiq_mod, ONLY: call_physiq 48 48 #endif 49 USE comvert_mod, ONLY: preff, presnivs 49 50 USE comconst_mod, ONLY: cpp, daysec, dtphys, dtvr, kappa, pi 50 51 … … 111 112 PARAMETER( ngridmx = 2+(jjm-1)*iim - 1/jjm ) 112 113 113 #include "comvert.h"114 114 #include "comgeom2.h" 115 115 #include "iniprint.h" … … 277 277 ALLOCATE(flxwfi(klon,llm)) 278 278 c$OMP END MASTER 279 c$OMP BARRIER 279 c$OMP BARRIER 280 280 ELSE 281 281 debut = .FALSE. … … 365 365 enddo 366 366 ENDDO 367 c$OMP END DO NOWAIT 367 c$OMP END DO NOWAIT 368 368 ENDDO 369 369 … … 380 380 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK) 381 381 DO l=1,llm 382 383 384 382 DO ig=1,klon 383 zphi(ig,l)=zphi(ig,l)-zphis(ig) 384 ENDDO 385 385 ENDDO 386 386 c$OMP END DO NOWAIT … … 510 510 DO i=2,iim 511 511 z1(i) =(rlonu(i)-rlonu(i-1))*pvcov(i,jjm,l)/cv(i,jjm) 512 512 ENDDO 513 513 514 514 DO i=1,iim 515 515 zcos(i) = COS(rlonv(i))*z1(i) 516 516 zsin(i) = SIN(rlonv(i))*z1(i) 517 517 ENDDO 518 518 519 519 zufi(klon,l) = SSUM(iim,zcos,1)/pi … … 556 556 allocate(zdpsrf_omp(klon)) 557 557 allocate(flxwfi_omp(klon,llm)) 558 558 first_omp=.false. 559 559 endif 560 560 561 561 562 562 klon=klon_omp 563 563 offset=klon_omp_begin-1 … … 566 566 do i=1,klon 567 567 zplev_omp(i,l)=zplev(offset+i,l) 568 569 enddo 570 568 enddo 569 enddo 570 571 571 do l=1,llm 572 572 do i=1,klon 573 574 575 enddo 576 577 do l=1,llm 578 do i=1,klon 579 580 581 enddo 582 573 zplay_omp(i,l)=zplay(offset+i,l) 574 enddo 575 enddo 576 577 do l=1,llm 578 do i=1,klon 579 zphi_omp(i,l)=zphi(offset+i,l) 580 enddo 581 enddo 582 583 583 do i=1,klon 584 584 zphis_omp(i)=zphis(offset+i) 585 585 enddo 586 586 587 587 588 588 do l=1,llm 589 589 presnivs_omp(l)=presnivs(l) 590 590 enddo 591 592 do l=1,llm 593 do i=1,klon 594 595 596 enddo 597 598 do l=1,llm 599 do i=1,klon 600 601 602 enddo 603 604 do l=1,llm 605 do i=1,klon 606 607 608 enddo 609 610 611 do l=1,llm 612 do i=1,klon 613 614 615 enddo 616 591 592 do l=1,llm 593 do i=1,klon 594 zufi_omp(i,l)=zufi(offset+i,l) 595 enddo 596 enddo 597 598 do l=1,llm 599 do i=1,klon 600 zvfi_omp(i,l)=zvfi(offset+i,l) 601 enddo 602 enddo 603 604 do l=1,llm 605 do i=1,klon 606 zrfi_omp(i,l)=zrfi(offset+i,l) 607 enddo 608 enddo 609 610 611 do l=1,llm 612 do i=1,klon 613 ztfi_omp(i,l)=ztfi(offset+i,l) 614 enddo 615 enddo 616 617 617 do iq=1,nqtot 618 618 do l=1,llm 619 619 do i=1,klon 620 620 zqfi_omp(i,l,iq)=zqfi(offset+i,l,iq) 621 622 623 enddo 624 625 do l=1,llm 626 do i=1,klon 627 628 629 enddo 630 631 do l=1,llm 632 do i=1,klon 633 634 635 enddo 636 621 enddo 622 enddo 623 enddo 624 625 do l=1,llm 626 do i=1,klon 627 zdufi_omp(i,l)=zdufi(offset+i,l) 628 enddo 629 enddo 630 631 do l=1,llm 632 do i=1,klon 633 zdvfi_omp(i,l)=zdvfi(offset+i,l) 634 enddo 635 enddo 636 637 637 do l=1,llm 638 638 do i=1,klon 639 639 zdtfi_omp(i,l)=zdtfi(offset+i,l) 640 641 enddo 642 640 enddo 641 enddo 642 643 643 do iq=1,nqtot 644 644 do l=1,llm 645 645 do i=1,klon 646 647 646 zdqfi_omp(i,l,iq)=zdqfi(offset+i,l,iq) 647 enddo 648 648 enddo 649 649 enddo 650 650 651 651 do i=1,klon 652 652 zdpsrf_omp(i)=zdpsrf(offset+i) 653 653 enddo 654 654 … … 656 656 do i=1,klon 657 657 flxwfi_omp(i,l)=flxwfi(offset+i,l) 658 658 enddo 659 659 enddo 660 660 … … 713 713 do i=1,klon 714 714 zplev(offset+i,l)=zplev_omp(i,l) 715 716 enddo 717 715 enddo 716 enddo 717 718 718 do l=1,llm 719 719 do i=1,klon 720 721 722 enddo 723 724 do l=1,llm 725 do i=1,klon 726 727 728 enddo 729 720 zplay(offset+i,l)=zplay_omp(i,l) 721 enddo 722 enddo 723 724 do l=1,llm 725 do i=1,klon 726 zphi(offset+i,l)=zphi_omp(i,l) 727 enddo 728 enddo 729 730 730 731 731 do i=1,klon 732 732 zphis(offset+i)=zphis_omp(i) 733 733 enddo 734 734 735 735 736 736 do l=1,llm 737 737 presnivs(l)=presnivs_omp(l) 738 738 enddo 739 740 do l=1,llm 741 do i=1,klon 742 743 744 enddo 745 746 do l=1,llm 747 do i=1,klon 748 749 750 enddo 751 752 do l=1,llm 753 do i=1,klon 754 755 756 enddo 757 739 740 do l=1,llm 741 do i=1,klon 742 zufi(offset+i,l)=zufi_omp(i,l) 743 enddo 744 enddo 745 746 do l=1,llm 747 do i=1,klon 748 zvfi(offset+i,l)=zvfi_omp(i,l) 749 enddo 750 enddo 751 752 do l=1,llm 753 do i=1,klon 754 ztfi(offset+i,l)=ztfi_omp(i,l) 755 enddo 756 enddo 757 758 758 do iq=1,nqtot 759 759 do l=1,llm 760 760 do i=1,klon 761 761 zqfi(offset+i,l,iq)=zqfi_omp(i,l,iq) 762 763 764 enddo 765 766 do l=1,llm 767 do i=1,klon 768 769 770 enddo 771 772 do l=1,llm 773 do i=1,klon 774 775 776 enddo 777 762 enddo 763 enddo 764 enddo 765 766 do l=1,llm 767 do i=1,klon 768 zdufi(offset+i,l)=zdufi_omp(i,l) 769 enddo 770 enddo 771 772 do l=1,llm 773 do i=1,klon 774 zdvfi(offset+i,l)=zdvfi_omp(i,l) 775 enddo 776 enddo 777 778 778 do l=1,llm 779 779 do i=1,klon 780 780 zdtfi(offset+i,l)=zdtfi_omp(i,l) 781 782 enddo 783 781 enddo 782 enddo 783 784 784 do iq=1,nqtot 785 785 do l=1,llm 786 786 do i=1,klon 787 788 787 zdqfi(offset+i,l,iq)=zdqfi_omp(i,l,iq) 788 enddo 789 789 enddo 790 790 enddo 791 791 792 792 do i=1,klon 793 793 zdpsrf(offset+i)=zdpsrf_omp(i) 794 794 enddo 795 795 … … 892 892 pdpsfi(:,jj_begin)=0 893 893 if (.not. is_south_pole_dyn) then 894 894 pdpsfi(:,jj_end)=0 895 895 endif 896 896 c$OMP END MASTER … … 976 976 pdqfi(:,:,l,:)=0. 977 977 ENDDO 978 c$OMP END DO NOWAIT 978 c$OMP END DO NOWAIT 979 979 980 980 C … … 987 987 !CDIR ON_ADB(index_j) 988 988 !cdir NODEP 989 989 DO ig0=kstart,kend 990 990 i=index_i(ig0) 991 991 j=index_j(ig0) … … 993 993 if (i==1) pdqfi(iip1,j,l,iiq) = zdqfi(ig0,l,iq) 994 994 ENDDO 995 996 997 995 996 IF (is_north_pole_dyn) then 997 DO i=1,iip1 998 998 pdqfi(i,1,l,iiq) = zdqfi(1,l,iq) 999 1000 1001 1002 1003 999 ENDDO 1000 ENDIF 1001 1002 IF (is_south_pole_dyn) then 1003 DO i=1,iip1 1004 1004 pdqfi(i,jjp1,l,iiq) = zdqfi(klon,l,iq) 1005 1006 1007 1005 ENDDO 1006 ENDIF 1007 1008 1008 ENDDO 1009 c$OMP END DO NOWAIT 1009 c$OMP END DO NOWAIT 1010 1010 ENDDO 1011 1011 … … 1067 1067 pdvfi(i,j,l)=0.5*(zdvfi2(ig0,l)+zdvfi2(ig0+iim,l))*cv(i,j) 1068 1068 if (i==1) pdvfi(iip1,j,l) = 0.5*(zdvfi2(ig0,l)+ 1069 $ 1070 $ 1069 $ zdvfi2(ig0+iim,l)) 1070 $ *cv(i,j) 1071 1071 enddo 1072 1072 -
LMDZ5/trunk/libf/dynphy_lonlat/phylmd/ce0l.F90
r2597 r2600 36 36 USE comconst_mod, ONLY: cpp, daysec, dtphys, dtvr, g, kappa, omeg, r, rad, & 37 37 pi, jmp1 38 USE comvert_mod, ONLY: pa, preff, pressure_exner 38 39 39 40 IMPLICIT NONE … … 44 45 include "paramet.h" 45 46 include "comgeom2.h" 46 include "comvert.h"47 47 include "iniprint.h" 48 48 include "temps.h" -
LMDZ5/trunk/libf/dynphy_lonlat/phylmd/etat0dyn_netcdf.F90
r2598 r2600 37 37 USE assert_eq_m, ONLY: assert_eq 38 38 USE comconst_mod, ONLY: pi, cpp, kappa 39 USE comvert_mod, ONLY: ap, bp, preff, pressure_exner 39 40 IMPLICIT NONE 40 41 … … 46 47 include "paramet.h" 47 48 include "comgeom2.h" 48 include "comvert.h"49 49 include "temps.h" 50 50 include "comdissnew.h" -
LMDZ5/trunk/libf/dynphy_lonlat/phylmd/iniphysiq_mod.F90
r2597 r2600 12 12 prad,pg,pr,pcpp,iflag_phys) 13 13 USE dimphy, ONLY: init_dimphy 14 USE comvert_mod, ONLY: preff, ap, bp, presnivs, scaleheight, pseudoalt 14 15 USE inigeomphy_mod, ONLY: inigeomphy 15 16 USE mod_grid_phy_lmdz, ONLY: klon_glo ! number of atmospheric columns (on full grid) … … 50 51 51 52 include "dimensions.h" 52 include "comvert.h"53 53 include "iniprint.h" 54 54 include "temps.h" -
LMDZ5/trunk/libf/dynphy_lonlat/phymar/iniphysiq_mod.F90
r2599 r2600 12 12 prad,pg,pr,pcpp,iflag_phys) 13 13 USE dimphy, ONLY: init_dimphy 14 USE comvert_mod, ONLY: preff, ap, bp, presnivs, scaleheight, pseudoalt 14 15 USE inigeomphy_mod, ONLY: inigeomphy 15 16 USE vertical_layers_mod, ONLY : init_vertical_layers … … 29 30 30 31 31 include "dimensions.h"32 include "comvert.h"33 32 include "iniprint.h" 34 33
Note: See TracChangeset
for help on using the changeset viewer.