# Mesh partitioning for Hex+tet combination in ccx

**URL:** <https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534>\
**Category:** Uncategorized\
**Created:** [April 15, 2021, 6:32am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534 "2021-04-15T06:32:36Z")\
**Posts on this page:** 14\
**Page:** 1

<div class="post-metadata">

**Author:** ![manny9808](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/manny9808/32/143_2.png) [@manny9808](https://calculix.discourse.group/u/manny9808)\
**Post date:** [April 15, 2021, 6:32am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/1 "2021-04-15T06:32:36Z")

</div>

Has anyone implemented a mesh partitioning to implement a combination of hex and tet element types (not hex dependent meshing but actual partitioning of mesh)? Is it essential to assign contact/tie at the interface of the two meshes if all nodes are shared at the interface? In Abaqus, two element based-surfaces are created by default , and tied to each other as master-slave when implementing different element types after mesh partitioning.

Any insight is highly appreciated.

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://calculix.discourse.group/u/Matej)\
**Post date:** [April 15, 2021, 8:10am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/2 "2021-04-15T08:10:03Z")

</div>

If you have two separate meshes, one hex and one tet with the same position of nodes at the common surface, you have two options. You can tie the surfaces together or you can merge the coincident nodes. That would give the same result if you are using linear finite elements. If you are using quadratic finite elements, merging the nodes would not work in the same way since tet mid-nodes would not get connected to anything.

If you have two surfaces with non-coincident nodes the only option is the tie/contact option.

But in each case you have to add it manually. It will not be added automatically.

---

<div class="post-metadata">

**Author:** ![manny9808](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/manny9808/32/143_2.png) [@manny9808](https://calculix.discourse.group/u/manny9808)\
**Post date:** [April 16, 2021, 10:00pm UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/3 "2021-04-16T22:00:06Z")

</div>

Many thanks for the response. So far, all nodes in the interface region are shared. However, Since I do not create my mesh in cgx, I probably do not have the option to use cgx neigh command. Does cgx have the option to edit mesh from inp file ?

My issue with the \*TIE command is that the master surface must be defined using faces and not nodes. Since I create my mesh elsewhere, I do not have info on the element faces, but the nodes. Any suggestion is highly appreciated.

To give you a context, this is what the FE mesh look like. The interfaces are visible towards the tip and tail section.  
 ![image](https://global.discourse-cdn.com/free1/uploads/calculix/original/1X/02eec46e6e654a83f0112c126770c8d7cd9de8d5.png)

---

<div class="post-metadata">

**Author:** ![klaus.wittig](https://avatars.discourse-cdn.com/v4/letter/k/4da419/32.png) [@klaus.wittig](https://calculix.discourse.group/u/klaus.wittig)\
**Post date:** [April 17, 2021, 2:58pm UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/4 "2021-04-17T14:58:50Z")

</div>

hello manny,  
you may use cgx to read your abaqus (ccx) mesh with  
cgx -c file.inp

Then either use existing sets or create one with  
seta ! all  
and display the element faces  
plot f +CF1  
Then select faces with  
qadd set1 t1  
see details in the manual.  
Finally send the set with  
send set1 abq sur

regards,  
Klaus

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://calculix.discourse.group/u/Matej)\
**Post date:** [April 18, 2021, 10:12am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/5 "2021-04-18T10:12:53Z")

</div>

If you need to create visualize sets, and if you are on a Windows platform, you can try using PrePoMax pre-processor for the CalculiX solver.

---

<div class="post-metadata">

**Author:** ![manny9808](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/manny9808/32/143_2.png) [@manny9808](https://calculix.discourse.group/u/manny9808)\
**Post date:** [April 19, 2021, 2:28am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/6 "2021-04-19T02:28:25Z")

</div>

Hello Matej, thanks for your suggestion.

I tried PrePoMax, On a simple cantilever domain with half hex and half tet elements, they get merged into a single part (I was expecting them to be multiple parts), yet the interface remains, as is shown by high stress concentration at the interface. Enforcing tie constraint fail as well : `*ERROR in cascade: zero coefficient on the dependent side of an equation dependent node: 2049 )`

Not sure if the error arises due to the fact that the nodes of the two sides being tied are essentially the same. Will play around on simpler cases and see if that works. Let me know what you think.

 ![image](https://global.discourse-cdn.com/free1/uploads/calculix/original/1X/2354e07e52d2199ef1c3785b1ba899e13d4bbd25.jpeg)

---

<div class="post-metadata">

**Author:** ![manny9808](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/manny9808/32/143_2.png) [@manny9808](https://calculix.discourse.group/u/manny9808)\
**Post date:** [April 19, 2021, 2:32am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/7 "2021-04-19T02:32:59Z")

</div>

Thanks Klaus, I was able to read my mesh in cgx. However, the interface faces are not being shown when doing plot f +CF1 for some reason. I am using bconverged with cgx 2.10. Let me know if you happen to have similar example that I could test on.

Sincerely,  
M

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://calculix.discourse.group/u/Matej)\
**Post date:** [April 19, 2021, 6:49am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/8 "2021-04-19T06:49:39Z")

</div>

PrePoMax splits the mesh into non-connected parts. If two parts share one node, they are merged. If you create an element set you can then convert the element set into a part (right-click → Convert to part) and have connected parts. Then you can create surfaces on the outer sides of a part.

In the case, where the nodes are merged the tie constraint is not necessary - it will not work. The meshes must be separate. I was under the impression that Abaqus also uses a separate mesh and adds the tie constraint. Is this no the case?

I see that you are using a concentrated force load? This load assumes a load on all selected nodes. For surface load use Surface traction load.

---

<div class="post-metadata">

**Author:** ![klaus.wittig](https://avatars.discourse-cdn.com/v4/letter/k/4da419/32.png) [@klaus.wittig](https://calculix.discourse.group/u/klaus.wittig)\
**Post date:** [April 20, 2021, 4:20pm UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/9 "2021-04-20T16:20:32Z")

</div>

Hello manny,  
please type  
prnt se  
Then you should see the available sets. I guess that the version of cgx which you use is too outdated.  
The bconverged binary of cgx is even older than 2.10. You may replace it with the binary provided in the same text line at [www.dhondt.de](http://www.dhondt.de) were you find the bconverged distribution. Just follow the README in the update package.

Klaus

---

<div class="post-metadata">

**Author:** ![manny9808](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/manny9808/32/143_2.png) [@manny9808](https://calculix.discourse.group/u/manny9808)\
**Post date:** [April 20, 2021, 10:07pm UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/10 "2021-04-20T22:07:42Z")

</div>

Hi Matej,  
Many thanks for your help. Does PrePoMax automatically merge the mesh if nodes are coincident? I assumed so but the results are not accurate. Below is tet,hex and hybrid case comparison in Prepomax. I’m also attaching a google drive link to the calculix and the pmx file in case you would be interested in having a go at it.

 ![image](https://global.discourse-cdn.com/free1/uploads/calculix/original/1X/9cf5c27c372cf0887f59f2965d6f6e65c2007c33.jpeg)  
[Link to ccx and Prepomax files](https://drive.google.com/drive/folders/1rB8TfsfF5AGQTEOvXPIHuSYHTdMzZNI4?usp=sharing)

---

<div class="post-metadata">

**Author:** ![manny9808](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/manny9808/32/143_2.png) [@manny9808](https://calculix.discourse.group/u/manny9808)\
**Post date:** [April 20, 2021, 10:11pm UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/11 "2021-04-20T22:11:49Z")

</div>

Hello Klaus,  
Thanks for the suggestion. I was able to update my bconverged to 2.17 build of ccx and cgx. I’m still unable to view and select the interface faces, not sure if I’m doing the cgx commands right. Using neigh command to merge the meshes at the interface hasnt worked either. Nonetheless, I’m sharing my ccx files in case you’d be interested in having a look.

[Link to ccx files](https://drive.google.com/drive/folders/1rB8TfsfF5AGQTEOvXPIHuSYHTdMzZNI4?usp=sharing)

---

<div class="post-metadata">

**Author:** ![Matej](https://avatars.discourse-cdn.com/v4/letter/m/a698b9/32.png) [@Matej](https://calculix.discourse.group/u/Matej)\
**Post date:** [April 21, 2021, 8:13am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/12 "2021-04-21T08:13:43Z")

</div>

The mesh you have imported already has merged nodes. The nodes of tet and hex meshes were not merged in PrePoMax since such functionality does not exist at the moment 🙂

---

<div class="post-metadata">

**Author:** ![klaus.wittig](https://avatars.discourse-cdn.com/v4/letter/k/4da419/32.png) [@klaus.wittig](https://calculix.discourse.group/u/klaus.wittig)\
**Post date:** [April 21, 2021, 7:06pm UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/13 "2021-04-21T19:06:22Z")

</div>

On my side the command  
seta ! all  
produces the +CF1 set. But only this set which means that the mesh is merged. It will be hard for you to catch the right remaining nodes so you better divide the mesh. In cgx you could use the sets +C3D8 and +C3D4.

send +C3D8 frd c  
send +C3D4 frd c

Then  
cgx +C3D8.frd  
read +C3D4.frd add

And the two element types are disjunct again and you can use

seta ! all  
successfully to create +CF1 and +CF2 etc.

Klaus

---

<div class="post-metadata">

**Author:** ![xyont](https://yyz2.discourse-cdn.com/free1/user_avatar/calculix.discourse.group/xyont/32/3553_2.png) [@xyont](https://calculix.discourse.group/u/xyont)\
**Post date:** [April 23, 2021, 6:30am UTC](https://calculix.discourse.group/t/mesh-partitioning-for-hex-tet-combination-in-ccx/534/14 "2021-04-23T06:30:37Z")

</div>

hi,  
in case you’re using GMSH as preprocessor (modeling & mesher) seems there’s two possibilities to connect the part. defining group of face by physical surface of coincident faces to connect by tie constraint, another approach are using BooleanFragments capabilities. may i can be seeing further if an example of geo file is available.
