39 struct IntegrationPoint final {
42 unique_ptr<Material> m_material;
44 IntegrationPoint(vec&&,
double, unique_ptr<Material>&&);
47 static constexpr unsigned m_node = 4, m_dof = 2, m_size = m_dof * m_node;
51 const double thickness;
53 vector<IntegrationPoint> int_pt;
55 const mat mat_stiffness, iso_mapping;
57 mat HT, HIL, HILI, L, LI;
59 mat initial_qtitt, trial_qtitt, current_qtitt;
60 vec trial_qtifi, current_qtifi;
61 vec trial_lambda, current_lambda;
62 vec trial_alpha, current_alpha;
63 vec trial_beta, current_beta;
67 static vec form_stress_mode(
double,
double);
77 int initialize(
const shared_ptr<DomainBase>&)
override;
89 void print()
override;
92 void Setup()
override;
93 void GetData(vtkSmartPointer<vtkDoubleArray>&,
OutputType)
override;
95 void SetDeformation(vtkSmartPointer<vtkPoints>&,
double)
override;