Automatic interference treatment

General discussion about TexGen.

Moderators: Martin, Developers

mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Automatic interference treatment

Post by mat »

Dear all,

I am currently working on a project that aims to model and simulate the stiffness and strength of the representative volume element for triaxial braids.
For this project, I installed the software TexGen (really usefull by the way!) and am modeling the braid with a python script. My goal is to automate this script for any braiding angle.
I already managed to create the axial and braid yarns (sinusoidal path), nevertheless there is quite a lot of interference between those yarns.

What I'm currently trying to do is getting the interference depth for each interference point with the command "DetectInterference". I want to use the result to automatically rotate the yarn sections (depending on the depth) and so reduce the interferences.
Two questions:
- I don't understand why some interferences are occuring at positions where there's no mesh point (see the capture of TexGen).
- Knowing an interference point, is there a method to get the section to which this point belongs? I've already though about testing all sorting all the mesh points according to their section, and compare their coordinates to those of the interference point, but in vain.

For the moment I don't see any other way to automatically get the interference corrected, since the adjust command only works for small interferences.
Does anyone see another way to deal with this issue?

Thank you in advance!
Mathieu
Attachments
Interferences in the yarns
Interferences in the yarns
Interference_TexGen.jpg (76.13 KiB) Viewed 19048 times
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

In answer to your questions:
1. The interference detection is based on surface mesh points. You have the volume mesh rendered in your image which is why they don't match.
2. You may find it helpful to look at the AdjustMeshInterference and SimulationAbaqus files. The code is quite complicated but hopefully you'll be able to see how the interference points are used. You can find the source files here http://texgen.sourceforge.net/api/_adju ... ource.html and here http://texgen.sourceforge.net/api/_simu ... ource.html

Alternatively we did some work last year on correcting interference in sheared textiles which, I think, would give similar problems to braids. I have attached a paper which describes the method we used. The functions are in the CShearedTextileWeave2D class. I think that AdjustSectionsForRotation may do something similar to what you're looking for.

Take a look at those and then feel free to ask more questions.

Best regards,
Louise
Attachments
Recent Developments in the Realistic Geometric Modelling of Textile Structures using TexGen.pdf
(1.1 MiB) Downloaded 865 times
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Thank you for the piece of advice, I now better understand how the interferences can be treated.
I hope I'll manage to do the same for my triaxial braid.

Best regards,
Mathieu
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Hi Louise,

I eventually managed to create my script to automatically correct the yarn interferences. When I want to export a mesh (volume mesh) of my geometry, TexGen sometimes crashes for no apparent reason.
Is that a known issue with the software? I attached the tg3 file of my geometry to the post.

Best regards.
Mathieu
Attachments
RVE_45.0.zip
tg3 geometry
(4.71 KiB) Downloaded 259 times
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

I have tried the volume mesh export with your textile. I will look into what the problem is. It doesn't crash in the debug version - just fails to output a complete mesh. I'll get back to you when I've worked out what's happening. In the meantime would using a voxel mesh work for you? Alternatively if you just want the fibres then the Export Abaqus Dry Fibre File option works fine.

Best regards,
Louise
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Hi Louise,

I need to create a mesh of both fibers and matrix, so the Dry Fibre Export option won't be enough for my problem.
I managed to create the mesh of a 60° triax (no mesh issue like by the 45°), so I can work on this model for now.

In the future I'll need to get meshes of a large panel of textiles, it seems that only some configurations like the 45° triax don't work. I think the two parameters "seed" and "merge tolerance" have a strong effect on the possibility to create a mesh or not. I'll try to better understand how those two parameters influence the mesh.

Thanks again for your help.

Best regards,
Mathieu
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

We tend to use voxel meshing for modelling composites and have found this to give good results.

If you're using the volume mesh option the 'seed' option gives an approximate element size for the algorithm to start with and will govern how fine your final mesh is. For example, if your domain is 1.0 long and you use a seed size of 0.1 then you will have about 10 elements along the length with side approximately 0.1 but this may be adjusted by the triangulation algorithm. The merge tolerance governs the gaps between yarns - eg, if this was set at 0.01 then any gap smaller than this between two yarns would result in the yarn meshes touching at this point, any greater than this value and there will be a matrix element introduced in-between.

I hope that helps,

Louise
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Hi Louise,

