OPAL (Object Oriented Parallel Accelerator Library) 2024.2
OPAL
FieldSolver Class Reference

#include <FieldSolver.h>

Inheritance diagram for FieldSolver:
Collaboration diagram for FieldSolver:

Public Member Functions

 FieldSolver ()
 Exemplar constructor.
virtual ~FieldSolver ()
virtual FieldSolverclone (const std::string &name)
 Make clone.
std::string getType ()
double getMX () const
 Return meshsize.
double getMY () const
 Return meshsize.
double getMT () const
 Return meshsize.
void setMX (double)
 Store emittance for mode 1.
void setMY (double)
 Store emittance for mode 2.
void setMT (double)
 Store emittance for mode 3.
virtual void update ()
 Update the field solver data.
virtual void execute ()
 Execute (init) the field solver data.
void initCartesianFields ()
void initSolver (PartBunchBase< double, 3 > *b)
bool hasValidSolver ()
void setFieldSolverType ()
FieldSolverType getFieldSolverType () const
Layout_tgetParticleLayout ()
FieldLayout_tgetFieldLayout ()
InformprintInfo (Inform &os) const
unsigned int getInteractionRadius ()
bool hasPeriodicZ ()
bool isAmrSolverType () const
AmrObjectgetAmrObject ()
const AmrObjectgetAmrObject () const
virtual const std::string getCategory () const
 Return the object category as a string.
virtual bool shouldTrace () const
 Trace flag.
virtual bool shouldUpdate () const
 Update flag.
virtual bool canReplaceBy (Object *object)
 Test if replacement is allowed.
void copyAttributes (const Object &)
 Copy attributes from another object.
virtual AttributefindAttribute (const std::string &name)
 Find an attribute by name.
virtual const AttributefindAttribute (const std::string &name) const
 Find an attribute by name.
virtual ObjectmakeTemplate (const std::string &, TokenStream &, Statement &)
 Macro handler function.
virtual ObjectmakeInstance (const std::string &name, Statement &, const Parser *)
 Macro handler function.
virtual void parse (Statement &)
 Parse the object.
virtual void parseShortcut (Statement &, bool eval=true)
 Parser for single-attribute commands.
virtual void print (std::ostream &) const
 Print the object.
virtual void printValue (std::ostream &) const
virtual void printHelp (std::ostream &) const
 Print help.
virtual void replace (Object *oldObject, Object *newObject)
 Replace references.
bool isBuiltin () const
 True, if [b]this[/b] is a built-in object.
virtual bool isShared () const
 Shared flag.
virtual void setShared (bool)
 Set/reset shared flag.
void setDirty (bool)
 Set/reset the [b]modified[/b] flag.
bool isDirty () const
 True, if the [b]modified[/b] flag is set.
void setFlag (bool)
 Flag/unflag this object, e. g. to control output of objects for.
bool isFlagged () const
 True, if [b]this[/b] is flagged by setFlag(true).
const ObjectgetBaseObject () const
 Return the object's base type object.
const std::string & getOpalName () const
 Return object name.
ObjectgetParent () const
 Return parent pointer.
bool isTreeMember (const Object *subTree) const
 Test for tree membership.
void setOpalName (const std::string &name)
 Set object name.
void setParent (Object *)
 Set parent object.
void clear ()
 Clear the occurrence counter.
int increment ()
 Increment and return the occurrence counter.
int occurrenceCount ()
 Return the occurrence counter.
void registerReference (Invalidator *a)
 Register a reference to this object.
void unregisterReference (Invalidator *a)
 Unegister a reference to this object.
void registerOwnership (const AttributeHandler::OwnerType &itsClass) const
int addReference () const
 Increment reference count.
int removeReference () const
 Decrement the reference count.

Static Public Member Functions

static FieldSolverfind (const std::string &name)
 Find named FieldSolver.

Public Attributes

PoissonSolversolver_m
 the actual solver, should be a base object
std::vector< AttributeitsAttr
 The object attributes.

Protected Attributes

bool builtin
 Built-in flag.
bool modified
 Dirty flag.
bool flagged
 Object flag.

Private Member Functions

std::string getTagging_m () const
void initAmrObject_m ()
void initAmrSolver_m ()
 FieldSolver (const FieldSolver &)
void operator= (const FieldSolver &)
 FieldSolver (const std::string &name, FieldSolver *parent)

Private Attributes

std::unique_ptr< AmrObjectitsAmrObject_mp
Mesh_tmesh_m
 The cartesian mesh.
FieldLayout_tFL_m
 The field layout f.
std::unique_ptr< Layout_tPL_m
 The particle layout.
PartBunchBase< double, 3 > * itsBunch_m
 all the particles are here ...
std::string fsName_m
FieldSolverType fsType_m
double rpp_m
ObjectitsParent
std::string itsName
std::string itsHelp
int occurrence
double timeStamp
std::set< Invalidator * > references
bool sharedFlag
int refCount

Detailed Description

Definition at line 52 of file FieldSolver.h.

Constructor & Destructor Documentation

