Skip to content
Snippets Groups Projects
Commit 42f9afde authored by wenqing's avatar wenqing
Browse files

[B-bar] Restrict B-bar in 2x2 strain tensor for plain stain problem

parent 9bd77069
No related branches found
No related tags found
No related merge requests found
...@@ -172,15 +172,22 @@ void applyBbar(BBarMatrixType const& B_bar, BMatrixType& B, ...@@ -172,15 +172,22 @@ void applyBbar(BBarMatrixType const& B_bar, BMatrixType& B,
auto const B_bar_i = B_bar.col(i); auto const B_bar_i = B_bar.col(i);
double const b0_dil_pertubation = if (is_axially_symmetric)
is_axially_symmetric {
? (B_i_0[0] - B_bar_i[0] + B_i_0[2] - B_bar_i[2]) double const b0_dil_pertubation =
: (B_i_0[0] - B_bar_i[0]); (B_i_0[0] - B_bar_i[0] + B_i_0[2] - B_bar_i[2]);
B_i_0.template segment<3>(0) -=
B_i_0.template segment<3>(0) -= Eigen::Vector3d::Constant((b0_dil_pertubation) / 3.);
Eigen::Vector3d::Constant((b0_dil_pertubation) / 3.); B_i_1.template segment<3>(0) -=
B_i_1.template segment<3>(0) -= Eigen::Vector3d::Constant((B_i_1[1] - B_bar_i[1]) / 3.);
Eigen::Vector3d::Constant((B_i_1[1] - B_bar_i[1]) / 3.); continue;
}
// Plane strain
B_i_0.template segment<2>(0) -=
Eigen::Vector2d::Constant((B_i_0[0] - B_bar_i[0]) / 2.);
B_i_1.template segment<2>(0) -=
Eigen::Vector2d::Constant((B_i_1[1] - B_bar_i[1]) / 2.);
} }
} }
} // namespace detail } // namespace detail
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment