16 #ifndef BORNAGAIN_SAMPLE_HARDPARTICLE_IPROFILERIPPLE_H
17 #define BORNAGAIN_SAMPLE_HARDPARTICLE_IPROFILERIPPLE_H
40 virtual complex_t
factor_x(complex_t qx)
const = 0;
41 virtual complex_t
factor_yz(complex_t qy, complex_t qz)
const = 0;
51 complex_t
factor_yz(complex_t qy, complex_t qz)
const override;
61 complex_t
factor_yz(complex_t qy, complex_t qz)
const override;
76 complex_t
factor_yz(complex_t qy, complex_t qz)
const override;
Base class for form factors with a cosine ripple profile in the yz plane.
ICosineRipple(const std::vector< double > &PValues)
complex_t factor_yz(complex_t qy, complex_t qz) const override
Complex form factor.
Base class for form factors with a rectangular ripple (bar) profile in the yz plane.
complex_t factor_yz(complex_t qy, complex_t qz) const override
Complex form factor.
IProfileRectangularRipple(const std::vector< double > &PValues)
Base class for form factors with a cosine ripple profile in the yz plane.
double radialExtension() const override
Returns the (approximate in some cases) radial size of the particle of this form factor's shape....
IProfileRipple(const std::vector< double > &PValues)
virtual complex_t factor_yz(complex_t qy, complex_t qz) const =0
virtual complex_t factor_x(complex_t qx) const =0
complex_t formfactor_at_bottom(C3 q) const override
Base class for form factors with a triangular ripple profile in the yz plane.
const double & m_asymmetry
ISawtoothRipple(const std::vector< double > &PValues)
complex_t factor_yz(complex_t qy, complex_t qz) const override
Complex form factor.