mirror of
https://github.com/paboyle/Grid.git
synced 2025-04-09 21:50:45 +01:00
Add overloaded Photon constructors, with default parameters for IR improvements and infinite-volume G(x=0).
This commit is contained in:
parent
ec3954ff5f
commit
c793947209
@ -61,7 +61,7 @@ void TUnitEm::setup(void)
|
|||||||
// execution ///////////////////////////////////////////////////////////////////
|
// execution ///////////////////////////////////////////////////////////////////
|
||||||
void TUnitEm::execute(void)
|
void TUnitEm::execute(void)
|
||||||
{
|
{
|
||||||
PhotonR photon(0, 0, std::vector<Real>(), 0.0); // Just chose arbitrary input values here
|
PhotonR photon(0, 0); // Just chose arbitrary input values here
|
||||||
auto &a = envGet(EmField, getName());
|
auto &a = envGet(EmField, getName());
|
||||||
LOG(Message) << "Generating unit EM potential..." << std::endl;
|
LOG(Message) << "Generating unit EM potential..." << std::endl;
|
||||||
photon.UnitField(a);
|
photon.UnitField(a);
|
||||||
|
@ -60,6 +60,9 @@ namespace QCD{
|
|||||||
GRID_SERIALIZABLE_ENUM(Gauge, undef, feynman, 1, coulomb, 2, landau, 3);
|
GRID_SERIALIZABLE_ENUM(Gauge, undef, feynman, 1, coulomb, 2, landau, 3);
|
||||||
GRID_SERIALIZABLE_ENUM(ZmScheme, undef, qedL, 1, qedTL, 2, qedInf, 3);
|
GRID_SERIALIZABLE_ENUM(ZmScheme, undef, qedL, 1, qedTL, 2, qedInf, 3);
|
||||||
public:
|
public:
|
||||||
|
Photon(Gauge gauge, ZmScheme zmScheme);
|
||||||
|
Photon(Gauge gauge, ZmScheme zmScheme, std::vector<Real> improvements);
|
||||||
|
Photon(Gauge gauge, ZmScheme zmScheme, Real G0);
|
||||||
Photon(Gauge gauge, ZmScheme zmScheme, std::vector<Real> improvements, Real G0);
|
Photon(Gauge gauge, ZmScheme zmScheme, std::vector<Real> improvements, Real G0);
|
||||||
virtual ~Photon(void) = default;
|
virtual ~Photon(void) = default;
|
||||||
void FreePropagator(const GaugeField &in, GaugeField &out);
|
void FreePropagator(const GaugeField &in, GaugeField &out);
|
||||||
@ -82,12 +85,30 @@ namespace QCD{
|
|||||||
|
|
||||||
typedef Photon<QedGimplR> PhotonR;
|
typedef Photon<QedGimplR> PhotonR;
|
||||||
|
|
||||||
|
template<class Gimpl>
|
||||||
|
Photon<Gimpl>::Photon(Gauge gauge, ZmScheme zmScheme)
|
||||||
|
: gauge_(gauge), zmScheme_(zmScheme), improvement_(std::vector<Real>()),
|
||||||
|
G0_(0.15493339023106021408483720810737508876916113364521)
|
||||||
|
{}
|
||||||
|
|
||||||
|
template<class Gimpl>
|
||||||
|
Photon<Gimpl>::Photon(Gauge gauge, ZmScheme zmScheme,
|
||||||
|
std::vector<Real> improvements)
|
||||||
|
: gauge_(gauge), zmScheme_(zmScheme), improvement_(improvements),
|
||||||
|
G0_(0.15493339023106021408483720810737508876916113364521)
|
||||||
|
{}
|
||||||
|
|
||||||
|
template<class Gimpl>
|
||||||
|
Photon<Gimpl>::Photon(Gauge gauge, ZmScheme zmScheme, Real G0)
|
||||||
|
: gauge_(gauge), zmScheme_(zmScheme), improvement_(std::vector<Real>()), G0_(G0)
|
||||||
|
{}
|
||||||
|
|
||||||
template<class Gimpl>
|
template<class Gimpl>
|
||||||
Photon<Gimpl>::Photon(Gauge gauge, ZmScheme zmScheme,
|
Photon<Gimpl>::Photon(Gauge gauge, ZmScheme zmScheme,
|
||||||
std::vector<Real> improvements, Real G0)
|
std::vector<Real> improvements, Real G0)
|
||||||
: gauge_(gauge), zmScheme_(zmScheme), improvement_(improvements), G0_(G0)
|
: gauge_(gauge), zmScheme_(zmScheme), improvement_(improvements), G0_(G0)
|
||||||
{}
|
{}
|
||||||
|
|
||||||
template<class Gimpl>
|
template<class Gimpl>
|
||||||
void Photon<Gimpl>::FreePropagator (const GaugeField &in,GaugeField &out)
|
void Photon<Gimpl>::FreePropagator (const GaugeField &in,GaugeField &out)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user