AmpTools
AmplitudeInfo Class Reference

#include <ConfigurationInfo.h>

Public Member Functions

 AmplitudeInfo (const string &reactionName, const string &sumName, const string &ampName)
 
string reactionName () const
 
string sumName () const
 
string ampName () const
 
string fullName () const
 
const vector< vector< string > > & factors () const
 
const vector< vector< int > > & permutations () const
 
const vector< AmplitudeInfo *> & constraints () const
 
bool hasConstraint (AmplitudeInfo *constraint) const
 
complex< double > value () const
 
bool real () const
 
bool fixed () const
 
string scale () const
 
const vector< ParameterInfo *> & parameters () const
 
void display (string fileName="", bool append=true)
 
void clear ()
 
void addFactor (const vector< string > &factor)
 
void addPermutation (const vector< int > &permutation)
 
void addConstraint (AmplitudeInfo *constraint)
 
void setValue (complex< double > value)
 
void setReal (bool real)
 
void setFixed (bool fixed)
 
void setScale (string scale)
 
void addParameter (ParameterInfo *parameter)
 
void removeConstraint (AmplitudeInfo *constraint)
 
void removeParameter (ParameterInfo *parameter)
 

Detailed Description

This class holds all information related to a single amplitude. In the construction of the intensity $ \sum_\beta \left| \sum_i V_{i,\beta} A_{i,\beta} \right|^2 $, where $ \beta $ indexes the coherent sums and i indexes the amplitudes, this class defines the $ A_{i,\beta} $. The class is typically composed of a list of user-defined factors that are multiplied together to create the amplitude.

Definition at line 765 of file ConfigurationInfo.h.

Constructor & Destructor Documentation

◆ AmplitudeInfo()

AmplitudeInfo::AmplitudeInfo ( const string &  reactionName,
const string &  sumName,
const string &  ampName 
)
inline

The constructor: each amplitude is uniquely defined by a reaction, a coherent sum, and an amplitude name.

Parameters
[in]reactionNamethe name of the reaction
[in]sumNamethe name of the coherent sum the amplitude belongs to
[in]ampNamethe name of the amplitude itself

Definition at line 778 of file ConfigurationInfo.h.

Member Function Documentation

◆ addConstraint()

void AmplitudeInfo::addConstraint ( AmplitudeInfo constraint)

This adds the constraint that the production parameter of the current amplitude must be the same as the production parameter for the amplitude whose AmplitudeInfo is passed in. If the argument's list of constraints is not empty it creates constraints between those amplitudes and the current amplitude also.

Parameters
[in]constrainta pointer to the AmplitudeInfo to which to constrain the current amplitude's production parameter

Definition at line 841 of file ConfigurationInfo.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addFactor()

void AmplitudeInfo::addFactor ( const vector< string > &  factor)
inline

This adds a new factor, i.e. a user-defined amplitude computing routine, to the amplitude.

Parameters
[in]factora vector of strings describing the factor. The first element of the vector is the name of the user's amplitude routine. The remaining elements are optional string arguments that are passed to the newAmplitude routine of the user-defined Amplitude
See also
Amplitude::newAmplitude

Definition at line 921 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ addParameter()

void AmplitudeInfo::addParameter ( ParameterInfo parameter)

This associates some amplitude parameter described by the ParameterInfo objects with the current amplitude.

Parameters
[in]parameterpointer the ParameterInfo object for the parameter

Definition at line 894 of file ConfigurationInfo.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addPermutation()

void AmplitudeInfo::addPermutation ( const vector< int > &  permutation)
inline

This adds a new permutation to the amplitude. See documentation in the AmplitudeManager below for info about permutations.

See also
AmplitudeManager::addAmpPermutation

Definition at line 929 of file ConfigurationInfo.h.

◆ ampName()

string AmplitudeInfo::ampName ( ) const
inline

This returns the name of the amplitude.

Definition at line 801 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ clear()

void AmplitudeInfo::clear ( )

This clears out all the internal data for this particular AmplitudeInfo object.

Definition at line 925 of file ConfigurationInfo.cc.

Here is the caller graph for this function:

◆ constraints()

const vector< AmplitudeInfo* >& AmplitudeInfo::constraints ( ) const
inline

