|
OPALX (Object Oriented Parallel Accelerator Library for Exascale) MINIorX
OPALX
|
#include <BoundaryGeometry.h>


Public Types | |
| enum | DebugFlags { debug_isInside = 0x0001 , debug_fastIsInside = 0x0002 , debug_intersectRayBoundary = 0x0004 , debug_intersectLineSegmentBoundary = 0x0008 , debug_intersectTinyLineSegmentBoundary = 0x0010 , debug_PartInside = 0x0020 } |
Public Member Functions | |
| BoundaryGeometry () | |
| virtual | ~BoundaryGeometry () |
| virtual bool | canReplaceBy (Object *object) |
| Test if replacement is allowed. More... | |
| virtual BoundaryGeometry * | clone (const std::string &name) |
| Return a clone. More... | |
| virtual void | execute () |
| Execute the command. More... | |
| virtual void | update () |
| Update this object. More... | |
| void | updateElement (ElementBase *element) |
| void | initialize () |
| int | partInside (const Vector_t< double, 3 > &r, const Vector_t< double, 3 > &v, const double dt, Vector_t< double, 3 > &intecoords, int &triId) |
| Determine whether a particle with position. More... | |
| Inform & | printInfo (Inform &os) const |
| void | writeGeomToVtk (std::string fn) |
| std::string | getFilename () const |
| Topology | getTopology () const |
| double | getA () |
| double | getB () |
| double | getC () |
| double | getS () |
| double | getLength () |
| double | getL1 () |
| double | getL2 () |
| size_t | getNumBFaces () |
| Return number of boundary faces. More... | |
| Vector_t< double, 3 > | gethr () |
| Return the hr_m. More... | |
| Vector_t< int, 3 > | getnr () |
| Return the nr_m. More... | |
| Vector_t< double, 3 > | getmincoords () |
| Return the mincoords_m. More... | |
| Vector_t< double, 3 > | getmaxcoords () |
| Return the maxcoords_m. More... | |
| bool | getInsidePoint (Vector_t< double, 3 > &pt) |
| bool | findInsidePoint (void) |
| int | intersectRayBoundary (const Vector_t< double, 3 > &P, const Vector_t< double, 3 > &v, Vector_t< double, 3 > &I) |
| int | fastIsInside (const Vector_t< double, 3 > &reference_pt, const Vector_t< double, 3 > &P) |
| void | enableDebug (enum DebugFlags flags) |
| void | disableDebug (enum DebugFlags flags) |
| virtual const std::string | getCategory () const |
| Return the object category as a string. More... | |
| virtual bool | shouldTrace () const |
| Trace flag. More... | |
| virtual bool | shouldUpdate () const |
| Update flag. More... | |
| void | copyAttributes (const Object &) |
| Copy attributes from another object. More... | |
| virtual Attribute * | findAttribute (const std::string &name) |
| Find an attribute by name. More... | |
| virtual const Attribute * | findAttribute (const std::string &name) const |
| Find an attribute by name. More... | |
| virtual Object * | makeTemplate (const std::string &, TokenStream &, Statement &) |
| Macro handler function. More... | |
| virtual Object * | makeInstance (const std::string &name, Statement &, const Parser *) |
| Macro handler function. More... | |
| virtual void | parse (Statement &) |
| Parse the object. More... | |
| virtual void | parseShortcut (Statement &, bool eval=true) |
| Parser for single-attribute commands. More... | |
| virtual void | print (std::ostream &) const |
| Print the object. More... | |
| virtual void | printValue (std::ostream &) const |
| virtual void | printHelp (std::ostream &) const |
| Print help. More... | |
| virtual void | replace (Object *oldObject, Object *newObject) |
| Replace references. More... | |
| bool | isBuiltin () const |
| True, if [b]this[/b] is a built-in object. More... | |
| virtual bool | isShared () const |
| Shared flag. More... | |
| virtual void | setShared (bool) |
| Set/reset shared flag. More... | |
| void | setDirty (bool) |
| Set/reset the [b]modified[/b] flag. More... | |
| bool | isDirty () const |
| True, if the [b]modified[/b] flag is set. More... | |
| void | setFlag (bool) |
| Flag/unflag this object, e. g. to control output of objects for. More... | |
| bool | isFlagged () const |
| True, if [b]this[/b] is flagged by setFlag(true). More... | |
| const Object * | getBaseObject () const |
| Return the object's base type object. More... | |
| const std::string & | getOpalName () const |
| Return object name. More... | |
| Object * | getParent () const |
| Return parent pointer. More... | |
| bool | isTreeMember (const Object *subTree) const |
| Test for tree membership. More... | |
| void | setOpalName (const std::string &name) |
| Set object name. More... | |
| void | setParent (Object *) |
| Set parent object. More... | |
| void | clear () |
| Clear the occurrence counter. More... | |
| int | increment () |
| Increment and return the occurrence counter. More... | |
| int | occurrenceCount () |
| Return the occurrence counter. More... | |
| void | registerReference (Invalidator *a) |
| Register a reference to this object. More... | |
| void | unregisterReference (Invalidator *a) |
| Unegister a reference to this object. More... | |
| void | registerOwnership (const AttributeHandler::OwnerType &itsClass) const |
| int | addReference () const |
| Increment reference count. More... | |
| int | removeReference () const |
| Decrement the reference count. More... | |
Static Public Member Functions | |
| static BoundaryGeometry * | find (const std::string &name) |
Public Attributes | |
| std::vector< Attribute > | itsAttr |
| The object attributes. More... | |
Protected Attributes | |
| bool | builtin |
| Built-in flag. More... | |
| bool | modified |
| Dirty flag. More... | |
| bool | flagged |
| Object flag. More... | |
Private Types | |
| enum | INTERSECTION_TESTS { SEGMENT , RAY , LINE } |
| enum | { FGEOM , LENGTH , S , L1 , L2 , A , B , C , TOPO , ZSHIFT , XYZSCALE , XSCALE , YSCALE , ZSCALE , INSIDEPOINT , SIZE } |
Private Member Functions | |
| bool | isInside (const Vector_t< double, 3 > &P) |
| int | intersectTriangleVoxel (const int triangle_id, const int i, const int j, const int k) |
| int | intersectTinyLineSegmentBoundary (const Vector_t< double, 3 > &, const Vector_t< double, 3 > &, Vector_t< double, 3 > &, int &) |
| int | intersectLineSegmentBoundary (const Vector_t< double, 3 > &P0, const Vector_t< double, 3 > &P1, Vector_t< double, 3 > &intersection_pt, int &triangle_id) |
| BoundaryGeometry (const BoundaryGeometry &) | |
| void | operator= (const BoundaryGeometry &) |
| BoundaryGeometry (const std::string &name, BoundaryGeometry *parent) | |
| const Vector_t< double, 3 > & | getPoint (const int triangle_id, const int vertex_id) |
| int | intersectLineTriangle (const enum INTERSECTION_TESTS kind, const Vector_t< double, 3 > &P0, const Vector_t< double, 3 > &P1, const int triangle_id, Vector_t< double, 3 > &I) |
| int | mapVoxelIndices2ID (const int i, const int j, const int k) |
| Vector_t< double, 3 > | mapIndices2Voxel (const int, const int, const int) |
| Vector_t< double, 3 > | mapPoint2Voxel (const Vector_t< double, 3 > &) |
| void | computeMeshVoxelization (void) |
Private Attributes | |
| std::string | h5FileName_m |
| std::vector< Vector_t< double, 3 > > | Points_m |
| std::vector< std::array< unsigned int, 4 > > | Triangles_m |
| std::vector< Vector_t< double, 3 > > | TriNormals_m |
| std::vector< double > | TriAreas_m |
| Vector_t< double, 3 > | minExtent_m |
| Vector_t< double, 3 > | maxExtent_m |
| struct { | |
| Vector_t< double, 3 > | minExtent |
| Vector_t< double, 3 > | maxExtent |
| Vector_t< double, 3 > | sizeOfVoxel |
| Vector_t< int, 3 > | nr_m |
| std::unordered_map< int, std::unordered_set< int > > | ids |
| } | voxelMesh_m |
| int | debugFlags_m |
| bool | haveInsidePoint_m |
| Vector_t< double, 3 > | insidePoint_m |
| gsl_rng * | randGen_m |
| IpplTimings::TimerRef | Tinitialize_m |
| IpplTimings::TimerRef | TisInside_m |
| IpplTimings::TimerRef | TfastIsInside_m |
| IpplTimings::TimerRef | TRayTrace_m |
| IpplTimings::TimerRef | TPartInside_m |
| Object * | itsParent |
| std::string | itsName |
| std::string | itsHelp |
| int | occurrence |
| double | timeStamp |
| std::set< Invalidator * > | references |
| bool | sharedFlag |
| int | refCount |
Definition at line 54 of file BoundaryGeometry.h.
|
private |
| Enumerator | |
|---|---|
| FGEOM | |
| LENGTH | |
| S | |
| L1 | |
| L2 | |
| A | |
| B | |
| C | |
| TOPO | |
| ZSHIFT | |
| XYZSCALE | |
| XSCALE | |
| YSCALE | |
| ZSCALE | |
| INSIDEPOINT | |
| SIZE | |
Definition at line 266 of file BoundaryGeometry.h.
| Enumerator | |
|---|---|
| debug_isInside | |
| debug_fastIsInside | |
| debug_intersectRayBoundary | |
| debug_intersectLineSegmentBoundary | |
| debug_intersectTinyLineSegmentBoundary | |
| debug_PartInside | |
Definition at line 176 of file BoundaryGeometry.h.
|
private |
| Enumerator | |
|---|---|
| SEGMENT | |
| RAY | |
| LINE | |
Definition at line 255 of file BoundaryGeometry.h.
| BoundaryGeometry::BoundaryGeometry | ( | ) |
Definition at line 950 of file BoundaryGeometry.cpp.
References A, B, Object::builtin, C, clone(), OpalData::define(), FGEOM, OpalData::getInstance(), Attributes::getString(), IpplTimings::getTimer(), h5FileName_m, initialize(), INSIDEPOINT, Object::itsAttr, L1, L2, LENGTH, Attributes::makePredefinedString(), Attributes::makeReal(), Attributes::makeRealArray(), Attributes::makeString(), randGen_m, Object::registerOwnership(), S, AttributeHandler::STATEMENT, TfastIsInside_m, Tinitialize_m, TisInside_m, TOPO, TPartInside_m, TRayTrace_m, update(), XSCALE, XYZSCALE, YSCALE, ZSCALE, and ZSHIFT.
Referenced by clone().

