Go to the documentation of this file.
17 #ifndef escript_SplitWorld_H
18 #define escript_SplitWorld_H
23 #include <boost/python.hpp>
24 #include <boost/smart_ptr.hpp>
43 boost::python::object
buildDomains(boost::python::tuple t, boost::python::dict
kwargs);
47 void addJob(boost::python::object creator, boost::python::tuple tup, boost::python::dict kw);
48 void addJobPerWorld(boost::python::object creator, boost::python::tuple tup, boost::python::dict kw);
50 void addVariable(std::string name, boost::python::object creator, boost::python::tuple ntup, boost::python::dict
kwargs);
53 std::list<std::pair<std::string, bool> >
getVarList();
65 void copyVariable(
const std::string& src,
const std::string& dest);
76 std::vector<boost::python::object>
create;
77 std::vector<boost::python::tuple>
tupargs;
78 std::vector<boost::python::dict>
kwargs;
91 boost::python::object
raw_buildDomains(boost::python::tuple t, boost::python::dict kwargs);
96 boost::python::object
raw_addJob(boost::python::tuple t, boost::python::dict kwargs);
106 boost::python::object
raw_addVariable(boost::python::tuple t, boost::python::dict kwargs);
std::vector< boost::python::dict > kwargs
Definition: SplitWorld.h:101
unsigned int jobcounter
Definition: SplitWorld.h:103
std::vector< boost::python::tuple > tupargs
Definition: SplitWorld.h:100
double real_t
type of all real-valued scalars in escript
Definition: DataTypes.h:73
DataTypes::real_t getScalarVariable(const std::string &name)
Definition: SplitWorld.cpp:28
unsigned int swcount
Definition: SplitWorld.h:95
void removeVariable(std::string name)
Definition: SplitWorld.cpp:298
Definition: AbstractReducer.h:39
boost::python::object getVarPyInfo()
Definition: SplitWorld.cpp:330
void distributeJobs()
Definition: SplitWorld.cpp:361
int getSubWorldCount()
Definition: SplitWorld.cpp:426
boost::python::object raw_addJob(boost::python::tuple t, boost::python::dict kwargs)
Definition: SplitWorld.cpp:471
Definition: EsysMPI.h:168
boost::shared_ptr< AbstractDomain > Domain_ptr
Definition: AbstractDomain.h:47
bool checkResult(int res, int &mres, const JMPI &info)
Everyone puts in their error code and everyone gets the largest one.
Definition: EsysMPI.cpp:120
escript::SubWorld_ptr localworld
Definition: SplitWorld.h:94
JMPI makeInfo(MPI_Comm comm, bool owncom)
Definition: EsysMPI.cpp:39
void addVariable(std::string name, boost::python::object creator, boost::python::tuple ntup, boost::python::dict kwargs)
Definition: SplitWorld.cpp:285
void clearAllJobs()
Definition: SplitWorld.cpp:346
JMPI leadercom
Definition: SplitWorld.h:93
void copyVariable(const std::string &src, const std::string &dest)
Definition: SplitWorld.cpp:436
boost::shared_ptr< AbstractReducer > Reducer_ptr
Definition: AbstractReducer.h:128
JMPI globalcom
Definition: SplitWorld.h:92
#define MPI_COMM_WORLD
Definition: EsysMPI.h:46
boost::shared_ptr< JMPI_ > JMPI
Definition: EsysMPI.h:70
unsigned int localid
Definition: SplitWorld.h:96
Definition: SplitWorldException.h:38
Definition: SubWorld.h:58
SplitWorld(unsigned int numgroups, MPI_Comm global=91)
Definition: SplitWorld.cpp:41
void runJobs()
Definition: SplitWorld.cpp:122
void addJobPerWorld(boost::python::object creator, boost::python::tuple tup, boost::python::dict kw)
Definition: SplitWorld.cpp:233
std::list< std::pair< std::string, bool > > getVarList()
Definition: SplitWorld.cpp:309
boost::shared_ptr< SubWorld > SubWorld_ptr
Definition: SubWorld.h:157
int getSubWorldID()
Definition: SplitWorld.cpp:431
Definition: SplitWorld.h:49
Definition: AbstractContinuousDomain.cpp:22
void clearPendingJobs()
Definition: SplitWorld.cpp:352
std::vector< boost::python::object > create
Definition: SplitWorld.h:99
boost::python::object getVarPyList()
Definition: SplitWorld.cpp:315
void addJob(boost::python::object creator, boost::python::tuple tup, boost::python::dict kw)
Definition: SplitWorld.cpp:222
int MPI_Comm
Definition: EsysMPI.h:40
boost::python::object buildDomains(boost::python::tuple t, boost::python::dict kwargs)
Definition: SplitWorld.cpp:96
boost::python::object raw_addJobPerWorld(boost::python::tuple t, boost::python::dict kwargs)
Definition: SplitWorld.cpp:490
boost::python::object raw_addVariable(boost::python::tuple t, boost::python::dict kwargs)
Definition: SplitWorld.cpp:511
boost::python::object getLocalObjectVariable(const std::string &name)
Definition: SplitWorld.cpp:34
bool shipString(const char *src, char **dest, MPI_Comm &comm)
Definition: EsysMPI.cpp:174
void getStringFromPyException(boost::python::error_already_set e, std::string &errormsg)
Definition: pyerr.cpp:38
bool manualimport
Definition: SplitWorld.h:104
~SplitWorld()
Definition: SplitWorld.cpp:89
boost::python::object raw_buildDomains(boost::python::tuple t, boost::python::dict kwargs)
Definition: SplitWorld.cpp:454
void clearVariable(std::string name)
Definition: SplitWorld.cpp:304