Warping conditions on beam element in ABAQUS
Warping conditions on beam element in ABAQUS
(OP)
Hello,
I am trying to model a beam element in ABAQUS but it is not taking any warping restraints for the model. It says that I cannot impose displacement, rotation and angular velocity restrictions at a node (which is the case for warping condition Theta'=0). Could anyone please guide me as to how am I supposed to model any warping conditions in ABAQUS?
A prompt response shall be highly appreciated! .
Regards
I am trying to model a beam element in ABAQUS but it is not taking any warping restraints for the model. It says that I cannot impose displacement, rotation and angular velocity restrictions at a node (which is the case for warping condition Theta'=0). Could anyone please guide me as to how am I supposed to model any warping conditions in ABAQUS?
A prompt response shall be highly appreciated! .
Regards





RE: Warping conditions on beam element in ABAQUS
"...Element types B31OS, B32OS (and their “hybrid” equivalents) have the warping magnitude, w, as a degree of freedom at each node; they are available only in Abaqus/Standard. In these elements Abaqus/Standard assumes that the warping of the cross-section follows a certain pattern as a function of position in the cross-section (Abaqus will calculate this warping pattern if you have specified a standard library section or an “arbitrary” section): only the warping magnitude varies with position along the beam's axis. These elements are meant for the analysis of thin-walled open sections in which warping constraints play a role and the axial strains due to warping cannot be neglected..."
RE: Warping conditions on beam element in ABAQUS
Hope these help.
RE: Warping conditions on beam element in ABAQUS
I really appreciate your help..
I am looking to actually model a warping condition in a W 8 x 67 section.
I am required to use a 3D beam section (line element), and model it as a 7 DOF system at each node. However, I can't find how to access the seventh degree of freedom in ABAQUS. The manual mentions that I should be able to get it in the BB32 or BB31 element type, but I am not able as to how to control that warping DOF.
Now, also, I know that the warping restraint is related to the theta' (change of rotation) and as such is equal to zero in a warping fixed case.
So, I would have been able to achieve the same effect if I could use the boundary condition that angular velocity = 0 (theta'(x)). However, in the boundary conditions, when I impose this restriction, ABAQUS says that I cannot impose displacement and rotational restraints (and warping restraints) at the same node.
Thus, I am not able to model a beam section with a cantilevered fixed end and warping also restrained at that end.
I feel this problem would never have arisen in the first place if I could directly find the warping boundary condition option in ABAQUS.
Can the warping which the BB31OS assumes automatically be switched on and off (when i want it to be completely restrained)?
RE: Warping conditions on beam element in ABAQUS
"...These elements are meant for the analysis of thin-walled open sections in which warping constraints play a role and the axial strains due to warping cannot be neglected. Examples of such open sections that may warp in this fashion are the I-section and any open arbitrary section. In the other beam element types warping is considered unconstrained and any axial stress due to warping is neglected; torsional behavior will not be represented adequately when these element types are used with thin-walled, open sections...
...The choice of these constraints is a matter of detail of the local construction. For example, if the joint is reinforced, warping may be prevented; therefore, degree of freedom 7 should be fully constrained with a boundary condition on the appropriate members at the joint."
I hope this helps.
RE: Warping conditions on beam element in ABAQUS
It says its only available in ABAQUS standard/.. does that mean its not available in the graphical user interface.. and i will need to create an input file myself for this?
any guidance on writing input files.. or some reading material regarding learning the same shall be highly appreciated!
thanks a ton for all the help.. ! :))
RE: Warping conditions on beam element in ABAQUS
i have added a new displacement BC named 'warping_edit'. could someone please tell me how to add the warping function here?
# -*- coding: mbcs -*-
from part import *
from material import *
from section import *
from assembly import *
from step import *
from interaction import *
from load import *
from mesh import *
from optimization import *
from job import *
from sketch import *
from visualization import *
from connectorBehavior import *
mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=200.0)
mdb.models['Model-1'].sketches['__profile__'].Line(point1=(0.0, 0.0), point2=(
140.0, 0.0))
mdb.models['Model-1'].sketches['__profile__'].HorizontalConstraint(
addUndoState=False, entity=
mdb.models['Model-1'].sketches['__profile__'].geometry[2])
mdb.models['Model-1'].Part(dimensionality=THREE_D, name='Beam', type=
DEFORMABLE_BODY)
mdb.models['Model-1'].parts['Beam'].BaseWire(sketch=
mdb.models['Model-1'].sketches['__profile__'])
del mdb.models['Model-1'].sketches['__profile__']
mdb.models['Model-1'].Material(name='Material-1')
mdb.models['Model-1'].materials['Material-1'].Elastic(table=((29000.0, 0.3), ))
mdb.models['Model-1'].IProfile(b1=8.28, b2=8.28, h=9.0, l=4.5, name='W-8 x 67',
t1=0.935, t2=0.935, t3=0.57)
mdb.models['Model-1'].BeamSection(consistentMassMatrix=False, integration=
DURING_ANALYSIS, material='Material-1', name='beamsection', poissonRatio=
0.0, profile='W-8 x 67', temperatureVar=LINEAR)
mdb.models['Model-1'].parts['Beam'].SectionAssignment(offset=0.0, offsetField=
'', offsetType=MIDDLE_SURFACE, region=Region(
edges=mdb.models['Model-1'].parts['Beam'].edges.getSequenceFromMask(mask=(
'[#1 ]', ), )), sectionName='beamsection', thicknessAssignment=
FROM_SECTION)
mdb.models['Model-1'].rootAssembly.DatumCsysByDefault(CARTESIAN)
mdb.models['Model-1'].rootAssembly.Instance(dependent=ON, name='Beam-1', part=
mdb.models['Model-1'].parts['Beam'])
mdb.models['Model-1'].StaticStep(name='LoadApplication', previous='Initial')
mdb.models['Model-1'].Moment(cm1=1.0, createStepName='LoadApplication',
distributionType=UNIFORM, field='', localCsys=None, name='Torque', region=
Region(
vertices=mdb.models['Model-1'].rootAssembly.instances['Beam-1'].vertices.getSequenceFromMask(
mask=('[#2 ]', ), )))
mdb.models['Model-1'].EncastreBC(createStepName='Initial', localCsys=None,
name='Fixed', region=Region(
vertices=mdb.models['Model-1'].rootAssembly.instances['Beam-1'].vertices.getSequenceFromMask(
mask=('[#1 ]', ), )))
mdb.models['Model-1'].parts['Beam'].assignBeamSectionOrientation(method=
N1_COSINES, n1=(0.0, 0.0, -1.0), region=Region(
edges=mdb.models['Model-1'].parts['Beam'].edges.getSequenceFromMask(mask=(
'[#1 ]', ), )))
mdb.models['Model-1'].parts['Beam'].seedPart(deviationFactor=0.1,
minSizeFactor=0.1, size=5.0)
mdb.models['Model-1'].parts['Beam'].generateMesh()
mdb.models['Model-1'].rootAssembly.regenerate()
mdb.Job(atTime=None, contactPrint=OFF, description='', echoPrint=OFF,
explicitPrecision=SINGLE, getMemoryFromAnalysis=True, historyPrint=OFF,
memory=90, memoryUnits=PERCENTAGE, model='Model-1', modelPrint=OFF,
multiprocessingMode=DEFAULT, name='Job-1', nodalOutputPrecision=SINGLE,
numCpus=1, numGPUs=0, queue=None, scratch='', type=ANALYSIS,
userSubroutine='', waitHours=0, waitMinutes=0)
mdb.jobs['Job-1'].submit(consistencyChecking=OFF)
mdb.jobs['Job-1']._Message(STARTED, {'phase': BATCHPRE_PHASE,
'clientHost': 'blumews2', 'handle': 0, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FILE, {'phase': BATCHPRE_PHASE,
'file': 'D:\\AbaqusWD\\Job-1.odb', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(COMPLETED, {'phase': BATCHPRE_PHASE,
'message': 'Analysis phase complete', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STARTED, {'phase': STANDARD_PHASE,
'clientHost': 'blumews2', 'handle': 3288, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STEP, {'phase': STANDARD_PHASE, 'stepId': 1,
'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FRAME, {'phase': STANDARD_PHASE, 'step': 0,
'frame': 0, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STATUS, {'totalTime': 0.0, 'increment': 0,
'attempts': 0, 'iterations': 0, 'phase': STANDARD_PHASE,
'timeIncrement': 1.0, 'stepTime': 0.0, 'step': 1, 'jobName': 'Job-1',
'severe': 0, 'equilibrium': 0})
mdb.jobs['Job-1']._Message(MEMORY_ESTIMATE, {'phase': STANDARD_PHASE,
'memory': 23.7439756393433, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FRAME, {'phase': STANDARD_PHASE, 'step': 0,
'frame': 1, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STATUS, {'totalTime': 1.0, 'increment': 1,
'attempts': 1, 'iterations': 1, 'phase': STANDARD_PHASE,
'timeIncrement': 1.0, 'stepTime': 1.0, 'step': 1, 'jobName': 'Job-1',
'severe': 0, 'equilibrium': 1})
mdb.jobs['Job-1']._Message(END_STEP, {'phase': STANDARD_PHASE, 'stepId': 1,
'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(COMPLETED, {'phase': STANDARD_PHASE,
'message': 'Analysis phase complete', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(JOB_COMPLETED, {'jobName': 'Job-1',
'time': 'Mon Jan 06 20:44:02 2014'})
mdb.jobs['Job-1']._Message(STARTED, {'phase': BATCHPRE_PHASE,
'clientHost': 'blumews2', 'handle': 0, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FILE, {'phase': BATCHPRE_PHASE,
'file': 'D:\\AbaqusWD\\Job-1.odb', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(COMPLETED, {'phase': BATCHPRE_PHASE,
'message': 'Analysis phase complete', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STARTED, {'phase': STANDARD_PHASE,
'clientHost': 'blumews2', 'handle': 2408, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STEP, {'phase': STANDARD_PHASE, 'stepId': 1,
'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FRAME, {'phase': STANDARD_PHASE, 'step': 0,
'frame': 0, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STATUS, {'totalTime': 0.0, 'attempts': 0,
'timeIncrement': 1.0, 'increment': 0, 'stepTime': 0.0, 'step': 1,
'jobName': 'Job-1', 'severe': 0, 'iterations': 0, 'phase': STANDARD_PHASE,
'equilibrium': 0})
mdb.jobs['Job-1']._Message(MEMORY_ESTIMATE, {'phase': STANDARD_PHASE,
'jobName': 'Job-1', 'memory': 23.7439756393433})
mdb.jobs['Job-1']._Message(ODB_FRAME, {'phase': STANDARD_PHASE, 'step': 0,
'frame': 1, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STATUS, {'totalTime': 1.0, 'attempts': 1,
'timeIncrement': 1.0, 'increment': 1, 'stepTime': 1.0, 'step': 1,
'jobName': 'Job-1', 'severe': 0, 'iterations': 1, 'phase': STANDARD_PHASE,
'equilibrium': 1})
mdb.jobs['Job-1']._Message(END_STEP, {'phase': STANDARD_PHASE, 'stepId': 1,
'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(COMPLETED, {'phase': STANDARD_PHASE,
'message': 'Analysis phase complete', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(JOB_COMPLETED, {'time': 'Mon Jan 06 20:57:18 2014',
'jobName': 'Job-1'})
mdb.models['Model-1'].DisplacementBC(amplitude=UNSET, createStepName='Initial',
distributionType=UNIFORM, fieldName='', localCsys=None, name='warping_edit'
, region=Region(
vertices=mdb.models['Model-1'].rootAssembly.instances['Beam-1'].vertices.getSequenceFromMask(
mask=('[#1 ]', ), )), u1=UNSET, u2=UNSET, u3=UNSET, ur1=UNSET, ur2=UNSET, ur3=
UNSET)
#where do i add warping above????
mdb.jobs['Job-1'].submit(consistencyChecking=OFF)
mdb.jobs['Job-1']._Message(STARTED, {'phase': BATCHPRE_PHASE,
'clientHost': 'blumews2', 'handle': 0, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FILE, {'phase': BATCHPRE_PHASE,
'file': 'D:\\AbaqusWD\\Job-1.odb', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(COMPLETED, {'phase': BATCHPRE_PHASE,
'message': 'Analysis phase complete', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STARTED, {'phase': STANDARD_PHASE,
'clientHost': 'blumews2', 'handle': 3440, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STEP, {'phase': STANDARD_PHASE, 'stepId': 1,
'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(ODB_FRAME, {'phase': STANDARD_PHASE, 'step': 0,
'frame': 0, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STATUS, {'totalTime': 0.0, 'attempts': 0,
'timeIncrement': 1.0, 'increment': 0, 'stepTime': 0.0, 'step': 1,
'jobName': 'Job-1', 'severe': 0, 'iterations': 0, 'phase': STANDARD_PHASE,
'equilibrium': 0})
mdb.jobs['Job-1']._Message(MEMORY_ESTIMATE, {'phase': STANDARD_PHASE,
'jobName': 'Job-1', 'memory': 23.7439756393433})
mdb.jobs['Job-1']._Message(ODB_FRAME, {'phase': STANDARD_PHASE, 'step': 0,
'frame': 1, 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(STATUS, {'totalTime': 1.0, 'attempts': 1,
'timeIncrement': 1.0, 'increment': 1, 'stepTime': 1.0, 'step': 1,
'jobName': 'Job-1', 'severe': 0, 'iterations': 1, 'phase': STANDARD_PHASE,
'equilibrium': 1})
mdb.jobs['Job-1']._Message(END_STEP, {'phase': STANDARD_PHASE, 'stepId': 1,
'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(COMPLETED, {'phase': STANDARD_PHASE,
'message': 'Analysis phase complete', 'jobName': 'Job-1'})
mdb.jobs['Job-1']._Message(JOB_COMPLETED, {'time': 'Mon Jan 06 20:59:47 2014',
'jobName': 'Job-1'})
from part import *
from material import *
from section import *
from assembly import *
from step import *
from interaction import *
from load import *
from mesh import *
from optimization import *
from job import *
from sketch import *
from visualization import *
from connectorBehavior import *
del mdb.models['Model-1'].boundaryConditions['BC-3']
# Save by ahmadw on 2014_01_06-21.42.09; build 6.12-1 2012_03_13-20.23.18 119612