|
virtual |
Definition at line 1037 of file BoundaryGeometry.cpp.
References randGen_m.
|
private |
|
private |
Definition at line 1021 of file BoundaryGeometry.cpp.
References FGEOM, Attributes::getString(), IpplTimings::getTimer(), h5FileName_m, initialize(), Object::itsAttr, randGen_m, TfastIsInside_m, Tinitialize_m, TisInside_m, TPartInside_m, and TRayTrace_m.

|
inlineinherited |
Increment reference count.
Definition at line 83 of file RCObject.h.
References RCObject::refCount.
Referenced by Pointer< Object >::operator=(), and Pointer< Object >::unique().
|
virtual |
Test if replacement is allowed.
Reimplemented from Object.
Definition at line 1041 of file BoundaryGeometry.cpp.
|
inherited |
Clear the occurrence counter.
Definition at line 339 of file Object.cpp.
References Object::occurrence.
|
virtual |
Return a clone.
Implements Object.
Definition at line 1046 of file BoundaryGeometry.cpp.
References BoundaryGeometry().
Referenced by BoundaryGeometry(), and TrackRun::setupBoundaryGeometry().

|
inlineprivate |
Definition at line 1496 of file BoundaryGeometry.cpp.
References Util::combineFilePath(), ippl::Comm, Options::enableVTK, endl(), OpalData::getAuxiliaryOutputDirectory(), OpalData::getInstance(), getPoint(), gmsg, h5FileName_m, INSIDE, intersectTriangleVoxel(), level2(), mapPoint2VoxelIndices, mapVoxelIndices2ID(), ippl::max(), ippl::min(), Triangles_m, and voxelMesh_m.
Referenced by initialize().

