![]() |
|
Inheritance diagram for SolidBag:Public Member Functions | |
| SolidBag () | |
| void | actionsBeforeOomphTimeStep () override |
| void | bendBag () |
| void | setSuctionAsBodyForce (double bodyForce) |
Public Member Functions inherited from SolidProblem< RefineableQDPVDElement< 3, 2 > > | |
| SolidProblem () | |
| Constructor: set default constitutive law and time stepper. More... | |
| void | setName (const std::string &name) |
| set function for name_ More... | |
| std::string | getName () const |
| get function for name_ More... | |
| void | setElasticModulus (double elasticModulus) |
| set function for elasticModulus_ More... | |
| double | getElasticModulus () const |
| get function for elasticModulus_ More... | |
| void | addDissipation (double dissipation) |
| void | setupRefinementParameters (const double &min_error_target, const double &max_error_target, Z2ErrorEstimator *&error_estimator_pt) |
| void | addAnisotropy (double Ex, double Ey, double Ez) |
| void | setOomphGravity (double gravity) |
| set function for elasticModulus_ More... | |
| double | getOomphGravity () const |
| get function for gravity_ More... | |
| void | setPoissonRatio (double poissonRatio) |
| set function for poissonRatio_ More... | |
| double | getPoissonRatio () const |
| get function for poissonRatio_ More... | |
| void | setDensity (double density) |
| set function for density_ More... | |
| double | getDensity () const |
| get function for density_ More... | |
| void | setBodyForceAsGravity (double gravity=9.8) |
| set function for body_force_pt More... | |
| void | setIsPinned (std::function< bool(SolidNode *, unsigned)> isPinned) |
| set function for isPinned_ More... | |
| void | pinBoundary (unsigned b) |
| void | pinBoundaries (std::vector< unsigned > b) |
| std::enable_if< std::is_base_of< RefineableQDPVDElement< 3, 2 >, ELEMENT >::value, void > | setDissipation (double dissipation) |
| Sets the dissipation coefficient for all elements. More... | |
| void | setNewtonSolverTolerance (double Newton_solver_tolerance) |
| set function for Newton_solver_tolerance More... | |
| void | setMaxNewtonIterations (unsigned Max_newton_iterations) |
| set function for Max_newton_iterations More... | |
| void | setOomphTimeStep (double dt) |
| set function for time step More... | |
| double | getOomphTimeStep () const |
| get function for time step More... | |
| double | getOomphTime () const |
| get function for current time More... | |
| SolidMesh *& | solid_mesh_pt () |
| Get function for the solid mesh pointer. More... | |
| SolidMesh *const & | solid_mesh_pt () const |
| Get function for the solid mesh pointer. More... | |
| SolidMesh *& | traction_mesh_pt () |
| Get function for the traction mesh pointer. More... | |
| SolidMesh *const & | traction_mesh_pt () const |
| Get function for the traction mesh pointer. More... | |
| void | getDomainSize (std::array< double, 3 > &min, std::array< double, 3 > &max) const |
| Computes the domain size (min/max of the nodal positions in x/y/z) More... | |
| void | prepareForSolve () |
| void | countPinned () |
| returns statistics about pinned nodes to the console More... | |
| void | solveSteady (const unsigned &max_adapt=0) |
| virtual void | actionsBeforeSolve () |
| virtual void | actionsAfterSolve () |
| void | solveUnsteady (double timeMax, double dt, unsigned saveCount=10, const unsigned &max_adapt=0) |
| void | solveUnsteadyForgiving (double timeMax, double timeMaxMin, double dt, unsigned saveCount=10) |
| void | removeOldFiles () const |
| void | get_x (const Vector< double > &xi, Vector< double > &x) const |
| double | getDeflection (Vector< double > xi, unsigned d) const |
| void | setSolidCubicMesh (const unsigned &nx, const unsigned &ny, const unsigned &nz, const double &xMin, const double &xMax, const double &yMin, const double &yMax, const double &zMin, const double &zMax) |
| void | saveSolidMesh () |
| void | loadSolidMesh (std::string infileName, bool cubic=true) |
| void | writeToVTK () |
| void | getMassMomentumEnergy (double &mass, Vector< double > &com, Vector< double > &linearMomentum, Vector< double > &angularMomentum, double &elasticEnergy, double &kineticEnergy) const |
| See PVDEquationsBase<DIM>::get_energy. More... | |
Private Attributes | |
| double | gripperDisplacement = 0.0 |
Additional Inherited Members | |
Public Types inherited from SolidProblem< RefineableQDPVDElement< 3, 2 > > | |
| enum | Boundary |
Protected Types inherited from SolidProblem< RefineableQDPVDElement< 3, 2 > > | |
| typedef RefineableQDPVDElement< 3, 2 > | ELEMENT |
Protected Attributes inherited from SolidProblem< RefineableQDPVDElement< 3, 2 > > | |
| std::string | name_ |
| double | elasticModulus_ |
| Elastic modulus (set via setSolid) More... | |
| double | poissonRatio_ |
| Poisson's ratio (set via setSolid) More... | |
| double | density_ |
| Density. More... | |
| double | gravity_ |
| Density. More... | |
| void(* | body_force_fct )(const double &time, const Vector< double > &xi, Vector< double > &b) |
| Pointer to the body force function. More... | |
| ConstitutiveLaw * | constitutive_law_pt |
| Pointer to constitutive law (should be set in constructor) More... | |
| SolidMesh * | Solid_mesh_pt |
| Pointer to solid mesh. More... | |
| SolidMesh * | Traction_mesh_pt |
| Pointer to mesh of traction elements. More... | |
| std::function< bool(SolidNode *, unsigned)> | isPinned_ |
| Function to determine which nodal positions are pinned. More... | |
|
inline |
References bendBag(), UniformPSDSelfTest::density, e(), boost::multiprecision::fabs(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::getOomphTimeStep(), gripperDisplacement, INFO, logger, n, SolidProblem< RefineableQDPVDElement< 3, 2 > >::prepareForSolve(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::removeOldFiles(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setDensity(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setElasticModulus(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setIsPinned(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setName(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setNewtonSolverTolerance(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setOomphTimeStep(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setPoissonRatio(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::setSolidCubicMesh(), setSuctionAsBodyForce(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::solveSteady(), and SolidProblem< RefineableQDPVDElement< 3, 2 > >::solveUnsteady().
|
inlineoverridevirtual |
Squeeze the bag at the top from both sides by a given factor.
| distance |
Reimplemented from SolidProblem< RefineableQDPVDElement< 3, 2 > >.
References gripperDisplacement, i, oomph::Mesh::nnode(), oomph::SolidMesh::node_pt(), oomph::SolidNode::position_is_pinned(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::solid_mesh_pt(), and oomph::Node::x().
|
inline |
References e(), i, INFO, logger, oomph::Mesh::nnode(), oomph::SolidMesh::node_pt(), SolidProblem< RefineableQDPVDElement< 3, 2 > >::solid_mesh_pt(), oomph::Node::x(), and oomph::SolidNode::xi().
Referenced by SolidBag().
|
inline |
References b, SolidProblem< RefineableQDPVDElement< 3, 2 > >::body_force_fct, INFO, and logger.
Referenced by SolidBag().
|
private |
Referenced by actionsBeforeOomphTimeStep(), and SolidBag().