Loading [MathJax]/extensions/tex2jax.js

dune-composites (unstable)

Dune::Composites::baseGridModel< YGRID > Class Template Reference

structuredGridModel class. More...

#include <dune/composites/Setup/baseGridModel.hh>

Public Member Functions

 baseGridModel (Dune::MPIHelper &helper_, bool GenEO=false)
 The main constructor. More...
 
void setThermal (bool t)
 returns true when thermal strain is applied
 
void evaluateHeat (Tensor2 &f, int id) const
 Function which evaluates the thermal stress tensor sig_thermal on an element.
 
void evaluateNeumann (const Dune::FieldVector< double, 3 > &x, Dune::FieldVector< double, 3 > &h, const Dune::FieldVector< double, 3 > &normal) const
 function which evaluates the Neumann boundary conditions at the point x
 
void LayerCake ()
 A member taking which constructs the base layered laminate in untransformed coordinates. More...
 
void LayerCakeFromFile (string pathToCsv)
 Function to read LayerCake from File. More...
 
std::vector< double > meshRatio (int N, double scaling, int direction)
 Function defining mesh grading. More...
 
bool isDirichlet (FieldVec &x, int dof)
 
bool isMPC (FieldVec &x)
 A function which returns whether a point is constrained by a multi-point-constraint.
 
double evaluateDirichlet (const FieldVec &x, int dof) const
 returns the Dirichlet boundary value at a point for the degree of freedom dof.
 

Public Attributes

int overlap
 Size of overlap between subdomains for domain decomposition.
 
std::bitset< 3 > periodic
 Array which stores periodicity of grid in each of the 3 dimensions, default value are set to all false.
 
int numMaterials
 Number of Different types of materials defined for applications.
 
std::vector< RegionR
 std::vector containing information of each material defined
 
std::vector< int > elemIndx2PG
 std::vector containing information of each Region
 
std::vector< double > rot123
 std::vector containing information of each material defined
 
std::vector< Tensor4 > C
 Vector defining rotation of ply in material coordinates.
 
bool verbosity = false
 Vector storing elastic tensor within each element.
 
double tolerance
 Variable controls level of output to interface.
 
int solver_type
 Tolerance of iterative solver.
 
int solver_tolerance
 Variable which controls solver type (UMFPack for sequential and GENEO for parallel)
 
int Krylov_Verb
 Tolerance of Solver (ignored for a direct solver)
 
int Krylov_Max_It
 Variable Controlling Verbosity of Krylov Solver.
 
int solver_verb = 0
 Variable define max iterations.
 
std::vector< double > stackSeq
 Set whether to use residual heat stresses, default false.
 
bool stress_Plot_ascii
 Variable if stress is plotted out in vtk format.
 
std::vector< int > nel
 Gaussian order of integration (default value is 5)
 
bool isParallel
 Number of elements in each direction.
 
bool setUp_Required
 Boolean variable which indicates if run is parallel or not, this later will allow to run multiple solves in sequential mode even though helper.size() > 1.
 
double q
 Instance of SolverInfo to define solver parameters and store solver results e.g. iterations, converged etc.
 

Detailed Description

template<typename YGRID>
class Dune::Composites::baseGridModel< YGRID >

structuredGridModel class.

structuredGridModel provides a base class for 3D structure grid models built on using Dune::YaspGrid and Dune::GeometryGrid. The class provides all default functions for definition of a user defined model.

Constructor & Destructor Documentation

◆ baseGridModel()

template<typename YGRID >
Dune::Composites::baseGridModel< YGRID >::baseGridModel ( Dune::MPIHelper &  helper_,
bool  GenEO = false 
)
inline

Member Function Documentation

◆ isDirichlet()

template<typename YGRID >
bool Dune::Composites::baseGridModel< YGRID >::isDirichlet ( FieldVec &  x,
int  dof 
)
inline

A function which returns whether a point x lies on a Dirichlet boundary for the degree of freedom dof. If the function returns false it assumes this node is on the Neumann boundary or an interior node.

◆ LayerCake()

template<typename YGRID >
void Dune::Composites::baseGridModel< YGRID >::LayerCake ( )
inline

A member taking which constructs the base layered laminate in untransformed coordinates.

LayerCake is a function which defines a flat three-dimensional tensor product grid and the grid's properties (e.g. periodicity); building $\hat \Omega := [0,L] \times [0,W] \times [0,T]$, where $L$, $W$ and $T$ are the length, width and thickness of the laminate This function provides default values which can be overwritten by defining your own class

References Dune::Composites::baseGridModel< YGRID >::nel, and Dune::Composites::baseGridModel< YGRID >::periodic.

◆ LayerCakeFromFile()

template<typename YGRID >
void Dune::Composites::baseGridModel< YGRID >::LayerCakeFromFile ( string  pathToCsv)
inline

Function to read LayerCake from File.

The function provides an interface to read all the information needed to set up a LayerCake, i.e. size of tensor product grid, periodicity information, etc. from a .csv file. A user can also define the grid, layering and region properties manually.

References Dune::Composites::baseGridModel< YGRID >::periodic, and Dune::Composites::baseGridModel< YGRID >::R.

◆ meshRatio()

template<typename YGRID >
std::vector< double > Dune::Composites::baseGridModel< YGRID >::meshRatio ( int  N,
double  scaling,
int  direction 
)
inline

Function defining mesh grading.

This is a helper function that defines a graded mesh in the format used by ABAQUS


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden & Uni Heidelberg  |  generated with Hugo v0.111.3 (Apr 4, 22:59, 2025)