Changeset 475


Ignore:
Timestamp:
02/11/14 13:29:57 (7 years ago)
Author:
aclsce
Message:

Modified to use Oasis-MCT coupler in coupled mode.

Location:
XIOS/trunk
Files:
19 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/arch/arch-GCC_LINUX.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-GCC_MACOSX.path

    r440 r475  
    77HDF5_LIB="" 
    88 
    9 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    10 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    11 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     9OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     10OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     11OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-PW6_VARGAS.path

    r440 r475  
    1111MPI_LIB="" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_ADA.path

    r441 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_CURIE.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz -lcurl" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
    1616 
    1717#only for MEMTRACK debuging : developper only 
  • XIOS/trunk/arch/arch-X64_CURIE_GCC.path

    r440 r475  
    1111HDF5_LIB="" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_CURIE_PGI.path

    r440 r475  
    1111HDF5_LIB="" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_CURIE_VAMPIR.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz -lcurl" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_HORUS.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_JADE.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_TITANE.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz -lcurl" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-X64_TITANE_VAMPIR.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lhdf5 -lz -lcurl" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/arch/arch-XE6_LYNX.path

    r440 r475  
    1111HDF5_LIB="-lhdf5_hl -lhdf5 -lz -lcurl" 
    1212 
    13 OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
    14 OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
    15 OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     13OASIS_INCDIR="-I$PWD/../../oasis3-mct/BLD/build/lib/psmile.MPI1" 
     14OASIS_LIBDIR="-L$PWD/../../oasis3-mct/BLD/lib" 
     15OASIS_LIB="-lpsmile.MPI1 -lscrip -lmct -lmpeu" 
  • XIOS/trunk/bld.cfg

    r462 r475  
    5555bld::excl_dep        use::mod_prism_get_localcomm_proto 
    5656bld::excl_dep        use::mod_prism_proto 
     57bld::excl_dep        use::mod_prism 
    5758bld::excl_dep        inc::mpif.h 
  • XIOS/trunk/make_xios

    r440 r475  
    44compil_full="false" 
    55use_oasis="false" 
     6oasis="oasis3_mct" 
    67use_memtrack="false" 
    78job="1" 
     
    2324            echo "       [--avail] : to know available target architectures " 
    2425            echo "       [--full] : to generate dependencies and recompile from scratch" 
    25             echo "       [--use_oasis] : to use Oasis coupler" 
     26            echo "       [--use_oasis 'oasis3' 'oasis3_mct' : default oasis3_mct] : to use Oasis coupler" 
    2627            echo "       [--doc] : to generate Doxygen documentation (not available yet)" 
    2728            echo "       [--job ntasks] : to use parallel compilation with ntasks" 
     
    3738         "--avail") ls arch/*.fcm | cut -d"-" -f2 | cut -d"." -f1 ; exit ;;  
    3839         "--full")  compil_full="true"  ; shift ;; 
    39          "--use_oasis")  use_oasis="true" ; shift  ;; 
     40         "--use_oasis")  use_oasis="true" oasis=$2 ; shift ; shift  ;; 
    4041         "--doc")   doc="true"          ; shift ;; 
    4142         "--job")   job=$2              ; shift ; shift ;; 
     
    130131if [[ "$use_oasis" == "true" ]] 
    131132   then 
    132    NETCDF_LIB="-lnetcdff -lnetcdf" 
    133    XMLIO_FINCDIR="$OASIS_INCDIR $XMLIO_FINCDIR" 
    134    XMLIO_LIB="$OASIS_LIBDIR $OASIS_LIB $XMLIO_LIB" 
    135    XMLIO_CPPKEY="$XMLIO_CPPKEY USE_OASIS" 
     133    if [[ "$oasis" == "oasis3_mct" ]] 
     134    then 
     135        XMLIO_CPPKEY="$XMLIO_CPPKEY USE_OMCT" 
     136    elif [[ "$oasis" == "oasis3"  ]] 
     137    then 
     138        XMLIO_CPPKEY="$XMLIO_CPPKEY USE_OASIS" 
     139        OASIS_INCDIR="-I$PWD/../../prism/X64/build/lib/psmile.MPI1" 
     140        OASIS_LIBDIR="-L$PWD/../../prism/X64/lib" 
     141        OASIS_LIB="-lpsmile.MPI1 -lmpp_io" 
     142    else 
     143        echo "Bad choice for --use_oasis argument : choose between 'oasis3','oasis3_mct'" 
     144        exit 
     145    fi 
     146    NETCDF_LIB="-lnetcdff -lnetcdf" 
     147    XMLIO_FINCDIR="$OASIS_INCDIR $XMLIO_FINCDIR" 
     148    XMLIO_LIB="$OASIS_LIBDIR $OASIS_LIB $XMLIO_LIB" 
    136149fi  
    137150 
  • XIOS/trunk/src/interface/c/oasis_cinterface.cpp

    r382 r475  
    1616  } 
    1717   
     18  void oasis_enddef(void) 
     19  { 
     20    fxios_oasis_enddef() ; 
     21  } 
     22 
    1823  void oasis_get_localcomm(MPI_Comm& comm) 
    1924  { 
  • XIOS/trunk/src/interface/c/oasis_cinterface.hpp

    r382 r475  
    88 
    99  void fxios_oasis_init(const char* server_id,int str_len) ; 
     10  void fxios_oasis_enddef(void) ; 
    1011  void fxios_oasis_finalize(void) ; 
    1112  void fxios_oasis_get_localcomm(MPI_Fint* f_comm) ; 
     
    1718{ 
    1819  void oasis_init(const std::string& server_id) ; 
     20  void oasis_enddef(void) ; 
    1921  void oasis_finalize(void) ; 
    2022  void oasis_get_localcomm(MPI_Comm& comm) ; 
  • XIOS/trunk/src/interface/fortran/oasis_interface.F90

    r325 r475  
    33#ifdef USE_OASIS 
    44  USE mod_prism_proto 
     5#endif 
     6#ifdef USE_OMCT 
     7  USE mod_prism 
    58#endif 
    69    CHARACTER(kind = C_CHAR),DIMENSION(*) :: server_id 
     
    1619    ENDDO 
    1720 
    18 #ifdef USE_OASIS 
    19     CALL prism_init_comp_proto (comp_id, oasis_server_id, ierr) 
     21#if defined USE_OASIS || defined USE_OMCT 
     22     CALL prism_init_comp_proto (comp_id, oasis_server_id, ierr) 
    2023#endif 
    2124    PRINT *,"---> prism_init",oasis_server_id,ierr 
     
    2326END SUBROUTINE fxios_oasis_init 
    2427 
     28SUBROUTINE fxios_oasis_enddef() BIND(C,NAME="fxios_oasis_enddef") 
     29  USE, INTRINSIC :: ISO_C_BINDING 
     30#ifdef USE_OMCT 
     31  USE mod_prism 
     32#endif 
     33  IMPLICIT NONE 
     34  INTEGER :: ierr 
     35#ifdef USE_OMCT 
     36     CALL prism_enddef_proto(ierr) 
     37#endif 
     38 
     39END SUBROUTINE fxios_oasis_enddef 
    2540 
    2641SUBROUTINE fxios_oasis_finalize() BIND(C,NAME="fxios_oasis_finalize") 
     
    2944  USE mod_prism_proto 
    3045#endif 
     46#ifdef USE_OMCT 
     47  USE mod_prism 
     48#endif 
    3149  IMPLICIT NONE 
    3250  INTEGER :: ierr 
    3351   
    34 #ifdef USE_OASIS 
     52#if defined USE_OASIS || defined USE_OMCT 
    3553    CALL prism_terminate_proto(ierr) 
    3654#endif 
     
    4260  USE, INTRINSIC :: ISO_C_BINDING 
    4361#ifdef USE_OASIS 
    44 !  USE mod_prism_get_localcomm_proto  
     62  USE mod_prism_get_localcomm_proto  
    4563#endif 
     64#ifdef USE_OMCT 
     65  USE mod_prism 
     66#endif  
    4667  IMPLICIT NONE 
    4768  INTEGER(kind=C_INT) :: f_comm 
     
    5071  INTEGER :: ierr 
    5172     
    52 #ifdef USE_OASIS 
     73#if defined USE_OASIS || defined USE_OMCT 
    5374    CALL prism_get_localcomm_proto(comm,ierr) 
    5475#endif 
     
    6485#ifdef USE_OASIS 
    6586  USE mod_prism_get_comm  
     87#endif 
     88#ifdef USE_OMCT 
     89  USE mod_prism 
    6690#endif 
    6791  IMPLICIT NONE 
     
    79103    ENDDO 
    80104     
    81 #ifdef USE_OASIS 
     105#if defined USE_OASIS || defined USE_OMCT 
    82106    CALL prism_get_intracomm(comm_client_server,oasis_client_id,ierr) 
    83107#endif 
     
    91115#ifdef USE_OASIS 
    92116  USE mod_prism_get_comm  
     117#endif 
     118#ifdef USE_OMCT 
     119  USE mod_prism 
    93120#endif 
    94121  IMPLICIT NONE 
     
    106133    ENDDO 
    107134     
    108 #ifdef USE_OASIS 
     135#if defined USE_OASIS || defined USE_OMCT 
    109136    CALL prism_get_intercomm(comm_client_server,oasis_client_id,ierr) 
    110137#endif 
  • XIOS/trunk/src/server.cpp

    r382 r475  
    118118          interComm.push_back(newComm) ; 
    119119        } 
     120        oasis_enddef() ; 
    120121      } 
    121122       
Note: See TracChangeset for help on using the changeset viewer.