The PMINRES (Projected Minres) solver seems to converge slowly with some FEM problems, even if projection is never performed (it shuld boil down to plain MINRES).
So, I changed all FEM examples to use the plain MINRES, whose convergence is better.
This is temporary anyway, because soon or later we'll test contacts & friction with FEMs and MINRES cannot handle unilateral constraints, and some interior-point method must be developed (or PMINRES must be improved)
In Irrlicht 3D interface, there are new keyboard functions
- press F12 = dump stiffness/mass matrices , jacobian matrices, known terms of VI.
- press 'Print Screen' key = start saving snapshotNNNN.bmp on the disk (press again to stop recording).
The 'Print screen' key trick helps saving Irrlicht simulations, so you can create AVI easily, without using screen recording hacks.
The ChLcpIterativeMINRES solver can handle also the case of stiffness matrices and non-diagonal M (operates on the full KKT system instead on the Schur complement, that could handle only the case of diagonal M).
Easy switching to MINRES solver is supported in ChSystem
New FEM beam demos. Work in progress.
- The drawing size of beam is a property of the section object, not of beam element anymore.
- Also, the shear coefficients of Timoshenko have been added to the section property.
- Improved SetAsRectangularSection and new SetAsCircularSection helper functions.
- The J polar torsional constant have been added to section
Improved way to compute element corotational frame in case of heavy torsion
Bug, the Jpolar was computed for circular sections all the times, but for other sections now the user-defined J is used.
Bug in computing the wrench (force, torque in generic section) of the Euler beam, when shear center was offset. Fixed.
Changed beam to use user-defined Jpolar anyway
Testing the Reddy's third order beam theory that takes into account also shear effect (TEST only! deformations are ok but plotted wrench is still with E-B formulas)
Wrench computation used Jpolar of circular sections in all cases, to compute section torque. Fixed: now used generic user-defined torsion constant J.
Mass matrix of beam is corotated (and rotational inertias on z and y axes are artificial small values as suggested in the online FEM book of U. of Colorado).
The ChBuilderBeam class can be used to split a segment in a sequence of beam finite elements, in a very easy way.
This modification is necessary so that the ChVisualizationFEMmesh can create the visualization asset for Eulero beams using the new approach of setting the size in the section object.