|
inherited |
Copy attributes from another object.
Definition at line 54 of file Object.cpp.
References Object::itsAttr.
Referenced by SequenceTemplate::makeInstance(), and LineTemplate::makeInstance().
|
inline |
Definition at line 189 of file BoundaryGeometry.h.
References debugFlags_m.
|
inline |
Definition at line 185 of file BoundaryGeometry.h.
References debugFlags_m.
|
virtual |
Execute the command.
Reimplemented from Object.
Definition at line 1055 of file BoundaryGeometry.cpp.
References IpplTimings::getTimer(), TfastIsInside_m, Tinitialize_m, TisInside_m, TPartInside_m, TRayTrace_m, and update().

| int BoundaryGeometry::fastIsInside | ( | const Vector_t< double, 3 > & | reference_pt, |
| const Vector_t< double, 3 > & | P | ||
| ) |
Definition at line 1365 of file BoundaryGeometry.cpp.
References Physics::c, debug_fastIsInside, debug_intersectTinyLineSegmentBoundary, debugFlags_m, endl(), gmsg, intersectTinyLineSegmentBoundary(), magnitude(), maxExtent_m, ippl::min(), minExtent_m, IpplTimings::startTimer(), IpplTimings::stopTimer(), TfastIsInside_m, and voxelMesh_m.
Referenced by findInsidePoint(), and isInside().

|
static |
Definition at line 1064 of file BoundaryGeometry.cpp.
References OpalData::find(), and OpalData::getInstance().
Referenced by TrackRun::setupBoundaryGeometry().

|
virtualinherited |
Find an attribute by name.
Definition at line 64 of file Object.cpp.
References Object::itsAttr.
Referenced by SequenceParser::findNeighbourPositions(), OpalElement::getParticleMatterInteraction(), OpalElement::getTypeName(), OpalElement::getWakeF(), Object::parse(), OpalElement::parse(), Line::parse(), OpalParser::parseAssign(), SequenceParser::parsePosition(), and Object::parseShortcut().
|
virtualinherited |
| bool BoundaryGeometry::findInsidePoint | ( | void | ) |
Definition at line 1308 of file BoundaryGeometry.cpp.
References B, endl(), fastIsInside(), gmsg, insidePoint_m, level2(), maxExtent_m, and minExtent_m.
Referenced by initialize().