◆ FieldSolver() [1/3]

FieldSolver::FieldSolver ( )

Exemplar constructor.

Definition at line 126 of file FieldSolver.cpp.

References ALPHA, Definition::Definition(), FL_m, Object::itsAttr, Attributes::makeBool(), Attributes::makePredefinedString(), Attributes::makeReal(), Attributes::makeRealArray(), Attributes::makeUpperCaseString(), mesh_m, PL_m, Object::registerOwnership(), Attributes::setRealArray(), SIZE, solver_m, and AttributeHandler::STATEMENT.

Referenced by clone(), FieldSolver(), FieldSolver(), find(), and operator=().

Here is the call graph for this function:

◆ ~FieldSolver()

FieldSolver::~FieldSolver ( )
virtual

Definition at line 362 of file FieldSolver.cpp.

References FL_m, mesh_m, and solver_m.

◆ FieldSolver() [2/3]

FieldSolver::FieldSolver ( const FieldSolver & )
private

References FieldSolver().

Here is the call graph for this function:

◆ FieldSolver() [3/3]

FieldSolver::FieldSolver ( const std::string & name,
FieldSolver * parent )
private

Definition at line 352 of file FieldSolver.cpp.

References Definition::Definition(), FieldSolver(), FL_m, mesh_m, name, PL_m, and solver_m.

Here is the call graph for this function:

Member Function Documentation

◆ addReference()

int RCObject::addReference ( ) const
inlineinherited

Increment reference count.

Definition at line 83 of file RCObject.h.

References refCount.

Referenced by Pointer< Object >::operator=(), Pointer< Object >::operator=(), and Pointer< Object >::unique().

◆ canReplaceBy()

bool Object::canReplaceBy ( Object * object)
virtualinherited

Test if replacement is allowed.

Reimplemented in Action, Beam, BoolConstant, BoundaryGeometry, Distribution, Element, OpalFilter, OpalTrimCoil, OpalWake, ParticleMatterInteraction, RealConstant, RealVariable, RealVector, StringConstant, and Table.

Definition at line 48 of file Object.cpp.

References Object().

Referenced by OpalData::define().

Here is the call graph for this function:

◆ clear()

void Object::clear ( )
inherited

Clear the occurrence counter.

Definition at line 341 of file Object.cpp.

References occurrence.

◆ clone()

FieldSolver * FieldSolver::clone ( const std::string & name)
virtual

Make clone.

Implements Object.

Definition at line 377 of file FieldSolver.cpp.

References FieldSolver(), and name.

Here is the call graph for this function:

◆ copyAttributes()

void Object::copyAttributes ( const Object & source)
inherited

Copy attributes from another object.

Definition at line 54 of file Object.cpp.

References itsAttr, and Object().

Referenced by LineTemplate::makeInstance(), and SequenceTemplate::makeInstance().

Here is the call graph for this function:

◆ execute()

void FieldSolver::execute ( )
virtual

Execute (init) the field solver data.

Reimplemented from Object.

Definition at line 381 of file FieldSolver.cpp.

References setFieldSolverType(), and update().

Here is the call graph for this function:

◆ find()

FieldSolver * FieldSolver::find ( const std::string & name)
static

Find named FieldSolver.

Definition at line 386 of file FieldSolver.cpp.

References FieldSolver(), OpalData::find(), OpalData::getInstance(), and name.

Referenced by TrackRun::setupFieldsolver().

Here is the call graph for this function:

◆ findAttribute() [1/2]

Attribute * Object::findAttribute ( const std::string & name)
virtualinherited

◆ findAttribute() [2/2]

const Attribute * Object::findAttribute ( const std::string & name) const
virtualinherited

Find an attribute by name.

Definition at line 74 of file Object.cpp.

References itsAttr, and name.

◆ getAmrObject() [1/2]

AmrObject * FieldSolver::getAmrObject ( )
inline

Definition at line 114 of file FieldSolver.h.

References itsAmrObject_mp.

◆ getAmrObject() [2/2]

const AmrObject * FieldSolver::getAmrObject ( ) const
inline

Definition at line 118 of file FieldSolver.h.

References itsAmrObject_mp.

◆ getBaseObject()

const Object * Object::getBaseObject ( ) const
inherited

Return the object's base type object.

Definition at line 303 of file Object.cpp.

References itsParent, and Object().

Here is the call graph for this function:

◆ getCategory()

const std::string Definition::getCategory ( ) const
virtualinherited

Return the object category as a string.

Implements Object.

Definition at line 29 of file Definition.cpp.

◆ getFieldLayout()

FieldLayout_t * FieldSolver::getFieldLayout ( )
inline

Definition at line 103 of file FieldSolver.h.

References FL_m.

◆ getFieldSolverType()

FieldSolverType FieldSolver::getFieldSolverType ( ) const
inline

Definition at line 164 of file FieldSolver.h.

References fsType_m.

◆ getInteractionRadius()

unsigned int FieldSolver::getInteractionRadius ( )
inline

Definition at line 107 of file FieldSolver.h.

References rpp_m.

