elasticity_upscale.hpp
Go to the documentation of this file.
55};
63};
72};
80};
203 typedef typename GridType::LeafGridView::template Codim<1>::Geometry::GlobalCoordinate GlobalCoordinate;
Class handling finite element assembly. Class describing 2D quadrilateral grids. Generate a coloring of a mesh suitable for threaded assembly. The mesh is assumed structured,... Definition: meshcolorizer.hpp:26 GridType::LeafGridView::IndexSet LeafIndexSet A set of indices. Definition: elasticity_upscale.hpp:206 bool bySat Are volume fractions grouped by SATNUM? Definition: elasticity_upscale.hpp:228 GridType::LeafGridView::template Codim< 1 >::Geometry::GlobalCoordinate GlobalCoordinate A global coordinate. Definition: elasticity_upscale.hpp:203 double upscaledRho Upscaled density. Definition: elasticity_upscale.hpp:231 std::shared_ptr< typename PC::type > PCPtr A pointer to our preconditioner. Definition: elasticity_upscale.hpp:215 Vector u[6] The solution vectors. Definition: elasticity_upscale.hpp:221 GridType::LeafGridView::template Codim< 0 >::Iterator LeafIterator An iterator over grid cells. Definition: elasticity_upscale.hpp:209 ASMHandler< GridType > A The linear operator. Definition: elasticity_upscale.hpp:218 void periodicBCsMortar(const double *min, const double *max, int n1, int n2, int p1, int p2) Establish periodic boundaries using the mortar approach. void findBoundaries(double *min, double *max) Find boundary coordinates. void setupSolvers(const LinSolParams ¶ms) void addMPC(Direction dir, int slavenode, const BoundaryGrid::Vertex &m) Add a MPC equation. void averageStress(Dune::FieldVector< ctype, comp > &sigma, const Vector &u, int loadcase) Calculate the average stress vector for the given loadcase. static const int dim Dimension of our grid. Definition: elasticity_upscale.hpp:194 GridType::LeafGridView::ctype ctype A basic number. Definition: elasticity_upscale.hpp:197 void periodicBCs(const double *min, const double *max) Establish periodic boundaries using the MPC approach. Dune::FieldVector< double, dim > NodeValue A vectorial node value. Definition: elasticity_upscale.hpp:200 void fixCorners(const double *min, const double *max) Fix corner nodes. Vector b[6] The load vectors. Definition: elasticity_upscale.hpp:223 void assemble(int loadcase, bool matrix) Assemble (optionally) stiffness matrix A and load vector. ElasticityUpscale(const GridType &gv_, ctype tol_, ctype Escale_, const std::string &file, const std::string &rocklist, bool verbose_) Main constructor. Definition: elasticity_upscale.hpp:240 PC::type PCType Our preconditioner type. Definition: elasticity_upscale.hpp:212 std::vector< double > volumeFractions Vector holding the volume fractions for materials (grouped by SATNUM) Definition: elasticity_upscale.hpp:226 Definition: mortar_schur.hpp:27 Elasticity helper class. Preconditioners for elasticity upscaling. Elasticity upscale class - template implementations. Logging helper utilities. Material properties. Helper class with some matrix operations. Mesh colorizer class. Linear operator for a Mortar block. Schur based linear operator for a Mortar block. Mortar helper class. Representation of multi-point constraint (MPC) equations. Direction An enum for specification of global coordinate directions. Definition: mpc.hh:24 Solver An enumeration of available linear solver classes. Definition: elasticity_upscale.hpp:52 Dune::BCRSMatrix< Dune::FieldMatrix< double, 1, 1 > > Matrix A sparse matrix holding our operator. Definition: matrixops.hpp:27 Dune::BlockVector< Dune::FieldVector< double, 1 > > Vector A vector holding our RHS. Definition: matrixops.hpp:33 MultiplierPreconditioner An enumeration of the available preconditioners for multiplier block. Definition: elasticity_upscale.hpp:66 std::vector< std::set< int > > AdjacencyPattern For storing matrix adjacency/sparsity patterns. Definition: matrixops.hpp:30 Definition: ImplicitAssembly.hpp:43 Classes for shape functions. Loosely based on code in dune-grid-howto. Definition: elasticity_upscale.hpp:82 Preconditioner pre Preconditioner for elasticity block. Definition: elasticity_upscale.hpp:117 bool report Give a report at end of solution phase. Definition: elasticity_upscale.hpp:111 int maxit Max number of iterations. Definition: elasticity_upscale.hpp:90 MultiplierPreconditioner mortarpre Preconditioner for mortar block. Definition: elasticity_upscale.hpp:120 int steps[2] The number of pre/post steps in the AMG. Definition: elasticity_upscale.hpp:102 Solver type The linear solver to employ. Definition: elasticity_upscale.hpp:84 int coarsen_target Coarsening target in the AMG. Definition: elasticity_upscale.hpp:105 void parse(Opm::ParameterGroup ¶m) Parse command line parameters. Definition: elasticity_upscale.hpp:124 int restart Number of iterations in GMRES before restart. Definition: elasticity_upscale.hpp:87 bool uzawa Use a Uzawa approach. Definition: elasticity_upscale.hpp:99 double tol The tolerance for the iterative linear solver. Definition: elasticity_upscale.hpp:93 int zcells Number of cells in z to collapse in each cell. Definition: elasticity_upscale.hpp:108 Smoother smoother Smoother type used in the AMG. Definition: elasticity_upscale.hpp:114 bool symmetric Use MINRES instead of GMRES (and thus symmetric preconditioning) Definition: elasticity_upscale.hpp:96 Uzawa scheme helper class. |