GamR  0.0.0
GammaROOT
Loading...
Searching...
No Matches
StatTensor.hh
Go to the documentation of this file.
1
8
9#ifndef STATTENS_HH
10#define STATTENS_HH
11
12#include <cmath>
13#include <complex>
14#include <vector>
15#include <functional>
16
18#include "SolidAttenuation.hh"
19
20namespace GamR {
21 namespace AngDist {
22 class StatTensor {
26 private:
27 double j;
28 std::vector<std::vector<std::complex<double> > > rho;
29
30 public:
31 StatTensor(double j);
32 StatTensor(std::vector<double> Pm, double j);
33 StatTensor(double j, double sigmaj) : StatTensor(j) { GamR::AngDist::PopulationParameter pp(j, sigmaj); Set(pp.GetPm()); }
34 void Clear();
35 void Set(std::vector<double> Pm);
36 std::complex<double> Get(double k, double q);
37 std::complex<double> Set(double k, double q, std::complex<double> value);
38 std::complex<double> GetBk(double k);
39 StatTensor *ObservedProp(double ji, double lambda, double lambdaPrime, double jf, double delta, SolidAttenuation *Qk,
40 double theta, double phi);
41 StatTensor *UnobservedProp(double ji, double lambda, double lambdaPrime, double jf, double delta,
43 StatTensor *Perturbation(std::function<std::complex<double>(double, double, double, double, double) > const &Gk, double t);
44 double W(double ji, double lambda, double lambdaPrime, double jf, double delta, SolidAttenuation *Qk, double theta,
45 double phi);
46
47 void Print();
48 };
49 } /* namespace AngDist */
50 } /* namespace GamR */
51
52#endif /* STATTENS_HH */
#define W(a, b)
StatTensor(double j, double sigmaj)
Definition StatTensor.hh:33
StatTensor * Perturbation(std::function< std::complex< double >(double, double, double, double, double) > const &Gk, double t)
StatTensor * UnobservedProp(double ji, double lambda, double lambdaPrime, double jf, double delta, SolidAttenuation *Qk)
void Set(std::vector< double > Pm)
Definition StatTensor.cc:45
std::complex< double > GetBk(double k)
std::complex< double > Get(double k, double q)
Definition StatTensor.cc:84
StatTensor * ObservedProp(double ji, double lambda, double lambdaPrime, double jf, double delta, SolidAttenuation *Qk, double theta, double phi)
Definition Gain.cc:19