Sie sind auf Seite 1von 59

ABAQUS Tutorials

ABAQUS Tutorials
These ABAQUS tutorials are parts of the course Mechanics of Electromechanical Constructions and
Finite Elements (E041200) lectured by Professor Magd Abdel Wahab, Department of Mechanical
Construction and Production, Faculty of Engineering and Architecture, Ghent University.
Q2.5
Start ABAQUS CAE 613
Set Work directory

Start a new model


File/New Model
Database/With
standard/Explicit Model

327

ABAQUS Tutorials

Create model
Module/Part

Click Create Part


Choose
2D/Deformable/Wire
Approximate size 0.4
Continue

Click Create Arc: Thru 3


points
Enter start point 0,0
Enter end point 0.2,0
Enter a point to lie on the
arc 0.1,0.1

328

ABAQUS Tutorials

Press Esc, then


Click done

Define Material/geometric properties


Module/Property

(E=70 GPa = 70109 N/m2, Poissons ratio=0.3)


Create Material/
Mechanical/Elasticity/
Elastic
Define Youngs modulus
70e9 and Poissons ratio
0.3
OK

329

ABAQUS Tutorials

Create Section
Choose Beam
Continue

Click Create Beam


Profile
Choose Rectangular
Continue

Define Width 0.1 and


height 0.03
OK/OK

330

ABAQUS Tutorials

Assign Section to Part


Click Assign Section
Click on the arc
Done
Section 1
OK

Assign Beam orientation


Click Assign Beam
orientation
Done
Enter n1 direction (as
given)
OK

Module Assembly

331

ABAQUS Tutorials

Create Instances
Click Create Instance
Part-1
Choose Dependent
OK

Create analysis step


Module Step

Click Create Step


Initial
Static, General
Continue

332

ABAQUS Tutorials

Description Q2.5
OK

Apply load
Module Load

Click Create Load


Mechanical/ concentrated
force
Continue

333

ABAQUS Tutorials

Applying force (P=10 kN = 10 000 N)


Click on point 2
Done
Define CF2 10000
OK

Apply boundary conditions


Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue

Click on point 1
Done
Define U1, U2, UR3 0
OK

334

ABAQUS Tutorials

Mesh control
Module Mesh

Click Part (Part-1)


Click Seed Part
Specify global size 0.01
OK

Mesh
Click Mesh Part
Click yes

335

ABAQUS Tutorials

Define element type


Click Assign Element
Type
Choose region
Done
Beam
OK
Done

Solution
Module Job

Create Job
Name: Q2_5
Model-1
Continue

336

ABAQUS Tutorials

Description Q2.5
OK

Job Manager
Submit
OK

Monitor solution

337

ABAQUS Tutorials

Save your analysis as Q2.5.cae

View results
Open results file
Choose Q2_5.obd
OK

Plot displacement contours


Click results
Field output

338

ABAQUS Tutorials

Choose U for
displacement
U1 for displacement in the
x-direction
U2 for displacement in the
y-direction

Displacement x-direction
Click Plot Contours on
Deformed Shape
Compare maximum xdisplacement to ANSYS
results and analytical
solution?

Displacement y-direction (repeat same procedures as above; Results/field output choose U2)
Click Plot Contours on
Deformed Shape
Compare maximum ydisplacement to ANSYS
results and analytical
solution?

339

ABAQUS Tutorials

To create a Python code, before you start working in your model, activate Macro Manager:
File
Click Macro Manager
Click create

Define Name of Macro:


Q2_5
Choose Work for Work
directory
Continue

After finishing your working session, click Stop Recording. A python macro file will be created
abaqusMacros.py under your working directory. Copy and paste the part concerned with your problem
and save in a file Q2_5.py. To run a macro file, click file/Run Script (note that the python code should
be in your Work Directory).
File
Click Run Script
Choose Q2_5.py

340

ABAQUS Tutorials

Python code for Q2.5


