46 using ScalarBuffer = std::vector<Scalar>;
49 void allocate(
const std::size_t bufferSize,
50 std::map<std::string, int>& rstKeywords);
52 void assignDisplacement(
const unsigned globalDofIdx,
53 const Dune::FieldVector<Scalar,3>& disp);
55 void assignDelStress(
const unsigned globalDofIdx,
56 const Dune::FieldVector<Scalar,6>& delStress);
58 void assignPotentialForces(
const unsigned globalDofIdx,
60 const Scalar pressForce,
61 const Scalar tempForce);
63 void assignFracStress(
const unsigned globalDofIdx,
64 const Dune::FieldVector<Scalar,6>& fracStress);
66 void assignLinStress(
const unsigned globalDofIdx,
67 const Dune::FieldVector<Scalar,6>& linStress);
69 void assignStrain(
const unsigned globalDofIdx,
70 const Dune::FieldVector<Scalar,6>& strain);
72 void assignStress(
const unsigned globalDofIdx,
73 const Dune::FieldVector<Scalar,6>& stress);
75 void outputRestart(data::Solution& sol);
77 bool allocated()
const
78 {
return allocated_; }
81 bool allocated_ =
false;
82 ScalarBuffer potentialForce_;
83 ScalarBuffer potentialPressForce_;
84 ScalarBuffer potentialTempForce_;
86 std::array<ScalarBuffer,3> disp_;
87 VoigtArray<Scalar> delstress_;
88 VoigtArray<Scalar> fracstress_;
89 VoigtArray<Scalar> linstress_;
90 VoigtArray<Scalar> strain_;
91 VoigtArray<Scalar> stress_;