BenTUM
Mechanical
- Oct 1, 2013
- 2
Dear All,
I'm about to do a temperature Simulation on composite tapes. Therefore I need to specify orthotropic material behaviour along the longtitudinal tape direction. The tapes are created using shell elements (simple rectangles) which represent segments along its lay down direction. I introduced orientation by assigning Discrete Orientation, the Region is the shell surface itself as is the definition of the normalAxis. The primaryAxis is defined using one of the edges of the segment. The codes are in the attachement.
- orthotropic material definition
- section Assignment of the orthotropic material onto the tape
- Tape orientation is a fct how I created the tapes and instantly the orientation
The Codes work fine, ABAQUS can create an .inp-file and it even survives the Data Check.
However, when it comes to submitting the Simulation it exists after a short while with the following error message:
'
Error in job test_30-09: THE DISTRIBUTION ASSEMBLY_LAGE0_SEGMENT0_ORI-1-DISCORIENT HAS NOT BEEN DEFINED.
Error in job test_30-09: THERE IS NO ORIENTATION BY THE NAME ASSEMBLY_LAGE0_SEGMENT0_ORI-1
...
'
Apparently there is a problem concerning the Input-File because it is discarding the previously defined orientation.
The source of the problem seems to be the introduction of a 'Motion'-command right at the end of my script. As soon as 'Motion' is defined the orientation is being deleted from the Input-File.
Motion defined as follows:
'
##
#Discard all previously edited keyword changes:
import job
mdb.models['AFP_straight'].keywordBlock.setValues(edited = 0)
mdb.models['AFP_straight'].keywordBlock.synchVersions(storeNodesAndElements=False)
##
for i in range(num_ply):
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Runterfahren_Lage%i'%i)+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = head_down
motion_head ,3,3,-1
""")
##
for j in range(num_seg):
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Lage%i_Segment%i'%(i,j))+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = tape_up
Lage%i_Segment%i ,3,3,1
"""%(i,j))
##
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Lage%i_Segment%i'%(i,j))+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = Ablage_Segment%i
motion_head ,1,1,-1
"""%j)
##
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Hochfahren_Lage%i'%i)+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = head_up%i
motion_head ,3,3,1
"""%i)
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Rueckfahrt_Lage%i'%i)+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = Rueckfahrt
motion_head ,1,1,1
""")
##
##
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Runterfahren_Lage0')+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*RADIATION VIEWFACTOR, MDISP=10, NSET=motion_head
""")
##
'
Has anyone an idea how to overcome the problem or why the input file is being falsified?
Thanks a lot for your input!
Greetings
Benedikt
I'm about to do a temperature Simulation on composite tapes. Therefore I need to specify orthotropic material behaviour along the longtitudinal tape direction. The tapes are created using shell elements (simple rectangles) which represent segments along its lay down direction. I introduced orientation by assigning Discrete Orientation, the Region is the shell surface itself as is the definition of the normalAxis. The primaryAxis is defined using one of the edges of the segment. The codes are in the attachement.
- orthotropic material definition
- section Assignment of the orthotropic material onto the tape
- Tape orientation is a fct how I created the tapes and instantly the orientation
The Codes work fine, ABAQUS can create an .inp-file and it even survives the Data Check.
However, when it comes to submitting the Simulation it exists after a short while with the following error message:
'
Error in job test_30-09: THE DISTRIBUTION ASSEMBLY_LAGE0_SEGMENT0_ORI-1-DISCORIENT HAS NOT BEEN DEFINED.
Error in job test_30-09: THERE IS NO ORIENTATION BY THE NAME ASSEMBLY_LAGE0_SEGMENT0_ORI-1
...
'
Apparently there is a problem concerning the Input-File because it is discarding the previously defined orientation.
The source of the problem seems to be the introduction of a 'Motion'-command right at the end of my script. As soon as 'Motion' is defined the orientation is being deleted from the Input-File.
Motion defined as follows:
'
##
#Discard all previously edited keyword changes:
import job
mdb.models['AFP_straight'].keywordBlock.setValues(edited = 0)
mdb.models['AFP_straight'].keywordBlock.synchVersions(storeNodesAndElements=False)
##
for i in range(num_ply):
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Runterfahren_Lage%i'%i)+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = head_down
motion_head ,3,3,-1
""")
##
for j in range(num_seg):
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Lage%i_Segment%i'%(i,j))+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = tape_up
Lage%i_Segment%i ,3,3,1
"""%(i,j))
##
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Lage%i_Segment%i'%(i,j))+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = Ablage_Segment%i
motion_head ,1,1,-1
"""%j)
##
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Hochfahren_Lage%i'%i)+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = head_up%i
motion_head ,3,3,1
"""%i)
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Rueckfahrt_Lage%i'%i)+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*Motion, Amplitude = Rueckfahrt
motion_head ,1,1,1
""")
##
##
position = GetKeywordPosition( 'AFP_straight', '*Step, name=Runterfahren_Lage0')+1
mdb.models['AFP_straight'].keywordBlock.insert(position, """
*RADIATION VIEWFACTOR, MDISP=10, NSET=motion_head
""")
##
'
Has anyone an idea how to overcome the problem or why the input file is being falsified?
Thanks a lot for your input!
Greetings
Benedikt