# TIE constraints for shell weldments (internal edges and mid-surface gaps)

**URL:** <https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568>\
**Category:** General Questions\
**Created:** [July 16, 2026, 9:58am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568 "2026-07-16T09:58:34Z")\
**Posts on this page:** 10\
**Page:** 2

<div class="post-metadata">

**Author:** ![Jirip](https://avatars.discourse-cdn.com/v4/letter/j/9e8a1a/32.png) [@Jirip](https://prepomax.discourse.group/u/Jirip)\
**Post date:** [July 16, 2026, 7:16pm UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/21 "2026-07-16T19:16:19Z")

</div>

> [@FEAnalyst](#):
>
> You could use the Thicken Shell Mesh to turn those regions where rigid body constraints are applied into solids. However, bolt modeling in CalculiX works best with simplified solid representations (just cylinders).

The main reason I initially considered 1D beams was the ability to easily apply bolt pre-tension.

Would you recommend investing time into modeling realistic preloaded bolts/pins for this type of analysis, or does practical experience show that using simple tied solid cylinders is sufficient? For context: My primary focus is evaluating the welds (according to Eurocode) and assessing the overall structural strength. If the simulation results are within a 10% margin of reality, it is completely acceptable for my needs.

> [@FEAnalyst](#):
>
> You can verify whether the specified tolerances are sufficient by running a frequency analysis to see if everything is properly connected (nothing flies away). As I’ve mentioned, usually you can increase this parameter safely. With larger values, there’s a bigger chance everything will be properly connected.
> 
> Yes, tie constraints and contact pairs work on the top/bottom surfaces of the expanded solid meshes.

Thank you very much for the explanation. That makes perfect sense.

You are right. Since the solver maps the mid-surface selection specifically to the outer expanded surface facing the other part, using a larger tolerance shouldn’t be an issue. My main concern was whether the software might tend to tie all nodes within that tolerance radius. For example, if I set a 6 mm tolerance for expanded bodies that are already in contact, and I used a fine mesh, I was worried it might grab multiple layers of nodes ‘from the depth’ of the solid mesh, which would artificially increase the local stiffness. I assumed this would cause an issue similar to extending the mid-surfaces to intersect, which leads to the expanded 3D bodies physically overlapping and unnaturally stiffening the joint. It is good to know that the contact/tie mechanics in CalculiX handle this smartly.

---

<div class="post-metadata">

**Author:** ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)\
**Post date:** [July 16, 2026, 7:23pm UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/22 "2026-07-16T19:23:23Z")

</div>

> [@Jirip](#):
>
> Would you recommend investing time into modeling realistic preloaded bolts/pins for this type of analysis, or does practical experience show that using simple tied solid cylinders is sufficient? For context: My primary focus is evaluating the welds (according to Eurocode) and assessing the overall structural strength. If the simulation results are within a 10% margin of reality, it is completely acceptable for my needs.

In most FEA software, you would just use 1D elements/connectors to easily model the bolts. But since it’s so problematic in CalculiX, simplified solid cylinders would be the best way for a larger assembly. You can consider even further simplifications too. Bolt modeling is a hot topic, you will find many long threads about it here and on the CalculiX forum.

> [@Jirip](#):
>
> My main concern was whether the software might tend to tie all nodes within that tolerance radius. For example, if I set a 6 mm tolerance for expanded bodies that are already in contact, and I used a fine mesh, I was worried it might grab multiple layers of nodes ‘from the depth’ of the solid mesh, which would artificially increase the local stiffness.

Here’s exactly how it works:

> In that case MPC’s are generated connecting the slave nodes with the master faces, provided the orthogonal distance between the nodes and the adjacent face does not exceed the POSITION TOLERANCE. If no tolerance is specified, or the tolerance is smaller than 10−10, a default tolerance applies equal to 2.5% of the typical element size. In addition, the projection of the slave node onto the master face must lie within this face or at any rate not farther away (measured parallel to the face) than the default tolerance just defined.

So it will only consider slave nodes belonging to the selected surface and meeting those distance criteria.

In Abaqus, you can also directly specify a node set containing the slave nodes to be connected. This is very useful, but not available in CalculiX.

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://prepomax.discourse.group/u/Matej)\
**Post date:** [July 17, 2026, 7:31am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/23 "2026-07-17T07:31:40Z")

</div>

> [@SergioP1975](#):
>
> Is there a way to see/check the shell thikness before launching the solver in Prepomax?

Not directly. But you can see it in colors using: View → Color Annotations → Section Thickness.

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://prepomax.discourse.group/u/Matej)\
**Post date:** [July 17, 2026, 7:37am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/24 "2026-07-17T07:37:13Z")

</div>

> [@FEAnalyst](#):
>
> Ok, I see. So it’s CalculiX’s limitation

No, it is PrePoMax or a general limitation. An element-based surface is based on element faces. So, for an element face, you need an element ID and its face ID. When selecting a free shell edge, only one element shares that edge, so the element and the face ID can be determined. But for the internal edge, two elements share it, and two faces will be created when expanded. The UI cannot determine which one you need.

---

<div class="post-metadata">

**Author:** ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)\
**Post date:** [July 17, 2026, 7:40am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/25 "2026-07-17T07:40:15Z")

</div>

> [@Matej](#):
>
> But for the internal edge, two elements share it, and two faces will be created when expanded. The UI cannot determine which one you need.

Right. This is what Abaqus asks for here to pick the side:

 ![image](https://global.discourse-cdn.com/free1/uploads/prepomax/original/2X/c/cf938af62bdeb74f06ec164ee93adfdffa9f4e48.png)

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://prepomax.discourse.group/u/Matej)\
**Post date:** [July 17, 2026, 7:55am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/26 "2026-07-17T07:55:38Z")

</div>

> [@FEAnalyst](#):
>
> @Matej This is because the node-based surface is getting automatically deactivated, also in v2.5.2 dev:

Got it. It is a bug. Fixed it.

I thought that the UI is throwing errors not the Calculix when started. So I only tested the UI.

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://prepomax.discourse.group/u/Matej)\
**Post date:** [July 17, 2026, 7:59am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/27 "2026-07-17T07:59:42Z")

</div>

> [@FEAnalyst](#):
>
> In Abaqus, you can also directly specify a node set containing the slave nodes to be connected. This is very useful, but not available in CalculiX.

This could be added to PrePoMax. But the internal surface would have to be created before exporting to .inp.

---

<div class="post-metadata">

**Author:** ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)\
**Post date:** [July 17, 2026, 9:09am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/28 "2026-07-17T09:09:11Z")

</div>

> [@Matej](#):
>
> This could be added to PrePoMax. But the internal surface would have to be created before exporting to .inp.

In Abaqus, this is more than just an alternative way to specify the slave surface. The `TIED NSET` parameter there replaces the `POSITION TOLERANCE` and specifies directly which nodes will be tied. But this would have to be done on the solver’s side.

---

<div class="post-metadata">

**Author:** ![Jirip](https://avatars.discourse-cdn.com/v4/letter/j/9e8a1a/32.png) [@Jirip](https://prepomax.discourse.group/u/Jirip)\
**Post date:** [July 20, 2026, 7:27am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/29 "2026-07-20T07:27:55Z")

</div>

> [@Matej](#):
>
> Got it. It is a bug. Fixed it.
> 
> I thought that the UI is throwing errors not the Calculix when started. So I only tested the UI.

Hello, I just tried to download the latest v2.5.2 dev build, ran the analysis, and the same error occurred. As FEAnalyst mentioned, the surfaces are still deactivated. Is there any possible way, how could I download fixed dev version please?

---

<div class="post-metadata">

**Author:** ![FEAnalyst](https://yyz2.discourse-cdn.com/free1/user_avatar/prepomax.discourse.group/feanalyst/32/688_2.png) [@FEAnalyst](https://prepomax.discourse.group/u/FEAnalyst)\
**Post date:** [July 20, 2026, 7:32am UTC](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568/30 "2026-07-20T07:32:08Z")

</div>

The v2.5.2 dev version is from July 6th, so it doesn’t have this fix yet. The next one will, maybe Matej will release it earlier.

[Previous page](https://prepomax.discourse.group/t/tie-constraints-for-shell-weldments-internal-edges-and-mid-surface-gaps/3568.md?page=1)
