From 2f30c080e204aead8648925cf406bf597a399bd7 Mon Sep 17 00:00:00 2001 From: Elias Pipping <elias.pipping@fu-berlin.de> Date: Fri, 4 Nov 2011 17:30:55 +0100 Subject: [PATCH] Solve a bigger problem --- src/one-body-sample.cc | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/src/one-body-sample.cc b/src/one-body-sample.cc index accd6355..e7e9af94 100644 --- a/src/one-body-sample.cc +++ b/src/one-body-sample.cc @@ -45,7 +45,7 @@ #include "boost/format.hpp" -int const dim = 2; +int const dim = 3; template <class GridView> void setup_boundary(GridView const &gridView, @@ -93,7 +93,7 @@ void assemble_neumann(GridView const &gridView, FEBasis const &feBasis, Dune::BlockVector<LocalVectorType> & f) { // constant sample function on neumann boundary BoundaryPatch<GridView> neumannBoundary(gridView, neumannNodes); - LocalVectorType SampleVector; + LocalVectorType SampleVector(0); // FIXME: random values SampleVector[0] = 1; SampleVector[1] = 2; @@ -135,11 +135,11 @@ int main() { typedef Dune::BlockVector<SmallVector> VectorType; // FIXME: Random values - size_t const runs = 3; - double const E = 1; + size_t const runs = 1000; + double const E = 1e4; double const nu = 0.3; - int const refinements = 5; - size_t const solver_maxIterations = 100; + int const refinements = 3; + size_t const solver_maxIterations = 10000; double const solver_tolerance = 1e-4; // {{{ Set up grid @@ -194,6 +194,7 @@ int main() { leafView, p1Basis, frictionalNodes, nodalIntegrals); for (size_t run = 1; run <= runs; ++run) { + std::cout << "Run: " << run << std::endl; // b = neumann assemble_neumann<GridType, GridType::LeafGridView, SmallVector, P1Basis>( leafView, p1Basis, neumannNodes, b); @@ -205,7 +206,7 @@ int main() { // TODO: Random value std::vector<double> normalStress; normalStress.resize(grid.size(grid.maxLevel(), dim)); - std::fill(normalStress.begin(), normalStress.end(), 2.0); + std::fill(normalStress.begin(), normalStress.end(), 0.0); // TODO: Random value std::vector<double> coefficientOfFriction; @@ -225,7 +226,7 @@ int main() { LoopSolver<VectorType> solver(&nonlinearGSStep, solver_maxIterations, solver_tolerance, &energyNorm, - Solver::FULL); // Solver::QUIET); + Solver::QUIET); // Solver::QUIET); solver.solve(); Dune::VTKWriter<GridType::LeafGridView> writer(leafView); @@ -247,7 +248,7 @@ int main() { LoopSolver<VectorType> solver(&blockGSStep, solver_maxIterations, solver_tolerance, &energyNorm, - Solver::FULL); // Solver::QUIET); + Solver::QUIET); // Solver::QUIET); solver.solve(); } } -- GitLab