# -*- coding: mbcs -*# Do not delete the following import lines
from abaqus import *
from abaqusConstants import *
import __main__
def Q2_5():
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
s1 = mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=0.4)
g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints
s1.setPrimaryObject(option=STANDALONE)
s1.Arc3Points(point1=(0.0, 0.0), point2=(0.2, 0.0), point3=(0.1, 0.1))
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=TWO_D_PLANAR,
type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-1']
p.BaseWire(sketch=s1)
s1.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON)
session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=OFF)
mdb.models['Model-1'].Material(name='Material-1')
mdb.models['Model-1'].materials['Material-1'].Elastic(table=((70000000000.0,
0.3), ))
mdb.models['Model-1'].RectangularProfile(name='Profile-1', a=0.1, b=0.03)
mdb.models['Model-1'].BeamSection(name='Section-1',
integration=DURING_ANALYSIS, poissonRatio=0.0, profile='Profile-1',
material='Material-1', temperatureVar=LINEAR,
consistentMassMatrix=False)
p = mdb.models['Model-1'].parts['Part-1']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#1 ]', ), )
region = p.Set(edges=edges, name='Set-1')
p = mdb.models['Model-1'].parts['Part-1']
p.SectionAssignment(region=region, sectionName='Section-1', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
p = mdb.models['Model-1'].parts['Part-1']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#1 ]', ), )
region=p.Set(edges=edges, name='Set-2')

341

ABAQUS Tutorials

p = mdb.models['Model-1'].parts['Part-1']
p.assignBeamSectionOrientation(region=region, method=N1_COSINES, n1=(0.0, 0.0,
-1.0))
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
optimizationTasks=OFF, geometricRestrictions=OFF, stopConditions=OFF)
a = mdb.models['Model-1'].rootAssembly
a.DatumCsysByDefault(CARTESIAN)
p = mdb.models['Model-1'].parts['Part-1']
a.Instance(name='Part-1-1', part=p, dependent=ON)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)
mdb.models['Model-1'].StaticStep(name='Step-1', previous='Initial',
description='Q2.5')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Step-1')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON,
predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-1-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#2 ]', ), )
region = a.Set(vertices=verts1, name='Set-1')
mdb.models['Model-1'].ConcentratedForce(name='Load-1', createStepName='Step-1',
region=region, cf2=10000.0, distributionType=UNIFORM, field='',
localCsys=None)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-1-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#1 ]', ), )
region = a.Set(vertices=verts1, name='Set-2')
mdb.models['Model-1'].DisplacementBC(name='BC-1', createStepName='Step-1',
region=region, u1=0.0, u2=0.0, ur3=0.0, amplitude=UNSET, fixed=OFF,
distributionType=UNIFORM, fieldName='', localCsys=None)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=ON, loads=OFF,
bcs=OFF, predefinedFields=OFF, connectors=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF, mesh=ON)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
p.seedPart(size=0.01, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Part-1']
p.generateMesh()
elemType1 = mesh.ElemType(elemCode=B21, elemLibrary=STANDARD)
p = mdb.models['Model-1'].parts['Part-1']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#1 ]', ), )
pickedRegions =(edges, )
p.setElementType(regions=pickedRegions, elemTypes=(elemType1, ))
a1 = mdb.models['Model-1'].rootAssembly
a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.Job(name='Q2_5', model='Model-1', description='Q2.5', type=ANALYSIS,

342

ABAQUS Tutorials

atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,


memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True,
explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, echoPrint=OFF,
modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='',
scratch='', multiprocessingMode=DEFAULT, numCpus=1, numGPUs=0)
mdb.jobs['Q2_5'].submit(consistencyChecking=OFF)
mdb.saveAs(pathName='H:/ABAQUS/Q2.5.cae')

Q2.6
Start a new model database as before: File/New Model Database/With standard/Explicit Model
Create Part
Click Create Part
Choose
2D/Deformable/Wire
Approximate size 1.6
Continue

Create line
Click Create Lines
Connected
Enter point 1 a starting
point 0,0
Point 2 an ending point 0,
0.8
Press Esc, then
Click done

343

ABAQUS Tutorials

Create Part-2 (quarter


circle) 2D/Deformable/
wires
Continue

Click Create Arc: Thru 3


points
Enter start point 0,0.8
Enter end point 0.4,1.2
Enter a point to lie on the
arc 0.117157,1.08284
Click done

Press Esc, then


Click done

344

ABAQUS Tutorials

Assembly/Create Instance
Click Create Instance
Part-1 and Part-2
Choose Dependent
OK

Merge parts 1 and 2 (create new part 3)


Click Merge/Cut Instances
Click Both
Continue
Click Part-1 and Part-2
Done
Part-3 is created

Define Material/section properties (E=200 GPa, =0.3)


Create Material/
Mechanical/Elasticity/
Elastic
Define Youngs modulus
200e9 and Poissons ratio
0.3
OK

345

ABAQUS Tutorials

Create section
Create Section
Choose Beam
Continue

Click Create Beam


Profile
Choose Circular
Continue

Define Radius 0.1


OK/OK

346

ABAQUS Tutorials

Assign section to Part 3


Click Assign Section to
Part 3
Click on line & arc
OK

Assign Beam Orientation for part 3


Click Assign Beam
orientation
Click on Part-3
Done
Enter n1 direction (as
given)
OK

Create Step as before

Click Create Step


Initial
Continue
Description Q2.6
OK

347

ABAQUS Tutorials

Apply Load force in the y-direction -20000 (P/2 in N) should be defined


Click Create Load
Mechanical/ concentrated
force
Continue
Click on point 1
Done
Define CF2 -20000
OK

Apply Boundary conditions


Point 1: only rotation (UR3) is zero
Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue
Click on point 1
Done
Define UR3 0
OK

Point 3: All DOF are zeros (U1, U2, UR3).


Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue
Click on point 3
Done
Define U1, U2, UR3 0
OK

348

ABAQUS Tutorials

Mesh (mesh part 3)


Module Mesh
Choose Part (Part-3)
Click Seed Part Instance
Specify global size 0.02
OK
Click Mesh Part
Click Yes

Define element type


Click Assign Element
Type
Choose region Part 3
(click on both parts 1&2)
Done
Beam
OK
Done

Solution: as before Module Job/ Create Job /Model-1/ Job name: Q2_6/ Continue
Description Q2.6/ OK/ Job Manager/Submit job to solve & Monitor to monitor solution
View results
Open results file as before: File/open Choose Q2_6.obd OK
Plot reaction moment contours
Click results
Field output
Choose RM3 for reaction
moment
OK

349

ABAQUS Tutorials

Click Plot Contours on


Deformed Shape
Compare maximum
bending moment to
ANSYS results and
analytical solution?

Zoom near point 1


Compare bending moment
at point 1 to ANSYS
results and analytical
solution?

Python code for Q2.6


def Q2_6():
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
session.viewports['Viewport: 1'].setValues(displayedObject=None)
s = mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=1.6)
g, v, d, c = s.geometry, s.vertices, s.dimensions, s.constraints
s.setPrimaryObject(option=STANDALONE)
s.Line(point1=(0.0, 0.0), point2=(0.0, 0.8))

