OPAL (Object Oriented Parallel Accelerator Library)
2.2.0
OPAL
|
#include <array>
#include <cmath>
#include <fstream>
#include <functional>
#include <iomanip>
#include <iterator>
#include <limits>
#include <list>
#include <numeric>
#include <sstream>
#include <string>
#include <utility>
#include <vector>
#include "Physics/Physics.h"
#include "Utilities/Options.h"
#include "Utilities/OpalException.h"
#include <boost/numeric/ublas/matrix.hpp>
#include <boost/numeric/ublas/matrix_sparse.hpp>
#include <boost/numeric/ublas/vector.hpp>
#include <boost/numeric/ublas/vector_proxy.hpp>
#include <boost/numeric/ublas/triangular.hpp>
#include <boost/numeric/ublas/lu.hpp>
#include <boost/numeric/ublas/io.hpp>
#include <gsl/gsl_matrix.h>
#include <gsl/gsl_math.h>
#include <gsl/gsl_eigen.h>
#include <boost/numeric/odeint/stepper/runge_kutta4.hpp>
#include "matrix_vector_operation.h"
#include "ClosedOrbitFinder.h"
#include "MapGenerator.h"
#include "Harmonics.h"
Go to the source code of this file.
Classes | |
class | SigmaGenerator< Value_type, Size_type > |
This class computes the matched distribution. More... | |
Variables | |
Inform * | gmsg |
The SigmaGenerator class uses the class ClosedOrbitFinder to get the parameters (inverse bending radius, path length field index and tunes) to initialize the sigma matrix. The main function of this class is match(value_type, size_type), where it iteratively tries to find a matched distribution for given emittances, energy and current. The computation stops when the L2-norm is smaller than a user-defined tolerance.
In default mode it prints all space charge maps, cyclotron maps and second moment matrices. The orbit properties, i.e. tunes, average radius, orbit radius, inverse bending radius, path length, field index and frequency error, are printed as well.
Definition in file SigmaGenerator.h.