Changeset 2600 for LMDZ5/trunk/libf/dynphy_lonlat/calfis_loc.F
- Timestamp:
- Jul 23, 2016, 7:45:38 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
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
Note: See TracChangeset
for help on using the changeset viewer.