◆ getMT()

double FieldSolver::getMT ( ) const

Return meshsize.

Definition at line 407 of file FieldSolver.cpp.

References Attributes::getReal(), and Object::itsAttr.

Referenced by initAmrObject_m(), and initCartesianFields().

Here is the call graph for this function:

◆ getMX()

double FieldSolver::getMX ( ) const

Return meshsize.

Definition at line 399 of file FieldSolver.cpp.

References Attributes::getReal(), and Object::itsAttr.

Referenced by initAmrObject_m(), and initCartesianFields().

Here is the call graph for this function:

◆ getMY()

double FieldSolver::getMY ( ) const

Return meshsize.

Definition at line 403 of file FieldSolver.cpp.

References Attributes::getReal(), and Object::itsAttr.

Referenced by initAmrObject_m(), and initCartesianFields().

Here is the call graph for this function:

◆ getOpalName()

const std::string & Object::getOpalName ( ) const
inherited

Return object name.

Definition at line 310 of file Object.cpp.

References itsName.

Referenced by Macro::clone(), OpalOffset::OpalLocalCartesianOffset::clone(), OpalVariableRFCavity::clone(), OpalVariableRFCavityFringeField::clone(), OpalData::create(), OpalData::define(), Sequence::findDriftLength(), ValueDefinition::getBool(), ValueDefinition::getBoolComponent(), ValueDefinition::getReal(), ValueDefinition::getRealComponent(), ValueDefinition::getString(), ValueDefinition::getStringComponent(), ParticleMatterInteraction::initParticleMatterInteractionHandler(), OpalWake::initWakefunction(), List::list(), LineTemplate::makeInstance(), makeInstance(), SequenceTemplate::makeInstance(), parse(), SequenceParser::parsePosition(), Beam::print(), BoolConstant::print(), Line::print(), print(), OpalElement::print(), OpalFilter::print(), OpalTrimCoil::print(), OpalWake::print(), ParticleMatterInteraction::print(), RealConstant::print(), RealVariable::print(), RealVector::print(), Sequence::print(), StringConstant::print(), BoundaryGeometry::printInfo(), FieldSolver::printInfo(), registerOwnership(), OpalElement::registerOwnership(), Line::replace(), Sequence::replace(), OpalScalingFFAMagnet::setupDefaultEndField(), Beam::update(), BoundaryGeometry::update(), OpalAsymmetricEnge::update(), OpalCavity::update(), OpalDrift::update(), OpalECollimator::update(), OpalEnge::update(), OpalFilter::update(), OpalFlexibleCollimator::update(), OpalOffset::OpalGlobalCartesianOffset::update(), OpalOffset::OpalGlobalCylindricalOffset::update(), OpalOffset::OpalLocalCartesianOffset::update(), OpalOffset::OpalLocalCylindricalOffset::update(), OpalPepperPot::update(), OpalPolynomialTimeDependence::update(), OpalProbe::update(), OpalRBend3D::update(), OpalRBend::update(), OpalRCollimator::update(), OpalSBend::update(), OpalSeptum::update(), OpalSinusoidalTimeDependence::update(), OpalSlit::update(), OpalSplineTimeDependence::update(), OpalTravelingWave::update(), OpalTrimCoil::update(), OpalWake::update(), ParticleMatterInteraction::update(), and Distribution::writeOutFileHeader().

◆ getParent()

Object * Object::getParent ( ) const
inherited

Return parent pointer.

Definition at line 315 of file Object.cpp.

References itsParent, and Object().

Referenced by OpalData::erase(), print(), OpalElement::print(), registerOwnership(), and OpalElement::registerOwnership().

Here is the call graph for this function:

◆ getParticleLayout()

Layout_t & FieldSolver::getParticleLayout ( )
inline

Definition at line 101 of file FieldSolver.h.

References PL_m.

◆ getTagging_m()

std::string FieldSolver::getTagging_m ( ) const
private

Definition at line 709 of file FieldSolver.cpp.

References Attributes::getString(), AmrObject::getTaggingString(), Util::isAllDigits(), and Object::itsAttr.

Referenced by initAmrObject_m(), and printInfo().

Here is the call graph for this function:

◆ getType()

std::string FieldSolver::getType ( )

Definition at line 395 of file FieldSolver.cpp.

References Attributes::getString(), and Object::itsAttr.

Referenced by initAmrSolver_m(), and setFieldSolverType().

Here is the call graph for this function:

◆ hasPeriodicZ()

bool FieldSolver::hasPeriodicZ ( )

Definition at line 459 of file FieldSolver.cpp.

References Attributes::getString(), and Object::itsAttr.

Here is the call graph for this function:

◆ hasValidSolver()

bool FieldSolver::hasValidSolver ( )

Definition at line 590 of file FieldSolver.cpp.

References solver_m.

◆ increment()

int Object::increment ( )
inherited

Increment and return the occurrence counter.

Definition at line 346 of file Object.cpp.

References occurrence.

Referenced by Line::parse(), and Sequence::storeLine().

