00001 //=======================================================// _\|/_ 00002 // __ _____ ___ ___ // /|\ 00003 // / | ^ | \ | ^ | \ // _\|/_ 00004 // \__ | / \ |___/ | / \ |___/ // /|\ 00005 // \ | /___\ | \ | /___\ | \ // _\|/_ 00006 // ___/ | / \ | \ |____ / \ |___/ // /|\ 00007 // // _\|/_ 00008 //=======================================================// /|\ 00009 00010 /* 00011 * sigma_MPI.h: definitions for MPI implementation 00012 *............................................................................. 00013 * version 1: November 2000 Simon Portegies Zwart 00014 * version 2: 00015 *............................................................................. 00016 * This file includes: 00017 * 1) definition of state structures 00018 * .... 00019 *............................................................................. 00020 */ 00021 00022 #ifndef STARLAB_SIGMA_MPI_H 00023 # define STARLAB_SIGMA_MPI_H 00024 00025 #include "sigma.h" 00026 #ifdef USE_MPI 00027 #include "mpi++.h" 00028 #else 00029 #include "localmpi++.h" 00030 #endif 00031 00032 void slave_process(int master, 00033 sigma_input &input, MPI_Datatype inputtype, 00034 scatter_exp &experiment, MPI_Datatype scatter_exp_type); 00035 void execute_sigma_experiment(sigma_input &input); 00036 void terminate_all_processors(); 00037 int master_process(sigma_out & out, 00038 sigma_input &input, MPI_Datatype inputtype, 00039 scatter_exp &experiment, MPI_Datatype scatter_exp_type); 00040 00041 #endif 00042 00043 00044