I have built a 2D frame connected to a quad element within the frame bay using twoNodeLink elements with elasticPPGap material. When I run it it fails and I get the following errors:
WARNING BandGenLinLapackSolver::solve() -LAPACK routine returned 5
WARNING NewtonRaphson::solveCurrentStep() -the LinearSysOfEqn failed in solve()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain at load factor 2963.85
analyze failed, return: -3 error flag
I've checked it and I think I have all the DOFs constrained. Here is a simplified 1 bay system. Can you take a look at my code?
wipe;
#-----------------------------
# Define the model
# ----------------------------
model BasicBuilder -ndm 2 -ndf 3
node 101 0 0;
node 102 0 10
node 103 10 10
node 104 10 0
mass 102 3119.266 0 0
mass 103 3119.266 0 0
fix 101 1 1 1
fix 104 0 1 0
geomTransf Linear 1
set E 200000000000
set Fy 344700000
set a 0.01
set A [expr 11000/1.e+6];
set Iz [expr 199000000/1.e+12];
set Zz [expr 1420000/1.e+9];
set Mp [expr $Fy*$Zz]
uniaxialMaterial Steel01 101 $Mp [expr $E*$Iz] $a
uniaxialMaterial Elastic 102 [expr $E*$A]
section Aggregator 1 102 P 101 Mz
element forceBeamColumn 101 101 102 3 1 1
element forceBeamColumn 102 103 104 3 1 1
element forceBeamColumn 103 102 103 3 1 1
pattern Plain 1 Linear {
load 103 1.0 0.0 0.0
}
node 302 0 9
node 303 9 9
model BasicBuilder -ndm 2 -ndf 2
node 201 0 0
node 202 0 9
node 203 9 9
node 204 9 0
mass 202 3119.266 0.0
mass 203 3119.266 0.0
equalDOF 202 302 1 2
equalDOF 203 303 1 2
fix 201 1 1
fix 202 1 1
nDMaterial ElasticIsotropic 1 12000.e+3 0.3 410
element quad 200 201 204 203 202 0.1 "PlaneStrain" 1
#uniaxialMaterial Elastic 2 12000.e+3
uniaxialMaterial ENT 2 12000.e+3
#uniaxialMaterial ElasticPPGap 2 12000.e+3 -30.e+3 0.0 0 "damage"
element twoNodeLink 303 103 303 -mat 2 2 -dir 1 2
element twoNodeLink 302 102 302 -mat 2 2 -dir 1 2
puts [eigen 1]
#done
# define the recorder
#---------------------
recorder Node -file Data/Node3.out -time -node 103 104 203 204 303 304 -dof 1 disp
recorder Node -file Data/Node3R.out -time -node 101 102 201 202 -dof 1 reaction
#*********************************************************
#ANALYSIS
#*********************************************************
set Dmax 1
set Dincr 0.005
set NSteps [expr int($Dmax/$Dincr)]
constraints Plain
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-6 100 0;
algorithm Newton
#Displacement controlled integrator
# testNode testDOF dispIncrement
integrator DisplacementControl 103 1 $Dincr
analysis Static
set ok [analyze $NSteps];
wipe;
Help - Convergence with ElasticPPGap material
Moderators: silvia, selimgunay, Moderators
Re: Help - Convergence with ElasticPPGap material
I managed to fix part of the problem, but it is still not converging.
I changed the nodes 303 and 302 to match the location of 103 and 102 and gave them equalDOFs in the x and y, and then I changed node 204 to be fixed instead of 202. When I run it not with a 0.0 initial gap, it runs, but when I give it an initial gap (say -0.05) it no longer converges when the displacement meets that gap. The error messages I'm getting are:
WARNING: CTestNodrmDisp::test() - failed to converge after: 100 iterations
NewtnRaphson::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 13 with domain at load factor 1442
Does anyone know what I'm doing wrong.
Thanks,
I changed the nodes 303 and 302 to match the location of 103 and 102 and gave them equalDOFs in the x and y, and then I changed node 204 to be fixed instead of 202. When I run it not with a 0.0 initial gap, it runs, but when I give it an initial gap (say -0.05) it no longer converges when the displacement meets that gap. The error messages I'm getting are:
WARNING: CTestNodrmDisp::test() - failed to converge after: 100 iterations
NewtnRaphson::solveCurrentStep() -the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 13 with domain at load factor 1442
Does anyone know what I'm doing wrong.
Thanks,
-Carla