◆ initAmrObject_m()

void FieldSolver::initAmrObject_m ( )
private

Definition at line 720 of file FieldSolver.cpp.

References AmrBoxLib::create(), getMT(), getMX(), getMY(), Attributes::getReal(), Attributes::getRealArray(), getTagging_m(), AmrObject::AmrInfo::grid, itsAmrObject_mp, Object::itsAttr, itsBunch_m, and AmrObject::AmrInfo::maxgrid.

Referenced by initSolver().

Here is the call graph for this function:

◆ initAmrSolver_m()

void FieldSolver::initAmrSolver_m ( )
private

Definition at line 762 of file FieldSolver.cpp.

References AMRMG, FMG, fsType_m, Attributes::getBool(), Attributes::getReal(), Attributes::getString(), getType(), HPGMG, HYPRE, itsAmrObject_mp, Object::itsAttr, ML, and solver_m.

Referenced by initSolver().

Here is the call graph for this function:

◆ initCartesianFields()

void FieldSolver::initCartesianFields ( )

Definition at line 427 of file FieldSolver.cpp.

References FL_m, Attributes::getBool(), getMT(), getMX(), getMY(), Attributes::getString(), isAmrSolverType(), Object::itsAttr, mesh_m, PARALLEL, PL_m, and SERIAL.

Here is the call graph for this function:

◆ initSolver()

void FieldSolver::initSolver ( PartBunchBase< double, 3 > * b)

Definition at line 499 of file FieldSolver.cpp.

References ALPHA, endl(), FFT, FFTBOX, BoundaryGeometry::find(), FL_m, fsName_m, fsType_m, BoundaryGeometry::getA(), OpalData::getGlobalGeometry(), OpalData::getInstance(), Attributes::getReal(), Attributes::getString(), INFOMSG, initAmrObject_m(), initAmrSolver_m(), isAmrSolverType(), Object::itsAttr, itsBunch_m, mesh_m, P3M, SAAMG, and solver_m.

Here is the call graph for this function:

◆ isAmrSolverType()

bool FieldSolver::isAmrSolverType ( ) const

Definition at line 466 of file FieldSolver.cpp.

References Options::amr, AMRMG, FMG, fsType_m, and ML.

Referenced by initCartesianFields(), initSolver(), and printInfo().

◆ isBuiltin()

bool Object::isBuiltin ( ) const
inherited

True, if [b]this[/b] is a built-in object.

Definition at line 268 of file Object.cpp.

References builtin.

Referenced by OpalData::define(), and OpalData::getVariableNames().

◆ isDirty()

bool Object::isDirty ( ) const
inherited

True, if the [b]modified[/b] flag is set.

Definition at line 289 of file Object.cpp.

References modified.

◆ isFlagged()

bool Object::isFlagged ( ) const
inherited

True, if [b]this[/b] is flagged by setFlag(true).

Definition at line 299 of file Object.cpp.

References flagged.

◆ isShared()

bool Object::isShared ( ) const
virtualinherited

Shared flag.

Definition at line 273 of file Object.cpp.

References sharedFlag.

Referenced by Sequence::print().

◆ isTreeMember()

bool Object::isTreeMember ( const Object * subTree) const
inherited

Test for tree membership.

Definition at line 320 of file Object.cpp.

References Object().

Referenced by Selector::handleElement(), and OpalParser::parseAssign().

Here is the call graph for this function:

◆ makeInstance()

Object * Object::makeInstance ( const std::string & name,
Statement & ,
const Parser *  )
virtualinherited

Macro handler function.

Reimplemented in LineTemplate, MacroCmd, and SequenceTemplate.

Definition at line 91 of file Object.cpp.

References getOpalName(), and Object().

Referenced by OpalParser::parseDefine(), Line::parseList(), OpalParser::parseMacro(), and SequenceParser::parseMember().

Here is the call graph for this function:

◆ makeTemplate()

Object * Object::makeTemplate ( const std::string & name,
TokenStream & ,
Statement &  )
virtualinherited

Macro handler function.

Reimplemented in Line, LineTemplate, MacroCmd, Sequence, and SequenceTemplate.

Definition at line 84 of file Object.cpp.

References name, and Object().

Referenced by OpalParser::parseMacro().

Here is the call graph for this function:

◆ occurrenceCount()

int Object::occurrenceCount ( )
inherited

Return the occurrence counter.

Definition at line 351 of file Object.cpp.

References occurrence.

◆ operator=()

void FieldSolver::operator= ( const FieldSolver & )
private

References FieldSolver(), and name.

Here is the call graph for this function:

◆ parse()

void Object::parse ( Statement & stat)
virtualinherited

Parse the object.

Reimplemented in Call, Echo, Help, Line, OpalElement, PSystem, Sequence, System, Title, and Value.

Definition at line 97 of file Object.cpp.

References Statement::delimiter(), findAttribute(), getOpalName(), name, Expressions::parseDelimiter(), Expressions::parseRealConst(), and Expressions::parseString().

