BornAgain
1.19.79
Open-source research software to simulate and fit neutron and x-ray reflectometry and grazing-incidence small-angle scattering
|
Interference function for two particles at a mean distance and given standard deviation from each other in a given direction. TODO: RENAME (has nothing to do with crystallographic twin)
Public Member Functions | |
InterferenceTwin (const R3 &direction, double mean_distance, double std_dev) | |
std::string | className () const final |
InterferenceTwin * | clone () const override |
R3 | direction () const |
double | DWfactor (R3 q) const |
structureFactors the Debye-Waller factor for a given wavevector transfer More... | |
double | meanDistance () const |
std::vector< ParaMeta > | parDefs () const final |
virtual double | particleDensity () const |
If defined by this interference function's parameters, returns the particle density (per area). Otherwise, returns zero or a user-defined value. More... | |
double | positionVariance () const |
Returns the position variance. More... | |
void | setPositionVariance (double var) |
Sets the variance of the position for the calculation of the DW factor It is defined as the variance in each relevant dimension. More... | |
double | stdDev () const |
virtual double | structureFactor (R3 q, double outer_iff=1.0) const |
The interference function for a given wavevector transfer. More... | |
virtual bool | supportsMultilayer () const |
Indicates if this interference function can be used with a sample (DWBA mode) More... | |
Protected Member Functions | |
double | iff_no_inner (R3 q, double outer_iff) const |
Calculates the structure factor in the absence of extra inner structure. More... | |
Protected Attributes | |
double | m_position_var |
InterferenceTwin::InterferenceTwin | ( | const R3 & | direction, |
double | mean_distance, | ||
double | std_dev | ||
) |
|
final |
|
overridevirtual |
Implements IInterference.
R3 InterferenceTwin::direction | ( | ) | const |
|
inherited |
structureFactors the Debye-Waller factor for a given wavevector transfer
|
protectedinherited |
Calculates the structure factor in the absence of extra inner structure.
double InterferenceTwin::meanDistance | ( | ) | const |
|
final |
|
virtualinherited |
If defined by this interference function's parameters, returns the particle density (per area). Otherwise, returns zero or a user-defined value.
Reimplemented in InterferenceHardDisk, InterferenceFinite2DLattice, Interference2DParaCrystal, and Interference2DLattice.
|
inherited |
Returns the position variance.
|
inherited |
Sets the variance of the position for the calculation of the DW factor It is defined as the variance in each relevant dimension.
double InterferenceTwin::stdDev | ( | ) | const |
|
virtualinherited |
The interference function for a given wavevector transfer.
Reimplemented in Interference2DSuperLattice.
|
virtualinherited |
Indicates if this interference function can be used with a sample (DWBA mode)
Reimplemented in InterferenceFinite3DLattice, and Interference3DLattice.
|
protectedinherited |