Changeset 734 for LMDZ4/branches


Ignore:
Timestamp:
Nov 10, 2006, 3:42:49 PM (18 years ago)
Author:
Laurent Fairhead
Message:

Nettoyage version parallele
YM/LF

Location:
LMDZ4/branches/V3_test/libf/dyn3dpar
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/V3_test/libf/dyn3dpar/bands.F90

    r630 r734  
    103103          if (jjphy_para_begin(i)==jjphy_para_end(i-1)) then
    104104            jj_Nb_physic_bis(i)=jj_Nb_physic_bis(i)-1
    105           endif
     105          else
     106            jj_Nb_physic_bis(i-1)=jj_Nb_physic_bis(i-1)+1
     107            jj_Nb_physic_bis(i)=jj_Nb_physic_bis(i)-1
     108          endif
    106109        endif
    107110      enddo
     
    401404        CLOSE(unit_number)   
    402405      else
    403         print *,'problème lors de l écriture des bandes'
     406        print *,'probleme lors de l ecriture des bandes'
    404407      endif
    405408       
  • LMDZ4/branches/V3_test/libf/dyn3dpar/grid_noro.F

    r709 r734  
    8383      REAL zsig(imar+1,jmar),zgam(imar+1,jmar),zthe(imar+1,jmar)
    8484      REAL zpic(imar+1,jmar),zval(imar+1,jmar)
    85 c$$$ PB     integer mask(imar+1,jmar)
     85cxxx PB     integer mask(imar+1,jmar)
    8686      real mask(imar+1,jmar), mask_tmp(imar+1,jmar)
    8787      real num_tot(2200,1100),num_lan(2200,1100)
     
    274274         IF (weight(ii,jj) .NE. 0.0) THEN
    275275c  Mask
    276 c$$$           if(num_lan(ii,jj)/num_tot(ii,jj).ge.0.5)then
    277 c$$$             mask(ii,jj)=1
    278 c$$$           else
    279 c$$$             mask(ii,jj)=0
    280 c$$$           ENDIF
     276cXXX           if(num_lan(ii,jj)/num_tot(ii,jj).ge.0.5)then
     277cXXX             mask(ii,jj)=1
     278cXXX           else
     279cXXX             mask(ii,jj)=0
     280cXXX           ENDIF
    281281             if (.not. masque_lu) then
    282282               mask(ii,jj) = num_lan(ii,jj)/num_tot(ii,jj)
     
    319319       CALL MVA9(zxtzy,iim+1,jjm+1)
    320320       CALL MVA9(zytzy,iim+1,jjm+1)
    321 C$$$   Masque prenant en compte maximum de terre
    322 C$$$  On seuil a 10% de terre de terre car en dessous les parametres de surface n'on
    323 C$$$ pas de sens (PB)
     321CXXX   Masque prenant en compte maximum de terre
     322CXXX  On seuil a 10% de terre de terre car en dessous les parametres de surface n'on
     323CXXX pas de sens (PB)
    324324       mask_tmp= 0.0
    325325       WHERE(mask .GE. 0.1) mask_tmp = 1.
     
    339339           if(abs(xm).le.xw) xm=xw*sign(1.,xm)
    340340c slope:
    341 c$$$           zsig(ii,jj)=sqrt(xq)*mask(ii,jj)
    342 c$$$c isotropy:
    343 c$$$           zgam(ii,jj)=xp/xq*mask(ii,jj)
    344 c$$$c angle theta:
    345 c$$$           zthe(ii,jj)=57.29577951*atan2(xm,xl)/2.*mask(ii,jj)
    346 c$$$           zphi(ii,jj)=zmea(ii,jj)*mask(ii,jj)
    347 c$$$           zmea(ii,jj)=zmea(ii,jj)*mask(ii,jj)
    348 c$$$           zpic(ii,jj)=zpic(ii,jj)*mask(ii,jj)
    349 c$$$           zval(ii,jj)=zval(ii,jj)*mask(ii,jj)
    350 c$$$           zstd(ii,jj)=zstd(ii,jj)*mask(ii,jj)
    351 C$$* PB modif pour maque de terre fractionnaire
     341cXXX           zsig(ii,jj)=sqrt(xq)*mask(ii,jj)
     342cXXXc isotropy:
     343cXXX           zgam(ii,jj)=xp/xq*mask(ii,jj)
     344cXXXc angle theta:
     345cXXX           zthe(ii,jj)=57.29577951*atan2(xm,xl)/2.*mask(ii,jj)
     346cXXX           zphi(ii,jj)=zmea(ii,jj)*mask(ii,jj)
     347cXXX           zmea(ii,jj)=zmea(ii,jj)*mask(ii,jj)
     348cXXX           zpic(ii,jj)=zpic(ii,jj)*mask(ii,jj)
     349cXXX           zval(ii,jj)=zval(ii,jj)*mask(ii,jj)
     350cXXX           zstd(ii,jj)=zstd(ii,jj)*mask(ii,jj)
     351CXX* PB modif pour maque de terre fractionnaire
    352352c slope:
    353353           zsig(ii,jj)=sqrt(xq)*mask_tmp(ii,jj)
  • LMDZ4/branches/V3_test/libf/dyn3dpar/leapfrog_p.F

    r726 r734  
    181181      PARAMETER (testita = 9)
    182182     
    183 c declaration liées au parallelisme
     183c declaration liees au parallelisme
    184184      INTEGER :: ierr
    185185      LOGICAL :: FirstCaldyn=.TRUE.
     
    223223c   Debut de l'integration temporelle:
    224224c   ----------------------------------
    225 c et du parallélisme !!
     225c et du parallelisme !!
    226226
    227227   1  CONTINUE
     
    287287cym      CALL filtreg ( finvmaold ,jjp1, llm, -2,2, .TRUE., 1 )
    288288
    289 cym  ne sert à rien
     289cym  ne sert a rien
    290290cym      call minmax(ijp1llm,q(:,:,3),zqmin,zqmax)
    291291
     
    474474        call WriteField_p('ps',reshape(ps,(/iip1,jmp1/)))
    475475        call WriteField_p('masse',reshape(masse,(/iip1,jmp1,llm/)))
     476        call WriteField_p('pk',reshape(pk,(/iip1,jmp1,llm/)))
    476477        call WriteField_p('pks',reshape(pks,(/iip1,jmp1/)))
    477478        call WriteField_p('pkf',reshape(pkf,(/iip1,jmp1,llm/)))
     
    617618
    618619         CALL pression_p (  ip1jmp1, ap, bp, ps,  p      )
     620c$OMP BARRIER
     621
     622c$OMP MASTER
    619623         CALL exner_hyb_p(  ip1jmp1, ps, p,alpha,beta,pks, pk, pkf )
    620 
     624c$OMP END MASTER
     625c$OMP BARRIER
    621626           rdaym_ini  = itau * dtvr / daysec
    622627           rdayvrai   = rdaym_ini  + day_ini
     
    633638c+jld
    634639
    635 c  Diagnostique de conservation de l'énergie : initialisation
     640c  Diagnostique de conservation de l'energie : initialisation
    636641      IF (ip_ebil_dyn.ge.1 ) THEN
    637642          ztit='bil dyn'
     
    689694c$OMP END MASTER
    690695c$OMP BARRIER
     696
     697cc$OMP MASTER   
     698c      call WriteField_p('ucovfi',reshape(ucov,(/iip1,jmp1,llm/)))
     699c      call WriteField_p('vcovfi',reshape(vcov,(/iip1,jjm,llm/)))
     700c      call WriteField_p('tetafi',reshape(teta,(/iip1,jmp1,llm/)))
     701c      call WriteField_p('pfi',reshape(p,(/iip1,jmp1,llmp1/)))
     702c      call WriteField_p('pkfi',reshape(pk,(/iip1,jmp1,llm/)))
     703cc$OMP END MASTER
     704cc$OMP BARRIER
    691705       
    692706        CALL calfis_p( nq, lafin ,rdayvrai,time  ,
     
    830844c$OMP BARRIER
    831845c
    832 c  Diagnostique de conservation de l'énergie : difference
     846c  Diagnostique de conservation de l'energie : difference
    833847      IF (ip_ebil_dyn.ge.1 ) THEN
    834848          ztit='bil phys'
  • LMDZ4/branches/V3_test/libf/dyn3dpar/mod_hallo.F90

    r726 r734  
    430430      type(request_SR),pointer :: Req
    431431      type(Hallo),pointer :: PtrHallo
    432       integer, dimension(4) :: TabRequest
    433       integer, dimension(MPI_STATUS_SIZE,4) :: TabStatus
     432      integer, dimension(2*mpi_size) :: TabRequest
     433      integer, dimension(MPI_STATUS_SIZE,2*mpi_size) :: TabStatus
    434434      integer :: NbRequest
    435435      integer :: i,rank,pos,ij,l,ierr
     
    512512      type(request_SR),pointer :: Req
    513513      type(Hallo),pointer :: PtrHallo
    514       integer, dimension(4) :: TabRequest
    515       integer, dimension(MPI_STATUS_SIZE,4) :: TabStatus
     514      integer, dimension(mpi_size) :: TabRequest
     515      integer, dimension(MPI_STATUS_SIZE,mpi_size) :: TabStatus
    516516      integer :: NbRequest
    517517      integer :: i,rank,pos,ij,l,ierr
     
    553553      type(request_SR),pointer :: Req
    554554      type(Hallo),pointer :: PtrHallo
    555       integer, dimension(4) :: TabRequest
    556       integer, dimension(MPI_STATUS_SIZE,4) :: TabStatus
     555      integer, dimension(mpi_size) :: TabRequest
     556      integer, dimension(MPI_STATUS_SIZE,mpi_size) :: TabStatus
    557557      integer :: NbRequest
    558558      integer :: i,rank,pos,ij,l,ierr
  • LMDZ4/branches/V3_test/libf/dyn3dpar/parallel.F90

    r709 r734  
    410410     
    411411      call Gather_Field(Field,ij,ll,0)
    412       call MPI_BCAST(Field,ij*ll,MPI_REAL8,0,COMM_LMDZ)
     412      call MPI_BCAST(Field,ij*ll,MPI_REAL8,0,COMM_LMDZ,ierr)
    413413     
    414414    end subroutine AllGather_Field
     
    425425      INTEGER :: ierr
    426426     
    427       call MPI_BCAST(Field,ij*ll,MPI_REAL8,rank,COMM_LMDZ)
     427      call MPI_BCAST(Field,ij*ll,MPI_REAL8,rank,COMM_LMDZ,ierr)
    428428     
    429429    end subroutine Broadcast_Field
Note: See TracChangeset for help on using the changeset viewer.