14 NotImplementedYet::NotImplementedYet(
const string& msg)
25 return (
string(
"Not implemented/supported yet, required for: ") +
string(runtime_error::what())).c_str();
30 : invalid_argument(msg)
40 return (
string(
"ValueError: ") +
string(invalid_argument::what())).c_str();
85 <<
" --> keep iterating: " << boolalpha << keep_iterating);
90 template<
typename time>
95 template<
typename time>
102 template<
typename time>
105 this->controller = ctrl;
113 template<
typename time>
116 assert(this->controller);
117 return this->controller;
125 template<
typename time>
129 template<
typename time>
138 template<
typename time>
147 template<
typename time>
157 template<
typename time>
163 template<
typename time>
167 template<
typename time>
171 template<
typename time>
175 template<
typename time>
184 template<
typename time>
194 template<
typename time>
204 template<
typename time>
212 template<
typename time>
219 template<
typename time>
230 template<
typename time>
virtual void broadcast(ICommunicator *comm)
virtual bool previous_is_iterating()
Check whether previous processor is still iterating.
virtual void post_sweep()
Hook automatically run after each completed sweep.
virtual void spread()
Initialize solution values at all time nodes with meaningful values.
virtual bool get_converged(int rank)=0
Retreive converged state for specific processor.
Not implemented yet exception.
Base SDC/MLSDC/PFASST controller.
virtual const char * what() const
virtual void set_controller(Controller< time > *ctrl)
Set the sweepers controller.
virtual bool converged()
Return convergence status.
virtual void post_predict()
Hook automatically run after each completed predict.
virtual Controller< time > * get_controller()
Accessor to the controller managing this sweeper.
virtual void set_comm(ICommunicator *comm)
Set new communicator to use.
#define ML_CLOG(level, logger_id, x)
same as CLOG(level, logger, x) from easylogging++
virtual void set_options()
Set options from command line etc.
virtual bool keep_iterating()
Check whether this processor should keep iterating.
virtual const char * what() const
virtual void post(ICommunicator *comm, int tag)
virtual void post_step()
Hook automatically run after each completed time step.
virtual void restrict_initial(shared_ptr< ISweeper< time >> dst, shared_ptr< const ISweeper< time >> src)
Restrict initial condition from the fine sweeper to the coarse sweeper.
interfaces for SDC/MLSDC/PFASST algorithms.
virtual void setup(bool coarse=false)
Setup (allocate etc) the sweeper.
#define UNUSED(expr)
Denoting unused function parameters for omitting compiler warnings.
Abstract interface for communicators.
virtual void interpolate_initial(shared_ptr< ISweeper< time >> dst, shared_ptr< const ISweeper< time >> src)
Interpolate initial condition from the coarse sweeper to the fine sweeper.
virtual void send(ICommunicator *comm, int tag, bool blocking)
virtual void save(bool initial_only=false)
Save states (and/or function values) at all nodes.
virtual void recv(ICommunicator *comm, int tag, bool blocking)
ValueError(const string &msg)