Peano
Loading...
Searching...
No Matches
Solver.h
Go to the documentation of this file.
1// This file is part of the Peano's PETSc extension. For conditions of
2// distribution and use, please see the copyright notice at
3// www.peano-framework.org
4#pragma once
5
6
7#include <string>
8
9#include "tarch/la/Vector.h"
10#include "tarch/logging/Log.h"
12
14
15
16namespace mghype {
17 namespace matrixfree {
18 namespace solvers {
19 class Solver;
20 }
21 }
22}
23
24
134
Abstract base class for all solvers.
Definition Solver.h:28
std::string _name
Name of solver.
Definition Solver.h:81
virtual bool terminationCriterionHolds()
Definition Solver.cpp:42
void updateGlobalSolutionUpdates(double deltaU, const tarch::la::Vector< Dimensions, double > &h)
Definition Solver.cpp:112
void synchroniseGlobalResidualAndSolutionUpdate()
Synchronise the global stats between MPI ranks.
Definition Solver.cpp:147
void updateGlobalResidual(double residual, const tarch::la::Vector< Dimensions, double > &h)
Definition Solver.cpp:100
void updateMinMaxMeshSize(const tarch::la::Vector< Dimensions, double > &h)
Definition Solver.cpp:124
virtual void beginMeshSweep()=0
End the traversal.
virtual void endMeshSweep()=0
Begin the traversal.
double _maxH
Observed mesh width.
Definition Solver.h:96
void clearGlobalResidualAndSolutionUpdate()
Clear the global mesh stats.
Definition Solver.cpp:83
Solver(const std::string &name, double tolerance)
Construct the solver.
Definition Solver.cpp:12
double getGlobalResidualMaxNorm() const
Definition Solver.cpp:37
double _minH
Observed mesh width.
Definition Solver.h:91
virtual std::string toString() const
Definition Solver.cpp:132
static tarch::logging::Log _log
Definition Solver.h:74
tarch::multicore::BooleanSemaphore _semaphore
Semaphore for global residual values.
Definition Solver.h:117
Log Device.
Definition Log.h:516
This file is part of the multigrid project within Peano 4.
Definition __init__.py:1
This file is part of the multigrid project within Peano 4.
Definition __init__.py:1
Simple vector class.
Definition Vector.h:134