350

ABAQUS Tutorials

s.VerticalConstraint(entity=g[2], addUndoState=False)
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=TWO_D_PLANAR,
type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-1']
p.BaseWire(sketch=s)
s.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
s1 = mdb.models['Model-1'].ConstrainedSketch(name='__profile__', sheetSize=1.6)
g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints
s1.setPrimaryObject(option=STANDALONE)
s1.Arc3Points(point1=(0.0, 0.8), point2=(0.4, 1.2), point3=(0.117157, 1.08284))
p = mdb.models['Model-1'].Part(name='Part-2', dimensionality=TWO_D_PLANAR,
type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-2']
p.BaseWire(sketch=s1)
s1.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-2']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
a1 = mdb.models['Model-1'].rootAssembly
a1.DatumCsysByDefault(CARTESIAN)
p = mdb.models['Model-1'].parts['Part-1']
a1.Instance(name='Part-1-1', part=p, dependent=ON)
p = mdb.models['Model-1'].parts['Part-2']
a1.Instance(name='Part-2-1', part=p, dependent=ON)
a1 = mdb.models['Model-1'].rootAssembly
a1.InstanceFromBooleanMerge(name='Part-3', instances=(a1.instances['Part-1-1'],
a1.instances['Part-2-1'], ), originalInstances=SUPPRESS,
mergeNodes=BOUNDARY_ONLY, nodeMergingTolerance=1e-06, domain=BOTH)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON)
session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=OFF)
p = mdb.models['Model-1'].parts['Part-2']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
mdb.models['Model-1'].Material(name='Material-1')
mdb.models['Model-1'].materials['Material-1'].Elastic(table=((200000000000.0,
0.3), ))
mdb.models['Model-1'].CircularProfile(name='Profile-1', r=0.1)
mdb.models['Model-1'].BeamSection(name='Section-1',
integration=DURING_ANALYSIS, poissonRatio=0.0, profile='Profile-1',
material='Material-1', temperatureVar=LINEAR,
consistentMassMatrix=False)
p = mdb.models['Model-1'].parts['Part-3']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
p = mdb.models['Model-1'].parts['Part-3']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#3 ]', ), )
region = p.Set(edges=edges, name='Set-1')
p = mdb.models['Model-1'].parts['Part-3']
p.SectionAssignment(region=region, sectionName='Section-1', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
p = mdb.models['Model-1'].parts['Part-3']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#3 ]', ), )

351

ABAQUS Tutorials

region=p.Set(edges=edges, name='Set-2')
p = mdb.models['Model-1'].parts['Part-3']
p.assignBeamSectionOrientation(region=region, method=N1_COSINES, n1=(0.0, 0.0,
-1.0))
a1 = mdb.models['Model-1'].rootAssembly
a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)
mdb.models['Model-1'].StaticStep(name='Step-1', previous='Initial',
description='Q2.6')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Step-1')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON,
predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-3-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#4 ]', ), )
region = a.Set(vertices=verts1, name='Set-1')
mdb.models['Model-1'].ConcentratedForce(name='Load-1', createStepName='Step-1',
region=region, cf2=-20000.0, distributionType=UNIFORM, field='',
localCsys=None)
session.viewports['Viewport: 1'].view.setValues(nearPlane=2.20515,
farPlane=2.8545, width=2.1229, height=1.32232, viewOffsetX=0.0635753,
viewOffsetY=0.027691)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-3-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#4 ]', ), )
region = a.Set(vertices=verts1, name='Set-2')
mdb.models['Model-1'].DisplacementBC(name='BC-1', createStepName='Step-1',
region=region, u1=UNSET, u2=UNSET, ur3=0.0, amplitude=UNSET, fixed=OFF,
distributionType=UNIFORM, fieldName='', localCsys=None)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-3-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#1 ]', ), )
region = a.Set(vertices=verts1, name='Set-3')
mdb.models['Model-1'].DisplacementBC(name='BC-2', createStepName='Step-1',
region=region, u1=0.0, u2=0.0, ur3=0.0, amplitude=UNSET, fixed=OFF,
distributionType=UNIFORM, fieldName='', localCsys=None)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=ON, loads=OFF,
bcs=OFF, predefinedFields=OFF, connectors=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-3']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF, mesh=ON)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-3']
p.seedPart(size=0.02, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Part-3']
p.generateMesh()
elemType1 = mesh.ElemType(elemCode=B21, elemLibrary=STANDARD)
p = mdb.models['Model-1'].parts['Part-3']
e = p.edges
edges = e.getSequenceFromMask(mask=('[#3 ]', ), )
pickedRegions =(edges, )
p.setElementType(regions=pickedRegions, elemTypes=(elemType1, ))
a1 = mdb.models['Model-1'].rootAssembly

352

ABAQUS Tutorials

a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.Job(name='Q2_6', model='Model-1', description='Q2.6', type=ANALYSIS,
atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,
memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True,
explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, echoPrint=OFF,
modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='',
scratch='', multiprocessingMode=DEFAULT, numCpus=1, numGPUs=0)
mdb.jobs['Q2_6'].submit(consistencyChecking=OFF)

Q4.1c
Start a new model: File/New Model Database/With standard/Explicit Model
Create model
Module/Part
Click Create Part
Choose
2D/Deformable/Shell
Approximate size 1000
Continue

Click Create Lines:


Rectangular (4 lines)
Enter starting corner 0,0
Enter opposite corner 750,
500

353

ABAQUS Tutorials

Press Esc, then


Click done

Define Material/geometric properties (E = 2 105 N/mm2, = 0.25)


Module/Property
Create Material/
Mechanical/Elasticity/
Elastic
Define Youngs modulus
2e5 and Poissons ratio
0.25
OK

Create Section
Choose Homogenous
Click Solid
Continue

354

ABAQUS Tutorials

Click Plane stress/strain


thickness
Define thickness 15
OK

Assign Section to Part


Click Assign Section
Click on the rectangular
Done
Section 1
OK

Create Instances
Module Assembly
Click Create Instance
Part-1
Choose Dependent
OK

355

ABAQUS Tutorials

Create analysis step


Module Step
Click Create Step
Initial
Continue
Description Q4.1c
OK

Apply load
Module Load
Click Create Load
Mechanical/ Pressure
Continue

Applying pressure at top surface (q = 10 N/mm2)


Click top surface
Done

356

ABAQUS Tutorials

Define Magnitude 10
OK

Apply boundary conditions


Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue

Point 1, x-displacement and y-displacement are zero.


Click on point 1
Done
Define U1, U2 0
OK

357

ABAQUS Tutorials

Point 2, only y-displacement is zero.


Repeat for point 2 (only
U2 is zero)
Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue
Click on point 2
Done
Define U2 0
OK

Mesh control
Module Mesh
Click Part (Part-1)
Click Seed Part
Specify global size 0.01
OK

Mesh
Click Mesh Part
Click yes

358

ABAQUS Tutorials

Define element type


Click Assign Element
Type
Choose rectangular
Done
Choose Plane Stress
Click on Quadratic
OK

Solution
As before Module Job/ Create Job /Model-1/ Job name: Q4_1c/ Continue/ Description Q4.1c/ OK
Job Manager/Submit job to solve & Monitor to monitor solution
View results
Open results file as before: File/open Choose Q4_1c.obd OK
Plot displacement contours in y-direction
Click results (top menu bar)
Field output
Choose U for displacement
U2 for displacement in the ydirection
Click Plot Contours on
Deformed Shape
Compare maximum ydisplacement to ANSYS
results and analytical
solution?

Stress contours in x-direction


Click results (top menu bar)
Field output
Choose S for stress
S11 for stress in the xdirection
Click Plot Contours on
Deformed Shape
Compare stress in x-direction
in middle of beam to
ANSYS results and
analytical solution?

359

ABAQUS Tutorials

Python code for Q4.1c


def Q4_1c():
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
s = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
sheetSize=1000.0)
g, v, d, c = s.geometry, s.vertices, s.dimensions, s.constraints
s.setPrimaryObject(option=STANDALONE)
s.rectangle(point1=(0.0, 0.0), point2=(750.0, 500.0))
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=TWO_D_PLANAR,
type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-1']
p.BaseShell(sketch=s)
s.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON, mesh=OFF)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.models['Model-1'].Material(name='Material-1')
mdb.models['Model-1'].materials['Material-1'].Elastic(table=((200000.0, 0.25),
))
mdb.models['Model-1'].HomogeneousSolidSection(name='Section-1',
material='Material-1', thickness=15.0)
p = mdb.models['Model-1'].parts['Part-1']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#1 ]', ), )
region = p.Set(faces=faces, name='Set-1')
p = mdb.models['Model-1'].parts['Part-1']
p.SectionAssignment(region=region, sectionName='Section-1', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
optimizationTasks=OFF, geometricRestrictions=OFF, stopConditions=OFF)
a = mdb.models['Model-1'].rootAssembly
a.DatumCsysByDefault(CARTESIAN)
p = mdb.models['Model-1'].parts['Part-1']
a.Instance(name='Part-1-1', part=p, dependent=ON)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)
mdb.models['Model-1'].StaticStep(name='Step-1', previous='Initial',

360

ABAQUS Tutorials

description='Q4.1c')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Step-1')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON,
predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF)
a = mdb.models['Model-1'].rootAssembly
s1 = a.instances['Part-1-1'].edges
side1Edges1 = s1.getSequenceFromMask(mask=('[#4 ]', ), )
region = a.Surface(side1Edges=side1Edges1, name='Surf-1')
mdb.models['Model-1'].Pressure(name='Load-1', createStepName='Step-1',
region=region, distributionType=UNIFORM, field='', magnitude=10.0,
amplitude=UNSET)
session.viewports['Viewport: 1'].view.setValues(nearPlane=1675.75,
farPlane=1929.8, width=833.478, height=519.158, viewOffsetX=9.43179,
viewOffsetY=15.9545)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-1-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#1 ]', ), )
region = a.Set(vertices=verts1, name='Set-1')
mdb.models['Model-1'].DisplacementBC(name='BC-1', createStepName='Step-1',
region=region, u1=0.0, u2=0.0, ur3=UNSET, amplitude=UNSET, fixed=OFF,
distributionType=UNIFORM, fieldName='', localCsys=None)
a = mdb.models['Model-1'].rootAssembly
v1 = a.instances['Part-1-1'].vertices
verts1 = v1.getSequenceFromMask(mask=('[#2 ]', ), )
region = a.Set(vertices=verts1, name='Set-2')
mdb.models['Model-1'].DisplacementBC(name='BC-2', createStepName='Step-1',
region=region, u1=UNSET, u2=0.0, ur3=UNSET, amplitude=UNSET, fixed=OFF,
distributionType=UNIFORM, fieldName='', localCsys=None)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=ON, loads=OFF,
bcs=OFF, predefinedFields=OFF, connectors=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF, mesh=ON)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
p.seedPart(size=75.0, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Part-1']
p.generateMesh()
elemType1 = mesh.ElemType(elemCode=CPS8R, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=CPS6M, elemLibrary=STANDARD)
p = mdb.models['Model-1'].parts['Part-1']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#1 ]', ), )
pickedRegions =(faces, )
p.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2))
a1 = mdb.models['Model-1'].rootAssembly
a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.Job(name='Q4_1c', model='Model-1', description='Q4.1c', type=ANALYSIS,
atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,
memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True,
explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, echoPrint=OFF,

361

ABAQUS Tutorials

modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='',


scratch='', multiprocessingMode=DEFAULT, numCpus=1, numGPUs=0)
mdb.jobs['Q4_1c'].submit(consistencyChecking=OFF)