Referenced by Sequence::parse(), OpalParser::parseAction(), OpalParser::parseDefine(), and SequenceTemplate::parseTemplate().

Here is the call graph for this function:

◆ parseShortcut()

void Object::parseShortcut ( Statement & stat,
bool eval = true )
virtualinherited

Parser for single-attribute commands.

Definition at line 129 of file Object.cpp.

References Statement::delimiter(), findAttribute(), Statement::mark(), name, and Statement::word().

Referenced by Call::parse(), Echo::parse(), Help::parse(), PSystem::parse(), System::parse(), Title::parse(), and Value::parse().

Here is the call graph for this function:

◆ print()

◆ printHelp()

void Object::printHelp ( std::ostream & ) const
virtualinherited

Print help.

Definition at line 201 of file Object.cpp.

References endl(), gmsg, itsAttr, itsHelp, and name.

Referenced by Help::execute(), and opalMain().

Here is the call graph for this function:

◆ printInfo()

Inform & FieldSolver::printInfo ( Inform & os) const

Definition at line 594 of file FieldSolver.cpp.

References ALPHA, Options::amr, AMRMG, endl(), FFT, fsName_m, fsType_m, Attributes::getBool(), IpplInfo::getNodes(), Object::getOpalName(), Attributes::getReal(), Attributes::getRealArray(), Attributes::getString(), getTagging_m(), INFOMSG, isAmrSolverType(), Object::itsAttr, level3(), mesh_m, P3M, PL_m, SAAMG, and solver_m.

Here is the call graph for this function:

◆ printValue()

void Object::printValue ( std::ostream & os) const
inlinevirtualinherited

Reimplemented in BoolConstant, RealConstant, RealVariable, RealVector, and StringConstant.

Definition at line 280 of file Object.h.

References print().

Here is the call graph for this function:

◆ registerOwnership()

◆ registerReference()

void Object::registerReference ( Invalidator * a)
inherited

Register a reference to this object.

Definition at line 182 of file Object.cpp.

References references.

◆ removeReference()

int RCObject::removeReference ( ) const
inlineinherited

Decrement the reference count.

Definition at line 88 of file RCObject.h.

References refCount.

◆ replace()

void Object::replace ( Object * oldObject,
Object * newObject )
virtualinherited

Replace references.

Reimplemented in Line, and Sequence.

Definition at line 258 of file Object.cpp.

References Object().

Here is the call graph for this function:

◆ setDirty()

void Object::setDirty ( bool dirty)
inherited

Set/reset the [b]modified[/b] flag.

Definition at line 283 of file Object.cpp.

References modified.

Referenced by OpalData::define(), OpalData::makeDirty(), and RealVariable::RealVariable().

◆ setFieldSolverType()

void FieldSolver::setFieldSolverType ( )

Definition at line 477 of file FieldSolver.cpp.

References AMRMG, FFT, FFTBOX, FMG, fsName_m, fsType_m, getType(), HPGMG, HYPRE, ML, NONE, P3M, and SAAMG.

Referenced by execute().

Here is the call graph for this function:

◆ setFlag()

void Object::setFlag ( bool flag)
inherited

Flag/unflag this object, e. g. to control output of objects for.

Definition at line 294 of file Object.cpp.

References flagged.

◆ setMT()

void FieldSolver::setMT ( double value)

Store emittance for mode 3.

Definition at line 419 of file FieldSolver.cpp.

References Object::itsAttr, and Attributes::setReal().

Here is the call graph for this function:

◆ setMX()

void FieldSolver::setMX ( double value)

Store emittance for mode 1.

Definition at line 411 of file FieldSolver.cpp.

References Object::itsAttr, and Attributes::setReal().

Here is the call graph for this function:

◆ setMY()

void FieldSolver::setMY ( double value)

Store emittance for mode 2.

Definition at line 415 of file FieldSolver.cpp.

References Object::itsAttr, and Attributes::setReal().

Here is the call graph for this function:

◆ setOpalName()

void Object::setOpalName ( const std::string & name)
inherited

◆ setParent()

void Object::setParent ( Object * parent)
inherited

Set parent object.

Definition at line 336 of file Object.cpp.

References itsParent, and Object().

Referenced by OpalData::erase().

Here is the call graph for this function:

◆ setShared()

void Object::setShared ( bool flag)
virtualinherited

Set/reset shared flag.

Reimplemented in Element.

Definition at line 278 of file Object.cpp.

References sharedFlag.

Referenced by OpalParser::parseDefine(), and Element::setShared().

◆ shouldTrace()

bool Definition::shouldTrace ( ) const
virtualinherited

Trace flag.

Implements Object.

Definition at line 34 of file Definition.cpp.

◆ shouldUpdate()

bool Definition::shouldUpdate ( ) const
virtualinherited

Update flag.

Implements Object.

Definition at line 39 of file Definition.cpp.

◆ unregisterReference()

void Object::unregisterReference ( Invalidator * a)
inherited

Unegister a reference to this object.

Definition at line 187 of file Object.cpp.

References references.

◆ update()

void FieldSolver::update ( )
virtual

