Go to the documentation of this file.
14 #ifndef ESYS_LSMWALLFORCEREADER_H
15 #define ESYS_LSMWALLFORCEREADER_H
44 StringUtil::StringVector::const_iterator begin,
45 StringUtil::StringVector::const_iterator end
50 m_id = StringUtil::to<int>(*begin);
51 for (
int i = 0; i < 3; i++) {
52 m_force[i] = StringUtil::to<double>(*(begin + i + 1));
79 const int elemsPerWallForce = 4;
82 if ((elemVector.size() % elemsPerWallForce) == 0)
85 StringUtil::StringVector::const_iterator it = elemVector.begin();
86 it != elemVector.end();
87 it += elemsPerWallForce
90 const WallForce wallForce(it, it + elemsPerWallForce);
100 std::stringstream msg;
104 <<
"' does not contain a number of elements divisible by "
105 << elemsPerWallForce;
106 throw std::runtime_error(msg.str());
const WallId & getId() const
Definition: WallForceReader.h:57
void addRaw2Interactions(std::istream &iStream)
Definition: InteractionToStressConverter.cpp:231
StringVector splitStrings(const std::string &str, const std::string &delim)
Definition: StringUtil.h:169
std::vector< WallForce > WallForceVector
Definition: WallForceReader.h:116
void writeVtkUnstructuredXmlGridInformation(std::ostream &oStream)
Definition: InteractionToStressConverter.cpp:267
int WallId
Definition: WallForceReader.h:31
Definition: WallForceReader.h:121
Definition: WallForceReader.h:33
Definition: WallForceReader.h:29
std::pair< Vec3, Vec3 > WallForcePair
Definition: WallForceReader.h:123
WallForceReader(WallId wallId1, WallId wallId2, std::istream &iStream)
Definition: WallForceReader.h:127
WallForcesRecord::WallId WallId
Definition: WallForceReader.h:124
static const int MAX_LINE_SIZE
Definition: WallForceReader.h:161
WallForcePair next()
Definition: WallForceReader.h:153
bool hasNext() const
Definition: WallForceReader.h:148
void writeFlatUnstructured(std::ostream &oStream)
Definition: InteractionToStressConverter.cpp:319
static bool is3d()
Definition: Contact.h:51
3D bounding box
Definition: BoundingBox.h:28
Definition: CheckPointable.cpp:17
WallId m_id
Definition: WallForceReader.h:67
VEC3_INLINE double & Z()
Definition: vec3.h:121
#define NULL
Definition: t_list.h:17
WallForceReader(WallId wallId1, WallId wallId2)
Definition: WallForceReader.h:135
char m_lineBuffer[MAX_LINE_SIZE]
Definition: WallForceReader.h:164
WallForce()
Definition: WallForceReader.h:35
std::string trim(const std::string &str)
Definition: StringUtil.h:175
WallForce(StringUtil::StringVector::const_iterator begin, StringUtil::StringVector::const_iterator end)
Definition: WallForceReader.h:43
void parseLine(const std::string &line)
Definition: WallForceReader.h:76
const WallForce & get(WallId id) const
Definition: WallForceReader.h:110
const Vec3 getForce() const
Definition: WallForceReader.h:62
esys::lsm::StringVector StringVector
Definition: StringUtil.h:31
WallId m_wallId2
Definition: WallForceReader.h:166
void convert()
Definition: WallForcesToFrictionConverter.cpp:116
void writeFlatStructured(std::ostream &oStream)
Definition: InteractionToStressConverter.cpp:526
WallForce(WallId id, const Vec3 &force)
Definition: WallForceReader.h:39
WallId m_wallId1
Definition: WallForceReader.h:165
Definition: WallForcesToFrictionConverter.h:25
std::istream * m_pIStream
Definition: WallForceReader.h:163
void writeVtkUnstructuredXml(std::ostream &oStream)
Definition: InteractionToStressConverter.cpp:240
Definition: InteractionToStressConverter.h:49
Vec3 m_force
Definition: WallForceReader.h:68
int main(int argc, char *argv[])
Definition: Main.cpp:23
void setStream(std::istream &iStream)
Definition: WallForceReader.h:143
Vec3 getSizes() const
Definition: BoundingBox.hpp:78
WallForceVector m_wallForceVector
Definition: WallForceReader.h:117
BoundingBox getBBox(const std::string &arg)
Definition: Main.cpp:24
WallForcesRecord(const std::string &line)
Definition: WallForceReader.h:71
Lattice Solid Model namespace.
Definition: CheckPointable.cpp:19