Q5.3
Start a new model as before: File/New Model Database/With standard/Explicit Model
Create model
Module/Part
Click Create Part
Choose
3D/Deformable/Shell/
planar
Approximate size 1
Continue

Click Create circle: Centre


and Perimeter
Enter centre point 0,0
Enter perimeter point 0,0.5
Click done

Press Esc, then


Click done

362

ABAQUS Tutorials

Define Material/geometric properties (E=200 GPa, =0.3)


Define Material properties as before: Module/Property Create Material/ Mechanical/Elasticity/ Elastic/
Define Youngs modulus 200e9 and Poissons ratio 0.3/OK
Create Section
Choose Homogenous
Click Shell
Continue

Define Shell thickness


0.02
OK

Assign Section to Part


Click Assign Section
Click on the circle
Done
Section 1
OK

363

ABAQUS Tutorials

Create Instances
Module Assembly
Click Create Instance
Part-1
Choose Dependent
OK

Create analysis step as before


Module Step/Click Create Step/Initial/ Continue/ Description Q5.3/ OK
Apply load
Module Load
Click Create Load
Mechanical/ Pressure
Continue

Applying pressure on surface (p=-2 MPa = -2106 N/m2)


Click on circle
Done
Click Brown (side of
shell)

364

ABAQUS Tutorials