|
inline |
Definition at line 97 of file BoundaryGeometry.h.
References A, Attributes::getReal(), and Object::itsAttr.

|
inline |
Definition at line 101 of file BoundaryGeometry.h.
References B, Attributes::getReal(), and Object::itsAttr.

|
inherited |
Return the object's base type object.
Definition at line 301 of file Object.cpp.
References Object::itsParent.
|
inline |
Definition at line 105 of file BoundaryGeometry.h.
References C, Attributes::getReal(), and Object::itsAttr.

|
virtualinherited |
Return the object category as a string.
Implements Object.
Definition at line 29 of file Definition.cpp.
|
inline |
Definition at line 84 of file BoundaryGeometry.h.
References FGEOM, Attributes::getString(), and Object::itsAttr.

|
inline |
|
inline |
Definition at line 158 of file BoundaryGeometry.h.
References haveInsidePoint_m, and insidePoint_m.
|
inline |
Definition at line 117 of file BoundaryGeometry.h.
References Attributes::getReal(), Object::itsAttr, and L1.

|
inline |
Definition at line 121 of file BoundaryGeometry.h.
References Attributes::getReal(), Object::itsAttr, and L2.

|
inline |
Definition at line 113 of file BoundaryGeometry.h.
References Attributes::getReal(), Object::itsAttr, and LENGTH.

|
inline |
|
inline |
|
inline |
|
inline |
Return number of boundary faces.
Definition at line 128 of file BoundaryGeometry.h.
References Triangles_m.
|
inherited |
Return object name.
Definition at line 308 of file Object.cpp.
References Object::itsName.
Referenced by OpalOffset::OpalLocalCartesianOffset::clone(), Macro::clone(), OpalData::create(), OpalData::define(), Sequence::findDriftLength(), SequenceParser::findNeighbourPositions(), ValueDefinition::getBool(), ValueDefinition::getBoolComponent(), ValueDefinition::getReal(), ValueDefinition::getRealComponent(), ValueDefinition::getString(), ValueDefinition::getStringComponent(), Object::makeInstance(), SequenceTemplate::makeInstance(), LineTemplate::makeInstance(), Object::parse(), SequenceParser::parseMember(), SequenceParser::parsePosition(), Object::parseShortcut(), Object::print(), OpalElement::print(), Sequence::print(), BoolConstant::print(), RealConstant::print(), RealVariable::print(), RealVector::print(), StringConstant::print(), Beam::print(), OpalFilter::print(), Line::print(), printInfo(), FieldSolverCmd::printInfo(), OpalElement::registerOwnership(), Object::registerOwnership(), Line::replace(), Sequence::replace(), OpalOffset::OpalGlobalCartesianOffset::update(), OpalOffset::OpalGlobalCylindricalOffset::update(), OpalOffset::OpalLocalCartesianOffset::update(), OpalOffset::OpalLocalCylindricalOffset::update(), Beam::update(), update(), and OpalFilter::update().
|
inherited |
Return parent pointer.
Definition at line 313 of file Object.cpp.
References Object::itsParent.
Referenced by OpalData::erase(), Object::print(), OpalElement::print(), OpalElement::registerOwnership(), and Object::registerOwnership().
|
inlineprivate |
Definition at line 250 of file BoundaryGeometry.h.
References PAssert, Points_m, and Triangles_m.
Referenced by computeMeshVoxelization(), initialize(), intersectLineTriangle(), intersectTinyLineSegmentBoundary(), and intersectTriangleVoxel().
|
inline |
Definition at line 109 of file BoundaryGeometry.h.
References Attributes::getReal(), Object::itsAttr, and S.

|
inline |
Definition at line 88 of file BoundaryGeometry.h.
References BOXCORNER, ELLIPTIC, Attributes::getString(), Object::itsAttr, RECTANGULAR, and TOPO.
Referenced by printInfo().

|
inherited |
Increment and return the occurrence counter.
Definition at line 344 of file Object.cpp.
References Object::occurrence.
Referenced by Line::parse(), and Sequence::storeLine().
| void BoundaryGeometry::initialize | ( | ) |
Definition at line 1549 of file BoundaryGeometry.cpp.
References A, B, C, ippl::Comm, computeArea(), computeMeshVoxelization(), debugFlags_m, dot(), endl(), findInsidePoint(), getPoint(), Attributes::getReal(), Attributes::getRealArray(), gmsg, h5FileName_m, haveInsidePoint_m, INSIDEPOINT, insidePoint_m, intersectLineTriangle(), isInside(), Object::itsAttr, level2(), ippl::max(), maxExtent_m, minExtent_m, normalVector(), PAssert, PointID, Points_m, randGen_m, SEGMENT, SQR, IpplTimings::startTimer(), IpplTimings::stopTimer(), Tinitialize_m, TisInside_m, Triangles_m, TriAreas_m, TriNormals_m, voxelMesh_m, XSCALE, XYZSCALE, YSCALE, ZSCALE, and ZSHIFT.
Referenced by BoundaryGeometry().

