Skip to content
Snippets Groups Projects
Commit f76c54f5 authored by Elias Pipping's avatar Elias Pipping Committed by Elias Pipping
Browse files

Cleanup / comments

parent b2a3ba9e
Branches
No related tags found
No related merge requests found
......@@ -7,7 +7,6 @@
#include <dune/common/bitsetvector.hh>
#include <dune/tnnmg/problem-classes/bisection.hh>
//#include <dune/tnnmg/problem-classes/convexproblem.hh>
#include <dune/tnnmg/problem-classes/nonlinearity.hh>
#include <dune/tnnmg/problem-classes/onedconvexfunction.hh>
......@@ -15,8 +14,8 @@
#include "nicefunction.hh"
#include "samplefunctional.hh"
/** \brief Base class for problems where each block can be solved with a scalar
* Gauss-Seidel method */
/** \brief Base class for problems where each block can be solved with a
* modified gradient method */
template <class MyConvexProblemTypeTEMPLATE> class MyBlockProblem {
public:
typedef MyConvexProblemTypeTEMPLATE MyConvexProblemType;
......@@ -28,7 +27,7 @@ template <class MyConvexProblemTypeTEMPLATE> class MyBlockProblem {
static const int block_size = MyConvexProblemType::block_size;
/** \brief Solves one local system using a scalar Gauss-Seidel method */
/** \brief Solves one local system using a modified gradient method */
class IterateObject;
MyBlockProblem(MyConvexProblemType& problem) : problem(problem) {
......@@ -54,8 +53,7 @@ class MyBlockProblem<MyConvexProblemTypeTEMPLATE>::IterateObject {
protected:
/** \brief Constructor, protected so only friends can instantiate it
* \param bisection The class used to do a scalar bisection
* \param problem The problem including quadratic part and nonlinear/nonsmooth
* part
* \param problem The problem including quadratic part and nonlinear part
*/
IterateObject(const Bisection& bisection, MyConvexProblemType& problem)
: problem(problem), bisection(bisection) {};
......@@ -63,24 +61,12 @@ class MyBlockProblem<MyConvexProblemTypeTEMPLATE>::IterateObject {
public:
/** \brief Set the current iterate */
void setIterate(VectorType& u) {
// TODO How should the rang-1 term be handled
// ????????????????????????????????
// s = problem.Am*u;
// problem.phi.setVector(u);
this->u = u;
return;
};
/** \brief Update the i-th block of the current iterate */
void updateIterate(const LocalVectorType& ui, int i) {
// TODO How should the rang-1 term be handled
// ????????????????????????????????
// s += (ui-u[i]) * problem.Am[i];
// for(size_t j=0; j<block_size; ++j)
// problem.phi.updateEntry(i, ui[j], j);
u[i] = ui;
return;
};
......@@ -95,7 +81,6 @@ class MyBlockProblem<MyConvexProblemTypeTEMPLATE>::IterateObject {
void solveLocalProblem(
LocalVectorType& ui, int m,
const typename Dune::BitSetVector<block_size>::const_reference ignore) {
// Note: problem.Am and problem.a will be ignored
// Note: ignore is currently ignored (what's it used for anyway?)
{
LocalMatrixType const* localA = NULL;
......@@ -132,10 +117,6 @@ class MyBlockProblem<MyConvexProblemTypeTEMPLATE>::IterateObject {
// state data for smoothing procedure used by:
// setIterate, updateIterate, solveLocalProblem
VectorType u;
/** \brief Keeps track of the total number of bisection steps that were
* performed */
int bisectionsteps;
};
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment