34#define INCLXX_IN_GEANT4_MODE 1
52 namespace DeuteronDensity {
56 const G4int coeffTableSize = 13;
59 const G4double coeff1[coeffTableSize] = {
76 const G4double coeff2[coeffTableSize] = {
106 return r*r*(sWave*sWave + dWave*dWave);
114 return (sWave*sWaveDeriv + dWave*dWaveDeriv) /
Math::twoPi;
120 return p*p*(sWave*sWave + dWave*dWave);
125 const G4double r = 2. * std::max(theR, 1.e-4);
130 for(
G4int i=0; i<coeffTableSize; ++i) {
133 result += coeff1[i] * std::exp(-fmr);
135 result += coeff2[i] * std::exp(-fmr) * (1.+3./fmr+3./(fmr*fmr));
139 result *= normalisationR/r;
145 const G4double r = 2. * std::max(theR, 1.e-4);
150 for(
G4int i=0; i<coeffTableSize; ++i) {
153 result += coeff1[i] * std::exp(-fmr) * (fmr + 1.);
155 result += coeff2[i] * std::exp(-fmr) * (fmr + 4. + 9./fmr + 9./(fmr*fmr));
159 result *= -normalisationR/(r*r);
169 for(
G4int i=0; i<coeffTableSize; ++i) {
171 fmq = q2 + alPlusI*alPlusI;
173 result += coeff1[i] / fmq;
175 result += coeff2[i] / fmq;
179 result *= normalisationP;
Deuteron density in r and p according to the Paris potential.
G4double wavefunctionR(const G4int l, const G4double r)
G4double derivDensityR(const G4double r)
First derivative of the r-space density function.
G4double derivWavefunctionR(const G4int l, const G4double r)
G4double wavefunctionP(const G4int l, const G4double p)
G4double densityR(const G4double r)
PDF for a nucleon in r space.
G4double densityP(const G4double p)
PDF for a nucleon in p space.
const G4double hc
[MeV*fm]