1#ifndef PSPG_LINEAR_SWEEP_TPP
2#define PSPG_LINEAR_SWEEP_TPP
11#include "LinearSweep.h"
12#include <pspg/System.h>
32 this->read(in,
"nParameter", nParameter_);
33 parameters_.allocate(nParameter_);
36 this->
template readDArray< SweepParameter<D> >(in,
"parameters", parameters_, nParameter_);
40 for (
int i = 0; i < nParameter_; ++i) {
41 if (parameters_[i].type() ==
"phi_polymer" || parameters_[i].type() ==
"phi_solvent") {
42 sum += parameters_[i].change();
59 for (
int i = 0; i < nParameter_; ++i) {
60 parameters_[i].setSystem(system());
61 parameters_[i].getInitial();
70 for (
int i = 0; i < nParameter_; ++i) {
71 newVal = parameters_[i].initial() + s*parameters_[i].change();
72 parameters_[i].update(newVal);
void outputSummary(std::ostream &out)
Output data to a running summary.
void readParameters(std::istream &in)
Read parameters from param file.
void setParameters(double s)
Set the state before an iteration.
void setup()
Setup operation at the beginning of a sweep.
LinearSweep(System< D > &system)
Constructor.
Solve a sequence of problems along a line in parameter space.
virtual void readParameters(std::istream &in)
Read parameters from param file.
virtual void setup()
Setup operation at the beginning of a sweep.
Main class in SCFT simulation of one system.
#define UTIL_CHECK(condition)
Assertion macro suitable for serial or parallel production code.
C++ namespace for polymer self-consistent field theory (PSCF).
Utility classes for scientific computation.