|
private |
Definition at line 2180 of file BoundaryGeometry.cpp.
References debug_intersectLineSegmentBoundary, debug_intersectTinyLineSegmentBoundary, debugFlags_m, endl(), gmsg, intersectTinyLineSegmentBoundary(), mapPoint2VoxelIndices, ippl::max(), and ippl::min().
Referenced by intersectRayBoundary().

|
private |
Definition at line 1128 of file BoundaryGeometry.cpp.
References cross(), dot(), cmp_ulp::eq_zero(), cmp_ulp::ge_zero(), getPoint(), cmp_ulp::gt(), cmp_ulp::le(), LINE, cmp_ulp::lt(), cmp_ulp::lt_zero(), RAY, and SEGMENT.
Referenced by initialize(), and intersectTinyLineSegmentBoundary().

| int BoundaryGeometry::intersectRayBoundary | ( | const Vector_t< double, 3 > & | P, |
| const Vector_t< double, 3 > & | v, | ||
| Vector_t< double, 3 > & | I | ||
| ) |
Definition at line 1416 of file BoundaryGeometry.cpp.
References Physics::c, debug_intersectLineSegmentBoundary, debug_intersectRayBoundary, debugFlags_m, endl(), gmsg, intersectLineSegmentBoundary(), IpplTimings::startTimer(), IpplTimings::stopTimer(), TRayTrace_m, and voxelMesh_m.

|
private |
Definition at line 2049 of file BoundaryGeometry.cpp.
References debug_intersectTinyLineSegmentBoundary, debugFlags_m, endl(), cmp_ulp::eq_zero(), getPoint(), gmsg, Voxel::intersect(), intersectLineTriangle(), LINE, mapIndices2Voxel(), mapPoint2VoxelIndices, mapVoxelIndices2ID(), ippl::max(), ippl::min(), PAssert, Voxel::pts, and voxelMesh_m.
Referenced by fastIsInside(), intersectLineSegmentBoundary(), and partInside().

|
private |
Definition at line 1075 of file BoundaryGeometry.cpp.
References getPoint(), Voxel::intersect(), and voxelMesh_m.
Referenced by computeMeshVoxelization().

|
inherited |
True, if [b]this[/b] is a built-in object.
Definition at line 266 of file Object.cpp.
References Object::builtin.
Referenced by OpalData::define(), and OpalData::getVariableNames().
|
inherited |
True, if the [b]modified[/b] flag is set.
Definition at line 287 of file Object.cpp.
References Object::modified.
|
inherited |
True, if [b]this[/b] is flagged by setFlag(true).
Definition at line 297 of file Object.cpp.
References Object::flagged.
|
private |
Definition at line 1205 of file BoundaryGeometry.cpp.
References fastIsInside(), cmp_ulp::lt(), maxExtent_m, and minExtent_m.
Referenced by initialize().

|
virtualinherited |
Shared flag.
Definition at line 271 of file Object.cpp.
References Object::sharedFlag.
Referenced by Sequence::print().
|
inherited |
Test for tree membership.
Definition at line 318 of file Object.cpp.
References Object::itsParent.
Referenced by Selector::handleElement(), and OpalParser::parseAssign().
|
virtualinherited |
Macro handler function.
Reimplemented in SequenceTemplate, MacroCmd, and LineTemplate.
Definition at line 89 of file Object.cpp.
References Object::getOpalName().
Referenced by OpalParser::parseDefine(), and OpalParser::parseMacro().

|
virtualinherited |
Macro handler function.
Reimplemented in LineTemplate, Sequence, MacroCmd, SequenceTemplate, and Line.
Definition at line 82 of file Object.cpp.
Referenced by OpalParser::parseMacro().
|
inlineprivate |
Definition at line 1480 of file BoundaryGeometry.cpp.
References voxelMesh_m.
Referenced by intersectTinyLineSegmentBoundary(), and mapPoint2Voxel().
|
inlineprivate |
Definition at line 1488 of file BoundaryGeometry.cpp.
References mapIndices2Voxel(), and voxelMesh_m.

|
inlineprivate |
Definition at line 1459 of file BoundaryGeometry.cpp.
References voxelMesh_m.
Referenced by computeMeshVoxelization(), and intersectTinyLineSegmentBoundary().
|
inherited |
Return the occurrence counter.
Definition at line 349 of file Object.cpp.
References Object::occurrence.
|
private |
|
virtualinherited |
Parse the object.
Reimplemented in Call, Echo, Help, PSystem, System, Title, Value, OpalElement, Sequence, and Line.
Definition at line 95 of file Object.cpp.
References Statement::delimiter(), Object::findAttribute(), Object::getOpalName(), Expressions::parseDelimiter(), Expressions::parseRealConst(), and Expressions::parseString().
Referenced by Sequence::parse(), OpalParser::parseAction(), OpalParser::parseDefine(), and SequenceTemplate::parseTemplate().