Define Magnitude -2e6


OK

Apply boundary conditions


Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue

All DOFs are zeros at edges


Click on outside region
(all boundaries)
Done
Define U1, U2, U3,UR1,
UR2, UR3 0
OK

365

ABAQUS Tutorials

Mesh control
Module Mesh
Click Part (Part-1)
Click Seed Part
Specify global size 0.05
OK

Mesh
Click Mesh Part
Click yes

Define element type


Click Assign Element
Type
Click on Part-1
Choose Shell
Click on Quadratic
OK

366

ABAQUS Tutorials

View/Rotate to see the


plate in 3D

Solution
As before Module Job/ Create Job /Model-1/ Continue
Description Q5.3/ OK/ Job Manager/Submit job to solve & Monitor to monitor solution
View results
Open results file as before: File/open Choose Q5_3.obd OK
Plot displacement contours in z-direction
Click results (top menu bar)
Field output
Choose U for displacement
U3 for displacement in the zdirection
Click Plot Contours on
Deformed Shape
Compare maximum
deflection to ANSYS results
and analytical solution?

Click results (top menu bar)


Field output
Choose S for stress
S11 for stress in the rdirection
Click Plot Contours on
Deformed Shape
Compare stress in r-direction
in middle of plate to ANSYS
results and analytical
solution?

367

ABAQUS Tutorials

Python code for Q5.3


