Hi Dr. Silvia
I am modeling a single bar with SMA material. I want to pull this bar in order to check out if its uniaxial material work properly. but I cannot handle this convergence error:
WARNING - ForceBeamColumn2d::update - failed to get compatible element forces &
deformations for element: 1(dW: << -1.#IND)
Domain::update - domain failed in update
LoadControl::update - model failed to update for new dU
WARNING NewtonRaphson::solveCurrentStep() -the Integrator failed in update()
StaticAnalysis::analyze() - the Algorithm failed at iteration: 0 with domain at
load factor 0.1
WARNING - ForceBeamColumn2d::update - failed to get compatible element forces &
deformations for element: 1(dW: << -1.#IND)
Domain::update - domain failed in update
OpenSees > analyze failed, returned: -3 error flag
here is the model:
#Units are in kg and cm for force and length
wipe;
model BasicBuilder -ndm 2 -ndf 3;
file mkdir data;
set LofSMA 100; # Length of SMA bar
node 1 0 0;
node 2 0 $LofSMA;
fix 1 1 1 1;
fix 2 0 0 0;
set Load 4000; #The Load magnitude
#Shape Memory Alloy
set E 275790;
set eps_L 0.035;
set sig_AM_s 3750;
set sig_AM_f 4300;
set sig_MA_s 2080;
set sig_MA_f 1380;
set SMAmatTag 1;
uniaxialMaterial SMA $SMAmatTag $E $eps_L $sig_AM_s $sig_AM_f $sig_MA_s $sig_MA_f;
set SMAsecTag 1;
section Uniaxial $SMAsecTag $SMAmatTag P
geomTransf Linear 1;
#element connectivity:
set numIntgrPts 5; # number of integration points for force-based element
element nonlinearBeamColumn 1 1 2 $numIntgrPts $SMAsecTag 1;
# Define RECORDERS -------------------------------------------------------------
recorder Node -file Data/DFree.out -time -node 2 -dof 1 2 3 disp;
recorder Element -file Data/ForceColSec1.out -time -ele 1 section $SMAsecTag force; # Column section forces, axial and moment, node i
recorder Element -file Data/DefoColSec1.out -time -ele 1 section $SMAsecTag deformation; # section deformations, axial and curvature, node i
# define GRAVITY -------------------------------------------------------------
pattern Plain 1 Linear {
load 2 0. $Load 0.; # node#, FX FY MZ -- superstructure-weight
}
constraints Plain;
numberer Plain;
system BandGeneral;
test NormDispIncr 1.0e-8 6 ;
algorithm Newton;
integrator LoadControl 0.1;
analysis Static
analyze 10;
loadConst -time 0.0;
set Nsteps [expr int($Dmax/$Dincr)]; # number of pushover analysis steps
set ok [analyze $Nsteps]; # this will return zero if no convergence problems were encountered
if {$ok != 0} {
# if analysis fails, we try some other stuff, performance is slower inside this loop
set ok 0;
set controlDisp 0.0;
set D0 0.0; # analysis starts from zero
set Dstep [expr ($controlDisp-$D0)/($Dmax-$D0)]
while {$Dstep < 1.0 && $ok == 0} {
set controlDisp [nodeDisp $IDctrlNode $IDctrlDOF ]
set Dstep [expr ($controlDisp-$D0)/($Dmax-$D0)]
set ok [analyze 1 ]
if {$ok != 0} {
puts "Trying Newton with Initial Tangent .."
test NormDispIncr $Tol 2000 0
algorithm Newton -initial
set ok [analyze 1 ]
test $TestType $Tol $maxNumIter 0
algorithm $algorithmType
}
if {$ok != 0} {
puts "Trying Broyden .."
algorithm Broyden 8
set ok [analyze 1 ]
algorithm $algorithmType
}
if {$ok != 0} {
puts "Trying NewtonWithLineSearch .."
algorithm NewtonLineSearch .8
set ok [analyze 1 ]
algorithm $algorithmType
}
}; # end while loop
}; # end if ok !0
Would you please help me?
Convergence problem in a single tensional rod!
Moderators: silvia, selimgunay, Moderators
Convergence problem in a single tensional rod!
Alireza Farhidzadeh
Thank you so much Dr. McKenna for reply. Do you have a suggestion for substituting a similar material instead of SMA to simulate its uniaxial behavior? If it is impossible, is there any example to help me how to implement an arbitrary uniaxialMaterial? It is indeed vital for my thesis to simulate SMA behavior!
Thanks again in advance...
Thanks again in advance...
Alireza Farhidzadeh