25#ifndef HADRON_TENSORI_H
26#define HADRON_TENSORI_H
110 virtual std::complex<double>
tt(
double q0,
double q_mag)
const = 0;
113 virtual std::complex<double>
tx(
double q0,
double q_mag)
const = 0;
116 virtual std::complex<double>
ty(
double q0,
double q_mag)
const = 0;
119 virtual std::complex<double>
tz(
double q0,
double q_mag)
const = 0;
122 virtual std::complex<double>
xt(
double q0,
double q_mag)
const = 0;
125 virtual std::complex<double>
xx(
double q0,
double q_mag)
const = 0;
128 virtual std::complex<double>
xy(
double q0,
double q_mag)
const = 0;
131 virtual std::complex<double>
xz(
double q0,
double q_mag)
const = 0;
134 virtual std::complex<double>
yt(
double q0,
double q_mag)
const = 0;
137 virtual std::complex<double>
yx(
double q0,
double q_mag)
const = 0;
140 virtual std::complex<double>
yy(
double q0,
double q_mag)
const = 0;
143 virtual std::complex<double>
yz(
double q0,
double q_mag)
const = 0;
146 virtual std::complex<double>
zt(
double q0,
double q_mag)
const = 0;
149 virtual std::complex<double>
zx(
double q0,
double q_mag)
const = 0;
152 virtual std::complex<double>
zy(
double q0,
double q_mag)
const = 0;
155 virtual std::complex<double>
zz(
double q0,
double q_mag)
const = 0;
167 double Q_value)
const = 0;
virtual std::complex< double > yx(double q0, double q_mag) const =0
The tensor element .
void set_pdg(int pdg)
Set the target nucleus PDG code.
virtual std::complex< double > xt(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > zx(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > yy(double q0, double q_mag) const =0
The tensor element .
int Z() const
Atomic number of the target nucleus.
virtual std::complex< double > yt(double q0, double q_mag) const =0
The tensor element .
int A() const
Mass number of the target nucleus.
virtual std::complex< double > tt(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > ty(double q0, double q_mag) const =0
The tensor element .
virtual double q0Min() const =0
virtual std::complex< double > zt(double q0, double q_mag) const =0
The tensor element .
HadronTensorI(int Z, int A)
PDG code for the target nucleus represented by the tensor.
int pdg() const
PDG code of the target nucleus.
virtual std::complex< double > zy(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > yz(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > xy(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > tz(double q0, double q_mag) const =0
The tensor element .
virtual double qMagMax() const =0
virtual double q0Max() const =0
virtual std::complex< double > xx(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > zz(double q0, double q_mag) const =0
The tensor element .
virtual std::complex< double > tx(double q0, double q_mag) const =0
The tensor element .
virtual double qMagMin() const =0
virtual std::complex< double > xz(double q0, double q_mag) const =0
The tensor element .
virtual double contraction(const Interaction *interaction, double Q_value) const =0
Summary information for an interaction.
int IonPdgCodeToZ(int pdgc)
int IonPdgCodeToA(int pdgc)
THE MAIN GENIE PROJECT NAMESPACE
@ kHT_QE_CRPAPW_anu_Medium
enum genie::HadronTensorType HadronTensorType_t