def Q5_3():
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
s1 = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
sheetSize=1000.0)
g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints
s1.setPrimaryObject(option=STANDALONE)
s1.CircleByCenterPerimeter(center=(0.0, 0.0), point1=(0.0, 0.5))
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=THREE_D,
type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-1']
p.BaseShell(sketch=s1)
s1.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON)
session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=OFF)
mdb.models['Model-1'].Material(name='Material-1')
mdb.models['Model-1'].materials['Material-1'].Elastic(table=((200000000000.0,
0.3), ))
mdb.models['Model-1'].HomogeneousShellSection(name='Section-1',
preIntegrate=OFF, material='Material-1', thicknessType=UNIFORM,
thickness=0.02, thicknessField='', idealization=NO_IDEALIZATION,
poissonDefinition=DEFAULT, thicknessModulus=None, temperature=GRADIENT,
useDensity=OFF, integrationRule=SIMPSON, numIntPts=5)
p = mdb.models['Model-1'].parts['Part-1']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#1 ]', ), )
region = p.Set(faces=faces, name='Set-1')
p = mdb.models['Model-1'].parts['Part-1']
p.SectionAssignment(region=region, sectionName='Section-1', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
a1 = mdb.models['Model-1'].rootAssembly
a1.DatumCsysByDefault(CARTESIAN)
p = mdb.models['Model-1'].parts['Part-1']
a1.Instance(name='Part-1-1', part=p, dependent=ON)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)

368

ABAQUS Tutorials

mdb.models['Model-1'].StaticStep(name='Step-1', previous='Initial',
description='Q5.3')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Step-1')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON,
predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF)
a = mdb.models['Model-1'].rootAssembly
s1 = a.instances['Part-1-1'].faces
side1Faces1 = s1.getSequenceFromMask(mask=('[#1 ]', ), )
region = a.Surface(side1Faces=side1Faces1, name='Surf-1')
mdb.models['Model-1'].Pressure(name='Load-1', createStepName='Step-1',
region=region, distributionType=UNIFORM, field='',
magnitude=-2000000.0, amplitude=UNSET)
a = mdb.models['Model-1'].rootAssembly
e1 = a.instances['Part-1-1'].edges
edges1 = e1.getSequenceFromMask(mask=('[#1 ]', ), )
region = a.Set(edges=edges1, name='Set-1')
mdb.models['Model-1'].DisplacementBC(name='BC-1', createStepName='Step-1',
region=region, u1=0.0, u2=0.0, u3=0.0, ur1=0.0, ur2=0.0, ur3=0.0,
amplitude=UNSET, fixed=OFF, distributionType=UNIFORM, fieldName='',
localCsys=None)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=ON, loads=OFF,
bcs=OFF, predefinedFields=OFF, connectors=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF, mesh=ON)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
p.seedPart(size=0.05, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Part-1']
p.generateMesh()
elemType1 = mesh.ElemType(elemCode=S8R, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=STRI65, elemLibrary=STANDARD)
p = mdb.models['Model-1'].parts['Part-1']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#1 ]', ), )
pickedRegions =(faces, )
p.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2))
session.viewports['Viewport: 1'].view.setValues(nearPlane=2.09444,
farPlane=3.56242, width=1.24121, height=0.777519, cameraPosition=(
0.211515, -2.44749, 1.40181), cameraUpVector=(0.26311, 0.496515,
0.827192), cameraTarget=(-3.56587e-008, 4.12616e-007, 2.4051e-007))
a1 = mdb.models['Model-1'].rootAssembly
a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.Job(name='Q5_3', model='Model-1', description='Q5.3', type=ANALYSIS,
atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,
memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True,
explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, echoPrint=OFF,
modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='',
scratch='', multiprocessingMode=DEFAULT, numCpus=1, numGPUs=0)
mdb.jobs['Q5_3'].submit(consistencyChecking=OFF)

369

ABAQUS Tutorials

Q5.7
Start a new model as before: File/New Model Database/With standard/Explicit Model
Create model as before: Module/Part/ Click Create Part/ Choose 3D/Deformable/Shell/ planar
Approximate size 1/ Continue
Click Lines: Rectangular (4
Lines)
Enter starting corner point
0,0
Enter opposite corner 0.5,1
Click done

Press Esc, then


Click done

Define Material/geometric properties (E=200 GPa, =0.3)


Define Material properties as before: Module/Property Create Material/ Mechanical/Elasticity/ Elastic/
Define Youngs modulus 200e9 and Poissons ratio 0.3/OK
Create section as before: Create Section/ Choose Homogenous/ Click Shell/ Continue
Define Shell thickness 0.02/ OK

370

ABAQUS Tutorials

Assign Section to Part


Click Assign Section
Click on the rectangular
Done
Section 1
OK

Create Instances as before: Module Assembly/Click Create Instance Part-1/Choose Dependent/ OK


Create analysis step as before: Module Step/Click Create Step/Initial/ Continue/ Description Q5.7/ OK
Apply load
Module Load
Click Create Load
Mechanical/ Pressure
Continue

Applying pressure on surface (q=-0.7 MPa = -0.7106 N/m2)


Click on rectangular
Done
Click Brown (side of
shell)

371

ABAQUS Tutorials

Define Magnitude -0.7e6


OK

Apply boundary conditions


Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue

Only displacements DOFs are zeros at edges


Click on the 4 lines at
edges (all boundaries, use
shift button to click more
than one line)
Done
Define U1, U2, U3 0
OK

