From 690961747db168e9337043cf4ed0cc5f2d810377 Mon Sep 17 00:00:00 2001 From: Oliver Sander <sander@igpm.rwth-aachen.de> Date: Tue, 15 Nov 2005 09:43:32 +0000 Subject: [PATCH] . [[Imported from SVN: r588]] --- src/rodassembler.hh | 8 ++++---- staticrod.cc | 12 +++++++----- staticrod.parset | 14 ++++++-------- 3 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/rodassembler.hh b/src/rodassembler.hh index 69425981..839f89e7 100644 --- a/src/rodassembler.hh +++ b/src/rodassembler.hh @@ -32,11 +32,11 @@ namespace Dune typedef FieldMatrix<double, blocksize, blocksize> MatrixBlock; //! ??? - typedef typename FunctionSpaceType::JacobianRange JacobianRange; + typedef typename FunctionSpaceType::JacobianRangeType JacobianRange; //! ??? - typedef typename FunctionSpaceType::RangeField RangeFieldType; - typedef typename FunctionSpaceType::Range RangeType; + typedef typename FunctionSpaceType::RangeFieldType RangeFieldType; + typedef typename FunctionSpaceType::RangeType RangeType; /** \todo Does actually belong into the base class */ const GridType* grid_; @@ -55,7 +55,7 @@ namespace Dune RodAssembler(const FunctionSpaceType &f) : functionSpace_(f) { - grid_ = &f.getGrid(); + grid_ = &f.grid(); B = 1; A1 = 1; A3 = 1; diff --git a/staticrod.cc b/staticrod.cc index 3b7df977..11e55b4c 100644 --- a/staticrod.cc +++ b/staticrod.cc @@ -3,6 +3,7 @@ #include <dune/grid/onedgrid.hh> #include <dune/fem/lagrangebase.hh> +#include <dune/grid/common/gridpart.hh> #include <dune/istl/io.hh> @@ -94,15 +95,15 @@ int main (int argc, char *argv[]) try // ////////////////////////////////////////////////////////// typedef FunctionSpace < double , double, 1, 1 > RodFuncSpace; - typedef DefaultGridIndexSet<RodGridType,LevelIndex> RodIndexSet; - typedef LagrangeDiscreteFunctionSpace < RodFuncSpace, RodGridType,RodIndexSet, 1> RodFuncSpaceType; + typedef LevelGridPart<RodGridType> RodGridPartType; + typedef LagrangeDiscreteFunctionSpace < RodFuncSpace, RodGridPartType, 1> RodFuncSpaceType; - Array<RodIndexSet*> rodIndexSet(maxlevel+1); + Array<RodGridPartType*> rodGridPart(maxlevel+1); Array<const RodFuncSpaceType*> rodFuncSpace(maxlevel+1); for (int i=0; i<maxlevel+1; i++) { - rodIndexSet[i] = new RodIndexSet(rod, i); - rodFuncSpace[i] = new RodFuncSpaceType(rod, *rodIndexSet[i], i); + rodGridPart[i] = new RodGridPartType(rod, i); + rodFuncSpace[i] = new RodFuncSpaceType(*rodGridPart[i]); } @@ -160,6 +161,7 @@ int main (int argc, char *argv[]) try for (int i=0; i<obstacles[maxlevel].size(); i++) { obstacles[maxlevel][i].clear(); + obstacles[maxlevel][i].val[0] = - x[i][0]; obstacles[maxlevel][i].val[1] = 0.1 - x[i][0]; } diff --git a/staticrod.parset b/staticrod.parset index 2f6ce829..f0b04280 100644 --- a/staticrod.parset +++ b/staticrod.parset @@ -1,13 +1,11 @@ -# Number of grid levels -minLevel = 0 - -maxLevel = 0 +# Number of uniform grid refinement steps +maxLevel = 4 # Initial load increment -loadIncrement = 1 +loadIncrement = 0.01 # Max number of steps of the Newton solver -maxNewtonSteps = 10 +maxNewtonSteps = 30 # Number of multigrid iterations per time step numIt = 100 @@ -25,7 +23,7 @@ mu = 1 baseIt = 100 # Tolerance of the solver -tolerance = -1 +tolerance = 1e-10 # Tolerance of the base grid solver baseTolerance = -1 @@ -35,4 +33,4 @@ baseTolerance = -1 ############################ # Number of elements of the rod grid -numRodElements = 40 +numRodBaseElements = 5 -- GitLab