Can anyone help to solve the following problem?
I use the fiber section for nonlinearBeamColumn element.
I tried to use dispBeamColumn but it was not still successful.
Many thanks,
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 105(dW: << 2.47808e-010, dW0: 1.13844e-005)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING ModifiedNewton::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.025
OpenSees > analyze failed, returned: -3 error flag
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 9.93081e+022 (max: 1e-008) Norm deltaX: 689390, Norm deltaR: 2.99854e+017
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.025
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 108(dW: << 5.3337e-011, dW0: 2.00507e-005)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING NewtonRaphson::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.025
OpenSees > analyze failed, returned: -3 error flag
Trying Broyden ..
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 312616 (max: 1e-008) Norm deltaX: 0.00502394, Norm deltaR: 1.88878e+010
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 2240.65 (max: 1e-008) Norm deltaX: 3.43142e-005, Norm deltaR: 1.70875e+008
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.035
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 107(dW: << 0.0259255, dW0: 1.4141e+014)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING NewtonRaphson::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.035
OpenSees > analyze failed, returned: -3 error flag
Trying Broyden ..
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 81.6175 (max: 1e-008) Norm deltaX: 2.89446e-005, Norm deltaR: 1.03131e+008
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 172891 (max: 1e-008) Norm deltaX: 0.000437541, Norm deltaR: 1.47483e+009
ModifiedNewton::solveCurrentStep() -the ConvergenceTest object failed in test()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.04
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 102(dW: << 3.50125, dW0: 258972)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 103(dW: << 14.1645, dW0: 209770)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 105(dW: << 0.12559, dW0: 182318)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 106(dW: << 3.35861, dW0: 7.06986e+013)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 107(dW: << 0.101514, dW0: 1.41397e+014)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 108(dW: << 0.797398, dW0: 2.24955e+014)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 110(dW: << 0.033461, dW0: 24432.5)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING NewtonRaphson::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.04
OpenSees > analyze failed, returned: -3 error flag
Trying Broyden ..
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 7.54637e+008 (max: 1e-008) Norm deltaX: 0.0160504, Norm deltaR: 7.59682e+011
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 6.02261e+007 (max: 1e-008) Norm deltaX: 0.311128, Norm deltaR: 4.10926e+011
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 103(dW: << 2.48792e+012, dW0: 5.63353e+010)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING ModifiedNewton::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.05
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 102(dW: << 10.5718, dW0: 6.86239)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING NewtonRaphson::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.05
OpenSees > analyze failed, returned: -3 error flag
Trying Broyden ..
WARNING: CTestEnergyIncr::test() - failed to converge
after: 10 iterations
current EnergyIncr: 5564.61 (max: 1e-008) Norm deltaX: 0.000133683, Norm deltaR: 2.12129e+008
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 106(dW: << 9.11157e+010, dW0: 3.09298e+010)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING ModifiedNewton::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.055
OpenSees > analyze failed, returned: -3 error flag
Trying Newton with Initial Tangent ..
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 101(dW: << 3.72138e+012, dW0: 1.09895e+011)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 103(dW: << 7.00875e+010, dW0: 5.71316e+011)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 106(dW: << 1.42302e+011, dW0: 4.84203e+008)
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 107(dW: << 1.20685e+013, dW0: 9.31336e+010)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING NewtonRaphson::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.055
OpenSees > analyze failed, returned: -3 error flag
Trying Broyden ..
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 106(dW: << 9.11157e+010, dW0: 3.09298e+010)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING Broyden::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.055
OpenSees > analyze failed, returned: -3 error flag
Trying NewtonWithLineSearch ..
WARNING: CTestEnergyIncr::setEquiSolnAlgo - no SOE
WARNING - ForceBeamColumn3d::update - failed to get compatible element forces & deformations for element: 106(dW: << 9.11157e+010, dW0: 3.09298e+010)
Domain::update - domain failed in update
Newmark::update() - failed to update the domain
WARNING NewtonLineSearch::solveCurrentStep() -the Integrator failed in update()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.055
OpenSees > analyze failed, returned: -3 error flag
Ground Motion Done. End Time: 0.050000
domain error: argument not in valid range
Problem with converge when using nonlinearBC element
Moderators: silvia, selimgunay, Moderators
Problem with converge when using nonlinearBC element
Last edited by tuanrlc on Sat Aug 05, 2017 10:48 pm, edited 2 times in total.
-
- Posts: 917
- Joined: Mon Sep 09, 2013 8:50 pm
- Location: University of California, Berkeley
Re: Problem with converge when using nonlinearBC element
Please try adaptive solution strategies. An example is posted below. However, you start to experience nonconvergence at the very beginning of the analysis, so you might either have some issues with the model or accidentally you might be inputting a very large motion because of some unit issues. Did you check the periods to see if they are reasonable?
set Tol 1.0e-8;
set maxNumIter 100;
set printFlag 0;
set NewmarkGamma 0.5;
set NewmarkBeta 0.25;
set TestType EnergyIncr;
set algorithmType NewtonLineSearch;
for {set ik 1} {$ik <= $Nsteps} {incr ik 1} {
puts "$ik"
# puts "$ik"
set ok [analyze 1 $dtForAnalysis]
# Convergence
if {$ok != 0} {
puts "Trying Bisection ...";
algorithm NewtonLineSearch <-type Bisection>;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying Secant ...";
algorithm NewtonLineSearch <-type Secant>;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying RegulaFalsi ...";
algorithm NewtonLineSearch <-type RegulaFalsi>;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying KrylovNewton ...";
algorithm KrylovNewton;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying Newton ...";
algorithm Newton;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying BFGS ...";
algorithm BFGS;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying Broyden ...";
algorithm Broyden;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying HHT 0.9 ...";
integrator HHT 0.9;
set ok [analyze 1 $dtForAnalysis]
# integrator TRBDF2;
integrator Newmark $NewmarkGamma $NewmarkBeta;
};
if {$ok != 0} {
puts "Trying OS ...";
integrator AlphaOS 1.00;
algorithm Linear;
set ok [analyze 1 $dtForAnalysis]
# integrator TRBDF2;
integrator Newmark $NewmarkGamma $NewmarkBeta;
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying OSG ...";
integrator AlphaOSGeneralized 1.00;
algorithm Linear;
set ok [analyze 1 $dtForAnalysis]
# integrator TRBDF2;
integrator Newmark $NewmarkGamma $NewmarkBeta;
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying more iterations...";
test $TestType $Tol 1000 $printFlag;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-7 ...";
test $TestType 1.0e-7 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-6 ...";
test $TestType 1.0e-6 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-5 ...";
test $TestType 1.0e-5 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/2.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/4.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/8.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/16.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/32.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/64.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
set Nstepsmax [expr $ik-1]
break;
}
}
if {[expr $ik-1] == $Nsteps} {
set AnalysisA [expr 1] } else {
set AnalysisA [expr 0] };
puts "Analysis completion=$AnalysisA"
set fileid10 [open "ConvergenceIndicator.txt" a];
puts $fileid10 "$AnalysisA"
close $fileid10
set Tol 1.0e-8;
set maxNumIter 100;
set printFlag 0;
set NewmarkGamma 0.5;
set NewmarkBeta 0.25;
set TestType EnergyIncr;
set algorithmType NewtonLineSearch;
for {set ik 1} {$ik <= $Nsteps} {incr ik 1} {
puts "$ik"
# puts "$ik"
set ok [analyze 1 $dtForAnalysis]
# Convergence
if {$ok != 0} {
puts "Trying Bisection ...";
algorithm NewtonLineSearch <-type Bisection>;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying Secant ...";
algorithm NewtonLineSearch <-type Secant>;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying RegulaFalsi ...";
algorithm NewtonLineSearch <-type RegulaFalsi>;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying KrylovNewton ...";
algorithm KrylovNewton;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying Newton ...";
algorithm Newton;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying BFGS ...";
algorithm BFGS;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying Broyden ...";
algorithm Broyden;
set ok [analyze 1 $dtForAnalysis]
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying HHT 0.9 ...";
integrator HHT 0.9;
set ok [analyze 1 $dtForAnalysis]
# integrator TRBDF2;
integrator Newmark $NewmarkGamma $NewmarkBeta;
};
if {$ok != 0} {
puts "Trying OS ...";
integrator AlphaOS 1.00;
algorithm Linear;
set ok [analyze 1 $dtForAnalysis]
# integrator TRBDF2;
integrator Newmark $NewmarkGamma $NewmarkBeta;
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying OSG ...";
integrator AlphaOSGeneralized 1.00;
algorithm Linear;
set ok [analyze 1 $dtForAnalysis]
# integrator TRBDF2;
integrator Newmark $NewmarkGamma $NewmarkBeta;
algorithm $algorithmType;
};
if {$ok != 0} {
puts "Trying more iterations...";
test $TestType $Tol 1000 $printFlag;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-7 ...";
test $TestType 1.0e-7 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-6 ...";
test $TestType 1.0e-6 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-5 ...";
test $TestType 1.0e-5 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/2.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/4.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/8.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/16.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/32.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
puts "Trying tolerance 1.0e-3 ...";
test $TestType 1.0e-3 $maxNumIter 0;
set ok [analyze 1 $dtForAnalysis/64.0]
test $TestType $Tol $maxNumIter $printFlag;
};
if {$ok != 0} {
set Nstepsmax [expr $ik-1]
break;
}
}
if {[expr $ik-1] == $Nsteps} {
set AnalysisA [expr 1] } else {
set AnalysisA [expr 0] };
puts "Analysis completion=$AnalysisA"
set fileid10 [open "ConvergenceIndicator.txt" a];
puts $fileid10 "$AnalysisA"
close $fileid10
Re: Problem with converge when using nonlinearBC element
Many thanks for your response!