372

ABAQUS Tutorials

Mesh control
Module Mesh
Click Part (Part-1)
Click Seed Part
Specify global size 0.1
OK

Mesh
Click Mesh Part
Click yes

Define element type as before: Click Assign Element Type/Choose Shell/Click on Quadratic/
OK
View/Rotate to see the
plate in 3D

373

ABAQUS Tutorials

Solution
As before Module Job/ Create Job: /Name Q5_7 /Model-1/ Continue
Description Q5.7/ OK/ Job Manager/Submit job to solve & Monitor to monitor solution
View results
Open results file as before: File/open Choose Q5_7.obd OK
Plot displacement contours
Click results (top menu bar)
Field output
Choose U for displacement
U3 for displacement in the zdirection
Click Plot Contours on
Deformed Shape
Compare maximum
deflection to ANSYS results
and analytical solution?

Plot stress contours in x and y- directions (S11 & S22) and compare the results to ANSYS results and
analytical solution?
Python code Q5.7
def Q5_7():
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF)
session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=ON)
session.viewports['Viewport: 1'].setValues(displayedObject=None)
s1 = mdb.models['Model-1'].ConstrainedSketch(name='__profile__',
sheetSize=200.0)
g, v, d, c = s1.geometry, s1.vertices, s1.dimensions, s1.constraints
s1.setPrimaryObject(option=STANDALONE)
s1.rectangle(point1=(0.0, 0.0), point2=(0.5, 1.0))
p = mdb.models['Model-1'].Part(name='Part-1', dimensionality=THREE_D,

374

ABAQUS Tutorials

type=DEFORMABLE_BODY)
p = mdb.models['Model-1'].parts['Part-1']
p.BaseShell(sketch=s1)
s1.unsetPrimaryObject()
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
del mdb.models['Model-1'].sketches['__profile__']
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=ON,
engineeringFeatures=ON)
session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
referenceRepresentation=OFF)
mdb.models['Model-1'].Material(name='Material-1')
mdb.models['Model-1'].materials['Material-1'].Elastic(table=((200000000000.0,
0.3), ))
mdb.models['Model-1'].HomogeneousShellSection(name='Section-1',
preIntegrate=OFF, material='Material-1', thicknessType=UNIFORM,
thickness=0.02, thicknessField='', idealization=NO_IDEALIZATION,
poissonDefinition=DEFAULT, thicknessModulus=None, temperature=GRADIENT,
useDensity=OFF, integrationRule=SIMPSON, numIntPts=5)
p = mdb.models['Model-1'].parts['Part-1']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#1 ]', ), )
region = p.Set(faces=faces, name='Set-1')
p = mdb.models['Model-1'].parts['Part-1']
p.SectionAssignment(region=region, sectionName='Section-1', offset=0.0,
offsetType=MIDDLE_SURFACE, offsetField='',
thicknessAssignment=FROM_SECTION)
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=OFF, bcs=OFF,
predefinedFields=OFF, connectors=OFF)
a1 = mdb.models['Model-1'].rootAssembly
a1.DatumCsysByDefault(CARTESIAN)
p = mdb.models['Model-1'].parts['Part-1']
a1.Instance(name='Part-1-1', part=p, dependent=ON)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(
adaptiveMeshConstraints=ON)
mdb.models['Model-1'].StaticStep(name='Step-1', previous='Initial',
description='Q5.7')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(step='Step-1')
session.viewports['Viewport: 1'].assemblyDisplay.setValues(loads=ON, bcs=ON,
predefinedFields=ON, connectors=ON, adaptiveMeshConstraints=OFF)
a = mdb.models['Model-1'].rootAssembly
s1 = a.instances['Part-1-1'].faces
side1Faces1 = s1.getSequenceFromMask(mask=('[#1 ]', ), )
region = a.Surface(side1Faces=side1Faces1, name='Surf-1')
mdb.models['Model-1'].Pressure(name='Load-1', createStepName='Step-1',
region=region, distributionType=UNIFORM, field='', magnitude=-700000.0,
amplitude=UNSET)
a = mdb.models['Model-1'].rootAssembly
e1 = a.instances['Part-1-1'].edges
edges1 = e1.getSequenceFromMask(mask=('[#f ]', ), )
region = a.Set(edges=edges1, name='Set-1')
mdb.models['Model-1'].DisplacementBC(name='BC-1', createStepName='Step-1',
region=region, u1=0.0, u2=0.0, u3=0.0, ur1=UNSET, ur2=UNSET, ur3=UNSET,
amplitude=UNSET, fixed=OFF, distributionType=UNIFORM, fieldName='',
localCsys=None)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=ON, loads=OFF,
bcs=OFF, predefinedFields=OFF, connectors=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(

375

ABAQUS Tutorials

meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
session.viewports['Viewport: 1'].setValues(displayedObject=p)
session.viewports['Viewport: 1'].partDisplay.setValues(sectionAssignments=OFF,
engineeringFeatures=OFF, mesh=ON)
session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
meshTechnique=ON)
p = mdb.models['Model-1'].parts['Part-1']
p.seedPart(size=0.1, deviationFactor=0.1, minSizeFactor=0.1)
p = mdb.models['Model-1'].parts['Part-1']
p.generateMesh()
elemType1 = mesh.ElemType(elemCode=S8R, elemLibrary=STANDARD)
elemType2 = mesh.ElemType(elemCode=STRI65, elemLibrary=STANDARD)
p = mdb.models['Model-1'].parts['Part-1']
f = p.faces
faces = f.getSequenceFromMask(mask=('[#1 ]', ), )
pickedRegions =(faces, )
p.setElementType(regions=pickedRegions, elemTypes=(elemType1, elemType2))
a1 = mdb.models['Model-1'].rootAssembly
a1.regenerate()
a = mdb.models['Model-1'].rootAssembly
session.viewports['Viewport: 1'].setValues(displayedObject=a)
session.viewports['Viewport: 1'].assemblyDisplay.setValues(mesh=OFF)
session.viewports['Viewport: 1'].assemblyDisplay.meshOptions.setValues(
meshTechnique=OFF)
mdb.Job(name='Q5_7', model='Model-1', description='Q5.7', type=ANALYSIS,
atTime=None, waitMinutes=0, waitHours=0, queue=None, memory=90,
memoryUnits=PERCENTAGE, getMemoryFromAnalysis=True,
explicitPrecision=SINGLE, nodalOutputPrecision=SINGLE, echoPrint=OFF,
modelPrint=OFF, contactPrint=OFF, historyPrint=OFF, userSubroutine='',
scratch='', multiprocessingMode=DEFAULT, numCpus=1, numGPUs=0)
mdb.jobs['Q5_7'].submit(consistencyChecking=OFF)

