Ignore:
Timestamp:
Apr 16, 2008, 2:14:00 PM (16 years ago)
Author:
Laurent Fairhead
Message:

Petites re-ecritures pour eviter la floppee de message d'infos lors de
la compilation sur NEC
LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/dyn3dpar/leapfrog_p.F

    r774 r949  
    221221c$OMP MASTER
    222222      OMP_CHUNK=5
    223 c$OMP END MASTER         
     223c$OMP END MASTER 
    224224c-----------------------------------------------------------------------
    225225c   On initialise la pression et la fonction d'Exner :
     
    287287
    288288c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)         
    289         DO l=1,llm     
     289        DO l=1,llm     
    290290           ije=ij_end
    291            ucovm1   (ijb:ije,l) = ucov  (ijb:ije,l)
     291           ucovm1   (ijb:ije,l) = ucov  (ijb:ije,l)
    292292           tetam1   (ijb:ije,l) = teta  (ijb:ije,l)
    293293           massem1  (ijb:ije,l) = masse (ijb:ije,l)
    294294           finvmaold(ijb:ije,l)=masse(ijb:ije,l)
    295                  
     295                 
    296296           if (pole_sud) ije=ij_end-iip1
    297297           vcovm1(ijb:ije,l) = vcov  (ijb:ije,l)
     
    299299
    300300         ENDDO
    301 c$OMP ENDDO      
     301c$OMP ENDDO         
    302302
    303303
     
    376376      IF (ok_start_timer) THEN
    377377        CALL InitTime
    378         ok_start_timer=.FALSE.
     378        ok_start_timer=.FALSE.
    379379      ENDIF     
    380380c$OMP END MASTER     
     
    390390        if (Verbose) then
    391391       
    392         print *,'*********************************'
    393         print *,'******    TIMER CALDYN     ******'
    394         do i=0,mpi_size-1
    395           print *,'proc',i,' :   Nb Bandes  :',jj_nb_caldyn(i),
     392        print *,'*********************************'
     393        print *,'******    TIMER CALDYN     ******'
     394        do i=0,mpi_size-1
     395          print *,'proc',i,' :   Nb Bandes  :',jj_nb_caldyn(i),
    396396     &            '  : temps moyen :',
    397397     &             timer_average(jj_nb_caldyn(i),timer_caldyn,i),
     
    400400     
    401401        print *,'*********************************'
    402         print *,'******    TIMER VANLEER    ******'
    403         do i=0,mpi_size-1
    404           print *,'proc',i,' :   Nb Bandes  :',jj_nb_vanleer(i),
     402        print *,'******    TIMER VANLEER    ******'
     403        do i=0,mpi_size-1
     404          print *,'proc',i,' :   Nb Bandes  :',jj_nb_vanleer(i),
    405405     &            '  : temps moyen :',
    406406     &             timer_average(jj_nb_vanleer(i),timer_vanleer,i),
     
    409409     
    410410        print *,'*********************************'
    411         print *,'******    TIMER DISSIP    ******'
    412         do i=0,mpi_size-1
    413           print *,'proc',i,' :   Nb Bandes  :',jj_nb_dissip(i),
     411        print *,'******    TIMER DISSIP    ******'
     412        do i=0,mpi_size-1
     413          print *,'proc',i,' :   Nb Bandes  :',jj_nb_dissip(i),
    414414     &            '  : temps moyen :',
    415415     &             timer_average(jj_nb_dissip(i),timer_dissip,i),
     
    417417        enddo
    418418       
    419         if (mpi_rank==0) call WriteBands
    420        
     419        if (mpi_rank==0) call WriteBands
     420       
    421421       endif
    422422       
    423         call AdjustBands_caldyn
     423        call AdjustBands_caldyn
    424424         if (mpi_rank==0) call WriteBands
    425        
    426         call Register_SwapFieldHallo(ucov,ucov,ip1jmp1,llm,
     425       
     426        call Register_SwapFieldHallo(ucov,ucov,ip1jmp1,llm,
    427427     &                                jj_Nb_caldyn,0,0,TestRequest)
    428428         call Register_SwapFieldHallo(ucovm1,ucovm1,ip1jmp1,llm,
     
    457457     &                                jj_Nb_caldyn,0,0,TestRequest)
    458458 
    459         do j=1,nqmx
     459        do j=1,nqmx
    460460         call Register_SwapFieldHallo(q(1,1,j),q(1,1,j),ip1jmp1,llm,
    461461     &                                jj_nb_caldyn,0,0,TestRequest)
     
    466466         call WaitRequest(TestRequest)
    467467         
    468         call AdjustBands_dissip
    469         call AdjustBands_physic
     468        call AdjustBands_dissip
     469        call AdjustBands_physic
    470470
    471471      endif
     
    500500
    501501     
    502       if (debug) then   
     502      if (debug) then       
    503503        call WriteField_p('ucov',reshape(ucov,(/iip1,jmp1,llm/)))
    504504        call WriteField_p('vcov',reshape(vcov,(/iip1,jjm,llm/)))
     
    506506        call WriteField_p('ps',reshape(ps,(/iip1,jmp1/)))
    507507        call WriteField_p('masse',reshape(masse,(/iip1,jmp1,llm/)))
    508         call WriteField_p('pk',reshape(pk,(/iip1,jmp1,llm/)))
     508        call WriteField_p('pk',reshape(pk,(/iip1,jmp1,llm/)))
    509509        call WriteField_p('pks',reshape(pks,(/iip1,jmp1/)))
    510510        call WriteField_p('pkf',reshape(pkf,(/iip1,jmp1,llm/)))
     
    521521
    522522c$OMP MASTER
    523       print*,"Iteration No",True_itau
     523c     print*,"Iteration No",True_itau
    524524
    525525
     
    659659c$OMP MASTER
    660660         call suspend_timer(timer_caldyn)
    661          print*,'Entree dans la physique : Iteration No ',true_itau
     661c        print*,'Entree dans la physique : Iteration No ',true_itau
    662662c$OMP END MASTER
    663663
     
    691691        call VTb(VThallo)
    692692        call SetTag(Request_physic,800)
    693        
     693       
    694694        call Register_SwapFieldHallo(ucov,ucov,ip1jmp1,llm,
    695695     *                               jj_Nb_physic,2,2,Request_physic)
     
    716716     *                               jj_Nb_physic,2,2,Request_physic)
    717717       
    718 c       call SetDistrib(jj_nb_vanleer)
     718c        call SetDistrib(jj_nb_vanleer)
    719719        do j=1,nqmx
    720720 
     
    727727#endif
    728728        call SetDistrib(jj_nb_Physic)
    729        
     729       
    730730        call SendRequest(Request_Physic)
    731731        call WaitRequest(Request_Physic)       
    732        
    733         call VTe(VThallo)
    734        
    735         call VTb(VTphysiq)
    736 c$OMP END MASTER
    737 c$OMP BARRIER
    738 
    739 cc$OMP MASTER   
     732       
     733        call VTe(VThallo)
     734       
     735        call VTb(VTphysiq)
     736c$OMP END MASTER
     737c$OMP BARRIER
     738
     739cc$OMP MASTER       
    740740c      call WriteField_p('ucovfi',reshape(ucov,(/iip1,jmp1,llm/)))
    741741c      call WriteField_p('vcovfi',reshape(vcov,(/iip1,jjm,llm/)))
     
    745745cc$OMP END MASTER
    746746cc$OMP BARRIER
    747        
     747       
    748748        CALL calfis_p( nq, lafin ,rdayvrai,time  ,
    749749     $               ucov,vcov,teta,q,masse,ps,p,pk,phis,phi ,
     
    768768          dpfi_tmp(1:iip1)     = dpfi(ijb:ijb+iim) 
    769769c$OMP END MASTER
    770         endif
    771 
    772 c$OMP BARRIER
    773 c$OMP MASTER
    774         call SetDistrib(jj_nb_Physic_bis)
     770        endif
     771
     772c$OMP BARRIER
     773c$OMP MASTER
     774        call SetDistrib(jj_nb_Physic_bis)
    775775
    776776        call VTb(VThallo)
     
    800800        call SetDistrib(jj_nb_Physic)
    801801c$OMP END MASTER
    802 c$OMP BARRIER   
    803                 ijb=ij_begin
    804         if (.not. pole_nord) then
    805        
     802c$OMP BARRIER       
     803                ijb=ij_begin
     804        if (.not. pole_nord) then
     805       
    806806c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
    807807          DO l=1,llm
     
    818818          dpfi(ijb:ijb+iim)   = dpfi(ijb:ijb+iim)+ dpfi_tmp(1:iip1)
    819819c$OMP END MASTER
    820          
     820         
    821821        endif
    822822c$OMP BARRIER
    823 cc$OMP MASTER   
     823cc$OMP MASTER       
    824824c      call WriteField_p('dufi',reshape(dufi,(/iip1,jmp1,llm/)))
    825825c      call WriteField_p('dvfi',reshape(dvfi,(/iip1,jjm,llm/)))
     
    924924c$OMP MASTER
    925925         call resume_timer(timer_caldyn)
    926         if (FirstPhysic) then
    927            ok_start_timer=.TRUE.
    928            FirstPhysic=.false.
    929         endif
     926        if (FirstPhysic) then
     927           ok_start_timer=.TRUE.
     928           FirstPhysic=.false.
     929        endif
    930930c$OMP END MASTER
    931931       ENDIF
     
    947947c$OMP MASTER
    948948        call suspend_timer(timer_caldyn)
    949        
    950         print*,'Entree dans la dissipation : Iteration No ',true_itau
     949       
     950c       print*,'Entree dans la dissipation : Iteration No ',true_itau
    951951c   calcul de l'energie cinetique avant dissipation
    952         print *,'Passage dans la dissipation'
     952c       print *,'Passage dans la dissipation'
    953953
    954954        call VTb(VThallo)
     
    976976        call SetDistrib(jj_Nb_dissip)
    977977       
    978         call VTe(VThallo)
     978        call VTe(VThallo)
    979979
    980980        call VTb(VTdissipation)
    981981       
    982         call start_timer(timer_dissip)
     982        call start_timer(timer_dissip)
    983983c$OMP END MASTER
    984984c$OMP BARRIER
     
    991991        CALL dissip_p(vcov,ucov,teta,p,dvdis,dudis,dtetadis)
    992992         
    993         ijb=ij_begin
    994         ije=ij_end
    995 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)     
    996         DO l=1,llm
    997           ucov(ijb:ije,l)=ucov(ijb:ije,l)+dudis(ijb:ije,l)
     993        ijb=ij_begin
     994        ije=ij_end
     995c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)       
     996        DO l=1,llm
     997          ucov(ijb:ije,l)=ucov(ijb:ije,l)+dudis(ijb:ije,l)
    998998        ENDDO
    999 c$OMP END DO NOWAIT     
    1000         if (pole_sud) ije=ije-iip1
    1001 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)     
    1002         DO l=1,llm
    1003           vcov(ijb:ije,l)=vcov(ijb:ije,l)+dvdis(ijb:ije,l)
     999c$OMP END DO NOWAIT       
     1000        if (pole_sud) ije=ije-iip1
     1001c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)       
     1002        DO l=1,llm
     1003          vcov(ijb:ije,l)=vcov(ijb:ije,l)+dvdis(ijb:ije,l)
    10041004        ENDDO
    1005 c$OMP END DO NOWAIT     
     1005c$OMP END DO NOWAIT       
    10061006
    10071007c       teta=teta+dtetadis
     
    10151015c$OMP MASTER
    10161016            call suspend_timer(timer_dissip)
    1017             call VTb(VThallo)
     1017            call VTb(VThallo)
    10181018
    10191019            call Register_Hallo(ucov,ip1jmp1,llm,1,1,1,1,Request_Dissip)
     
    10241024            call resume_timer(timer_dissip)
    10251025c$OMP END MASTER
    1026 c$OMP BARRIER      
     1026c$OMP BARRIER           
    10271027            call covcont_p(llm,ucov,vcov,ucont,vcont)
    10281028            call enercin_p(vcov,ucov,vcont,ucont,ecin)
    10291029           
    1030             ijb=ij_begin
    1031             ije=ij_end
    1032 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)        
    1033             do l=1,llm
    1034               do ij=ijb,ije
    1035                 dtetaecdt(ij,l)= (ecin0(ij,l)-ecin(ij,l))/ pk(ij,l)
    1036                 dtetadis(ij,l)=dtetadis(ij,l)+dtetaecdt(ij,l)
     1030            ijb=ij_begin
     1031            ije=ij_end
     1032c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)           
     1033            do l=1,llm
     1034              do ij=ijb,ije
     1035                dtetaecdt(ij,l)= (ecin0(ij,l)-ecin(ij,l))/ pk(ij,l)
     1036                dtetadis(ij,l)=dtetadis(ij,l)+dtetaecdt(ij,l)
    10371037              enddo
    1038             enddo
    1039 c$OMP END DO NOWAIT        
     1038            enddo
     1039c$OMP END DO NOWAIT           
    10401040       endif
    10411041
    10421042       ijb=ij_begin
    10431043       ije=ij_end
    1044 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)        
    1045         do l=1,llm
    1046            do ij=ijb,ije
     1044c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)           
     1045        do l=1,llm
     1046           do ij=ijb,ije
    10471047              teta(ij,l)=teta(ij,l)+dtetadis(ij,l)
    1048            enddo
    1049         enddo
    1050 c$OMP END DO NOWAIT     
     1048           enddo
     1049        enddo
     1050c$OMP END DO NOWAIT       
    10511051c------------------------------------------------------------------------
    10521052
     
    11171117
    11181118        call stop_timer(timer_dissip)
    1119        
     1119       
    11201120        call VTb(VThallo)
    11211121
     
    11401140        call VTe(VThallo)
    11411141        call resume_timer(timer_caldyn)
    1142         print *,'fin dissipation'
     1142        print *,'fin dissipation'
    11431143c$OMP END MASTER
    11441144      END IF
     
    11711171       
    11721172        print *,'*********************************'
    1173         print *,'******    TIMER CALDYN     ******'
    1174         do i=0,mpi_size-1
    1175           print *,'proc',i,' :   Nb Bandes  :',jj_nb_caldyn(i),
     1173        print *,'******    TIMER CALDYN     ******'
     1174        do i=0,mpi_size-1
     1175          print *,'proc',i,' :   Nb Bandes  :',jj_nb_caldyn(i),
    11761176     &            '  : temps moyen :',
    11771177     &             timer_average(jj_nb_caldyn(i),timer_caldyn,i)
     
    11791179     
    11801180        print *,'*********************************'
    1181         print *,'******    TIMER VANLEER    ******'
    1182         do i=0,mpi_size-1
    1183           print *,'proc',i,' :   Nb Bandes  :',jj_nb_vanleer(i),
     1181        print *,'******    TIMER VANLEER    ******'
     1182        do i=0,mpi_size-1
     1183          print *,'proc',i,' :   Nb Bandes  :',jj_nb_vanleer(i),
    11841184     &            '  : temps moyen :',
    11851185     &             timer_average(jj_nb_vanleer(i),timer_vanleer,i)
     
    11871187     
    11881188        print *,'*********************************'
    1189         print *,'******    TIMER DISSIP    ******'
    1190         do i=0,mpi_size-1
    1191           print *,'proc',i,' :   Nb Bandes  :',jj_nb_dissip(i),
     1189        print *,'******    TIMER DISSIP    ******'
     1190        do i=0,mpi_size-1
     1191          print *,'proc',i,' :   Nb Bandes  :',jj_nb_dissip(i),
    11921192     &            '  : temps moyen :',
    11931193     &             timer_average(jj_nb_dissip(i),timer_dissip,i)
    11941194        enddo
    1195        
    1196         print *,'*********************************'
    1197         print *,'******    TIMER PHYSIC    ******'
    1198         do i=0,mpi_size-1
    1199           print *,'proc',i,' :   Nb Bandes  :',jj_nb_physic(i),
     1195       
     1196        print *,'*********************************'
     1197        print *,'******    TIMER PHYSIC    ******'
     1198        do i=0,mpi_size-1
     1199          print *,'proc',i,' :   Nb Bandes  :',jj_nb_physic(i),
    12001200     &            '  : temps moyen :',
    12011201     &             timer_average(jj_nb_physic(i),timer_physic,i)
    12021202        enddo
    1203        
     1203       
    12041204      endif 
    12051205     
     
    12111211        call finalize_parallel
    12121212c$OMP END MASTER
    1213         RETURN
     1213        RETURN
    12141214      ENDIF
    12151215     
     
    12751275        CALL geopot_p  ( ip1jmp1, teta  , pk , pks,  phis  , phi )
    12761276       
    1277 cym     unat=0.
    1278        
    1279         ijb=ij_begin
    1280         ije=ij_end
    1281        
    1282         if (pole_nord) then
    1283           ijb=ij_begin+iip1
    1284           unat(1:iip1,:)=0.
    1285         endif
    1286        
    1287         if (pole_sud) then
    1288           ije=ij_end-iip1
    1289           unat(ij_end-iip1+1:ij_end,:)=0.
    1290         endif
    1291            
     1277cym        unat=0.
     1278       
     1279        ijb=ij_begin
     1280        ije=ij_end
     1281       
     1282        if (pole_nord) then
     1283          ijb=ij_begin+iip1
     1284          unat(1:iip1,:)=0.
     1285        endif
     1286       
     1287        if (pole_sud) then
     1288          ije=ij_end-iip1
     1289          unat(ij_end-iip1+1:ij_end,:)=0.
     1290        endif
     1291           
    12921292        do l=1,llm
    12931293           unat(ijb:ije,l)=ucov(ijb:ije,l)/cu(ijb:ije)
    12941294        enddo
    12951295
    1296         ijb=ij_begin
    1297         ije=ij_end
    1298         if (pole_sud) ije=ij_end-iip1
    1299        
    1300         do l=1,llm
     1296        ijb=ij_begin
     1297        ije=ij_end
     1298        if (pole_sud) ije=ij_end-iip1
     1299       
     1300        do l=1,llm
    13011301           vnat(ijb:ije,l)=vcov(ijb:ije,l)/cv(ijb:ije)
    13021302        enddo
    1303        
     1303       
    13041304#ifdef CPP_IOIPSL
    13051305 
     
    13871387               IF( itau. EQ. itaufinp1 ) then 
    13881388c$OMP MASTER
    1389                  call finalize_parallel
     1389                 call finalize_parallel
    13901390c$OMP END MASTER
    13911391                 abort_message = 'Simulation finished'
     
    14261426
    14271427cym        unat=0.
    1428         ijb=ij_begin
    1429         ije=ij_end
    1430        
    1431         if (pole_nord) then
    1432           ijb=ij_begin+iip1
    1433           unat(1:iip1,:)=0.
    1434         endif
    1435        
    1436         if (pole_sud) then
    1437           ije=ij_end-iip1
    1438           unat(ij_end-iip1+1:ij_end,:)=0.
    1439         endif
    1440            
     1428        ijb=ij_begin
     1429        ije=ij_end
     1430       
     1431        if (pole_nord) then
     1432          ijb=ij_begin+iip1
     1433          unat(1:iip1,:)=0.
     1434        endif
     1435       
     1436        if (pole_sud) then
     1437          ije=ij_end-iip1
     1438          unat(ij_end-iip1+1:ij_end,:)=0.
     1439        endif
     1440           
    14411441        do l=1,llm
    14421442           unat(ijb:ije,l)=ucov(ijb:ije,l)/cu(ijb:ije)
    14431443        enddo
    14441444
    1445         ijb=ij_begin
    1446         ije=ij_end
    1447         if (pole_sud) ije=ij_end-iip1
    1448        
    1449         do l=1,llm
     1445        ijb=ij_begin
     1446        ije=ij_end
     1447        if (pole_sud) ije=ij_end-iip1
     1448       
     1449        do l=1,llm
    14501450           vnat(ijb:ije,l)=vcov(ijb:ije,l)/cv(ijb:ije)
    14511451        enddo
     
    14871487        call finalize_parallel
    14881488c$OMP END MASTER
    1489         RETURN
     1489        RETURN
    14901490      END
Note: See TracChangeset for help on using the changeset viewer.