Changes

Summary

  1. [LinearSystem] Cache mapped mass matrix (#4625) (details)
Commit be900861cac7cb450af71130d36c929714952b9b by noreply
[LinearSystem] Cache mapped mass matrix (#4625)

* [LinearSystem] Cache mapped mass matrix

* revert observer pattern

* track mass change using DataTracker

* Verify J is constant by introducing isLinear method

* d_recomputeCachedMassMatrix is now EmptyData

* Comments

* comments

* track changes with DataTracker

* Try to fix Ubuntu compilation

* Missing matrix compression

* Also track mappings
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/SkinningMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/SubsetMapping.inl (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/CenterOfMassMultiMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/LineSetSkinningMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/IdentityMultiMapping.h (diff)
The file was modifiedSofa/framework/Core/src/sofa/core/DataTracker.cpp (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/SimpleTesselatedTetraMechanicalMapping.h (diff)
The file was addedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MappedMassMatrixObserver.cpp
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/SubsetMultiMapping.h (diff)
The file was modifiedSofa/Component/LinearSystem/CMakeLists.txt (diff)
The file was modifiedSofa/Component/LinearSystem/src/sofa/component/linearsystem/ConstantSparsityProjectionMethod.h (diff)
The file was modifiedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MatrixProjectionMethod.inl (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/BarycentricMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/VoidMapping.h (diff)
The file was addedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MappedMassMatrixObserver.h
The file was modifiedSofa/Component/LinearSystem/src/sofa/component/linearsystem/ConstantSparsityProjectionMethod.inl (diff)
The file was addedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/LinearMapping.h
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/IdentityMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/TubularMapping.h (diff)
The file was addedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MappedMassMatrixObserver.inl
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/CenterOfMassMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/SubsetMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/CMakeLists.txt (diff)
The file was modifiedSofa/framework/Core/src/sofa/core/BaseMapping.h (diff)
The file was modifiedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MatrixLinearSystem.h (diff)
The file was modifiedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MatrixProjectionMethod.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/DeformableOnRigidFrameMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/Mesh2PointMechanicalMapping.h (diff)
The file was modifiedSofa/Component/LinearSystem/src/sofa/component/linearsystem/MatrixLinearSystem.inl (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/BeamLinearMapping.h (diff)
The file was modifiedSofa/Component/Mapping/Linear/src/sofa/component/mapping/linear/CenterOfMassMulti2Mapping.h (diff)