ABAQUS CAD Exercise


Importing the IGES file
File/ Import/ Part

376

ABAQUS Tutorials

File Name: SEbracket.igs


OK

File Name: SEbracket.igs


OK/Dismiss

View/ Pan or Rotate

377

ABAQUS Tutorials

Define Material/geometric properties


Material property (Elastic modulus = 70 GPa = 70 000 N/mm2 and Poissons ratio =0.3)
Module/Property
Create Material/
Mechanical/Elasticity/
Elastic
Define Youngs modulus
70e3 and Poissons ratio
0.3
OK

Create section
Create Section
Choose Homogenous
Solid
Continue

Material-1
OK

378

ABAQUS Tutorials

Assign section to part


Click Assign Section
Click on the bracket
Done
Section 1
OK

Create Instances
Module/Assembly
Click Create Instance
SEbracket
Choose Dependent
OK

Create analysis step


Module Step
Click Create Step
Initial
Continue

379

ABAQUS Tutorials

Description SEbracket
OK

Apply load
Module Load
Click Create Load
Mechanical/ concentrated
force
Continue

Apply a force equivalent to 2 N at bottom hole load


Click on the two points at
bottom
Done

380

ABAQUS Tutorials

Define CF3 -1
OK

Apply boundary conditions


Click Create Boundary
Conditions
Mechanical/
Displacement/Rotation
Continue

Select the surface areas of


the two holes at top
Done

381

ABAQUS Tutorials

Define U1, U2, U3 0


OK

Mesh control
Module Mesh
Click Part (SEbracket)
Click Seed Part
Specify global size 5
OK

Mesh Control
Assign Mesh Control
Chose Tet
Ok

382

ABAQUS Tutorials

Mesh
Click Mesh Part
Click yes

Solution:/ As before Module Job/ Create Job /Name: SEbracket /Model-1/ Continue
Description SEbracket/ OK / Job Manager/Submit job to solve & Monitor to monitor solution
View results
Open results file as before: File/open Choose SEbracket.obd OK
Plot von-Mises stress
Click results
Field output
Choose S / Mises
Plot contours on
Compare results to to
ANSYS results?
Plot other displacement
and stress components and
compare to ANSYS?

383

ABAQUS Tutorials

ABAQUS/ANSYS comparisons
Q2.5
Horizontal displacement at B, vertical displacement at B, maximum bending moment and
maximum/minimum stresses
Analytical solution

ANSYS

ABAQUS

x (mm)
y (mm)
M max (N.m)

max/ min (N/m2)


Q2.6
Mo at load and Mmax at fixation
Analytical solution

ANSYS

ABAQUS

M o (N.m)
M max (N.m)

Q4.1c: Height = 500 mm deflection and stress in the middle of the beam
Analytical solution

ANSYS

ABAQUS

v (mm)

x (N/mm2)
Q4.1d: Height = 50 mm deflection and stress in the middle of the beam
Analytical solution

ANSYS

ABAQUS

v (mm)

x (N/mm2)
Q5.3
Deflection and stresses in the middle of the plate
Analytical solution

ANSYS

ABAQUS

(mm)
r (N/m2)

t (N/m2)

384

ABAQUS Tutorials

Q5.7
Maximum deflection and maximum stresses
Analytical solution
(mm)

ANSYS

ABAQUS

x max (N/m2)
y max (N/m2)

CAD Exercise
Maximum displacement in z direction (Uz) and maximum von-Mises stress ( v )
ANSYS

ABAQUS

Uz (mm)

v (N/mm2)

385

Das könnte Ihnen auch gefallen