ESyS-Particle  2.3.4
WallFieldMaster.h
Go to the documentation of this file.
1 // //
3 // Copyright (c) 2003-2017 by The University of Queensland //
4 // Centre for Geoscience Computing //
5 // http://earth.uq.edu.au/centre-geoscience-computing //
6 // //
7 // Primary Business: Brisbane, Queensland, Australia //
8 // Licensed under the Open Software License version 3.0 //
9 // http://www.apache.org/licenses/LICENSE-2.0 //
10 // //
12 
13 #ifndef __WALLFIELDMASTER_H
14 #define __WALLFIELDMASTER_H
15 
16 // --- project includes ---
17 #include "FieldMaster.h"
18 #include "vec3.h"
19 
20 // --- STL includes ---
21 #include <vector>
22 #include <map>
23 
24 using std::vector;
25 using std::map;
26 
27 class TML_Comm;
28 
37 {
38  protected:
39  virtual void writeAsRAW_SERIES();
40  virtual void writeAsSILO();
41  map<int,Vec3> m_data;
42  int m_sum_flag; // decides if field is sum of all slaves (force...) or not (pos...)
43 
44  public:
45  VectorWallFieldMaster(TML_Comm*,const string&,const string&,vector<string>,const string&,int,int,int);
47 
48  virtual void collect();
49 };
50 #endif // __WALLFIELDMASTER_H
VectorWallFieldMaster::m_data
map< int, Vec3 > m_data
Definition: WallFieldMaster.h:41
TML_Comm::barrier
void barrier()
Definition: comm.cpp:155
VectorWallFieldMaster::collect
virtual void collect()
Definition: WallFieldMaster.cpp:148
AFieldMaster
Abstract base class for master part of field.
Definition: FieldMaster.h:40
AFieldMaster::m_field_name
string m_field_name
Definition: FieldMaster.h:46
TML_Comm::receive
void receive(T &, int, int=MPI_ANY_TAG)
Definition: comm.hpp:92
Console::Error
Console & Error()
set verbose level of next message to "err"
AFieldMaster::m_file_name
string m_file_name
Definition: FieldMaster.h:47
VectorWallFieldMaster::m_sum_flag
int m_sum_flag
Definition: WallFieldMaster.h:42
VectorWallFieldMaster::writeAsRAW_SERIES
virtual void writeAsRAW_SERIES()
Definition: WallFieldMaster.cpp:39
Vec3::X
VEC3_INLINE double & X()
Definition: vec3.h:119
Console::XDebug
Console & XDebug()
set verbose level of next message to "xdg"
Vec3::Z
VEC3_INLINE double & Z()
Definition: vec3.h:121
NULL
#define NULL
Definition: t_list.h:17
WallFieldMaster.h
Vec3::Y
VEC3_INLINE double & Y()
Definition: vec3.h:120
comm.h
VectorWallFieldMaster::writeAsSILO
virtual void writeAsSILO()
Definition: WallFieldMaster.cpp:64
Vec3
Definition: vec3.h:47
openSiloFile
DBfile * openSiloFile(const string &filename)
Definition: frame_silo.cpp:105
esys::lsm::bpu::iter
boost::python::object iter(const boost::python::object &pyOb)
Definition: Util.h:25
VectorWallFieldMaster::VectorWallFieldMaster
VectorWallFieldMaster(TML_Comm *, const string &, const string &, vector< string >, const string &, int, int, int)
Definition: WallFieldMaster.cpp:122
TML_Comm
abstract base class for communicator
Definition: comm.h:47
FieldMaster.h
TML_Comm::broadcast
void broadcast(T)
Definition: comm_coll.hpp:23
TML_Comm::broadcast_cont
void broadcast_cont(const T &)
Definition: comm_coll.hpp:46
VectorWallFieldMaster
Master part of vector field on walls.
Definition: WallFieldMaster.h:37
TML_Comm::gather
void gather(multimap< int, T > &)
Definition: comm_coll.hpp:273
console
Console console
Definition: console.cpp:25
VectorWallFieldMaster::~VectorWallFieldMaster
virtual ~VectorWallFieldMaster()
Definition: WallFieldMaster.h:46
AFieldMaster::m_comm
TML_Comm * m_comm
Definition: FieldMaster.h:45
TML_Comm::size
int size()
Definition: comm.cpp:69
AFieldMaster::m_id
int m_id
Definition: FieldMaster.h:49