I am trying to do something very simple...run a SDOF type system thru an EQ and record the displacement and forces. The recorder for the element forces comes up with a long column of zeros? Why? Whats a better approach to this simple problem that works?
Thanks!
Matthew
(note, the code calls la21 ground motion)
code:
# Start of model generation
model BasicBuilder -ndm 2 -ndf 2
node 1 0.0 0.0
node 2 10.0 0.0
fix 1 1 1
fix 2 0 1
uniaxialMaterial Steel01 1 60.0 29000.0 0.1; #units are N/mm^2
section Uniaxial 1 1 P ; # $sectag $mat $string
#geomTransf Linear 1
element truss 1 1 2 1;
#Define mass
mass 2 1000.0 0.0
#Define load pattern (Fixed End Forces)
pattern Plain 1 Linear {
load 2 1.0 0.0 0.0
}
# ------------------------------
# Start of analysis generation
# ------------------------------
# Create the system of equation, a sparse solver with partial pivoting
system BandGeneral
# Create the constraint handler, the transformation method
constraints Transformation
# Create the DOF numberer, the reverse Cuthill-McKee algorithm
numberer RCM
# Create the convergence test, the norm of the residual with a tolerance of
# 1e-12 and a max number of iterations of 10
test NormDispIncr 1.0e-12 10 3
# Create the solution algorithm, a Newton-Raphson algorithm
algorithm Newton
# Create the integration scheme, the LoadControl scheme using steps of 0.1
integrator LoadControl 0.1
# Create the analysis object
analysis Static
# perform the gravity load analysis, requires 10 steps to reach the load level
analyze 10
# Print out the state of nodes 3 and 4
print node 2
# Print out the state of element 1
print ele 2
puts "static analysis complete"
puts " "
puts "begin dynamic analysis"
puts " "
# --------------------------
# Nonlinear dynamic analysis
# --------------------------
set EQ la_21.acc ; # accelerogram input file
set scale 1.000 ; # scaling factor
set dtacc 0.02 ; # acquisition time step (from the record)
set npoint 4500 ; # number of points of the record
set nn 20 ; # number of subdivisions
set deltat [expr $dtacc/$nn] ; # integration time step
set a0 0.884098 ; # parameter a0 for Rayleigh damping
set a1 0.002254 ; # parameter a1 for Rayleigh damping
set tCurrent [getTime] ; # get current time
set tFinal [expr $npoint*$dtacc] ; # compute final time
set g [expr 9810.0*$scale] ; # compute acceleration (mm/sec^2)
set Series "Path -filePath $EQ -dt $dtacc -factor $g"
# $tag $dir $accel series
pattern UniformExcitation 2 1 -accel $Series
rayleigh $a0 0.0 0.0 $a1
wipeAnalysis
recorder Element -file ele.out -ele all force
recorder Node disp.out disp -time -node 2 -dof 1
integrator Newmark 0.5 0.25
test NormDispIncr 1.0e-5 20 0
algorithm Newton
constraints Plain
numberer RCM
system UmfPack
analysis Transient
# Perform an eigenvalue analysis before the transient analysis
puts " "
puts " Eigenvalues at the beginning of transient analysis: [eigen 2]"
set ok 0
# Perform the transient analysis
while {$ok == 0 && $tCurrent < $tFinal} {
set ok [analyze 1 $deltat]
if {$ok != 0} {
puts "***** regular newton failed .. lets try an initail stiffness for this step"
test NormDispIncr 1.0e-3 500 0
#algorithm ModifiedNewton -initial
set ok [analyze 1 [expr 0.1*$deltat]]
if {$ok == 0} {puts "***** Newton with Initial Tangent worked .. back to regular newton"}
test NormDispIncr 1.0e-5 20 0
algorithm Newton
}
if {$ok != 0} {
puts "***** Trying NewtonWithLineSearch .."
algorithm NewtonLineSearch .8
set ok [analyze 1 $deltat]
if {$ok == 0} {puts "***** NewtonWithLineSearch worked .. back to regular newton"}
algorithm Newton
}
if {$ok != 0} {
puts "***** Trying Broyden .."
algorithm Broyden 8
set ok [analyze 1 $deltat]
if {$ok == 0} {puts "***** Broyden worked .. back to regular newton"}
algorithm Newton
}
set tCurrent [getTime]
puts " $tCurrent"
}
# Print a message to indicate if analysis succesfull or not
if {$ok == 0} {
puts " "
puts " Transient analysis completed SUCCESSFULLY";
} else {
puts " "
puts " Transient analysis completed FAILED";
}
# Perform an eigenvalue analysis
puts " "
puts " Eigenvalues at the end of transient analysis: [eigen 2]"
puts " "
truss force element recorder
Moderators: silvia, selimgunay, Moderators