1#ifndef WMVARIABLEADJUSTER_H
2#define WMVARIABLEADJUSTER_H
18namespace variable_adjuster
35 std::vector<std::unique_ptr<WmApplication>>
_apps;
The WmPatchProcess class is a base class for processes that are broken up onto separate sections of t...
Definition: wmpatchprocess.h:26
WxCryptSet extends WxCrypt by providing, in addition to name-value pairs, an set of named WxCryptSets...
Definition: wxcryptset.h:35
Provides an abstract interface for message based communication between different processes.
Definition: wxmsgbase.h:22
The WmVariableAdjuster class is a base class for variable adjusters.
Definition: variable_adjuster.h:31
virtual const std::vector< size_t > & get_input_indices() const
Definition: variable_adjuster.h:68
std::vector< wxm::array::patch_array_t * > get_patch_arrays(const variables_type &in)
int priority() const
Getter function for priority.
Definition: variable_adjuster.h:78
int _priority
Definition: variable_adjuster.h:98
virtual void Barrier(const WxMsgBase &msg, const real time, variables_type &input)
An opportunity for the variable adjuster to perform any MPI operations it needs to after solve is cal...
Definition: variable_adjuster.h:92
variable_adjuster_t()
Constructor.
wxm::temporal_solver::variables_type variables_type
Definition: variable_adjuster.h:41
void setup(const WxCryptSet &wxc) override
Setup the spatial solver using the cryptset.
bool _grab_all
Definition: variable_adjuster.h:38
virtual void solve(real time, variables_type &input)=0
applies the variable adjuster to input
std::vector< std::unique_ptr< WmApplication > > _apps
Definition: variable_adjuster.h:35
void process() override
Definition: variable_adjuster.h:64
std::vector< size_t > _var_idcs
Definition: variable_adjuster.h:33
std::vector< std::pair< wxm::variable::distributed_variable_t *, size_t > > variables_type
Definition: wmtemporalsolver.h:47
Base namespace for everything not included in the global namespace.
Definition: field_source.h:8
#define real
Definition: wmoclunstructuredreconstruction.h:11