PSCF v1.4.0
cpc/field/Domain.cpp
1/*
2* PSCF - Polymer Self-Consistent Field
3*
4* Copyright 2015 - 2025, The Regents of the University of Minnesota
5* Distributed under the terms of the GNU General Public License.
6*/
7
8#include "Domain.h" // Class header
9#include <cpc/field/FieldIo.tpp>
10#include <prdc/cpu/WaveList.h>
11#include <prdc/cpu/FFT.h>
12
13#include <cp/field/Domain.tpp> // Base class template implementation
14
15namespace Pscf {
16namespace Cpc {
17
18 using namespace Util;
19 using namespace Prdc;
20 using namespace Prdc::Cpu;
21
22 /*
23 * Constructor.
24 */
25 template <int D>
27 : Cp::Domain<D, FFT<D>, WaveList<D>, FieldIo<D> >()
28 { ParamComposite::setClassName("Domain"); }
29
30} // namespace Cpc
31} // namespace Pscf
32
33// Explicit instantiation definitions
34namespace Pscf {
35 namespace Cp {
36 using namespace Prdc::Cpu;
37 template class Domain<1, FFT<1>, WaveList<1>, Cpc::FieldIo<1> >;
38 template class Domain<2, FFT<2>, WaveList<2>, Cpc::FieldIo<2> >;
39 template class Domain<3, FFT<3>, WaveList<3>, Cpc::FieldIo<3> >;
40 }
41 namespace Cpc {
42 template class Domain<1>;
43 template class Domain<2>;
44 template class Domain<3>;
45 }
46}
Spatial domain for a periodic structure with real fields, on a CPU.
File input/output operations for fields.
Fourier transform wrapper.
Definition cpu/FFT.h:39
Class to compute and store properties associated with wavevectors.
void setClassName(const char *className)
Set class name string.
Complex-valued periodic fields (class templates).
Definition cp.mod:6
Complex periodic fields, CL-FTS (CPU).
Definition cpc.mod:6
Periodic fields and crystallography.
Definition complex.cpp:11
PSCF package top-level namespace.