Errors using zero length element

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

Moderators: silvia, selimgunay, Moderators

Post Reply
diarmaidmeagher
Posts: 5
Joined: Sun Oct 18, 2020 1:39 pm

Errors using zero length element

Post by diarmaidmeagher » Mon May 31, 2021 6:29 am

Hi everyone,

I have a model of a simply supported beam and I am trying to model a human bouncing on the middle of the beam in OpenSees. In order to apply the human's damping and spring stiffness equivalent values, I have modelled uniaxialMaterial ViscousDamper, and a zerolength element at the middle node (where the human is standing). However the following errors are being displayed when I run the model in OpenSees.

WARNING BandGenLinLapackSolver::solve() -factorization failed, matrix singular U(i,i) = 0, i= 1
WARNING NewtonRaphson::solveCurrentStep() -the LinearSysOfEqn failed in solve()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.02
OpenSees > analyze failed, returned: -3 error flag
-3

How do get rid of such errors?

My model script is shown below:

# simply supported beam model
# All units are in Newtons, metres and seconds

# SET UP ----------------------------------------------------------------------------
wipe; # clear opensees model
model basic -ndm 2 -ndf 3; # 2 dimensions, 3 dof per node
file mkdir Data; # create data directory

# define GEOMETRY -------------------------------------------------------------
# nodal coordinates:
node 1 0 0; # node#, X Y
node 2 5 0
node 3 10 0
node 4 5 0

# Boundary conditions
fix 1 1 1 0 0 0 0; # pin suuport
fix 3 1 1 0 0 0 0

# nodal masses:
mass 1 1e-9 107.5 1e-9
mass 2 1e-9 215 1e-9; # node#, Mx My Mz,beam mass = 43kg/m
mass 3 1e-9 107.5 1e-9

# Define ELEMENTS -------------------------------------------------------------
# define geometric transformation: performs a linear geometric transformation of beam stiffness and resisting force from the basic system to the global-coordinate system
geomTransf Linear 1; # associate a tag to transformation

# Define Materials
uniaxialMaterial ViscousDamper 1 16707 0.25 0; # uniaxialMaterial ViscousDamper $matTag $K $Cd $alpha

# connectivity:
element elasticBeamColumn 1 1 2 0.00548 200000000000 0.00000677 1; # element elasticBeamColumn $eleTag $iNode $jNode $A $E $Iz $transfTag
element elasticBeamColumn 2 2 3 0.00548 200000000000 0.00000677 1
element zeroLength 3 2 4 -mat 1 -dir 2; # element zeroLength $eleTag $iNode $jNode -mat $matTag1 $matTag2 ... -dir $dir1 $dir2

# Define recorder
recorder Node -file Data/Node2Disp.txt -time -node 2 -dof 2 disp; #displacement at node 2 (middle node)
recorder Node -file Data/Node2Accel.txt -time -node 2 -dof 2 accel; #acceleration at node 2 (middle node)

set freq [expr [eigen -fullGenLapack 1]**0.5]
set freq1 [expr $freq/(2*3.1415926)]
puts "freq = [format "%.1f" ${freq}] rad/s or [format "%.1f" ${freq1}] Hz"
set T1 [expr 2*3.1415926/$freq]
puts "T1 = [format "%.1f" ${T1}] s"
set dampRatio 0.01
rayleigh 0. 0. 0. [expr 2*$dampRatio/$freq]

# Add loading
timeSeries Path 1 -dt 0.01 -filePath Pt.acc
pattern Plain 2 1 {
load 4 2 -1 0
}

# Create the transient analysis
test EnergyIncr 1.0e-12 10 0
algorithm Newton
numberer RCM
constraints Plain
integrator Newmark 0.5 0.25
system BandGeneral
analysis Transient

# Perform the transient analysis (50 sec)
analyze 2000 0.02

Post Reply