15 #ifndef BORNAGAIN_CORE_AGGREGATE_INTERFERENCEFUNCTION1DLATTICE_H
16 #define BORNAGAIN_CORE_AGGREGATE_INTERFERENCEFUNCTION1DLATTICE_H
40 std::vector<const INode*>
getChildren() const override final;
Defines and implements the interface class IInterferenceFunction.
Interface for a one-dimensional decay function, with evaluate(q) returning the Fourier transform,...
Pure virtual base class of interference functions.
Visitor interface to visit ISample objects.
Interference function of a 1D lattice.
std::vector< const INode * > getChildren() const override final
Returns a vector of children (const).
InterferenceFunction1DLattice * clone() const override final
Returns a clone of this ISample object.
~InterferenceFunction1DLattice() final
InterferenceFunction1DLattice(double length, double xi)
Constructor of interference function of one-dimensional lattice.
int m_na
determines the number of reciprocal lattice points to use
void setDecayFunction(const IFTDecayFunction1D &decay)
Sets one-dimensional decay function.
std::unique_ptr< IFTDecayFunction1D > mP_decay
double iff_without_dw(const kvector_t q) const override final
Calculates the structure factor without Debye-Waller factor.
void accept(INodeVisitor *visitor) const override final
Calls the INodeVisitor's visit method.