Hello,
I am doing a simple plain weave model and I want to export it to Abaqus. I was successful in doing this, but when I rotate the model by 45 degrees and try to export the model, it doesn't produce and node sets. Can you please help me with this? Any help is really appreciated.
The code for the plain weave is as below. It just needs to be rotated by 45 degrees and exported to Abaqus.
# Create a textile
Textile = CTextile()
p = 1.235
a = 0.017
c = 0.25
h = 0.014
wl= 4.94
R= 100
hf=0
#Yarn 1
yarn=CYarn()
yarn.AddNode(CNode(XYZ(-p+hf, p+hf, a)))
yarn.AddNode(CNode(XYZ(-c+hf, p+hf, h)))
yarn.AddNode(CNode(XYZ(c+hf, p+hf, -h)))
yarn.AddNode(CNode(XYZ(p+hf, p+hf, -a)))
yarn.AddNode(CNode(XYZ(2*p-c+hf, p+hf, -h)))
yarn.AddNode(CNode(XYZ(2*p+c+hf, p+hf, h)))
yarn.AddNode(CNode(XYZ(3*p+hf, p+hf, a)))
yarn.AssignInterpolation(CInterpolationBezier())
yarn.AssignSection(CYarnSectionConstant(CSectionPowerEllipse(2.248, 0.034, 0.6, 0)))
yarn.SetResolution(R)
yarn.AddRepeat(XYZ(wl, 0, 0))
yarn.AddRepeat(XYZ(0, wl, 0))
Textile.AddYarn(yarn)
#Yarn2
yarn=CYarn()
yarn.AddNode(CNode(XYZ(-p+hf, 3*p+hf, -a)))
yarn.AddNode(CNode(XYZ(-c+hf, 3*p+hf, -h)))
yarn.AddNode(CNode(XYZ(c+hf, 3*p+hf, h)))
yarn.AddNode(CNode(XYZ(p+hf, 3*p+hf, a)))
yarn.AddNode(CNode(XYZ(2*p-c+hf, 3*p+hf, h)))
yarn.AddNode(CNode(XYZ(2*p+c+hf, 3*p+hf, -h)))
yarn.AddNode(CNode(XYZ(3*p+hf, 3*p+hf, -a)))
yarn.AssignInterpolation(CInterpolationBezier())
yarn.AssignSection(CYarnSectionConstant(CSectionPowerEllipse(2.248, 0.034, 0.6, 0)))
yarn.SetResolution(R)
yarn.AddRepeat(XYZ(wl, 0, 0))
yarn.AddRepeat(XYZ(0, wl, 0))
Textile.AddYarn(yarn)
#Yarn3
yarn=CYarn()
yarn.AddNode(CNode(XYZ(p+hf, -p+hf, -a)))
yarn.AddNode(CNode(XYZ(p+hf, -c+hf, -h)))
yarn.AddNode(CNode(XYZ(p+hf, c+hf, h)))
yarn.AddNode(CNode(XYZ(p+hf, p+hf, a)))
yarn.AddNode(CNode(XYZ(p+hf, 2*p-c+hf, h)))
yarn.AddNode(CNode(XYZ(p+hf, 2*p+c+hf, -h)))
yarn.AddNode(CNode(XYZ(p+hf,3*p+hf, -a)))
yarn.AssignInterpolation(CInterpolationBezier())
yarn.AssignSection(CYarnSectionConstant(CSectionPowerEllipse(2.248, 0.034, 0.6, 0)))
yarn.SetResolution(R)
yarn.AddRepeat(XYZ( 0, wl, 0))
yarn.AddRepeat(XYZ(wl, 0, 0))
Textile.AddYarn(yarn)
#Yarn4
yarn=CYarn()
yarn.AddNode(CNode(XYZ(3*p+hf, -p+hf, a)))
yarn.AddNode(CNode(XYZ(3*p+hf, -c+hf, h)))
yarn.AddNode(CNode(XYZ(3*p+hf, c+hf, -h)))
yarn.AddNode(CNode(XYZ(3*p+hf, p+hf, -a)))
yarn.AddNode(CNode(XYZ(3*p+hf, 2*p-c+hf, -h)))
yarn.AddNode(CNode(XYZ(3*p+hf, 2*p+c+hf, h)))
yarn.AddNode(CNode(XYZ(3*p+hf,3*p+hf, a)))
yarn.AssignInterpolation(CInterpolationBezier())
yarn.AssignSection(CYarnSectionConstant(CSectionPowerEllipse(2.248, 0.034, 0.6, 0)))
yarn.SetResolution(R)
yarn.AddRepeat(XYZ( 0, wl, 0))
yarn.AddRepeat(XYZ(wl, 0, 0))
Textile.AddYarn(yarn)
Textile.AssignDomain(CDomainPlanes(XYZ(-2.47, -2.47, -0.034), XYZ(2.47, 2.47, 0.034)))
AddTextile("Singleply", Textile)
Not generating node sets
Moderators: Martin, Developers
Re: Not generating node sets
Hi,
Which export are you using? If you rotate your textile through 45 degrees leaving the domain as it was then you get the model shown below If you look at this you will see that it is no longer periodic across the x-y boundaries and therefore TexGen can't generate matching node sets for the volume mesh export as the elements don't match on opposite sides of the domain.
If you are using the voxel mesh export the node sets will be generated as the voxel elements will match. However, the materials in the voxels won't match across the boundaries so the boundary conditions won't be valid. The next TexGen release will have boundary conditions set up for rotated textile and domain.
Sorry not to give a conclusive answer.
Louise
Which export are you using? If you rotate your textile through 45 degrees leaving the domain as it was then you get the model shown below If you look at this you will see that it is no longer periodic across the x-y boundaries and therefore TexGen can't generate matching node sets for the volume mesh export as the elements don't match on opposite sides of the domain.
If you are using the voxel mesh export the node sets will be generated as the voxel elements will match. However, the materials in the voxels won't match across the boundaries so the boundary conditions won't be valid. The next TexGen release will have boundary conditions set up for rotated textile and domain.
Sorry not to give a conclusive answer.
Louise
Re: Not generating node sets
Hi,
Thanks a lot for the reply. Sorry I forgot to mention, I in-fact was trying to use volume mesh.
Is there any way I could just get the node sets defined myself or something of that sort (In volume mesh), I just need the different "sections" generated in the input file. I don't need the periodic boundary conditions generated from Texgen itself.
Thanks a lot for the reply. Sorry I forgot to mention, I in-fact was trying to use volume mesh.
Is there any way I could just get the node sets defined myself or something of that sort (In volume mesh), I just need the different "sections" generated in the input file. I don't need the periodic boundary conditions generated from Texgen itself.
Re: Not generating node sets
Hi,
After what you said, I went through the input file and found that, before the program stops TexGen creates the element sets related to every yarn and also the matrix. So I just defined the sections myself in the input file by calling the names of the element sets. It's working now. Thanks a lot for the help!!! Awesome software.
After what you said, I went through the input file and found that, before the program stops TexGen creates the element sets related to every yarn and also the matrix. So I just defined the sections myself in the input file by calling the names of the element sets. It's working now. Thanks a lot for the help!!! Awesome software.
Re: Not generating node sets
Hi,
Glad you solved it!
Louise
Glad you solved it!
Louise