Thanks for the piece of information, it helps quite a lot. When I refine the resolution of my model, I indeed get less issues with the mesh export.
One small question: I'm trying to calculate the fiber volume in my unit cell domain, but found until now no tool for that. All the GetVolume tools are only working with the whole textile, without taking into account the domain boundaries.
Do you know if it exists a tool that can do it?

Best regards,
Mathieu
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

You can calculate the yarn volume in the domain in a couple of stages: Call the CTextile AddSurfaceToMesh (CMesh &Mesh, bool bTrimToDomain=false) function, sending true in the second parameter. This will create a surface mesh of the yarns contained by the domain. Then call the CMesh function CalculateVolume for this mesh.

Best regards,
Louise
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Hi Louise,

I now almost succeeded to create a periodical geometry without penetrations for a braided composite. However I still have one issue, which I don't really understand.
My textile contains two yarns (55° and -55° orientation), built with 32 master nodes, which I repeat. The number of slave nodes is equal to the number of master nodes in my model. I so expected the slave nodes and the master nodes to be coincident, but this is not exactly the case and there's a small distance between them.
The problem is that the yarns - and as a consequence my mesh - are not periodical anymore.

Is there a way to modify the position of the slave nodes? I already tried to use the CSlaveNode.SetPosition(), but in vain since the model stayed unchanged.

Thanks again and best regards,
Mathieu
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

The slave nodes will be evenly distributed along the yarn, irrespective of where the master nodes are. I don't understand why, if you have specified the yarn repeats to match the repeat of the master nodes and specified the domain to match the repeat of the composite, the yarns aren't periodic. Could you send me an image so that I can see what you mean?

Best regards,
Louise
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Hi Louise,

My problem is a bit hard to describe, I was surely unclear in my last message.
Attached to this message is the last textile I created. I didn't used directly the "repeat" tool but created several yarns with an offset in the y direction. On the first picture (Biax) everything seems fine, but when I export the .iges geometry of my representative volume element (RVE), the nodes of the two faces in the x-direction are not exactly corresponding, and the RVE is not periodic in the x-direction (dy = -0.00011 and dz = 0.00002). As a consequence, the mesh is not periodical.
In the y-direction, I got no problem because I my yarn-offset was performed in this direction.

I remarked that the slave nodes of my yarns are not exactly on the master nodes (which are periodic), but very close to them. So either the slave nodes or the RVE are periodic.
Do you see a solution to this problem? Is there a way to control the slave node position (in order that they are coincident with the master nodes) or to move them?

Best regards,
Mathieu
Attachments
RVE.png
RVE.png (137.06 KiB) Viewed 18914 times
Biax.jpg
Biax.jpg (54.34 KiB) Viewed 18914 times
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

It's difficult to see from the figures exactly what's going on. If you've created your yarns with exactly the same repeat size (whether you've done that by offsetting yarns or using a repeat) then if your RVE size matches that everything should match up. I suppose that if you've created the yarns longer than the repeat then it's possible that the meshes won't match. Do you want to send me the tg3 file and I'll try to see what the issue is?

You can't alter the slave nodes as these are calculated automatically by TexGen depending on the interpolation.

Best regards,
Louise
mat
Regular
Posts: 23
Joined: Mon Mar 17, 2014 8:12 am

Re: Automatic interference treatment

Post by mat »

Hi Louise,
I attached the tg3 file of my RVE to this message. This time I used the repeat option, in vain too.
As I already explained, the master nodes of my yarns are periodic, but my slave nodes are not. I'll try to find a way to change this.

Thank you for your help.
Best regards,

Mathieu
Attachments
RVE_55.zip
(2.91 KiB) Downloaded 211 times
louisepb
Project Leader
Posts: 998
Joined: Tue Dec 08, 2009 2:27 pm
Location: Nottingham

Re: Automatic interference treatment

Post by louisepb »

Hi Mathieu,

I have attached a new file which just includes a single repeat of each yarn. This looks as though the nodes are now periodic although I notice that your interpolation is not set to be periodic which could affect results. If you make the set of master nodes longer than one repeat of the yarn then the slave nodes will be spread across that entire range making it possible that they are not periodic. If you just specify one repeat of the yarn then the slave nodes will be distributed evenly across that section and should therefore be periodic.

Best regards,
Louise
Attachments
RVE_55_SingleRepeat.zip
(1.59 KiB) Downloaded 218 times
Post Reply