|
virtualinherited |
Parser for single-attribute commands.
Definition at line 127 of file Object.cpp.
References Statement::delimiter(), Object::findAttribute(), Object::getOpalName(), Statement::mark(), and Statement::word().
Referenced by Call::parse(), Echo::parse(), Help::parse(), PSystem::parse(), System::parse(), Title::parse(), and Value::parse().

| int BoundaryGeometry::partInside | ( | const Vector_t< double, 3 > & | r, |
| const Vector_t< double, 3 > & | v, | ||
| const double | dt, | ||
| Vector_t< double, 3 > & | intersect_pt, | ||
| int & | triangle_id | ||
| ) |
Determine whether a particle with position.
| r,momenta |
param v , and time step
| dt | will hit the boundary. |
return value: -1 no collison with boundary 0 particle will collide with boundary in next time step
Definition at line 2240 of file BoundaryGeometry.cpp.
References Physics::c, debug_intersectTinyLineSegmentBoundary, debug_PartInside, debugFlags_m, dot(), endl(), gmsg, intersectTinyLineSegmentBoundary(), IpplTimings::startTimer(), IpplTimings::stopTimer(), and TPartInside_m.

|
virtualinherited |
Print the object.
Reimplemented in OpalElement, OpalMarker, OpalMultipole, OpalOffset::OpalGlobalCartesianOffset, OpalOffset::OpalGlobalCylindricalOffset, OpalOffset::OpalLocalCartesianOffset, OpalOffset::OpalLocalCylindricalOffset, OpalRingDefinition, Sequence, BoolConstant, RealConstant, RealVariable, RealVector, StringConstant, DumpEMFields, DumpFields, OpalMultipoleT, Beam, OpalFilter, and Line.
Definition at line 159 of file Object.cpp.
References endl(), Object::getOpalName(), Object::getParent(), and Object::itsAttr.
Referenced by Object::printValue().

|
virtualinherited |
Print help.
Definition at line 199 of file Object.cpp.
References endl(), gmsg, Object::itsAttr, Object::itsHelp, and ippl::max().
Referenced by Help::execute().

Definition at line 2324 of file BoundaryGeometry.cpp.
References A, B, BOXCORNER, C, endl(), FGEOM, Object::getOpalName(), Attributes::getReal(), Attributes::getString(), getTopology(), Object::itsAttr, L1, L2, LENGTH, S, TOPO, XSCALE, XYZSCALE, YSCALE, and ZSCALE.
Referenced by operator<<().

|
inlinevirtualinherited |
Reimplemented in BoolConstant, RealConstant, RealVariable, RealVector, and StringConstant.
Definition at line 280 of file Object.h.
References Object::print().

|
inherited |
Definition at line 189 of file Object.cpp.
References AttributeHandler::addAttributeOwner(), end(), Object::getOpalName(), Object::getParent(), and Object::itsAttr.
Referenced by Beam::Beam(), BoolConstant::BoolConstant(), BoundaryGeometry(), Call::Call(), Distribution::Distribution(), DumpEMFields::DumpEMFields(), DumpFields::DumpFields(), Echo::Echo(), Help::Help(), Line::Line(), OpalFilter::OpalFilter(), Option::Option(), PSystem::PSystem(), RealConstant::RealConstant(), RealVariable::RealVariable(), RealVector::RealVector(), Select::Select(), Sequence::Sequence(), StringConstant::StringConstant(), System::System(), Title::Title(), TrackCmd::TrackCmd(), TrackRun::TrackRun(), and Value::Value().

|
inherited |
Register a reference to this object.
Definition at line 180 of file Object.cpp.
References Object::references.
|
inlineinherited |
Decrement the reference count.
Definition at line 88 of file RCObject.h.
References RCObject::refCount.
|
inherited |
Set/reset the [b]modified[/b] flag.
Definition at line 281 of file Object.cpp.
References Object::modified.
Referenced by OpalData::define(), OpalData::makeDirty(), and RealVariable::RealVariable().
|
inherited |
Flag/unflag this object, e. g. to control output of objects for.
Definition at line 292 of file Object.cpp.
References Object::flagged.
|
inherited |
Set object name.
Definition at line 329 of file Object.cpp.
References Object::itsName.
Referenced by Beam::update(), update(), and OpalFilter::update().
|
inherited |
Set parent object.
Definition at line 334 of file Object.cpp.
References Object::itsParent.
Referenced by OpalData::erase().
|
virtualinherited |
Set/reset shared flag.
Reimplemented in Element.
Definition at line 276 of file Object.cpp.
References Object::sharedFlag.
Referenced by OpalParser::parseDefine(), and Element::setShared().
|
virtualinherited |
|
virtualinherited |
|
inherited |
Unegister a reference to this object.
Definition at line 185 of file Object.cpp.
References Object::references.
|
virtual |
Update this object.
Reimplemented from Object.
Definition at line 1050 of file BoundaryGeometry.cpp.
References Object::getOpalName(), and Object::setOpalName().
Referenced by BoundaryGeometry(), and execute().

