OpenSees Static Analysis: BandGenLinLapackSolver::solve() – matrix singular U(i,i) = 0 error

Post Reply
qkrghdrl7759
Posts: 7
Joined: Tue Aug 05, 2025 12:39 am

OpenSees Static Analysis: BandGenLinLapackSolver::solve() – matrix singular U(i,i) = 0 error

Post by qkrghdrl7759 » Mon Aug 25, 2025 7:21 am

Hello everyone,

I am currently working on a 3D frame + slab model built in STKO, and I am trying to run a simple static analysis with a -Z 1 N nodal load (for checking structural response).
However, OpenSees fails to converge right at step 0, with the following error messages:
WARNING BandGenLinLapackSolver::solve() -factorization failed, matrix singular U(i,i) = 0, i= 0
WARNING: CTestNormDispIncr::test() - failed to converge
after: 10 iterations current Norm: 0.1 (max: 1e-06, Norm deltaR: 0.1)
NewtonRaphson::solveCurrentStep() - the ConvergenceTest object failed in test()
StaticAnalysis::analyze() - the Algorithm failed at step: 0 with domain at load factor 0.1
OpenSees > analyze failed, returned: -3 error flag

I have:

I have also attached my OpenSees input files (exported from STKO) as a compressed ZIP archive.

Assigned Physical + Element Properties (elasticBeamColumn with mass per length)

Applied Fix conditions at the bottom nodes of all columns

Built the mesh successfully

Defined a Linear TimeSeries → Plain Pattern → NodeForce (Fz = -1)

Created a Static Analysis Step with LoadControl (λ=1), Fixed time step, numIncr=1

But still I get the singular matrix / convergence error.

Execution command (Windows CMD):

cd /d "D:\OpenSTKO\STKO\modeling\CelMa"

"D:\OpenSTKO\OpenSees3.7.1\OpenSees3.7.1\bin\OpenSees.exe" main.tcl

Questions:

Does this error indicate that my nodal load is applied to an unconnected node (not part of the mesh)?

Or could it be due to missing constraints (e.g., out-of-plane DOFs not restrained)?

What would be the recommended way to debug this in OpenSees / STKO?

Any advice or similar experience would be greatly appreciated!

Thank you.
Attachments
3D.zip
(306.28 KiB) Downloaded 147 times

STKO Team
Posts: 2920
Joined: Tue Oct 29, 2019 8:45 am

Re: OpenSees Static Analysis: BandGenLinLapackSolver::solve() – matrix singular U(i,i) = 0 error

Post by STKO Team » Mon Aug 25, 2025 8:34 am

That error says that your model is singular.
From a quick look I found:
  • Your lines are all separated from one another. Join them into a single geometry -> use the MakeWire command
  • You defined the Fix condition, but you did not insert it in any constraint pattern.

qkrghdrl7759
Posts: 7
Joined: Tue Aug 05, 2025 12:39 am

OpenSees still gives singular matrix error – do I need to constrain out-of-plane DOFs?

Post by qkrghdrl7759 » Mon Aug 25, 2025 10:52 am

Hello everyone,

I am building a 3D frame + slab model in STKO and trying to run a static analysis.
As suggested by the STKO team, I have already:

Used MakeWire to join the lines,

Added the Fix condition into a constraintPattern with a Constant TimeSeries,

Defined the nodal load in a loadPattern with a Linear TimeSeries,

Disabled loadConst and used wipeAnalysis = ON.

However, when I run the static step, I still get the following error:

WARNING BandGenLinLapackSolver::solve() - factorization failed, matrix singular U(i,i) = 0, i=0
WARNING: CTestNormDispIncr::test() - failed to converge
StaticAnalysis::analyze() - the Algorithm failed at step: 0 with domain at load factor 0.1
OpenSees > analyze failed, returned: -3 error flag

My current setup is:

Physical + Element Properties: elasticBeamColumn (with mass per length)

Fix condition: added via constraintPattern with Constant TS, ID=1 (Fix)

Load condition: added via loadPattern with Linear TS, ID=2 (Nodal Force)

Static Step: LoadControl (λ=1), Fixed step, numIncr=1

Mesh built successfully (after MakeWire)

Question:
Could this error still be happening because my model is essentially planar, leaving some out-of-plane DOFs (e.g., Uy, Ry) unconstrained?
If so, do I need to apply an SPC condition to all nodes to restrain those DOFs?

Any advice or similar experiences would be greatly appreciated.
Attachments
3D (1).zip
(306.28 KiB) Downloaded 132 times
work tree.png
work tree.png (32.64 KiB) Viewed 3480 times

STKO Team
Posts: 2920
Joined: Tue Oct 29, 2019 8:45 am

Re: OpenSees Static Analysis: BandGenLinLapackSolver::solve() – matrix singular U(i,i) = 0 error

Post by STKO Team » Wed Aug 27, 2025 11:00 am

Both your models in the attached zip files still contain the same errors (separated geometries, and constraint not in constraint pattern)

Post Reply