PSCF v1.3.2
rpg/scft/sweep/LinearSweep.h
1#ifndef RPG_LINEAR_SWEEP_H
2#define RPG_LINEAR_SWEEP_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 "Sweep.h" // base class
12#include "SweepParameter.h" // member
13#include <util/global.h>
14#include <iostream>
15
16namespace Pscf {
17namespace Rpg {
18
19 template <int D> class System;
20
21 using namespace Util;
22 using namespace Pscf::Prdc;
23 using namespace Pscf::Prdc::Cuda;
24
33 template <int D>
34 class LinearSweep : public Sweep<D>
35 {
36 public:
37
43
49 void readParameters(std::istream& in);
50
55 void setup();
56
63 void setParameters(double s);
64
70 void outputSummary(std::ostream& out);
71
72 protected:
73
74 using Sweep<D>::system;
75 using Sweep<D>::hasSystem;
77
78 private:
80 int nParameter_;
81
83 DArray< SweepParameter<D> > parameters_;
84
85 };
86
87 // Explicit instantiation declarations
88 extern template class LinearSweep<1>;
89 extern template class LinearSweep<2>;
90 extern template class LinearSweep<3>;
91
92}
93}
94#endif
FieldState for fields in symmetry-adapted basis format.
Base class for a sweep in parameter space where parameters change linearly with the sweep variable.
void setup()
Setup operation at the beginning of a sweep.
void outputSummary(std::ostream &out)
Output data to a running summary.
void setParameters(double s)
Set the state before an iteration.
void readParameters(std::istream &in)
Read parameters from param file.
LinearSweep(System< D > &system)
Constructor.
bool hasSystem()
Has an association with the parent System been set?
Sweep()
Default Constructor.
System< D > & system()
Return the parent system by reference.
Main class, representing a complete physical system.
Solve a sequence of problems along a path through parameter space.
Definition SweepTmpl.h:28
GArray< ParameterType > parameterTypes_
Definition SweepTmpl.h:105
Dynamically allocatable contiguous array template.
Definition DArray.h:32
File containing preprocessor macros for error handling.
Fields, FFTs, and utilities for periodic boundary conditions (CUDA)
Definition CField.cu:12
Periodic fields and crystallography.
Definition CField.cpp:11
SCFT and PS-FTS with real periodic fields (GPU)
PSCF package top-level namespace.