File indexing completed on 2025-04-19 09:10:07
0001 #ifndef METOOLS_SpinCorrelations_Spin_Density_H
0002 #define METOOLS_SpinCorrelations_Spin_Density_H
0003
0004 #include <vector>
0005 #include "ATOOLS/Math/MyComplex.H"
0006 #include "ATOOLS/Phys/Flavour.H"
0007 #include "ATOOLS/Phys/Blob.H"
0008 #include "ATOOLS/Math/Vector.H"
0009 #include "METOOLS/SpinCorrelations/Amplitude2_Matrix.H"
0010
0011 namespace ATOOLS {
0012 class Particle;
0013 }
0014
0015 namespace METOOLS {
0016 class Amplitude2_Tensor;
0017
0018 class Spin_Density : public Amplitude2_Matrix {
0019 public:
0020 Spin_Density(ATOOLS::Particle* p);
0021 Spin_Density(ATOOLS::Particle* p, const Amplitude2_Tensor* amps);
0022 Spin_Density(ATOOLS::Particle* p, const Spin_Density* s,
0023 const Amplitude2_Tensor* amps);
0024 Spin_Density(const Spin_Density& s);
0025 ~Spin_Density();
0026
0027 Spin_Density* CopyAll();
0028 };
0029
0030 }
0031
0032 typedef std::vector<std::pair<std::pair<ATOOLS::Flavour,ATOOLS::Vec4D>, METOOLS::Spin_Density*> > SpinDensityMap;
0033 namespace ATOOLS {
0034 template <> Blob_Data<SpinDensityMap*>::~Blob_Data();
0035
0036 template <> Blob_Data_Base* Blob_Data<SpinDensityMap*>::ClonePtr();
0037 }
0038
0039 #endif