Basic truss (modified as cantilever) - not working

Forum for OpenSees users to post questions, comments, etc. on the use of the OpenSees interpreter, OpenSees.exe

Moderators: silvia, selimgunay, Moderators

Post Reply
clpgeo
Posts: 4
Joined: Fri Feb 10, 2023 11:53 am

Basic truss (modified as cantilever) - not working

Post by clpgeo » Fri Feb 10, 2023 2:13 pm

Hello,

I wanted to try to model a simple vertical cantilever beam with horizontal load on top (static load) and I have taken (maybe erroneously) one of the examples of the wiki (Basic truss example) and modified it in order to have my single truss. OS gives error, so I tried using UmfPack, but still not working with a different error.. can someone please have a look? I'm probably doing myself some mistake..

# Remove existing model
wipe

# Create ModelBuilder (with two-dimensions and 2 DOF/node)
model BasicBuilder -ndm 2 -ndf 2

# Create nodes
# ------------
# Create nodes & add to Domain - command: node nodeId xCrd yCrd
node 1 0.0 0.0
node 2 10.0 0.0

# Set the boundary conditions - command: fix nodeID xResrnt? yRestrnt?
fix 1 1 1

# Define materials for truss elements
# -----------------------------------
# Create Elastic material prototype - command: uniaxialMaterial Elastic matID E
uniaxialMaterial Elastic 1 3000

# Create truss elements - command: element truss trussID node1 node2 A(cross-sectional area of element) matID
element Truss 1 1 2 0.5 1
# note: When constructed with a UniaxialMaterial object, the truss element considers strain-rate effects, and is thus suitable for use as a damping element.

# Define loads
# ------------
# create a Linear TimeSeries with a tag of 1 (linear factor c not specified, thus default to 1)
timeSeries Linear 1

# Create a Plain load pattern associated with the TimeSeries,
# command: pattern Plain $patternTag $timeSeriesTag { load commands }

pattern Plain 1 1 {
# Create the nodal load - command: load nodeID xForce yForce(negative if downwords)
load 2 100 0
}

# Create the system of equation
system UmfPack
# BandSPD

# Create the DOF numberer, the reverse Cuthill-McKee algorithm
numberer RCM

# Create the constraint handler, a Plain handler is used as homo constraints
constraints Plain

# Create the integration scheme, the LoadControl scheme using steps of 1.0
integrator LoadControl 1.0

# Create the solution algorithm, a Linear algorithm is created
algorithm Linear

# create the analysis object
analysis Static

# ---- OUTPUT SPECIFICATION ----
# create a Recorder object for the nodal displacements at node 2
recorder Node -file SingleTopNodeDispl.out -time -node 2 -dof 1 2 disp

# create a Recorder for element forces, one for global system and the other for local system
recorder Element -file SingleEleForcesGlobal.out -time -ele 1 2 3 forces
recorder Element -file SingleEleForcesLocal.out -time -ele 1 2 3 basicForces

# ----- Perform Analysis -----
analyze 1

# ------ Output to screen -----
puts "node 1 displacement: [nodeDisp 1]"
print node 4
print element

puts "end of analysis"
wipe

mhscott
Posts: 874
Joined: Tue Jul 06, 2004 3:38 pm
Location: Corvallis, Oregon USA
Contact:

Re: Basic truss (modified as cantilever) - not working

Post by mhscott » Sat Feb 11, 2023 4:34 am

You have a mechanism. Add a roller condition at node 2

Post Reply