Update the field solver data.

Reimplemented from Object.

Definition at line 423 of file FieldSolver.cpp.

Referenced by execute().

Member Data Documentation

◆ builtin

◆ FL_m

FieldLayout_t* FieldSolver::FL_m
private

The field layout f.

Definition at line 149 of file FieldSolver.h.

Referenced by FieldSolver(), FieldSolver(), getFieldLayout(), initCartesianFields(), initSolver(), and ~FieldSolver().

◆ flagged

bool Object::flagged
protectedinherited

Object flag.

Definition at line 242 of file Object.h.

Referenced by isFlagged(), Object(), Object(), and setFlag().

◆ fsName_m

std::string FieldSolver::fsName_m
private

Definition at line 157 of file FieldSolver.h.

Referenced by initSolver(), printInfo(), and setFieldSolverType().

◆ fsType_m

FieldSolverType FieldSolver::fsType_m
private

◆ itsAmrObject_mp

std::unique_ptr<AmrObject> FieldSolver::itsAmrObject_mp
private

Definition at line 135 of file FieldSolver.h.

Referenced by getAmrObject(), getAmrObject(), initAmrObject_m(), and initAmrSolver_m().

◆ itsAttr

std::vector<Attribute> Object::itsAttr
inherited

The object attributes.

Definition at line 216 of file Object.h.