| void BoundaryGeometry::updateElement | ( | ElementBase * | element | ) |
Definition at line 1072 of file BoundaryGeometry.cpp.
| void BoundaryGeometry::writeGeomToVtk | ( | std::string | fn | ) |
Definition at line 2292 of file BoundaryGeometry.cpp.
References endl(), PAssert, PointID, Points_m, and Triangles_m.
Referenced by DataSink::writeGeomToVtk().

|
protectedinherited |
Built-in flag.
Definition at line 233 of file Object.h.
Referenced by Beam::Beam(), BoundaryGeometry(), Object::isBuiltin(), Object::Object(), OpalFilter::OpalFilter(), OpalMarker::OpalMarker(), RealConstant::RealConstant(), StringConstant::StringConstant(), and Table::~Table().
|
private |
Definition at line 231 of file BoundaryGeometry.h.
Referenced by disableDebug(), enableDebug(), fastIsInside(), initialize(), intersectLineSegmentBoundary(), intersectRayBoundary(), intersectTinyLineSegmentBoundary(), and partInside().
|
protectedinherited |
Object flag.
Definition at line 242 of file Object.h.
Referenced by Object::isFlagged(), Object::Object(), and Object::setFlag().
|
private |
Definition at line 206 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), computeMeshVoxelization(), and initialize().
|
private |
Definition at line 233 of file BoundaryGeometry.h.
Referenced by getInsidePoint(), and initialize().
|
private |
Definition at line 234 of file BoundaryGeometry.h.
Referenced by findInsidePoint(), getInsidePoint(), and initialize().
|
inherited |
The object attributes.
Definition at line 216 of file Object.h.
Referenced by Beam::Beam(), BoolConstant::BoolConstant(), BoundaryGeometry(), DumpEMFields::buildGrid(), DumpFields::buildGrid(), Call::Call(), FieldSolverCmd::constructBCHandler(), Object::copyAttributes(), Distribution::Distribution(), DumpEMFields::DumpEMFields(), DumpFields::DumpFields(), Echo::Echo(), Call::execute(), Echo::execute(), Help::execute(), Option::execute(), PSystem::execute(), Select::execute(), System::execute(), Title::execute(), Value::execute(), Beam::execute(), TrackCmd::execute(), TrackRun::execute(), FieldSolverCmd::FieldSolverCmd(), Object::findAttribute(), getA(), OpalElement::getApert(), getB(), BoolConstant::getBool(), FieldSolverCmd::getBoxIncr(), getC(), Beam::getCharge(), Beam::getCurrent(), FieldSolverCmd::getDomDec(), TrackCmd::getDT(), TrackCmd::getDTAU(), TrackCmd::getDTSCINIT(), getFilename(), Beam::getFrequency(), getL1(), getL2(), getLength(), OpalElement::getLength(), Line::getLength(), Sequence::getLength(), Beam::getMass(), TrackCmd::getMaxSteps(), Beam::getNumberOfParticles(), FieldSolverCmd::getNX(), FieldSolverCmd::getNY(), FieldSolverCmd::getNZ(), Beam::getParticleName(), RealConstant::getReal(), RealVariable::getReal(), RealVector::getRealComponent(), Sequence::getReference(), getS(), TrackCmd::getStepsPerTurn(), StringConstant::getString(), TrackCmd::getT0(), TrackCmd::getTimeIntegrator(), getTopology(), FieldSolverCmd::getType(), TrackCmd::getZStart(), TrackCmd::getZStop(), Help::Help(), initialize(), OpalFilter::initOpalFilter(), Line::Line(), OpalCavity::OpalCavity(), OpalDrift::OpalDrift(), OpalElement::OpalElement(), OpalFilter::OpalFilter(), OpalOffset::OpalGlobalCartesianOffset::OpalGlobalCartesianOffset(), OpalOffset::OpalGlobalCylindricalOffset::OpalGlobalCylindricalOffset(), OpalOffset::OpalLocalCartesianOffset::OpalLocalCartesianOffset(), OpalOffset::OpalLocalCylindricalOffset::OpalLocalCylindricalOffset(), OpalMultipole::OpalMultipole(), OpalMultipoleT::OpalMultipoleT(), OpalProbe::OpalProbe(), OpalRingDefinition::OpalRingDefinition(), OpalSolenoid::OpalSolenoid(), OpalTravelingWave::OpalTravelingWave(), OpalVacuum::OpalVacuum(), OpalVerticalFFAMagnet::OpalVerticalFFAMagnet(), Option::Option(), Sequence::parse(), Line::parse(), DumpEMFields::parseCoordinateSystem(), TrackRun::print(), Object::print(), Sequence::print(), BoolConstant::print(), RealConstant::print(), RealVariable::print(), RealVector::print(), StringConstant::print(), DumpEMFields::print(), DumpFields::print(), Beam::print(), OpalFilter::print(), Object::printHelp(), printInfo(), FieldSolverCmd::printInfo(), BoolConstant::printValue(), RealConstant::printValue(), RealVariable::printValue(), RealVector::printValue(), StringConstant::printValue(), PSystem::PSystem(), RealConstant::RealConstant(), RealVariable::RealVariable(), RealVector::RealVector(), OpalElement::registerOwnership(), Object::registerOwnership(), Select::Select(), Select::select(), Sequence::Sequence(), Distribution::setDistParametersFlatTop(), Distribution::setDistParametersMultiVariateGauss(), Distribution::setDistType(), FieldSolverCmd::setNX(), FieldSolverCmd::setNY(), FieldSolverCmd::setNZ(), TrackRun::setRunMethod(), Distribution::setSigmaP_m(), Distribution::setSigmaR_m(), TrackRun::setupBoundaryGeometry(), StringConstant::StringConstant(), System::System(), Title::Title(), TrackCmd::TrackCmd(), TrackRun::TrackRun(), OpalCavity::update(), OpalDrift::update(), OpalElement::update(), OpalMonitor::update(), OpalMultipole::update(), OpalMultipoleT::update(), OpalOffset::OpalGlobalCartesianOffset::update(), OpalOffset::OpalGlobalCylindricalOffset::update(), OpalOffset::OpalLocalCartesianOffset::update(), OpalOffset::OpalLocalCylindricalOffset::update(), OpalProbe::update(), OpalRingDefinition::update(), OpalSolenoid::update(), OpalTravelingWave::update(), OpalVacuum::update(), OpalVerticalFFAMagnet::update(), Beam::update(), FieldSolverCmd::update(), Option::update(), OpalElement::updateUnknown(), ValueDefinition::value(), and Value::Value().
|
privateinherited |
Definition at line 258 of file Object.h.
Referenced by Object::printHelp().
|
privateinherited |
Definition at line 255 of file Object.h.
Referenced by Object::getOpalName(), and Object::setOpalName().
|
privateinherited |
Definition at line 252 of file Object.h.
Referenced by Object::getBaseObject(), Object::getParent(), Object::isTreeMember(), and Object::setParent().
|
private |
Definition at line 217 of file BoundaryGeometry.h.
Referenced by fastIsInside(), findInsidePoint(), getmaxcoords(), initialize(), and isInside().
|
private |
Definition at line 216 of file BoundaryGeometry.h.
Referenced by fastIsInside(), findInsidePoint(), getmincoords(), initialize(), and isInside().
|
protectedinherited |
Dirty flag.
Definition at line 238 of file Object.h.
Referenced by Object::isDirty(), Object::Object(), and Object::setDirty().
|
privateinherited |
Definition at line 261 of file Object.h.
Referenced by Object::clear(), Object::increment(), and Object::occurrenceCount().
|
private |
Definition at line 208 of file BoundaryGeometry.h.
Referenced by getPoint(), initialize(), and writeGeomToVtk().
|
private |
Definition at line 236 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), initialize(), and ~BoundaryGeometry().
|
mutableprivateinherited |
Definition at line 76 of file RCObject.h.
Referenced by RCObject::addReference(), RCObject::isShared(), and RCObject::removeReference().
|
privateinherited |
Definition at line 268 of file Object.h.
Referenced by Object::registerReference(), Object::unregisterReference(), and Object::~Object().
|
privateinherited |
Definition at line 271 of file Object.h.
Referenced by Object::isShared(), and Object::setShared().
|
private |
Definition at line 240 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), execute(), and fastIsInside().
|
private |
Definition at line 238 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), execute(), and initialize().
|
private |
Definition at line 239 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), execute(), and initialize().
|
private |
Definition at line 242 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), execute(), and partInside().
|
private |
Definition at line 241 of file BoundaryGeometry.h.
Referenced by BoundaryGeometry(), execute(), and intersectRayBoundary().
|
private |
Definition at line 210 of file BoundaryGeometry.h.
Referenced by computeMeshVoxelization(), getNumBFaces(), getPoint(), initialize(), and writeGeomToVtk().
|
private |
Definition at line 214 of file BoundaryGeometry.h.
Referenced by initialize().
|
private |
Definition at line 213 of file BoundaryGeometry.h.
Referenced by initialize().
| struct { ... } BoundaryGeometry::voxelMesh_m |