00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef _FRAME_TL_PARALLEL_H
00011 #define _FRAME_TL_PARALLEL_H
00012
00013 #define NBLOCKS 2
00014 #define MASTER 0
00015
00016 namespace FrameTL
00017 {
00018
00026
00027 MPI_Datatype coefficient_datatype;
00028
00033 void setup_coefficient_datatype ();
00034
00039 template <class PROBLEM>
00040 void send_to_Master (const InfiniteVector<double, typename PROBLEM::Index>&);
00041
00050 template <class PROBLEM>
00051 void receive_all_parts (const PROBLEM&,
00052 InfiniteVector<double, typename PROBLEM::Index>&);
00053
00058 template <class PROBLEM>
00059 void broadcast_vec_from_Master (const PROBLEM&,
00060 InfiniteVector<double, typename PROBLEM::Index>&);
00061
00065 void broadcast_double_from_Master (double& d);
00066
00067
00068 }
00069
00070 #include <parallel.cpp>
00071
00072 #endif