Referenced by Distribution::adjustPhaseSpace(), Beam::Beam(), BoolConstant::BoolConstant(), BoundaryGeometry::BoundaryGeometry(), BoundaryGeometry::BoundaryGeometry(), DumpEMFields::buildGrid(), DumpFields::buildGrid(), Distribution::calcPartPerDist(), Call::Call(), Distribution::checkEmissionParameters(), Distribution::checkIfEmitted(), Distribution::chooseInputMomentumUnits(), Constraint::Constraint(), copyAttributes(), Distribution::create(), Distribution::createDistributionFromFile(), Distribution::createDistributionMultiGauss(), Distribution::createMatchedGaussDistribution(), Distribution::createOpalT(), DumpEMFields::DumpEMFields(), DumpFields::DumpFields(), DVar::DVar(), Echo::Echo(), Beam::execute(), Call::execute(), Echo::execute(), Help::execute(), List::execute(), OptimizeCmd::execute(), Option::execute(), PSystem::execute(), SampleCmd::execute(), Select::execute(), System::execute(), Title::execute(), TrackCmd::execute(), TrackRun::execute(), Value::execute(), FieldSolver::FieldSolver(), findAttribute(), findAttribute(), Distribution::generateAstraFlattopT(), Distribution::generateBinomial(), Distribution::generateFlattopLaserProfile(), Distribution::generateFlattopT(), Distribution::generateFlattopZ(), Distribution::generateGaussZ(), Distribution::generateLongFlattopT(), Distribution::generateMatchedGauss(), Distribution::generateTransverseGauss(), BoundaryGeometry::getA(), OpalElement::getApert(), BoundaryGeometry::getB(), BoolConstant::getBool(), BoundaryGeometry::getC(), Beam::getCharge(), Beam::getCurrent(), TrackCmd::getDT(), TrackCmd::getDTAU(), TrackCmd::getDTSCINIT(), Distribution::getEmissionTimeShift(), Constraint::getExpression(), Objective::getExpression(), BoundaryGeometry::getFilename(), Beam::getFrequency(), ParticleMatterInteraction::getInteractionType(), BoundaryGeometry::getL1(), BoundaryGeometry::getL2(), BoundaryGeometry::getLength(), Line::getLength(), OpalElement::getLength(), Sequence::getLength(), DVar::getLowerBound(), Beam::getMass(), TrackCmd::getMaxSteps(), FieldSolver::getMT(), FieldSolver::getMX(), FieldSolver::getMY(), OpalWake::getNumberOfBins(), Beam::getNumberOfParticles(), Distribution::getNumberOfParticlesInFile(), Beam::getParticleName(), RealConstant::getReal(), RealVariable::getReal(), RealVector::getRealComponent(), Sequence::getReference(), BoundaryGeometry::getS(), TrackCmd::getStepsPerTurn(), StringConstant::getString(), TrackCmd::getT0(), FieldSolver::getTagging_m(), Distribution::getTEmission(), TrackCmd::getTimeIntegrator(), BoundaryGeometry::getTopology(), OpalTrimCoil::getTrimCoilType(), FieldSolver::getType(), DVar::getUpperBound(), DVar::getVariable(), OpalSample::getVariable(), Distribution::getWeight(), TrackCmd::getZStart(), TrackCmd::getZStop(), FieldSolver::hasPeriodicZ(), Help::Help(), FieldSolver::initAmrObject_m(), FieldSolver::initAmrSolver_m(), FieldSolver::initCartesianFields(), BoundaryGeometry::initialize(), OpalSample::initialize(), OpalFilter::initOpalFilter(), OpalTrimCoil::initOpalTrimCoil(), ParticleMatterInteraction::initParticleMatterInteractionHandler(), FieldSolver::initSolver(), OpalWake::initWakefunction(), Distribution::injectBeam(), Line::Line(), List::List(), List::list(), Object(), Object(), Objective::Objective(), OpalAsymmetricEnge::OpalAsymmetricEnge(), OpalBend::OpalBend(), OpalCavity::OpalCavity(), OpalCCollimator::OpalCCollimator(), OpalCyclotron::OpalCyclotron(), OpalDegrader::OpalDegrader(), OpalDrift::OpalDrift(), OpalECollimator::OpalECollimator(), OpalElement::OpalElement(), OpalEnge::OpalEnge(), OpalFilter::OpalFilter(), OpalFlexibleCollimator::OpalFlexibleCollimator(), OpalOffset::OpalGlobalCartesianOffset::OpalGlobalCartesianOffset(), OpalOffset::OpalGlobalCylindricalOffset::OpalGlobalCylindricalOffset(), OpalHKicker::OpalHKicker(), OpalKicker::OpalKicker(), OpalOffset::OpalLocalCartesianOffset::OpalLocalCartesianOffset(), OpalOffset::OpalLocalCylindricalOffset::OpalLocalCylindricalOffset(), OpalMultipole::OpalMultipole(), OpalMultipoleT::OpalMultipoleT(), OpalOctupole::OpalOctupole(), OpalOutputPlane::OpalOutputPlane(), OpalPepperPot::OpalPepperPot(), OpalPolynomialTimeDependence::OpalPolynomialTimeDependence(), OpalProbe::OpalProbe(), OpalQuadrupole::OpalQuadrupole(), OpalRBend3D::OpalRBend3D(), OpalRCollimator::OpalRCollimator(), OpalRingDefinition::OpalRingDefinition(), OpalSample::OpalSample(), OpalSBend3D::OpalSBend3D(), OpalScalingFFAMagnet::OpalScalingFFAMagnet(), OpalSeptum::OpalSeptum(), OpalSextupole::OpalSextupole(), OpalSinusoidalTimeDependence::OpalSinusoidalTimeDependence(), OpalSlit::OpalSlit(), OpalSolenoid::OpalSolenoid(), OpalSource::OpalSource(), OpalSplineTimeDependence::OpalSplineTimeDependence(), OpalStripper::OpalStripper(), OpalTravelingWave::OpalTravelingWave(), OpalTrimCoil::OpalTrimCoil(), OpalUndulator::OpalUndulator(), OpalVacuum::OpalVacuum(), OpalVariableRFCavity::OpalVariableRFCavity(), OpalVariableRFCavityFringeField::OpalVariableRFCavityFringeField(), OpalVerticalFFAMagnet::OpalVerticalFFAMagnet(), OpalVKicker::OpalVKicker(), OpalWake::OpalWake(), OptimizeCmd::OptimizeCmd(), Option::Option(), Option::Option(), Line::parse(), Sequence::parse(), DumpEMFields::parseCoordinateSystem(), ParticleMatterInteraction::ParticleMatterInteraction(), Beam::print(), BoolConstant::print(), DumpEMFields::print(), DumpFields::print(), print(), OpalFilter::print(), OpalTrimCoil::print(), OpalWake::print(), ParticleMatterInteraction::print(), RealConstant::print(), RealVariable::print(), RealVector::print(), Sequence::print(), StringConstant::print(), TrackRun::print(), Distribution::printDistFlattop(), Distribution::printDistFromFile(), Distribution::printDistGauss(), Distribution::printEmissionModelAstra(), Distribution::printEmissionModelNone(), printHelp(), BoundaryGeometry::printInfo(), Distribution::printInfo(), FieldSolver::printInfo(), BoolConstant::printValue(), RealConstant::printValue(), RealVariable::printValue(), RealVector::printValue(), StringConstant::printValue(), PSystem::PSystem(), RealConstant::RealConstant(), RealConstant::RealConstant(), RealVariable::RealVariable(), RealVariable::RealVariable(), RealVector::RealVector(), registerOwnership(), OpalElement::registerOwnership(), OptimizeCmd::run(), SampleCmd::SampleCmd(), Distribution::scaleDistCoordinates(), Select::Select(), Select::select(), Sequence::Sequence(), Distribution::setAttributes(), TrackRun::setBoundaryGeometry(), Distribution::setDistParametersBinomial(), Distribution::setDistParametersFlattop(), Distribution::setDistParametersGauss(), Distribution::setDistParametersMultiGauss(), TrackRun::setDistributionParallelT(), Distribution::setDistType(), FieldSolver::setMT(), FieldSolver::setMX(), FieldSolver::setMY(), TrackRun::setRunMethod(), Distribution::setSigmaP_m(), Distribution::setSigmaR_m(), TrackRun::setupCyclotronTracker(), OpalScalingFFAMagnet::setupDefaultEndField(), Distribution::setupEmissionModel(), Distribution::setupEmissionModelAstra(), Distribution::setupEmissionModelNone(), Distribution::setupEmissionModelNonEquil(), TrackRun::setupFieldsolver(), OpalScalingFFAMagnet::setupNamedEndField(), Distribution::setupParticleBins(), TrackRun::setupThickTracker(), TrackRun::setupTTracker(), Distribution::shiftDistCoordinates(), StringConstant::StringConstant(), StringConstant::StringConstant(), System::System(), Title::Title(), TrackCmd::TrackCmd(), TrackRun::TrackRun(), Beam::update(), OpalAsymmetricEnge::update(), OpalCavity::update(), OpalCCollimator::update(), OpalCyclotron::update(), OpalDegrader::update(), OpalDrift::update(), OpalECollimator::update(), OpalElement::update(), OpalEnge::update(), OpalFlexibleCollimator::update(), OpalHKicker::update(), OpalKicker::update(), OpalMonitor::update(), OpalMultipole::update(), OpalMultipoleT::update(), OpalOctupole::update(), OpalOffset::OpalGlobalCartesianOffset::update(), OpalOffset::OpalGlobalCylindricalOffset::update(), OpalOffset::OpalLocalCartesianOffset::update(), OpalOffset::OpalLocalCylindricalOffset::update(), OpalOutputPlane::update(), OpalPepperPot::update(), OpalPolynomialTimeDependence::update(), OpalProbe::update(), OpalQuadrupole::update(), OpalRBend3D::update(), OpalRBend::update(), OpalRCollimator::update(), OpalRingDefinition::update(), OpalSBend3D::update(), OpalSBend::update(), OpalScalingFFAMagnet::update(), OpalSeptum::update(), OpalSextupole::update(), OpalSinusoidalTimeDependence::update(), OpalSlit::update(), OpalSolenoid::update(), OpalSource::update(), OpalSplineTimeDependence::update(), OpalStripper::update(), OpalTravelingWave::update(), OpalUndulator::update(), OpalVacuum::update(), OpalVariableRFCavity::update(), OpalVariableRFCavityFringeField::update(), OpalVerticalFFAMagnet::update(), OpalVKicker::update(), Option::update(), OpalElement::updateUnknown(), Value::Value(), ValueDefinition::value(), ValueDefinition::value(), Distribution::writeOutFileEmission(), Distribution::writeOutFileHeader(), and Distribution::writeOutFileInjection().

