GEOSX
SolidMechanicsStateReset.hpp
Go to the documentation of this file.
1 /*
2  * ------------------------------------------------------------------------------------------------------------
3  * SPDX-License-Identifier: LGPL-2.1-only
4  *
5  * Copyright (c) 2018-2020 Lawrence Livermore National Security LLC
6  * Copyright (c) 2018-2020 The Board of Trustees of the Leland Stanford Junior University
7  * Copyright (c) 2018-2020 TotalEnergies
8  * Copyright (c) 2019- GEOSX Contributors
9  * All rights reserved
10  *
11  * See top level LICENSE, COPYRIGHT, CONTRIBUTORS, NOTICE, and ACKNOWLEDGEMENTS files for details.
12  * ------------------------------------------------------------------------------------------------------------
13  */
14 
19 #ifndef SRC_CORECOMPONENTS_PHYSICSSOLVERS_SOLIDMECHANICS_SOLIDMECHANICSSTATERESET_HPP_
20 #define SRC_CORECOMPONENTS_PHYSICSSOLVERS_SOLIDMECHANICS_SOLIDMECHANICSSTATERESET_HPP_
21 
22 #include "events/tasks/TaskBase.hpp"
23 
24 namespace geos
25 {
26 
27 class SolidMechanicsLagrangianFEM;
28 
42 class SolidMechanicsStateReset : public TaskBase
43 {
44  template< typename > friend class PoromechanicsInitialization;
45 
46 public:
47 
53  SolidMechanicsStateReset( const string & name,
54  Group * const parent );
55 
58 
60  static string catalogName() { return "SolidMechanicsStateReset"; }
61 
69  virtual bool execute( real64 const time_n,
70  real64 const dt,
71  integer const cycleNumber,
72  integer const eventCounter,
73  real64 const eventProgress,
74  DomainPartition & domain ) override;
75 
78 private:
79 
83  struct viewKeyStruct
84  {
86  constexpr static char const * solidSolverNameString() { return "solidSolverName"; }
88  constexpr static char const * resetDisplacementsString() { return "resetDisplacements"; }
90  constexpr static char const * disableInelasticityString() { return "disableInelasticity"; }
91  };
92 
93 
94  void postProcessInput() override;
95 
97  string m_solidSolverName;
98 
100  SolidMechanicsLagrangianFEM * m_solidSolver;
101 
103  int m_resetDisplacements;
104 
106  int m_disableInelasticity;
107 };
108 
109 
110 } /* namespace geos */
111 
112 #endif /* SRC_CORECOMPONENTS_PHYSICSSOLVERS_SOLIDMECHANICS_SOLIDMECHANICSSTATERESET_HPP_ */
Partition of the decomposed physical domain. It also manages the connexion information to its neighbo...
SolidMechanicsStateReset(const string &name, Group *const parent)
Constructor for the state reset class.
~SolidMechanicsStateReset() override
Destructor for the class.
static string catalogName()
Accessor for the catalog name.
double real64
64-bit floating point type.
Definition: DataTypes.hpp:139
std::int32_t integer
Signed integer type.
Definition: DataTypes.hpp:122