1#ifndef RP_AM_ITERATOR_GRID_H
2#define RP_AM_ITERATOR_GRID_H
11#include <pscf/iterator/AmIteratorTmpl.h>
12#include <pscf/iterator/AmbdInteraction.h>
45 template <
int D,
class T>
47 :
public AmIteratorTmpl< typename T::Iterator, typename T::Vector >
85 void setup(
bool isContinuation)
override;
97 using IteratorT::system;
98 using IteratorT::flexibleParams_;
115 int nElements()
override;
120 bool hasInitialGuess()
override;
127 void getCurrent(
VectorT& curr)
override;
135 void evaluate()
override;
142 void getResidual(
VectorT& resid)
override;
149 void update(
VectorT& newGuess)
override;
154 void outputToLog()
override;
157 using RealT = double;
158 using RFieldT =
typename T::RField;
Modified interaction to compute residual defn.
AmIteratorGrid(typename T::System &system)
Constructor.
void readParameters(std::istream &in) override
Read all parameters and initialize.
AmIteratorTmpl< IteratorT, VectorT > AmIterTmplT
Alias for base class.
virtual ~AmIteratorGrid()
Destructor.
void outputTimers(std::ostream &out) const override
Output timing results to log file.
typename T::Vector VectorT
Alias for type of state and residual vectors.
typename T::Iterator IteratorT
Alias for Iterator type.
void setup(bool isContinuation) override
Setup iterator just before entering iteration loop.
Class templates for real-valued periodic fields.
PSCF package top-level namespace.