8#include "BinaryStructureFactor.h"
10#include <rpc/fts/simulator/Simulator.h>
11#include <rpc/system/System.h>
12#include <rpc/solvers/Mixture.h>
13#include <rpc/field/Domain.h>
14#include <rpc/field/WFields.h>
16#include <prdc/cpu/FFT.h>
17#include <prdc/cpu/WaveList.h>
19#include <pscf/cpu/VecOp.h>
20#include <pscf/cpu/VecOpCx.h>
21#include <pscf/cpu/complex.h>
23#include <rp/fts/analyzer/BinaryStructureFactor.tpp>
58 if (AnalyzerT::isAtInterval(iStep)) {
70 template class BinaryStructureFactor<1, Rpc::Types<1> >;
71 template class BinaryStructureFactor<2, Rpc::Types<2> >;
72 template class BinaryStructureFactor<3, Rpc::Types<3> >;
Class to compute and store properties associated with wavevectors.
RField< D > const & kSq() const
Get the kSq array on the device by const reference.
DArray< bool > const & implicitInverse() const
Get the implicitInverse array by reference.
void computeS(Array< typename Types< D >::Complex > const &wk)
Types< D >::RFieldDft wk_
void findWaveBunches(Array< double > const &kSq, Array< bool > const &implicit)
Spherically averaged structure factor for a two-monomer system.
BinaryStructureFactor(Simulator< D > &simulator, System< D > &system)
Constructor.
void sample(long iStep) override
Compute structure factors and add to accumulators.
void setup() override
Setup before the main loop.
Field theoretic simulator (base class).
A complete physical system.
Aliases for types used in the Rpc program-level namespace.
Periodic fields and crystallography.
Class templates for real-valued periodic fields.
Real periodic fields, SCFT and PS-FTS (CPU).
PSCF package top-level namespace.