26 , m_slice_bottom(m_P[2])
52 const complex_t qL2 = q.x() * L / 2.;
53 const complex_t qR = std::sqrt(q.y() * q.y() + q.z() * q.z()) *
R;
55 const complex_t axial_part = L *
Math::sinc(qL2);
56 complex_t radial_part;
66 double y = sqrt(
R *
R - z * z);
71 return radial_part * axial_part;
Defines Bessel functions in namespace Math.
Defines M_PI and some more mathematical constants.
Defines class DoubleEllipse.
Defines classes RealIntegrator, ComplexIntegrator.
To integrate a complex function of a real variable.
complex_t integrate(const std::function< complex_t(double)> &f, double lmin, double lmax)
complex_t formfactor_at_bottom(C3 q) const override
const double & m_slice_top
double slice_bottom() const
const double & m_slice_bottom
HorizontalCylinder(double radius, double length, double slice_bottom, double slice_top)
void checkNodeArgs() const
Raises exception if a parameter value is invalid.
double J1c(double x)
Bessel function J1(x)/x.
double sinc(double x)
sinc function: