This is an automated email from the git hooks/post-receive script. logari81 pushed a commit to branch master in repository getfem.
The following commit(s) were added to refs/heads/master by this push: new f56fc155 Allow to define Lagrange multipliers for contact on integration points f56fc155 is described below commit f56fc1552f7508fc3b3d7d2fe6fe35a06540e230 Author: Konstantinos Poulios <logar...@gmail.com> AuthorDate: Tue Oct 17 14:33:31 2023 +0200 Allow to define Lagrange multipliers for contact on integration points --- src/getfem_contact_and_friction_large_sliding.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/getfem_contact_and_friction_large_sliding.cc b/src/getfem_contact_and_friction_large_sliding.cc index de20422c..ab45a51f 100644 --- a/src/getfem_contact_and_friction_large_sliding.cc +++ b/src/getfem_contact_and_friction_large_sliding.cc @@ -2334,10 +2334,14 @@ namespace getfem { "should share the same mesh"); if (is_slave) { const mesh_fem *mf_l = md.pmesh_fem_of_variable(lambda); - GMM_ASSERT1(mf, "The multiplier variable should be a f.e.m. one"); - GMM_ASSERT1(&(mf_l->linked_mesh()) == &(mim.linked_mesh()), - "The displacement variable and the multiplier one " - "should share the same mesh"); + const im_data *mimd_l = md.pim_data_of_variable(lambda); + GMM_ASSERT1(mf_l || mimd_l, + "The multiplier variable should be defined on a " + "mesh_fem or an im_data"); + GMM_ASSERT1(&(mf_l ? mf_l->linked_mesh() : mimd_l->linked_mesh()) + == &(mim.linked_mesh()), + "The displacement and the multiplier fields " + "should be defined on the same mesh"); } if (w.size()) {