Changeset 5492 for CONFIG_DEVT


Ignore:
Timestamp:
11/02/20 11:40:17 (3 years ago)
Author:
ymipsl
Message:

ensemble interface for orchidee.

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CONFIG_DEVT/LMDZOR_V6.2_work_ENSEMBLES/modeles/LMDZ/libf/phylmd/surf_land_orchidee_mod.F90

    r5477 r5492  
    212212    INTEGER, SAVE                             :: orch_comm 
    213213    !$OMP THREADPRIVATE(orch_comm) 
     214    INTEGER, SAVE                             :: orch_comm_ensemble 
     215    !$OMP THREADPRIVATE(orch_comm_ensemble) 
    214216 
    215217    REAL, ALLOCATABLE, DIMENSION(:), SAVE     :: coastalflow 
     
    501503    IF (debut) THEN 
    502504       CALL Init_orchidee_index(knon,knindex,offset,ktindex) 
    503        CALL Get_orchidee_communicator(orch_comm,orch_mpi_size,orch_mpi_rank, orch_omp_size,orch_omp_rank) 
     505       CALL Get_orchidee_communicator(orch_comm_ensemble, orch_comm,orch_mpi_size,orch_mpi_rank, orch_omp_size,orch_omp_rank) 
    504506 
    505507       IF (grid_type==unstructured) THEN 
     
    550552       IF (knon > 0) THEN 
    551553#ifdef CPP_VEGET 
    552          CALL Init_intersurf(nbp_lon,nbp_lat,knon,ktindex,offset,orch_omp_size,orch_omp_rank,orch_comm,grid=grid_type) 
     554         CALL Init_intersurf(nbp_lon,nbp_lat,knon,ktindex,offset,orch_omp_size,orch_omp_rank, orch_comm_ensemble, grid=grid_type) 
    553555#endif 
    554556       ENDIF 
     
    691693!  
    692694 
    693   SUBROUTINE Get_orchidee_communicator(orch_comm, orch_mpi_size, orch_mpi_rank, orch_omp_size,orch_omp_rank) 
     695  SUBROUTINE Get_orchidee_communicator(orch_comm_ensemble, orch_comm, orch_mpi_size, orch_mpi_rank, orch_omp_size,orch_omp_rank) 
    694696  USE  mod_surf_para 
    695697       
     
    698700#endif     
    699701 
     702    INTEGER,INTENT(OUT) :: orch_comm_ensemble 
    700703    INTEGER,INTENT(OUT) :: orch_comm 
    701704    INTEGER,INTENT(OUT) :: orch_mpi_size 
     
    705708    INTEGER             :: color 
    706709    INTEGER             :: i,ierr 
     710    INTEGER             :: ensemble_com_rank 
     711    INTEGER             :: ensemble_com_size 
    707712! 
    708713! End definition 
     
    717722      ENDIF 
    718723     
    719 #ifdef CPP_MPI     
     724#ifdef CPP_MPI    
     725      CALL MPI_COMM_RANK(COMM_LMDZ_PHY_ENSEMBLE,ensemble_com_rank,ierr) 
     726      CALL MPI_COMM_SIZE(COMM_LMDZ_PHY_ENSEMBLE,ensemble_com_size,ierr) 
     727      PRINT*,"Get_orchidee_communicator before split ",ensemble_com_size, ensemble_com_rank 
     728      CALL MPI_COMM_SPLIT(COMM_LMDZ_PHY_ENSEMBLE,color,ensemble_com_rank,orch_comm_ensemble,ierr) 
     729      CALL MPI_COMM_RANK(orch_comm_ensemble,ensemble_com_rank,ierr) 
     730      CALL MPI_COMM_SIZE(orch_comm_ensemble,ensemble_com_size,ierr) 
     731      PRINT*,"Get_orchidee_communicator after split ",ensemble_com_size, ensemble_com_rank 
    720732      CALL MPI_COMM_SPLIT(COMM_LMDZ_PHY,color,mpi_rank,orch_comm,ierr) 
    721733      CALL MPI_COMM_SIZE(orch_comm,orch_mpi_size,ierr) 
     
    724736     
    725737    ENDIF 
     738    CALL bcast_omp(orch_comm_ensemble) 
    726739    CALL bcast_omp(orch_comm) 
    727740     
Note: See TracChangeset for help on using the changeset viewer.