◆ itsBunch_m

PartBunchBase<double, 3>* FieldSolver::itsBunch_m
private

all the particles are here ...

Definition at line 155 of file FieldSolver.h.

Referenced by initAmrObject_m(), and initSolver().

◆ itsHelp

std::string Object::itsHelp
privateinherited

Definition at line 258 of file Object.h.

Referenced by Object(), Object(), and printHelp().

◆ itsName

std::string Object::itsName
privateinherited

Definition at line 255 of file Object.h.

Referenced by getOpalName(), Object(), Object(), and setOpalName().

◆ itsParent

Object* Object::itsParent
privateinherited

Definition at line 252 of file Object.h.

Referenced by getBaseObject(), getParent(), Object(), Object(), and setParent().

◆ mesh_m

Mesh_t* FieldSolver::mesh_m
private

The cartesian mesh.

Definition at line 146 of file FieldSolver.h.

Referenced by FieldSolver(), FieldSolver(), initCartesianFields(), initSolver(), printInfo(), and ~FieldSolver().

◆ modified

bool Object::modified
protectedinherited

Dirty flag.

Definition at line 238 of file Object.h.

Referenced by isDirty(), Object(), Object(), and setDirty().

◆ occurrence

int Object::occurrence
privateinherited

Definition at line 261 of file Object.h.

Referenced by clear(), increment(), Object(), Object(), and occurrenceCount().

◆ PL_m

std::unique_ptr<Layout_t> FieldSolver::PL_m
private

The particle layout.

Definition at line 152 of file FieldSolver.h.

Referenced by FieldSolver(), FieldSolver(), getParticleLayout(), initCartesianFields(), and printInfo().

◆ refCount

int RCObject::refCount
mutableprivateinherited

Definition at line 76 of file RCObject.h.

Referenced by addReference(), isShared(), RCObject(), RCObject(), and removeReference().

◆ references

std::set<Invalidator *> Object::references
privateinherited

Definition at line 268 of file Object.h.

Referenced by registerReference(), unregisterReference(), and ~Object().

◆ rpp_m

double FieldSolver::rpp_m
private

Definition at line 160 of file FieldSolver.h.

Referenced by getInteractionRadius().

◆ sharedFlag

bool Object::sharedFlag
privateinherited

Definition at line 271 of file Object.h.

Referenced by isShared(), Object(), Object(), and setShared().

◆ solver_m

PoissonSolver* FieldSolver::solver_m

the actual solver, should be a base object

Definition at line 124 of file FieldSolver.h.

Referenced by FieldSolver(), FieldSolver(), hasValidSolver(), initAmrSolver_m(), initSolver(), printInfo(), and ~FieldSolver().

◆ timeStamp

double Object::timeStamp
privateinherited

Definition at line 264 of file Object.h.


The documentation for this class was generated from the following files: