zhuminjie / OpenSeesPyDoc

OpenSeesPy Documentation
http://openseespydoc.readthedocs.io
Other
145 stars 106 forks source link

printA is not working #19

Closed frqc closed 5 years ago

frqc commented 5 years ago

When I add printA() at the bottom of this example script, nothing happens regardless using '-file' option.

I'm not sure I used it in the right way. Is this a bug or could you illustrate the correct usage of this command in openseespy document? Thank you!

zhuminjie commented 5 years ago

@frqc I will make printA work for some solvers in the next version of OpenSeesPy. What specific solver do you use?

frqc commented 5 years ago

Actually I was not aware that the printA will only work for a FullGeneral system only. What I'm looking for is to print out the matrix to solve, in order to inspect/debug/optimize the structure.

For example, I once created floating points not connecting to any elements and then it led to a singular matrix. And when I was trying example 1.7, I notice it uses dummpy nodes and restricts them with equalDOF commands. I wanted to see the differences when creating the same structure with elements connected to same nodes without dummy nodes and equalDOF. I printed the analysis result like node displacement to validate but I think the comparison is not that systematic.

I guess by printing the matrix to solve it will be helpful to validate those cases. Is there an easy way while keeping the system flexible to do so? Thanks!

zhuminjie commented 5 years ago

Yes, you are right. printA currently only works for FullGeneral solver. I tried printA for other solvers. It doesn't look very useful for them and not easy to implement. A quick way will be using FullGeneral to check stiffness matrix and switch back to other solvers to solve. Or if you want to check stiffness matrix for certain steps, use faster solver to proceed the steps, switch to FullGeneral to check, and switch back to other solvers.