OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
The MIGRAD command. More...
#include <Migrad.h>
Public Member Functions | |
Migrad () | |
Exemplar constructor. More... | |
virtual | ~Migrad () |
virtual Migrad * | clone (const std::string &name) |
Make clone. More... | |
virtual void | execute () |
Execute the command. More... | |
![]() | |
virtual | ~Action () |
virtual bool | canReplaceBy (Object *object) |
Test if replacement is allowed. More... | |
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... | |
![]() | |
virtual | ~Object () |
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 &) |
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... | |
virtual void | update () |
Update this object. 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... | |
bool | isShared () const |
Test for sharing. More... | |
Private Member Functions | |
Migrad (const Migrad &) | |
void | operator= (const Migrad &) |
Migrad (const std::string &name, Migrad *parent) | |
void | hessenberg (Vector< double > &X, Vector< double > &F, Matrix< double > &V, Vector< double > &G, Vector< double > &G2) |
void | derivatives (Vector< double > &X, Vector< double > &F, Vector< double > &G, Vector< double > &G2) |
MatchState | lineSearch (Vector< double > &X, Vector< double > &dX, Vector< double > &F, double tol) |
void | forcePositiveDefinite (Matrix< double > &A) |
bool | invertSymmetric (Matrix< double > &A) |
int | symmetricEigen (const Matrix< double > &A, Vector< double > &eigen) |
Private Attributes | |
double | fmin |
Additional Inherited Members | |
![]() | |
std::vector< Attribute > | itsAttr |
The object attributes (see Attribute.hh). More... | |
![]() | |
Action (int size, const char *name, const char *help) | |
Constructor for exemplars. More... | |
Action (const std::string &name, Action *parent) | |
Constructor for cloning. More... | |
![]() | |
Object (int size, const char *name, const char *help) | |
Constructor for exemplars. More... | |
Object (const std::string &name, Object *parent) | |
Constructor for clones. More... | |
![]() | |
RCObject () | |
Default constructor. More... | |
RCObject (const RCObject &) | |
Copy constructor. More... | |
virtual | ~RCObject ()=0 |
RCObject & | operator= (const RCObject &right) |
![]() | |
bool | builtin |
Built-in flag. More... | |
bool | modified |
Dirty flag. More... | |
bool | flagged |
Object flag. More... | |
Migrad::Migrad | ( | ) |
Exemplar constructor.
Definition at line 49 of file Migrad.cpp.
References Physics::e, Object::itsAttr, Attributes::makeReal(), Object::registerOwnership(), and AttributeHandler::SUB_COMMAND.
Referenced by clone().
|
virtual |
Definition at line 67 of file Migrad.cpp.
|
private |
|
private |
Definition at line 62 of file Migrad.cpp.
|
virtual |
Make clone.
Implements Object.
Definition at line 71 of file Migrad.cpp.
References Migrad().
|
private |
Definition at line 304 of file Migrad.cpp.
References abs(), Match::block, Match::countFunctions(), Match::countVariables(), fmin, max(), Hypervolume::n, Match::setVariables(), and sqrt().
Referenced by execute().
|
virtual |
Execute the command.
Reimplemented from Object.
Definition at line 76 of file Migrad.cpp.
References Match::block, CHECK, CONVERGED, Match::countVariables(), derivatives(), Physics::e, euclidean_norm(), FAILED, fmin, forcePositiveDefinite(), Attributes::getReal(), Match::getVariables(), hessenberg(), invertSymmetric(), Object::itsAttr, lineSearch(), max(), min(), Hypervolume::n, Match::print(), PROGRESS, RESTART, Round(), Match::setVariables(), START, and Attrib::Distribution::W.
|
private |
Definition at line 674 of file Migrad.cpp.
References abs(), Match::block, Match::countVariables(), max(), Hypervolume::n, and symmetricEigen().
Referenced by execute(), and hessenberg().
|
private |
Definition at line 250 of file Migrad.cpp.
References abs(), Match::block, Match::countFunctions(), Match::countVariables(), fmin, forcePositiveDefinite(), invertSymmetric(), max(), Hypervolume::n, Match::setVariables(), sqrt(), and Attrib::Distribution::W.
Referenced by execute().
|
private |
Definition at line 621 of file Migrad.cpp.
References Match::block, Match::countVariables(), Hypervolume::n, and sqrt().
Referenced by execute(), and hessenberg().
|
private |
Definition at line 337 of file Migrad.cpp.
References abs(), ACCURACY_LIMIT, Physics::alpha, Match::block, CONVERGED, Match::countVariables(), Match::evaluate(), FAILED, fmin, max(), min(), Hypervolume::n, and PROGRESS.
Referenced by execute().
|
private |
Definition at line 507 of file Migrad.cpp.
References abs(), Match::block, Physics::c, Match::countVariables(), max(), Hypervolume::n, pow(), and sqrt().
Referenced by forcePositiveDefinite().
|
private |
Definition at line 86 of file Migrad.h.
Referenced by derivatives(), execute(), hessenberg(), and lineSearch().