PSCF v1.3
rpg/system/SystemConstRef.h
1#ifndef RPG_SYSTEM_CONST_REF_H
2#define RPG_SYSTEM_CONST_REF_H
3
4/*
5* PSCF - Polymer Self-Consistent Field
6*
7* Copyright 2015 - 2025, The Regents of the University of Minnesota
8* Distributed under the terms of the GNU General Public License.
9*/
10
11#include <prdc/system/SystemConstRefReal.h> // base class template
12#include <rpg/system/System.h> // template parameter
13
14namespace Pscf {
15namespace Rpg {
16
17 using namespace Util;
18 using namespace Pscf::Prdc;
19 using namespace Pscf::Prdc::Cpu;
20
26 template <int D>
27 class SystemConstRef : public SystemConstRefReal< System<D> >
28 {
29 public:
30
33
38 : Base()
39 {};
40
45 : Base(system)
46 {};
47
48 };
49
50 // Suppress implicit instantiation
51 extern template class SystemConstRef<1>;
52 extern template class SystemConstRef<2>;
53 extern template class SystemConstRef<3>;
54
55}
56
57namespace Prdc {
58 // Suppress implicit instantiation of base class
59 extern template class SystemConstRefReal< Rpg::System<1> >;
60 extern template class SystemConstRefReal< Rpg::System<2> >;
61 extern template class SystemConstRefReal< Rpg::System<3> >;
62}
63
64} // namespace Pscf
65#endif
Const access to main components of an associated System.
SystemConstRefReal< System< D > > Base
Alias for base class.
SystemConstRef(System< D > const &system)
Constructor.
Main class, representing one complete system.
Fields and FFTs for periodic boundary conditions (CPU)
Definition CField.cpp:12
Periodic fields and crystallography.
Definition CField.cpp:11
SCFT and PS-FTS with real periodic fields (GPU)
PSCF package top-level namespace.
Definition param_pc.dox:1