Twisted yarns and ABAQUS export problem

General discussion about TexGen.

Moderators: Martin, Developers

Post Reply
fstig
Regular
Posts: 14
Joined: Thu Apr 24, 2008 7:09 am
Location: Gothenburg, Sweden
Contact:

Post by fstig »

Martin,

Hi, I'm new to the Forum and I have just started working with TexGen. First of all, I'm very impressed of the program so far. I'm at a stage now where I have made a nice but very simplified RVE of my textile using python. To be able to move forward I have 2 questions at the moment.

1) For some reason the volume of one of my yarns is distorted at a node, it looks like it is twisted 360 degrees around it own axis. Do you have any idea on what it might depend on, and what to do?

2) My second question is about exporting a volume mesh to Abaqus. When trying, I receive the following error message

AbaqusException: Unknown keyword "distributiontable". The keyword may be misspelled, obsolete, or invalid.
This occurred while while parsing the input file. Run the input file through the batch pre-processor to check for syntax errors.
The model "test4" has been imported from an input file.
Please scroll up to check for error and warning messages.

I could not find "distributiontable" in the Abaqus keyword manual, any ideas on what could be the done to fix this problem. I'm currently using Abaqus 6.6-1. Would it help if I changed to abaqus to Abaqus 6.7, or do you need to define that you would like to export a volume mesh in the python script?

Thank you in advance
Fredrik
Martin
Project Leader
Posts: 70
Joined: Wed Mar 28, 2007 9:05 am
Location: Nottingham
Contact:

Post by Martin »

Hi Fredrik,

First of all welcome to the forum and thanks for posting your questions here much appreciated. I moved your post into a new topic because it wasn't so much related to the previous one, I hope you don't mind.
1) For some reason the volume of one of my yarns is distorted at a node, it looks like it is twisted 360 degrees around it own axis. Do you have any idea on what it might depend on, and what to do?
I think I know what the problem is, it is one which takes a little bit of manual effort to resolve unfortunately. I have documented the problem in my thesis, please read section 2.5 Yarn Surface:

http://etheses.nottingham.ac.uk/archive ... -final.pdf

As mentioned in the Thesis the way to solve it is to manually specify an up vector at the nodes. This can be done by creating a node as follows (in python):

Code: Select all

Position = XYZ(1,2,3) # The position of the node
Up = XYZ(1,0,0)  # This vector should not be parallel to the tangent of the yarn
CNode(Position, XYZ(), Up)
I could not find "distributiontable" in the Abaqus keyword manual, any ideas on what could be the done to fix this problem. I'm currently using Abaqus 6.6-1. Would it help if I changed to abaqus to Abaqus 6.7, or do you need to define that you would like to export a volume mesh in the python script?
Yes I'm afraid the distributiontable is a new feature in version 6.7 of ABAQUS. So the input file that TexGen generates is not compatible with previous version of ABAQUS :(. With some manual editing of the .inp file you can remove these keywords, but you will lose information about Yarn directions, volume fractions, etc... If you are only interested in getting the mesh then this may not be an issue.
fstig
Regular
Posts: 14
Joined: Thu Apr 24, 2008 7:09 am
Location: Gothenburg, Sweden
Contact:

Post by fstig »

Thank you Martin! The advice solved both problems :)

/Fredrik
fstig
Regular
Posts: 14
Joined: Thu Apr 24, 2008 7:09 am
Location: Gothenburg, Sweden
Contact:

Post by fstig »

Hi!

I'm trying to learn how to define yarn and matrix material parameters directly in the python script. When I write the following I don't receive any error messages but when I import my volume mesh into Abaqus both the yarn and the matrix have the same materialtype TEXGENGENERATED. Can you give me a hint on what I have missed?

AbaSim = CSimulationAbaqus()
AbaSim.SetMaterial('MyMat','Elastic(type=ENGINEERING_CONSTANTS, table=((E1,E2,E3,nue12,nue13,nue23,G12,G13,G23), ))')

Warm regards
Fredrik
fstig
Regular
Posts: 14
Joined: Thu Apr 24, 2008 7:09 am
Location: Gothenburg, Sweden
Contact:

Minimum energy approach

Post by fstig »

Hi again Martin

I read your conference paper from the textile conference in Manchester last month. Very interesting paper. Do you have any plans on incorporate some sort of minimum energy approach to calculate yarn shape and placement into coming versions of TexGen?

Regards
/Fredrik
Martin
Project Leader
Posts: 70
Joined: Wed Mar 28, 2007 9:05 am
Location: Nottingham
Contact:

Post by Martin »

fstig wrote:Hi!

I'm trying to learn how to define yarn and matrix material parameters directly in the python script. When I write the following I don't receive any error messages but when I import my volume mesh into Abaqus both the yarn and the matrix have the same materialtype TEXGENGENERATED. Can you give me a hint on what I have missed?

AbaSim = CSimulationAbaqus()
AbaSim.SetMaterial('MyMat','Elastic(type=ENGINEERING_CONSTANTS, table=((E1,E2,E3,nue12,nue13,nue23,G12,G13,G23), ))')

Warm regards
Fredrik
Hi Fredrik,

Actually the CSimulationAbaqus class was intended for doing dry fabric simulations only. So it doesn't actually have a matrix in it. An example is shown below (Python script):

Code: Select all

from TexGen.Abaqus import *

tension = CLinearTransformation()
tension.AddScale(1.1)

deformer = TextileDeformerAbaqus()
deformer.AddDeformationStep(tension)
deformer.SetFortranProgram('LinearElasticUMAT.for')
deformer.SetMaterial("ISO_", [1.0, 0.0])
deformer.SetSimulationFilesPrefix('AbaqusFilesTension')

ReadFromXML('pweave.tg3')
textile = GetTextile()

deformer.DeformTextile(textile)

SaveToXML('pweave-tensioned.tg3')
Note that TextileDeformerAbaqus actually derives from CSimulationAbaqus, so most of the function calls are just to CSimulationAbaqus. What this bit of code does is that it loads a textile model named "pweave.tg3" which is a 2d woven fabric.
- It creates an ABAQUS .inp file with a mesh of the yarns alone, and applies a tension of 10% in the X direction.
- It runs ABAQUS using the generated .inp file as input.
- Once the simulation is complete it uses the results to create a deformed version of the TexGen model.

But we'll be publishing a paper with all the details soonish.

For now, if you are doing composite material modeling and want to assign different material properties to yarn and matrix, you need to edit the .inp file manually or load it into ABAQUS CAE and do it that way.

As for incorporating minimum energy approach to calculate yarn shape, I don't have any immediate plans to do this but it may be something that may be looked at in the future.
Post Reply