diff --git a/src/myblockproblem.hh b/src/myblockproblem.hh index e4c4e80a42613baefb23bc2ae820c888a74c5491..c54d8253c92fb11a524962f2befd90883eb9d422 100644 --- a/src/myblockproblem.hh +++ b/src/myblockproblem.hh @@ -125,57 +125,6 @@ class MyBlockProblem<ConvexProblemTypeTEMPLATE>::IterateObject { } return; } - - const LocalMatrixType* Aii; - LocalVectorType b(0.0); - - typename MatrixType::row_type::ConstIterator it = problem.A[i].begin(); - typename MatrixType::row_type::ConstIterator end = problem.A[i].end(); - for (; it != end; ++it) { - int col = it.index(); - if (col == i) - Aii = &(*it); - else - it->mmv(u[col], b); - } - b *= problem.a; - b += problem.f[i]; - // TODO How should the rang-1 term be handled - // ???????????????????????????????? - - ui = u[i]; - LocalVectorType ui_old = ui; - local_J.i = i; - for (size_t j = 0; j < block_size; ++j) { - if (ignore.test(j)) - continue; - - local_J.A = problem.a * (*Aii)[j][j]; - local_J.b = b[j]; - local_J.j = j; - - typename LocalMatrixType::row_type::ConstIterator it = (*Aii)[j].begin(); - typename LocalMatrixType::row_type::ConstIterator end = (*Aii)[j].end(); - for (; it != end; ++it) - if (it.index() != j) - local_J.b -= (*it) * problem.a * ui[it.index()]; - - ui[j] = bisection.minimize(local_J, ui[j], ui[j], bisectionsteps); - - // we need to update the intermediate local values ... - problem.phi.updateEntry(i, ui[j], j); - } - // ... and to restore the old ones after computation - for (int j = 0; j < block_size; ++j) - problem.phi.updateEntry(i, ui_old[j], j); - - // local_J.A += problem.am*problem.Am[i]*problem.Am[i]; - // local_J.b = problem.f[i] + problem.a*local_J.b; - // local_J.b -= (s-u[i]*problem.Am[i])*problem.am*problem.Am[i]; - - // ui = bisection.minimize<OneDConvexFunction>(local_J, u[i], - // u[i], bisectionsteps); - return; } private: