@@ -206,46 +206,20 @@ void CONTACT::IntegratorNitscheSsi::so_ele_cauchy_struct(Mortar::Element& mortar
206206 linearizations.solid .d_cauchyndir_ddir = &d_sigma_nt_dt;
207207 linearizations.solid .d_cauchyndir_dxi = &d_sigma_nt_dxi;
208208
209- if (mortar_ele.mo_data ().parent_scalar ().empty ())
210- {
211- // Note: This branch is only needed since the structure is evaluating itself during setup before
212- // the ssi problem is setup. Once this is fixed, this can be deleted.
213- sigma_nt = std::invoke (
214- [&]()
215- {
216- auto * solid_scatra_ele =
217- dynamic_cast <Discret::Elements::SolidScatra*>(mortar_ele.parent_element ());
218-
219- FOUR_C_ASSERT_ALWAYS (solid_scatra_ele,
220- " Nitsche contact is not implemented for this element (expecting SOLIDSCATRA "
221- " element)!" );
222-
223- // SSI is not yet setup, so don't set the scalar.
224- // Note: Once it is fixed in the structure time integration framework, the
225- // scalars-parameter can be made non-optional
226- return solid_scatra_ele->get_normal_cauchy_stress_at_xi (
227- mortar_ele.mo_data ().parent_disp (), std::nullopt , parent_xi, gp_normal, test_dir,
228- linearizations);
229- });
230- }
231- else
232- {
233- linearizations.d_cauchyndir_ds = d_sigma_nt_ds;
234- sigma_nt = std::invoke (
235- [&]()
236- {
237- auto * solid_scatra_ele =
238- dynamic_cast <Discret::Elements::SolidScatra*>(mortar_ele.parent_element ());
239-
240- FOUR_C_ASSERT_ALWAYS (solid_scatra_ele,
241- " Nitsche contact is not implemented for this element (expecting SOLIDSCATRA "
242- " element)!" );
243-
244- return solid_scatra_ele->get_normal_cauchy_stress_at_xi (
245- mortar_ele.mo_data ().parent_disp (), mortar_ele.mo_data ().parent_scalar (), parent_xi,
246- gp_normal, test_dir, linearizations);
247- });
248- }
209+ linearizations.d_cauchyndir_ds = d_sigma_nt_ds;
210+ sigma_nt = std::invoke (
211+ [&]()
212+ {
213+ auto * solid_scatra_ele =
214+ dynamic_cast <Discret::Elements::SolidScatra*>(mortar_ele.parent_element ());
215+
216+ FOUR_C_ASSERT_ALWAYS (solid_scatra_ele,
217+ " Nitsche contact is not implemented for this element (expecting SOLIDSCATRA "
218+ " element)!" );
219+
220+ return solid_scatra_ele->get_normal_cauchy_stress_at_xi (mortar_ele.mo_data ().parent_disp (),
221+ mortar_ele.mo_data ().parent_scalar (), parent_xi, gp_normal, test_dir, linearizations);
222+ });
249223
250224 cauchy_nt_wgt += nitsche_wgt * sigma_nt;
251225
0 commit comments