This returns a vector that contains AmplitudeInfo pointers for every other amplitude that is constrained to have the same production parameter as the current amplitude.

Definition at line 855 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ display()

void AmplitudeInfo::display ( string  fileName = "",
bool  append = true 
)

Displays information about this amplitude to the screen or writes it to file if a file name is passed in.

Parameters
[in]fileName(optional) name of file to write amplitude info to
[in]append(optional) if true (default) information will be appended to the file, if false is passed in the file will be overwritten

Definition at line 743 of file ConfigurationInfo.cc.

◆ factors()

const vector< vector<string> >& AmplitudeInfo::factors ( ) const
inline

This returns information about all of the user-defined factors that make up the amplitude. It is a list of vectors – each item in the initial vector is a vector of strings. The first string in the vector specifies the name of the user-defined amplitude class that tells how to compute the amplitude factor. The remaining items in the vector of strings are string arguments that can be passed into the newAmplitude routine to create a new instance of the users amplitude. The length of the returned vector is the number of factors in the amplitude.

See also
Amplitude::newAmplitude
AmplitudeManager::addAmpFactor

Definition at line 828 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ fixed()

bool AmplitudeInfo::fixed ( ) const
inline

Definition at line 874 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ fullName()

string AmplitudeInfo::fullName ( ) const
inline

This returns the "full name" of the reaction. It is obtained by concatenating togther the reaction name, sum name, and amplitude name with a double colon, e.g. reactionName::sumName::ampName

Definition at line 808 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ hasConstraint()

bool AmplitudeInfo::hasConstraint ( AmplitudeInfo constraint) const

Check to see if this amplitude is constrained to another amplitude.

Parameters
[in]constraintpointer to an AmplitudeInfo object

Definition at line 859 of file ConfigurationInfo.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ parameters()

const vector< ParameterInfo* >& AmplitudeInfo::parameters ( ) const
inline

This returns a vector of pointers to all of the ParameterInfo objects that are associated with this amplitude.

Definition at line 886 of file ConfigurationInfo.h.

◆ permutations()

const vector< vector<int> >& AmplitudeInfo::permutations ( ) const
inline

This returns a vector of the different permutations for this amplitude. It is used to store additional permuations besides the default permutation and is used to setup the AmplitudeManager.

See also
AmplitudeManager::addAmpPermutation

Definition at line 844 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ reactionName()

string AmplitudeInfo::reactionName ( ) const
inline

This returns the name of the reaction for this amplitude.

Definition at line 791 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ real()

bool AmplitudeInfo::real ( ) const
inline

Definition at line 873 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ removeConstraint()

void AmplitudeInfo::removeConstraint ( AmplitudeInfo constraint)

This removes a particular AmplitudeInfo from the list of constraints. It also removes itself from the list of constraints of each of the constrained Amplitudes.

Parameters
[in]constrainta pointer to the AmplitudeInfo to be removed from the list of constraints

Definition at line 871 of file ConfigurationInfo.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeParameter()

void AmplitudeInfo::removeParameter ( ParameterInfo parameter)

This removes an associated ParameterInfo pointer from the list of ParameterInfo objects associated with this amplitude.

Parameters
[in]parametera pointer to the ParameterInfo object to removed

Definition at line 903 of file ConfigurationInfo.cc.

Here is the call graph for this function:

◆ scale()

string AmplitudeInfo::scale ( ) const
inline

Definition at line 876 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ setFixed()

void AmplitudeInfo::setFixed ( bool  fixed)
inline

Definition at line 952 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ setReal()

void AmplitudeInfo::setReal ( bool  real)
inline

Definition at line 951 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ setScale()

void AmplitudeInfo::setScale ( string  scale)
inline

Definition at line 954 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ setValue()

void AmplitudeInfo::setValue ( complex< double >  value)
inline

This sets the initial value of the production parameter for a particular parameter.

Parameters
[in]valuethe desired initial value

Definition at line 949 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ sumName()

string AmplitudeInfo::sumName ( ) const
inline

This returns the name of the sum for this amplitude.

Definition at line 796 of file ConfigurationInfo.h.

Here is the caller graph for this function:

◆ value()

complex< double > AmplitudeInfo::value ( ) const
inline

This returns the current value of the production parameter.

Definition at line 871 of file ConfigurationInfo.h.

Here is the caller graph for this function:

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