-
Notifications
You must be signed in to change notification settings - Fork 352
SOFA dev reports (2023)
Join us every Thursday 9:30 am CET online: www.sofa-framework.org/sofa-dev-meeting
-
Agenda 2024 is released!
- Next STC#17 will be held in Strasbourg on June 10-12
- SOFA Week 2024 will be held in Lille on Nov 25-29 Save the dates!!
- Preparation of the upcoming release v23.12 started
- GitHub Discussions
- Stale action running
- Centralized for all plugins (except SoftRobot for now)
- Add links to the proper discussion category in each plugin README
- Metis upgrade to 5.2.1
-
#4395 [VolumetricRendering][SofaCUDA] Move CUDA files related to VolumetricRendering
This begins a big refactoring of the SofaCUDA plugin. Externalizaing the cuda-based code of external plugins into the plugins themselves. This is a first suggestion, that will then be applied to the rest of the code. Alex want to continue to think about a hat plugin (having the cuda plugin inside the cpu plugin) to ease the user comprehension of what is compiled and where is everything.
→ wip - #4390 [SofaSimpleGUI] Fix calls to deprecated functions → ready
- #4389 [Constraint.Lagrangian.Solver] Fix assert in GenericConstraintSolver An assert in the creation of the MultiVecCoordId appeared in Debug when constraints were not solved in velocity. See if an optional pointer would better work than a unique one. → keep to review
- #4388 [Topology.Mapping] Edge2QuadTopologicalMapping: use States directly The condition used to know if the state is mechanical to know if ApplyJ has to be called seems weak. An issue will be opened. → ready
- #4386 [github] Add new action checking PR age → ready
- #4370 [LinearSolver.Direct] Introduce other ordering methods in SparseLDL through Eigen Failing test in StaticSolver. Need to investigate and test performances. → wip
- #4362 [Topology.Container.Dynamic] GeometryAlgorithms: support generic State → ready
- #4361 [Topology.Mapping] Edge2QuadTopologicalMapping: use Links for required QuadSet components → ready
- #4360 [Core] BaseMapping: link mapConstraints to the "meta-alias" isMechanical → ready
- #4357 [CImgPlugin] Add fetchable CImg and remove embedded cimg → ready
- #4356 [Config] CMake: support interface-type target for install macro → ready
- #4334 [Core] POC introduction of iterators on scene graph Work on merging BaseContext and BaseNode should first be addressed since the iterator would need to be able to iterate on both, but they have a different inheritance. → suggest to close
- #4333 [Core] Refactor VMultiOpEntry → wip
- #4309 [Constraint.Projective] Implement applyConstraint from new matrix assembly API Renamed data got reverted, now ready → ready
- #4302 [Constraint] Make name of constraints more explicit Constraints (Lagrangian and projective) got renamed. A new feature has been added to define in the ComponentChange renamed components. A check is added in the ObjectFactory to check whether the class is renamed and if so it creates the class with a warning. → ready
- #4392 [MultiThreading] Fix failing test on ParallelImplementationsRegistry
- #4393 [Core] Remove pragma directive in cpp file
- #4355 [LinearAlgebra] Factorize template specializations of filterValues in CRS matrix
- #4391 [Type] Remove test of a deprecated constructor
- #4363 [Mapping.Linear] Replace a few beginEdit by accessors
- #4354 [GUI] Fix compilation using QDocBrowser
- #4352 [LinearAlgebra] constexpr if statement when possible
- #4351 [LinearAlgebra] Use class template argument deduction with MatrixExpr
- #4348 [github] fix stale action
- #4328 [Simulation.Core] Remove usage of ill-used nodeData in MechanicalGetNonDiagonalMassesCountVisitor and MechanicalVDotVisitor
- Preparation of the upcoming release v23.12 started
- Welcome to new InfinyTech3D member : Ronak Molazem. She also joined the SOFA dev team !
- GitHub Discussions
- Reordering upcoming to welcome dedicated area for Community Help on Plugins
- Question on the case of SoftRobot
- Question on regrouping InfinyTech3D plugins (Unity ?)
- #4348 [github] fix stale action --> ready to update all discussions
- Reordering upcoming to welcome dedicated area for Community Help on Plugins
- Test SoftRobots on CI with scene
examples/tutorials/Tripod/myproject/step7.pyand it will be fixed by adding theserialpython package on the new builders - Auto differentiation of simulation in SOFA: roadmap defined at the DEFROST team
- #4357 [CImgPlugin] Add fetchable CImg and remove embedded cimg → to review
- #4356 [Config] CMake: support interface-type target for install macro Work to go for a fetch of CImg instead of using the heavy embedded cimg. However, this is an interface and it requires some work with not-recent versions of CMake. → to review
- #4355 [LinearAlgebra] Factorize template specializations of filterValues in CRS matrix → ready
- #4354 [GUI] FIX QDocBrowser To be tested in the compilation (hugtalbot) → then ready
- #4352 [LinearAlgebra] constexpr if statement when possible → ready
- #4351 [LinearAlgebra] Use class template argument deduction with MatrixExpr → ready
- #4350 [Simulation.Core] BaseMechanicalVisitor: Deprecate rootData → ready
- #4348 [github] fix stale action → ready
- #4334 [Core] POC introduction of iterators on scene graph POC is good, doesn't compile and allow to not rely on visitors, but still rely on a need of a global conductor (not entirely "visitor-less" as we might think of). The mechanism is of interest for some core components to make the call of their methods more explicit. → wip
- #4333 [Core] Refactor VMultiOpEntry The code doesn't compile rigth now and the goal is not yet reached. A question arised on the performance impact regarding the complexity : is it really worth it ? The cuda version may be worth it actually. → wip
- #4328 [Simulation.Core] Remove usage of ill-used nodeData in MechanicalGetNonDiagonalMassesCountVisitor and MechanicalVDotVisitor → ready
- #4326 [SofaAssimp] Fix the FindAssimp.cmake Failing on Windows, will work on future builders → wait for new builder and keep to review
- #4324 [All] Changed message for scene check Wait for #4302 → wait for new builder and keep to review
- #4309 [Constraint.Projective] Implement applyConstraint from new matrix assembly API Review to be taken into account → wip
-
#4302 [Constraint] Make name of constraints more explicit
UnilateralInteractionConstraint will become UnilateralLagrangeConstrainst. PR seems ready. Issue with the
SofaConstraintSolver_matrix_access_test_matrix_access, check aliases with templates → to review (quickly) - #4266 [all] Externalize metis Add fork of METIS to ease the process of building/packaging → wait for new builder
- #4240 [all] Replace tinyxml by external tinyxml2 → wait for new builder
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Need to talk to Christian → wip
- #4296 [Type] Refactor Vec
- #4242 [Topology] Check indices out-of-bound in TriangleSetTopologyContainer
- #4338 [Haption] Partially fix the plugin
- #4347 [github] quick fix for GHD script
- #4330 [image] image_gui to compile with Qt6
- #4327 [Simulation.Core] Deprecate LocalStorage feature
- #4268 [GitHub] Add a python-based action managing discussions
- #4325 [ODESolver] Fix compilation with SOFA_NO_VMULTIOP
- #4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF
- SOFA consortium will be at Inria’s Programme santé numérique doing a demo during the SOFA-dev meeting, Alex will be your host
- New hire at InfinyTech3D
- Haption plugin: no longer maintained. Could be externalized. In the meantime, we could make some changes so it can be compiled on the CI (to maintain compatibility with SOFA) using a fake virtuoseAPI header. Probably same conclusion with Xitact.
- [#383] -> More information requested
- #381 [GUIManager] Add SofaGLFW and SofaImgui at runtime → need more time to review. Review requested from the consortium
- #380 [GUIManager] Add SofaGLFW and SofaImgui → need more time to review. Review requested from the consortium
- #379 [Environment] Use standard python paths → ready
- #376 [all] Fix warnings → Changes requested
- #375 [Environment] Fix test for plugins envvars → ready
- #372 [CI] Update ci.yml → Question if the PR is still relevent?
- #352 [doc] Rebuild the sphinx documentation for SofaPython3 → WIP because of merge problems. @hugo BACK TO WORK!!!
- #4341 [ODESolver.Backward] Convert double to SReal in NewmarkImplicitSolver →
- #4338 [Haption] Partially fix the plugin →
- #4334 [Core] POC introduction of iterators on scene graph → compilation failing but the feature seems interesting
- #4333 [Core] Refactor VMultiOpEntry → compilation failing but the feature seems interesting
- #4330 [image] image_gui to compile with Qt6 → ready. Consider using Qt6 on the CI
- #4328 [Simulation.Core] Remove usage of ill-used nodeData in MechanicalGetNonDiagonalMassesCountVisitor and MechanicalVDotVisitor → changes requested: convert SReal to an integer
- #4327 [Simulation.Core] Deprecate LocalStorage feature → ready
- #4326 [SofaAssimp] Fix the FindAssimp.cmake → wait for new builders
- #4325 [ODESolver] Fix compilation with SOFA_NO_VMULTIOP → ready
- #4324 [All] Changed message for scene check → Conflicts, and the base PR must be merged first
- #4316 [SofaSPHFluid] Investigate CI failing regression → Still in WIP
- #4309 [Constraint.Projective] Implement applyConstraint from new matrix assembly API → Depreciation requested
- #4303 [image] Merge CImgPlugin into image → discussion on the CImg dependency. Should we move the dependency out of SOFA instead of hosting the source code?
- #4302 [Constraint] Make name of constraints more explicit → Still WIP
- #4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF → ready
- #4296 [Type] Refactor Vec → ready. Another PR is requested to restore some performances on matrices
- #4268 [GitHub] Add a python-based action managing discussions → postponed
- #4266 [all] Externalize metis → wait for new builders
- #4240 [all] Replace tinyxml by external tinyxml2 → wait for new builders
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance → Still need more information in the rigid case using zero compliance
- #4270 [All] ColorMap uses RGBAColor
- #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its components
- #4304 [SolidMechanics.Springs] Cleaning of QuadularBendingSprings
- #4332 [FEM.Elastic] Reference instead of a copy in TriangularFEMForceField
- #4291 [all] Fix warnings
- #4295 [SolidMechanics.Spring] Implement buildStiffnessMatrix for TriangularBendingSprings
- #4322 [All] Changed default plugins
- SOFA consortium will make a demo at Inria's Programme santé numérique on Dec 6th (Paris Santé Campus)
- Preparation of the agenda 2024
- SOFA integration into 3D Slicer: ongoing discussion with core developer team. Better define what is targeted as an integration. → We must be careful of the boundaries of such integration to insure that it stays stable (only projective, only volumetric mesh etc...). Mays also be used for visualization or registration.
- Question on Jenkins maintenance on Inria's side. They question the use of it given their gitlab solution, but it is not a solution for us because we need to stay on github. May require at some point to only rely on github actions.
- Metis compilation for windows : maybe compile/use both version 64/32 regarding the
SRealtype - SolidTypes : includes several pieces of codes like Frame, Transform
- #4320 [Collections] Remove reference to non-existing SofaSimulation → ready
- #4319 [SofaCUDA] FIX compilation SofaCUDA along with SparseGrid with Cuda12 → ready
- #4317 [LinearSystem] Speedup computation of Jacobian matrices When there are interaction forcefields, those forces can be applied to multiples mechanical states. But when there isn't multiple mechanical state, the jacobean computation can be speedup by not computing the same jacobean twice. Other optimization will come in the future (particularly for MOR). → ready
- #4314 [Core] Minor clean of DefaultAnimationLoop Cleaning codes that were factorized from the AnimateVisitor but implementing useless Lagrange constraints in the DefaultAnimationLoop → ready
- #4302 [Constraint] Make name of constraints more explicit Changes were not taken into account and this will be done further to v23.12 → wip
-
#4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF
Change timer name, possibly change
m_dimensiontoDeriv::total_sizeand update license header → then ready - #4296 [Type] Refactor Vec → wait for #4270
- #4295 [SolidMechanics.Spring] Implement buildStiffnessMatrix for TriangularBendingSprings → ready for 24.06
- #4294 [Sofa/MechanicalLoad/TrianglePressureForceField] Add buildStiffnessMatrix to TrianglePressureForceField Comments not taken into account → back to wip
- #4291 [all] Fix warnings Revert change of data nbThread to keep it as int to handle negative values (corresponding to the number of cores minus this value) → wip
- #4290 [Sofa.GUI.Qt] Add cmake module for QGLViewer → ready
- #4270 [All] ColorMap uses RGBAColor → wait for #4263
- #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its components → ready for 24.06
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Ask for information about zero compliance in rigid case → keep to review
- #4308 [GUI.Qt] Minor single-line cleaning
- #4258 [LinearSolver] Remove CSparse-based linear solvers
- #4293 [LinearAlgera, Core] Fix linking with LTO on MacOS/Clang
- Feedback from SOFA Week 2023 & STC #16
- Awards:
- Ask for last release compatibility or a demo video
- Ask for some slide upon inscription to have some insights on what it does
- Add a "level of expertise" rating for the jury, for each contribution, to ponderate the grade.
- Symposium:
- Be more strict on registration timeline and abstract review to guaranty quality
- Last minute registration for presentation will not be allowed anymore (add dead line for pres inscription)
- Have more break time to talk and see the booths
- Add timer to keep a hand on the clock
- Have a last organized drink on site after the conference to debrief and cool down a bit (instead of more break time)
- STC:
- No question when presenting to keep the clock
- For last six month maybe keep the presentation for the consortium --> only presentation of the next six months
- Prepare and identify a bit more the roadmap subject to clearly define the person in charge of the roadmap
- The sprint time is maybe not sound because of the lack of good dev tool (laptop), we cannot really make ground changing PRs. May be good to define more doable issue beforehand. It should maybe stay a place for discussion of technical subject, to be well defined (e.g. conda package)
- Awards:
- Late June 2024: Deformation in Robotics Summer School
- Finalize discussion on SOFA Conda packages
- The following division has been agreed upon:
- sofa-core (including the core that we said + the batch runSofa)
- sofa-python3 (+ stlib)
- sofa-beamadapter
- sofa-modelorderreduction
- sofa-softrobots (direct and inverse robotics)
- sofa-cosserat
- sofa-gl
- sofa-gui-qt
- sofa-gui-glfw (glfw + imgui) --> not prioritary
- sofa-advanced (with all the rest) --> not prioritary
- In SOFA.Gui a part of the code includes component/common which could be part of sofa-core
- The following division has been agreed upon:
- Regression tests should be fixed
- BeamAdapter:
- SPHFluid: references should be updated
-
#4302 [Constraint] Make name of constraints more explicit
Discuss on InteractionLagrangian with hugo and remove all the ProjectTo on projective constraints. Add info on the name changing in dedicated file
Sofa/framework/Helper/src/sofa/helper/ComponentChange.cpp. → wip - #4301 [SolidMechanics] Implement buildStiffnessMatrix for PolynomialSpringsFF Launch test to check regression → then ready
- #4296 [Type] Refactor Vec Wait for rebase, tests and full build → keep to review
-
#4295 [SolidMechanics.Spring] Implement buildStiffnessMatrix for TriangularBendingSprings
Use of the
AsyncSparseLDLSolverprevents this scene to be used as a regression but highlights the use of this asynchronous direct solver → ready -
#4294 [Sofa/MechanicalLoad/TrianglePressureForceField] Add buildStiffnessMatrix to TrianglePressureForceField
Discrepancy between disabling and deprecating. The PR could be split in two: add the
buildStiffnessMatrixand deprecated the data for non-constant forces (this latter topic should re-discussed) → wip - #4291 [all] Fix warnings Check scene errors → wip
- #4290 [Sofa.GUI.Qt] Add cmake module for QGLViewer Plugin image fails, investigate qt.config or cmake.in → wip
- #4270 [All] ColorMap uses RGBAColor Propagate consistency, CI says ok. → wait for #4263 ready
- #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its compRGBAColoronents → ready
-
#4258 [LinearSolver] Remove CSparse-based linear solvers
Unit test are failing, probably due to the mis-use of
ci-depends-on. CMake version in the plugin should be updated → waiting for tests, then ready
None (too busy discussing at the Technical Committee)
❌ No meeting due to the SOFA Week 2023!
- 🚨🚨🚨 Last week before the SOFA Week 2023🚨🚨🚨
- Agenda of the SOFA Technical Committee #16 will be presented
- Next July 2024: Deformation in Robotics Summer School
- Use of vcpkg or conan for external libraries (or simple compilation for the CI)
- one or the other is more of a guess
- common work (between olivier and the consortium) will append after the sofa week to speed up the release of the ne ci environement and the binaries
- #4274 [SofaCUDA] Dont use both version of cublas (legacy or v2) → ready
- #4270 [All] ColorMap uses RGBAColor → wait for #4263 and ready
- #4268 [GitHub] Add a python-based action managing discussions Test it internally → then ready
-
#4266 [all] Externalize metis
The metis package available on conda is built without the
GKRANDoption which improves the results. So it would require to install it differently, which apparently does not garantee to have the same results. May be fixed by using a mechanism of the typefind or fetchbut compatible with CMake 3.22 (same as what is done for cxxopt). But this will work only if there is one plugin dependent to metis. Eigen could be a source of inspiration → keep still to review - #4263 [Type] RGBAColor: remove inheritance from type::fixed_array and use std::array to store its components The PR lacks some features previously enabled by the fact that it inherited from fixed-array. Those features can be added later if needed (such as multiplication or division by a scalar). Update lifecycle versions and reply to reviews. → then ready
- #4258 [LinearSolver] Remove CSparse-based linear solvers Solver replaced with the Eigen LLT. Save the previous scenes in the new plugin. → wip
- #4257 [all] Externalize nlohmann_json dependency with find or fetch mechanism Without the find or fetch mechanism (replaced by a find_package + package manager), it may not make sense anymore → close
- #4240 [all] Replace tinyxml by external tinyxml2 Wait for new CI builders → keep still to review
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Factorize the boiler plate code in traits (sofa::type). In rigid cases, is this normal to have zero compliance? → wip
- #4273 [all] Externalize cxxopts
- #4279 [Topology.Mapping] SimpleTesselatedHexaTopologicalMapping: use correct type for Index
- #4267 [github] Fix name of PR author in GitHub workflows
- #4259 [Helper] ADD option to cmake for advanced timer
- #4251 [Type, Helper] Remove unused __STL_MEMBER_TEMPLATES parts
- #4272 [all] Fix headeronly extlibs licenses
- #4269 [FEM, Mapping] dont mix type::fixed_array and type::Vec
❌ No meeting due to the feast of All Saints (French day off). See you next week for the last SOFA dev meeting before the SOFA Week 2023!
- 🚨🚨 3 weeks before the SOFA Week 2023🚨🚨 Register and join the force ⚡
- Training session on ModelOrderReduction plugin took place. Request your own anytime!
- Next sessions will be held on webex https://www.sofa-framework.org/sofa-dev-meeting
- MacOS releases for 23.06 has been generated!
- Some installation isssues
- SOFA on MacOS due to Apple certificate
- Caribou: Paul will propose an install script
- Roadmap of the conda package
- new versions of libraries are needed (e.g. tinyxml)
- this needs the
find_or_fetchfeature, therefore an upgrade CMake >= 3.24 -> wait for the 23.12 release, which should be performed as soon as possible early December - csparse: we said il last meeting that it could be totally take out of the core. Alexandre will deal with it.
- Json dependency on AdvancedTimer (header only): make it
find_or_fetchor remove it? Olivier already made a PR implementing this mechanism but we could remove it totally for the next release - add a mechanism making this
find_or_fetchmechanism optional
- Sort issues in preparation of STC#16
- On the timers we want to add CMake option to have the choice between:
- No time
- Tracy
- Advanced timer
- Tracy + advanced
- #4256 [example] Speedup TorusFall with parallel inverse product → ready
- #4255 [LinearSolver] Implement parallel inverse product for all linear solvers Sometimes SparseLDL is more efficient sometime it's eigen. Need some try to know which one is the best one. May impact the CUDA solvers for Hadrien. → ready
- #4253 [LinearAlgebra] Support 6x6 matrices accumulation in BaseMatrix Add issue to deprecate the MatrixX typedef and replace in all the code → ready
- #4251 [Type, Helper] Remove unused __STL_MEMBER_TEMPLATES parts → ready
- #4248 [LinearAlgebra] Speedup accumulation on BTDMatrix Tested by Fred and there is indeed a speedup on Windows but stangely not on Ubuntu. → ready
-
#4242 [Topology] Check indices out-of-bound in TriangleSetTopologyContainer
Maybe the problem is wrongly identified. This may be due to using a wrong component to construct the SubsetTopology. May be fixed by using a
SubsetTopologicalMapping. → keep to review - #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Ci scene tests still don't work, investigate why. → wip
- #4236 [LinearAlgebra] Robustify accesses to empty matrices
- #4247 [MatrixAccumulator] adds 6x6 matrix handling
- #4244 [all] Remove TODO.md
- #4245 [all] Add the folder sofa-launcher to the resources component
- #4238 [all] Fix warnings
- 🚨 Less than a month before the SOFA Week 2023🚨 Make sure you registered!!!
- Felix Vanneste is back in the Defrost team to work on the ModelOrderReduction plugin
- Next sessions will be held on webex https://www.sofa-framework.org/sofa-dev-meeting
- The configuration/version of the OS and associated librairies should be updated on the CI : the default rule is use the current ubuntu ditribution version (the one shipped with apt). But the version can be upgraded locally when required and not breaking
- Future requiremnt will be CMake >= 3.24
- Update to a new version of MSVC 2022
- This will be widely discussed at the STC#16
- Regression plugin failed running scene from external plugins due to path issues (e.g. BeamAdapter will failed as long as this is not fixed)
- CI minimal configuration should now include the Multithreading plugin
- New SOFA main scene has been presented by Paul: now optimizing it
- A bit disapointing in term of perf regarding the number of object. May be good to show the number of constraints in real time and/or show mor objects (little logos)
- May require to ship BeamAdapter with SOFA
- Paul will release his plugin contining the scene
- Alexandre attempted to assemble matrices faster and shared his feedback
- Mechanical contribution to a matrix a done in two steps : computation then assembling (insertion in non-neglectible in term of computation time)
- The idea was to do the insertion in a dedicated asynchronous thread → forced to add an intermediate queue to store local contribution and insert in a lock-free way
- Contribution computation is sped up with this but the queue reading (depilation) takes a lot of time leading to no speed up at all
- #4242 [Topology] Check indices out-of-bound in TriangleSetTopologyContainer The test is of interest. But the resulting behavior should be changed. It would require to put the component state to invalid ? Wait for Erik expertise. → keep to review
- #4240 [all] Replace tinyxml by external tinyxml2 Need the find or fetch mechanism otherwise the PR will not work on the CI. → wip
- #4238 [all] Fix warnings Change C-style cast into C++ cast (narrow_cast) than ready → keep to review
-
#4236 [LinearAlgebra] Robustify accesses to empty matrices
Paul will test the perf, else use
isInvalidthen ready → keep to review - #4234 [Mapping] add scale to rigid mapping to scale the initial mapping Change too specific (done as an example for a user), PR will be closed → closed
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Scene test failing, Erik is notified → wip
- #4213 [Constraint.Lagrangian.Solver] Another step to factorize both constraint solvers
- #4237 [all] Forgotten scoped timers
- #4235 [Helper] Update ComponentChange for MechanicalMatrixMapper
- #4227 [SofaCUDA] Move cuda GUI dependent code
- #4220 [LinearSolver.Direct] Better distribution of tasks among threads
- Are you already registered? SOFA Week 2023 registration is compulsory to join us in Paris
- Now a merge option in PR on GitHub More rigorous and avoids problems with master. We need to do it in order to not do it multiple times. Always merge master on the branch and not rebase: don't lose the history. If this system becomes too blocking in terme of testing, consider modifying the CI (remove master compilation and only relly on the nightly build because each commit on the master branch will be tested before the merge) ?
-
#4221 Use of embedded external dependencies
Conda integration : Request to clean up external SOFA dependencies linked statically.
For header only libraries -> find or fetch mechanism (if not present in the environmenet, its sources are fetched and compiled by us)
For static libraries -> make them shared
Cas particuliers:
- New mat : take out the plugin to make it stand-alone, so as not to lose the work but no longer include it.
- miniFlowVR : also to take out
- json nlohmann : in the long term remove this dependency
- Tiny xml : find or fetch (in the long term isolate the feature and 'find or deactivates')
- cspare : sparseLDL implements nearly everything it uses -> no real dependency on cspare. But other lesser-used objects depend on it, and we could take them out.
- Metis : no need to worry about 'finding or fetching' as the embedded version is up to date.
- Regression tests on windows are not launching but it will be fixed quickly.
- #4227 [SofaCUDA] Move cuda GUI dependent code Strange to have to look for cspare because it is shiped with CUDA. → ready
- #4226 [DetectionOutput] New: added barycentric coords Provide an example/context (plugin using it) of use to see the interest of the contribution. Still alot to do to integrate it in a mor standardized way to be more generic regarding the type of element. Would need unit tests. → wip
- #4220 [LinearSolver.Direct] Better distribution of tasks among threads → ready
- #4219 [CollisionModel] New: added collision layer property Provide an example/context (plugin using it) of use to see the interest of the contribution. See how he handles differences in groupe/layers. This might remplace the group mechanism but would require to be able to have have multiple layers. Add unit tests → wip
- #4213 [Constraint.Lagrangian.Solver] Another step to factorize both constraint solvers Factorise code between GenericConstraintSolver and LCPConstraintSolver. LCP is important to keep because it converges more quickly and is a bit faster for only unilateral constraints. Test performances then ready → keep to review
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Take changes into account → wip
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Fix compilation then ready → wip
- #4210 [all] Fix mismatch on explicit template instantiations
- #4190 [Topology.Container] Update and rename methods in EdgeSetGeometryAlgorithms to compute barycentric coordinates
- #4198 [GUI.Qt] Fix libQGLViewer cmake install
- #4168 [BatchGUI] Show progress bar
- #4180 [LinearSolver.Direct] SparseLDL: Fix crash in addJMInvJtLocal
- #4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly
- #4138 [MultiThreading] Introduce parallel CG
- #4192 [Topology.Container] Remove method writeMSHfile in GeometryAlgorithms components
- #4195 [Constraint.Lagrangian.Solver] GenericConstraintSolver: avoid repeated allocation in loops
- #4133 [Core] Store default value in a Data
- SOFA Week 2023: first registered participants are here, book your seats!
- Enjoy the new plugin lists online: https://www.sofa-framework.org/applications/plugins/
- You like checking performances? Discover Alex's integration of Tracy
- Topological changes: current implementation by InfinyTech3D (higher level like: split a triangle in 2, split a triangle in 3)
- **SetGeometryAlgorithms: are the only components accessing both the topology and the dofs. It already implements several topological methods
- an additional folder will be added in
Sofa.Component.Topology.Container.Dynamicincluding all these files/header
- Conda package update:
- Full review received on the PR on conda-forge: management of linking with static libraries, all external projects not header-only should be used through associated conda packages
- restore the linux support: solved!
- MacOS failure:
Fatal Python error: PyMUTEX_LOCK(gil->mutex) failed
- Sort STC#16 labels
- CI: set up a new Ubuntu v22.04 LTS builder. Question came about the library versions: homogeneize all versions Linux/Mac/Windows
- #4213 [Constraint.Lagrangian.Solver] Another step to factorize both constraint solvers Need more time to review the code → keep to review
- #4210 [all] Fix mismatch on explicit template instantiations → ready
- #4205 [Lagrangian.Correction] Add callbacks to check zero compliance Suggestion to take into account, then ready → keep to review
- #4198 [GUI.Qt] Fix libQGLViewer cmake install Wait for the MacOS CI → keep to review
- #4195 [Constraint.Lagrangian.Solver] GenericConstraintSolver: avoid repeated allocation in loops → ready
- #4194 [Geometry] Update method intersectionWithEdge signature and redirect all methods to it in EdgeSetGeometryAlgorithms Suggested changes applied but now compilation fails. The PR rised quesiton about the Equality threashold that is currently globally set and should be related to the scene size. To be discussed during the STC. Revert suggestion. → wip
- #4192 [Topology.Container] Remove method writeMSHfile in GeometryAlgorithms components → ready
- #4190 [Topology.Container] Update and rename methods in EdgeSetGeometryAlgorithms to compute barycentric coordinates Test CI MacOS then ready → ready
- #4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel → ready
- #4168 [BatchGUI] Show progress bar Reviews taken into account. Let's test it on MacOS and check the output on the CI. Then ready → ready
- #4163 [all] Deprecates the hard coded interactions in components Agreement that interactions should not be in any component but only in controllers. Controllers should be implemented to keep the desired features. Work on the transition / lifecycle. This last element is missing and should be implemented, then ready → wip
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly Special cases of use will be trated correspondly when necessary → ready
- #4133 [Core] Store default value in a Data Changes taken into account → ready
- #4187 [examples] Fix warning of UncoupledCC in caduceus
- #4203 [all] Replace ScopedAdvancedTimers by macros
- #4177 [all] Generalize the usage of ScopedAdvancedTimer
- #4182 [Config] Integrate Tracy profiler
- SOFA Week 2023: first registered participants are here, book your seats!
- New plugin for ViscoElasticity is now available!
- Update regarding SofaCUDA plugins: GPU thesis plugins are now open. Would be interesting to compare it to the Defrost SofaCUDALinearSolver
- HPC seminar at Inria (CR available here)
- Scotch: package for graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering
- SolverStack: HPC linear algebra solver stack
- MoReFem: high-performance scientific computing library for numerical simulation of multi-physical phenomena, based on the PETSc linear algebra library
- Revive the Pardiso plugin. Problem : it is not portable and the license is not open. It has been integrated to Intel MKL library, maybe create a plugin on this library for SOFA?
-
#4187 [examples] Fix warning of UncoupledCC in caduceus
Understand how the
defaultCompliancedata is used. A new PR should be open to filter zero values indefaultComplianceorcompliance(issue #4202) → keep to review - #4182 [Config] Integrate Tracy profiler Possible integration of Tracy in ImGUI (an issue is created #4200 to discuss at STC#16). → ready
- #4180 [LinearSolver.Direct] SparseLDL: Fix crash in addJMInvJtLocal A more global discussion could be about questioning the use of sofa::vectors vs the std version and lighten our implementation. Else ready. → ready
- #4179 [LinearAlgebra] Fix segfault when accessing and empty CSR matrix (through iterators) Alex wants to go through it more deeply to really indentify the problem. → wip
-
#4177 [all] Generalize the usage of ScopedAdvancedTimer
Issue created #4199 on the
valSetproblem then merge. → ready -
#4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel
A question arised on the default behavior: should it be monothread or multithreaded by default. It has been decided to leave it monothreaded to avoid any result consistency and complete the Multithread dedicated documentation page. Update the
d_parallelAssemblyIndependentMatricesdefault value → keep to review -
#4168 [BatchGUI] Show progress bar
Interesting and usefull : require to test the scene tests with the pr to see the behavior of the logs with this output. Update the license requirements for the 'indicators.hpp'. Allow to hide the progress bar. One failing test with
runSofa -n infinite→ keep to review - #4163 [all] Deprecates the hard coded interactions in components This PR removes important mechanism without giving an alternative (recoding a controller). It is necessary to provide those controler to keep the features or remove these components from the PR. An issue will be created regarding the mesh exporter/loader standardization → keep to review
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly Unitary tests are fixed. Only meaningfull for compressed models. Need one test with needle insertion then merge → keep to review
- #4138 [MultiThreading] Introduce parallel CG Investigate the timeout. Rebase with the PR reducing logs of Fred, see if this changes something → keep to review
- #4189 [LinearSystem] MatrixLinearSystem: add registration in the factory for BTDMatrix6
- #4191 [Config] CMake: Dont check for IPO at every configure step
- #4193 [SofaCarving] Fix warnings in SofaCarving_test due to use of deprecated methods
- #4185 [Constraint.Lagrangian.Solver] Clean both constraint solvers
- #4184 [Scene] Eigen3-SVD.scn: disable printLog
- #4160 [all] Use SimulationInitDoneEvent instead of AnimateBeginEvent
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
- #4151 [Mass] Fix UniformMass vertexMass value should not be set to 0 if nbr of points reach 0
- #4170 [Constraint.Lagrangian.Solver] LCPConstraintSolver: remove useless computation if printLog is enabled
- SOFA Week 2023: first registered participants are here, book your seats!
- New plugin for ViscoElasticity is now available!
- Update regarding SofaCUDA plugins: GPU thesis plugins are now open. Would be interesting to compare it to the Defrost SofaCUDALinearSolver
- HPC seminar at Inria (CR available here)
- Scotch: package for graph and mesh/hypergraph partitioning, graph clustering, and sparse matrix ordering
- SolverStack: HPC linear algebra solver stack
- MoReFem: high-performance scientific computing library for numerical simulation of multi-physical phenomena, based on the PETSc linear algebra library
- Revive the Pardiso plugin. Problem : it is not portable and the license is not open. It has been integrated to Intel MKL library, maybe create a plugin on this library for SOFA?
-
#4187 [examples] Fix warning of UncoupledCC in caduceus
Understand how the
defaultCompliancedata is used. And filter zero values. → keep to review - #4182 [Config] Integrate Tracy profiler Possible integration of Tracy in ImGUI (an issue is created #4200 to discuss at STC#16). → ready
- #4180 [LinearSolver.Direct] SparseLDL: Fix crash in addJMInvJtLocal A more global discussion could be about questioning the use of sofa::vectors vs the std version and lighten our implementation. Else ready. → ready
- #4179 [LinearAlgebra] Fix segfault when accessing and empty CSR matrix (through iterators) Alex wants to go through it more deeply to really indentify the problem. → wip
-
#4177 [all] Generalize the usage of ScopedAdvancedTimer
Issue created #4199 on the
valSetproblem then merge. → ready -
#4172 [LinearSystem] Assemble non-mapped and mapped matrices in parallel
A question arised on the default behavior: should it be monothread or multithreaded by default. It has been decided to leave it monothreaded to avoid any result consistency and complete the Multithread dedicated documentation page. Update the
d_parallelAssemblyIndependentMatricesdefault value → keep to review -
#4168 [BatchGUI] Show progress bar
Interesting and usefull : require to test the scene tests with the pr to see the behavior of the logs with this output. Update the license requirements for the 'indicators.hpp'. Allow to hide the progress bar. One failing test with
runSofa -n infinite→ keep to review - #4163 [all] Deprecates the hard coded interactions in components This PR removes important mechanism without giving an alternative (recoding a controller). It is necessary to provide those controler to keep the features or remove these components from the PR. An issue will be created regarding the mesh exporter/loader standardization → keep to review
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly Unitary tests are fixed. Only meaningfull for compressed models. Need one test with needle insertion then merge → keep to review
- #4138 [MultiThreading] Introduce parallel CG Investigate the timeout. Rebase with the PR reducing logs of Fred, see if this changes something → keep to review
- #4189 [LinearSystem] MatrixLinearSystem: add registration in the factory for BTDMatrix6
- #4191 [Config] CMake: Dont check for IPO at every configure step
- #4193 [SofaCarving] Fix warnings in SofaCarving_test due to use of deprecated methods
- #4185 [Constraint.Lagrangian.Solver] Clean both constraint solvers
- #4184 [Scene] Eigen3-SVD.scn: disable printLog
- #4160 [all] Use SimulationInitDoneEvent instead of AnimateBeginEvent
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
- #4151 [Mass] Fix UniformMass vertexMass value should not be set to 0 if nbr of points reach 0
- #4170 [Constraint.Lagrangian.Solver] LCPConstraintSolver: remove useless computation if printLog is enabled
- SOFA Week 2023: first registered participants are here, book your seats!
- SoftRobots.Inverse plugin is now open-source!
- Vladimir Poliakov working on a training simulator for hysteroscopy. He implemented an asynchronous GUI with adaptive time step (with a maximum garanteeing the simulation stability). Vladimir will soon be leaving back in KU Leuven, feel free to take a look at filosofia and the coupling with filament. Parallel of simulation and rendering logically shows better performances than runSofa, this is something we could get inspired from. Vladimir will soon make his pending changes in SOFA as PRs.
- Rising interest in SOFAGLFW+ImGui which could/should replace runSofa. Modularization of ImGui would be a plus
- Scene tests run all examples even in plugins and when multithreading is involved, many timeouts occur
- Prefabs should be deeply rediscussed
- SOFA Vedo : have a visualization tool for python. Robin should discuss with Samuel to evaluate the need of this feature.
- Profiler Tracy #4182 -> nice tool for profiling execution with good insights. (see pr review)
- #4182 [Config] Integrate Tracy profiler Presentation done by Alex with a multithreaded example. Each ScopedTimer is replaced by a macro and is visible in the profiler. Tracy needs to be launched first as a server, then runSofa as a client. Test must still be conducted whether Tracy affects the performances. We should be able to remove completely timers.
- #4179 [LinearAlgebra] Fix segfault when accessing and empty CSR matrix (through iterators) An alternative change should be made to ensure that iterator begin = end when the structure is empty, assess performances and add a test to avoid reproducing the issue → wip (keep to review)
- #4158 [LinearSystem] Introduce constant sparsity matrix assembly PR to be tested on different use case (needle insertion, beams) + to be reviewed. → keep to review
- #4151 [Mass] Fix UniformMass vertexMass value should not be set to 0 if nbr of points reach 0 → ready
- #4138 [MultiThreading] Introduce parallel CG A lot of timeouts. Test with freshly rebooted VM and see if the timeouts are caused by the vm itself or the pr. → keep to review
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField → wait for CI then ready
- #4144 [Constraint.Projective] Implement applyConstraint in LinearMovementConstraint
- #4075 [all] Remove some simple uses of bwdInit()
- #4181 [Helper] Fix warning in MeshTopologyLoader.cpp
- #4164 [Topology.Grid] Fix SparseGridTopology and SparseGridRamificationTopology crash at init if mesh file is not found
- #4165 [Topology] Rename Edge::pointBaryCoefs into Edge::getBarycentricCoordinates
- #4171 [GitHub] filter action if not on sofa-framework repository
- #4142 [Sofa.GL] Fix doDrawVisual for OglLabel
- SOFA Week 2023: first registered participants are here, book your seats!
- Final version of the SofaPython3 documentation is now online!
- New open-source plugin for Design Optimization
- CI MacOS still down
- New Ubuntu CI : 22.04
- Release of GPU codes: discussion incoming to sort codes
- Investigate Jenkins configuration options (minimal/standard/full): CMakePreset.json could be used
- #4160 [all] Use SimulationInitDoneEvent instead of AnimateBeginEvent Unit tests failing → wip
- #4138 [MultiThreading] Introduce parallel CG Performance issues noticed by Paul, now fixed by Alex. To be tested again. A regression test should be added to make sure that the single- and multi-threaded give the same results (make sure it is active, and maybe activated by default) → keep to review
- #4075 [all] Remove some simple uses of bwdInit() #4160 uses the event to expert at begin. Conflict to solve and unit test failing. → wip
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField Reviews to take into account → wip
-
#3938 [Sofa.Core] Implements a template deduction system in the object factory
This PR along with the #3987 implements two possible mechanisms (implicit and explicit) to deduct the template of objects, but outside from
canCreate(). The static version should be preferred but the other method should be removed. The #3987 should be carefully the one reviewed and tested locally to assess the mechanism. Afterwards, further cleanings oncanCreate()(for example checks transfered toinit()) will be reviewed. → keep to review
- #4117 [Constraint.Lagrangian.Solver] Unify lists of constraint corrections into a MultiLink
- #4065 [all] Update code regarding lifecycle in Topology.h
- #4150 [SofaSphFluid] Fix: internal draw method not restoring default parameters
- #4149 [SofaSphFluid] Fix: scenes warnings and failing examples
- #4148 [IO.Mesh.Tests] Reduce number of logs by unactivating printlog
- #4058 [all] Lifecycle v23.12 4/n
- #4132 [Constraint.Lagrangian.Solver] GenericConstraintSolver: use given re-ordered list for unbuilt GS
- #4129 [Constraint.Lagrangian.Solver] Fix default value for computeConstraintForces Data
- #2999 [IO][Tests] Add basic test for the MeshSTLLoader
- #4053 [Geometry] Add methods getBarycentricCoordinates and isPointInTriangle in Triangle class
- #4056 [all] Lifecycle v23.12 3/n
- #4128 [Mass] Add a callback on the lumping data in MMMass
- #4126 [test] Make quaternion test deterministic and portable
- #4116 [MechanicalLoad] Implement buildStiffnessMatrix for TaitSurfacePressureForceField
- #4063 [LinearAlgebra] Fix matrix sizes when filtering
- SOFA Week 2023: a unique occasion to meet all the community, discover live demos and network!
- Final version of the SofaPython3 documentation is now online!
- The community recruits, find out more online!
- Project opened by Alex to compile SOFA compiled Emscripten (compiler toolchain to WebAssembly) and then possibly a rendering engine browser compatible (javascript as well)
- Update about the SOFA conda package by Olivier
- PR #23085 opened on conda forge
- Should be available at the beginning of October
- A tutorial may be provided during the SOFA Week!
- Continuous integration:
- very long nightly builds due to pending macos blocking CI
- this Thursday new infra updates incoming
- Sort out old SOFA GitHub PR
- PRs pending on BeamAdapter
- #4133 [Core] Store default value in a Data May be easier to display the value for every type but the stored value should remain in the original type. Remove the template mechanism and store the default value for every type then ready. → wip
- #4132 [Constraint.Lagrangian.Solver] GenericConstraintSolver: use given re-ordered list for unbuilt GS The speedup may be increased with a simple optim on memory. New pr will be added. Regression fail may be due to difference in the way the convergence criteria is computed. → ready
- #4129 [Constraint.Lagrangian.Solver] Fix default value for computeConstraintForces Data Default = value can be removed. Then ready → ready
- #4128 [Mass] Add a callback on the lumping data in MMMass Changing the value doesn't seem to break the simulation but this is not explicitally supported. It is thus important to tell the user that this is not not possible and pass the mass to invalid -> may crash but it's preferable → ready
- #4126 [test] Make quaternion test deterministic and portable STL cannot be used since they are not portable → ready
- #4117 [Constraint.Lagrangian.Solver] Unify lists of constraint corrections into a MultiLink Investigate the use of DoubleLink : What is the behavior and the usage of this ? Wouldn't be single link enough ? Investigate this then ready. → keep to review
- #4116 [MechanicalLoad] Implement buildStiffnessMatrix for TaitSurfacePressureForceField → ready
- #4075 [all] Remove some simple uses of bwdInit() Further to discussions, an event should be triggered once the initialization is done (init and bwdInit() -> create a new pr to propose a new mechanism for notifying the components that the scene is ready to be run → wip
- #4063 [LinearAlgebra] Fix matrix sizes when filtering Inspecting values in the filtered system matrix, it has been noticed that the size info was incorrect (metadata, even if the matrix data itself were present) → ready
- #4056 [all] Lifecycle v23.12 3/n Wait for the CI then ready → ready
- #4053 [Geometry] Add methods pointBaryCoefs and isPointInTriangle in Triangle class Review done on function naming to make it clear for developers and user "coordinate" → wip
-
#4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
C++ union has been removed, now
setParent()is used. However, if the child variable is changed, the parent (the one used) is not udpated. Discussion concludes that when renaming a data, we should directly remove the old one by using DepreactedAndRemoved type to emit a compilation error (which cannot be ignored!). → wip - #3457 [SofaCarving] Add an example written in python → ready
- #4127 [SolidMechanics.TensorMass] Implement buildStiffnessMatrix for TetrahedralTensorMassForceField
- #4115 [MechanicalLoad] Implement buildStiffnessMatrix for TorsionForceField
- #4079 [GitHub] Action to check labels
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection
- #4040 [all] Lifecycle v23.12 2/n
- #4110 [FEM.HyperElastic] Implement buildStiffnessMatrix for StandardTetrahedralFEMForceField
- #4034 [all] Lifecycle v23.12 1/n
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure
- SOFA Week 2023 in less than 3 months, you can already register!
- SofaPython3 documentation being updated
- access SOFA master nightly build: a change on the CI infrastructure at Inria blocked access to the nightly builds. This is solved, thus restoring the CI for the master branch of external plugins
- SOFA has CMake/plugins multiple configurations: minimal, standard, full (Jenkins). We should work on homogeneizing these configuration for:
- the release (full + plugins)
- the conda package
- and the Plugins page
- Repository site-package python3 for SOFA plugins see MOR #72: can be configured in SofaPython3 plugins but other plugins having bindings do not inherit of this configuration. Using the major.minor version format is fine and this property should be propagated. However, the python path could be added when SOFA binaries get installed (this would be for later)
- #4096 [GitHub] Add an action closing old discussion topics File should be yml and test it → wip
- #4079 [GitHub] Action to check labels Test is failing, check syntax → wip
- #4065 [all] Update code regarding lifecycle in Topology.h PR needs 4058, let's wait for the CI (fedora already compiles fine) → keep to review
- #4063 [LinearAlgebra] Fix matrix sizes when filtering PR is fine but an explanation would enlight us → keep to review
- #4053 [Geometry] Add methods pointBaryCoefs and isPointInTriangle in Triangle class Four tests failing to fix → wip
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection → ready but wait for CI
- #4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField Union may prevent to use a variable x if you wrote in y which is exactly our case here. Let's use the setParent() on Data. → wip
- #4034 [all] Lifecycle v23.12 1/n → ready but wait for CI
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure Condition in the code is fixed → ready
- #4106 [plugins] Add fetchable ShapeMatchingPlugin
- #4112 [SofaMatrix] Remove CImgPlugin dependency
- #4105 [FEM.Elastic] Implement buildStiffnessMatrix for TriangularFEMForceFieldOptim
- #4081 [GitHub] Action to check PR titles
- #4103 [Tutorials] Update and fix oneTetrahedron tutorial
- #4064 [plugins] Fix OptionGroup deprecated constructor in image and SofaCUDA plugin
- #4120 [Core] VecId: set correct message for the deleted function holonomicC
- #4118 [all] Replace deprecated wbloc function by its new function name
- #4102 [GUI.Qt] Fix crash if filename is null
- #4111 [Helper] Fix wrong function called when writing jpg file
- #4099 [MechanicalLoad] Implement buildStiffnessMatrix for SphereForceField
- #4108 [Constraint.Lagrangian.Correction] Decrease the severity of not finding a file in PrecomputedConstraintCorrection
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading
- #4097 [MechanicalLoad] Implement buildStiffnessMatrix in SurfacePressureForceField
- #4098 [MechanicalLoad] Fix plane force field buildStiffnessMatrix
- #4001 [LinearSystem] Optim: Only account for affected DoFs
- New marketplace online: sofa-framework.org/applications/plugins
- Do not forget to early register for the SOFA Week 2023!
- Folder for python site-packages is python3/ but it does not help differentiating the versions, best would be e.g. python3.8.10/site-packages/. A variable allows this in the plugin SofaPython3 but not in plugins. Discussion with Damien for possible explanation, else 👍
- Nightly build of SOFA are working again (branch v23.06 on sofa/ci)
- Close old opened PR on the fly during the week
- SofaPython3 2 PR pending review to be done on the fly during the week
- Issue on SofaGLFW: GitHub action nightly generating releases for master and v23.06. But each nightly add a new set of release. Comparison with Regression to be done and the action in SofaPython3 should be updated to be really nightly.
- #4099 [MechanicalLoad] Implement buildStiffnessMatrix for SphereForceField → ready
- #4098 [MechanicalLoad] Fix plane force field buildStiffnessMatrix → ready
- #4097 [MechanicalLoad] Implement buildStiffnessMatrix in SurfacePressureForceField → ready
- #4075 [all] Remove some simple uses of bwdInit() Take reviews into account → wip
- #4065 [all] Update code regarding lifecycle in Topology.h Waiting for #4058 → keep to review
- #4064 [plugins] Fix OptionGroup deprecated constructor in image and SofaCUDA → ready
- #4063 [LinearAlgebra] Fix matrix sizes when filtering Still a test to be added → wip
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection Fixed test but error on DeprecatedData API, soon fixed → keep to review
-
#4046 [MechanicalLoad] Use prefix d_ in DiagonalVelocityDampingForceField
Ask for explanation on why using
unionwould be a problem → keep to review - #4034 [all] Lifecycle v23.12 1/n Revert changes on ComponentChange, split to be done in another PR → wip
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure One condition is the code is incorrect, to be fixed. → wip
-
#4001 [LinearSystem] Optim: Only account for affected DoFs
With the new matrix API visual mappings were computed. With this PR, we get back to previous perf. Note that with this mechanism we should not need anymore the boolean check
isMechanicalin mappings → ready - #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading → ready
-
#3912 [Mass] Deprecate and make DiagonalMass inherit from MeshMatrixMass
In
parse()of a specialized class DiagonalMass : warning for user + deprecation for devs. Add callback on lumping to warn user. → wip
- #366 Binding to setup task scheduler (nb threads) #366 Comment done for formatting else OK → wip then ready
- #4094 [MechanicalLoad] Fix compilation further to new RemovedData constructor
- #4059 [all] Add dates for user deprecation classes RemovedData and DeprecatedData
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency
- Still many devs in vacations! Getting tanned for the SOFA Week 2023
- #4059 [all] Add dates for user deprecation classes RemovedData and DeprecatedData → ready
- #4048 [Visual] ADD a visualization flag and draw method for NarrowPhaseDetection Unit test failing due to the increased number of visual flag → wip
- #4034 [all] Lifecycle v23.12 1/n Object at compilation are considered as too large. Either we clean the ComponentChange file or we split it into several files. To be discussed with more → keep to review
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure Test Edge_test.cpp was failing. Fixed by fredroy, waiting for CI then ready → keep to review
- #4028 [Geometry] Add method isPointOnEdge in Edge structure All changes taken into account → ready
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency → ready
- #4001 [LinearSystem] Optim: Only account for affected DoFs Approved by reviewers, waiting for the author to get back → keep to review, ready to be merged
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading It seems strange that the factorization of the mapping propagation at the end of the time step makes the scene crashes, to be discussed further. → keep to review
- #4057 [all] Clean unused warnings in SOFA
- #4045 [Core] Make doDrawVisual final
- #4041 [GUI.Qt] Remove unused recorder feature
- #4027 [FEM] Add option to compute principal stress direction in TriangularFEMForceFieldOptim
- #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField
- #3991 [FEM.Linear] Implement buildStiffnessMatrix and addKToMatrix for TriangularFEMForceField
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode"
- #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF
- SOFA Week 2023 : registrations are now open!!
- Training sessions are open for august and september, register now !
- It's summer times, the SOFA community will slow down the two first weeks of August. Enjoy your summer and see you in the second half of August!
-
[Core] Unification of addDForce and buildStiffnessMatrix (#4010) This is resulting from the matrix refactoring (#2777). The idea was to unify the two metyhod by always using the build matrix method instead of addDforce. This makes the unbuilt version slower (especially for corotationnal). → The idea is to use this unification to make the addDForce override optional but warn the user that the unbuilt version will be slower and that they should override it if they want the real mechanism.
-
[LinearSystem] Optim: Only account for affected DoFs (#4001) The question was why this PR is accelerating the Caduceus given the fact that it isn't using any penality. → This maybe due to the fact that the matrix building baypass the mechanical flag of the mappings. Filtering the affected dof has thus the side effect to take the flag into account implicitly. It would be better to take the mapping flags into account explicitly.
-
[Lifecycle] On the use of union for data name depreciation (#4046) The use of union to enable the use of old data name could become a norm → Raises a problem with the destructor. It forces the destructor of the class to be defined. Inside of it we need to explicitly tell which data of the union is destroyed (memory leak if not done but is it really an issue ?). This would also imply to remove the destructor at the end of the lifecycle (this could be eased by destructing the deprecated data instead of the new one as a convention to raise ocmpilation errors). The use of this would require to update the doc and be very explicit on what to do regarding the destructor.
- #4045 [Core] Make doDrawVisual final → to review
- #4041 [GUI.Qt] Remove unused recorder feature → ready
- #4040 [all] Lifecycle v23.12 2/n → to review
- #4034 [all] Lifecycle v23.12 1/n No line in ComponentChange should ever be removed to insure that old scene could be easily fixes. Even more because this is practically free for compilation and totaly harmless in run time and maintenance. This should lead to a technical discussion on ComponentChange doc → to review
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure → to review
- #4028 [Geometry] Add method isPointOnEdge in Edge structure → to review
- #4027 [fem] Add option to compute principal stress direction in TriangularFEMForceFieldOptim → ready
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency Need to fix the output to get the CI to validate the scenes tests → wip
- #4010 [Core] Unification of addDForce and buildStiffnessMatrix → wip (see technical discussions)
- #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField → ready
- #3991 [FEM.Linear] Implement buildStiffnessMatrix and addKToMatrix for TriangularFEMForceField Waiting for Erik's review then ready → to review
- #3990 [all] Replace canCreate with init() when approapriate Depends on #3938 so waiting for the discussion → wip
- #3987 [all] Replace canCreate with the getTemplateFromMechanicalState deduction rule Depends on #3938 so waiting for the discussion → wip
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Regression test is not rigorous enough, the error is the mean over all nodes but in cases like the benchmark introduced here by Paul, it passes easily for any regression over 10e-7. We whould discuss how to modify the regression test to catch this : infinite norm ? Alex would like to add modification and unitary tests → wip
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading Requires an investigation on why the scene in sph is crashing. A PR should be added to try and remove the buildConstraintMatrix step. → scene check + new PR then ready
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode" → ready
- #3938 [Sofa.Core] Implements a template deduction system in the object factory Discussion to plan with Damien and Alex to talk about this PR → wip
- #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF → ready
- #364 Disable MacOS CI build for now. Removing macos ci is not good, we should instead modify the ci to publish the release even when macos is not working → to review
- #362 Follow changes from #3959 → waiting on sofa pr #3959 then ready
- #357 Follow changes from SOFA #3889 → waiting for ci then ready
- #356 [examples] Fix all example warnings and add all files in CMakeLists → ready
- #335 Prevent division by zero → ready
- #4061 [FEM.Elastic] Compute BBox in triangle FEM
- #3278 [Sofa.Core] minor refactoring for Data::read() to move into BaseData the reading code
- #4068 Revert "[Sofa.Core] minor refactoring for Data::read() to move into BaseData the reading code"
- #4067 [all] Fix warnings related to Vec and unused var
- #4062 [FEM.Elastic] Fix typo in error message
- #4060 [LinearSolver.Direct] More details in error message
- #4055 [examples] Introduce falling beam example
- The two first weeks of August will be down for most of the SOFA community! Put the sunglasses on 😎 but do not forget to book the SOFA Week 2023!
- Vladimir PhD student at KU Leuven is visiting: cutting simulation (Harders hybrid cutting approach) and remeshing further to cutting using MMG
- No lifecycle info in RemovedData/DeprecatedData #4043: two additional fields should be added to specify the deprecated date and removal date in both RemovedData/DeprecatedData
- [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField #4005: clean way to rename a data for developers
- #4029 [Geometry] Add method intersectionWithEdge in Edge structure Test CI along with #4028 → keep to review
- #4028 [Geometry] Add method isPointOnEdge in Edge structure Scenes are crashing on windows using potentially inyersection methods. → investigate the scenes crash and keep to review
- #4027 [fem] Add option to compute principal stress direction in TriangularFEMForceFieldOptim Wait for Alex feedback, else ready → keep to review
-
#4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency
Several unit tests and scenes tests are failing due to removal of
forceThis PR removes theforcedata but it also proposes a new design for the data update : depending on which data is set initially by the user, only the data used at init can be updated. Drawback : a double udpate is always performed → keep to review - #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField Validate with Alex about the use of union, else ready → keep to review then ready
- #3991 [FEM.Linear] Implement buildStiffnessMatrix and addKToMatrix for TriangularFEMForceField Review of epernod still ongoin → keep to review
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Issue in the demo scene, a point behaves strangely when the contact occurs when using the feature branch. To be investigated → keep to review
- #3983 [FEM.Elastic] Minor refactor of buildStiffnessMatrix in TetrahedronFEMForceField → ready
-
#3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading
CI sees apparently twice an error in advancedtimer. Also could be tested to remove
buildConstraintMatrix()unused in DefaultAnimationLoop → keep to review - #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF Review needed. This PR comes along with #4019. → keep to review
- #4025 [GuiQt] Remove some unactivated code
- #3882 [plugin] Add fetchable SoftRobots
- #3981 [FEM.Elastic] Implement buildStiffnessMatrix for TetrahedralCorotationalFEMForceField
- #4047 [plugins] Remove PSL files, add ExternalProjectConfig and update CMakeLists
- #4044 [Core] Fix drawing of Objects when hiding Visual Models
- #4026 [constraint] Update PrecomputedConstraintCorrection logs when loading compliance file
- #3974 [Collision.Response.Contact] Implement buildStiffnessMatrix in PenalityContactForceField
- #4009 [Spring] Implement buildStiffnessMatrix in PolynomialRestShapeSpringsForceField
- #3998 [CHANGELOG] Update further to latest changes in v23.06
- #3942 [Tests] Properly remove exported files
- The SOFA consortium staff moved into a new building in Strasbourg!
- Vladimir PhD student at KU Leuven is visiting the SOFA team for 3 months!
- [Core] Unification of addDForce and buildStiffnessMatrix
-
[LinearSystem] Optim: Only account for affected DoFs
At the matrix assembly, @fredroy noticed that the function
assembledMappedMatrix-->applytJT()is called less often thus improving performances. A regression is still present on BeamFEMForceField
- #4026 [constraint] Update PrecomputedConstraintCorrection logs when loading compliance file. Some suggestions done → else ready
- #4025 [GuiQt] Remove some unactivated code Removing code and macro unsused for +15 years. One last macro will be removed, let's do it in this PR! → wip
- #4019 [MechanicalLoad] Remove the data force in ConstantFF and solves circular dependency Last reviews done → wip then ready
- #4010 [Core] Unification of addDForce and buildStiffnessMatrix Looks nice but the transition phase and the PR needs to be further discussed, let's open the discussion next week with Alex !
- #4009 [Spring] Implement buildStiffnessMatrix in PolynomialRestShapeSpringsForceField → ready
- #4005 [MechanicalLoad] Implement buildStiffnessMatrix in EllipsoidForceField Reviews to take into account, macro issue. → wip
- #4000 [SofaCUDA] Implement buildStiffnessMatrix and buildDampingMatrix in TLED → ready
- #3999 [MechanicalLoad] Restore computation of derivatives in DiagonalVelocityDampingForceField Comment done, else the PR is OK → ready
- #3998 [CHANGELOG] Update further to latest changes in v23.06 → ready
- #3990 [all] Replace canCreate with init() when approapriate Wait for #3938 → keep to review
- #3987 [all] Replace canCreate with the getTemplateFromMechaniclState deduction rule. Wait for #3938 → keep to review
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Benchmark done by Fred but to do it again, since the feature is active by default. It would be nice to have a scene making sure that both sequential and parallel versions give the same result. → keep to review
-
#3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading
Review must be done by all and scenes are crashing (ArticulatedArm.robot.py). In addition the function
buildConstraintMatrix()could be removed in the DefaultAnimationLoop → keep to review -
#3945 [all] Unify how Animation/Visual loops are handling their "targetNode"
Compilation is failing again:
error: 'gnode' was not declared in this scope; did you mean 'node'?→ wip - #3942 [Tests] Properly remove exported files → ready
- #3938 [Sofa.Core] Implements a template deduction system in the object factory Pending discussion → keep to review
- #3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF Ready but to be merged with #4019 → ready
- #3882 [plugin] Add fetchable SoftRobots Test Result 2 failures (time out). CI restarted let's wait and see → keep to review
- #4015 [SolidMechanics] Implement buildStiffnessMatrix for QuadBendingFEMForceField
- #3994 [AnimationLoop] Change the default constraint solver in FreeMotionAnimationLoop
- #4006 [Spring] Implement buildStiffnessMatrix in FastTriangularBendingSprings
- #4020 [LinearAlgebra] CompressedRowSparseMatrix: add virtual destructor
- #4007 [MechanicalLoad] Implement buildStiffnessMatrix for OscillatingTorsionPressureForceField
- #3989 [FEM.Linear] FIX & Minor refactor of buildStiffnessMatrix in TriangleFEMForceField
- #4018 [MechanicalLoad] Implement buildStiffnessMatrix for QuadPressureForceField
- #4012 [Diffusion] Fix buildStiffnessMatrix in TetrahedronDiffusionFEMForceField
- #4004 [MechanicalLoad] Implement buildStiffnessMatrix in EdgePressureForceField
- #4013 Follow changes from SOFA #3889
- #3931 [all] Use NVI design pattern for drawVisual
- #3997 [MechanicalLoad] Implement buildStiffnessMatrix for ConicalForceField
- #3972 [MechanicalLoad] Implement buildStiffnessMatrix for PlaneForceField
- New consortium staff: Paul Baksic joining the force!
- More than #4000 PR now!
- #4001 [LinearSystem] Optim: Only account for affected DoFs Optimize the assembly of mapped ForceFields JtKJ by identifying the useful terms of the Jacobian matrix with regards to the K matrix shape. A regression appeared on BeamFEMForceField and a scene test seems to fail SpatialGridPointModel.scn
- #3977 [Core] Suggestion of a better displayFlag name : ContactInteractions A new flag could be created displaying the DetectionOuput to visualize contact points whether you are using Penalities or Langrangian (new issue). But the suggestion will not be integrated as is. PR closed
- A proof-of-concept plugin SofaRaylib which adds a GUI and a new API to draw in SOFA using the raylib library
- #3994 [AnimationLoop] Change the default constraint solver in FreeMotionAnimationLoop Setting the componentState as Valid at the end and returning when Invalid, else OK → wip
- #3986 [LinearSolver.Direct] Parallelization of H A^-1 H^T in SparseLDLSolver Nice PR presenting the parallel version of the SparseLDLSolver, only benchmarks are coming soon. → keep to review
- #3972 [MechanicalLoad] Implement buildStiffnessMatrix for PlaneForceField Introduce a generalized version of the dyadic operator. Wait for CI then ready → ready
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading Scenes are failing → back to wip
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode" Compilation failing → back to wip
- #3942 [Tests] Properly remove exported files Wait for MacOS CI → keep to review
- #3938 [Sofa.Core] Implements a template deduction system in the object factory Question pending → keep to review
- #3931 [all] Use NVI design pattern for drawVisual Reviews have been done, waiting for an answer → wip
- #3930 [Sofa.Type] Reformat code Remains to test the PR with clang-format + solve conflicts → wip
-
#3882 [plugin] Add fetchable SoftRobots
At install, CMake copies python files using
configure_file(), but when applying on binary files they get corrupted. A pure copy is now used, instead ofconfigure_file(). One last scene is failing examples/thematicalDocs/T1-Elements_TetraHexaBeam/Hexa.Hexa.py. Scene will be investigated and the SofaPython3 PR #354 has been merged → wip
- #3993 [Spring] Implement buildStiffnessMatrix for AngularSpringForceField
- #3962 [Core.Topology] Restore invalid ids in invalid containers
- #3978 [Mapping.NonLinear] Fix assert in RigidMapping
- #3969 [FEM.Elastic] Implement buildStiffnessMatrix in HexahedralFEMForceField
- #3982 [tests] Restore commented unit tests
- #3948 [all] Implement empty buildDampingMatrix
- #3937 [all] Make local variables const
- #3889 [Sofa.Simulation] First steps to remove the singleton Simulation
- #3944 [Helper] add the experimental filesystem library for gcc-8 compilation
- #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint
- #3961 [Helper.System] Introduce function append for paths
- #3985 [LinearSystem.Direct] More details in the error message
- #3888 [Constraint] Add tag to classify constraints
- Release upcoming this week
- MacOS down for 10 days more: a test will be done tomorrow, let's merge PR starting from Thursday evening
- Update about data/component update: discussions took place and a report will soon be presented
- #3968 [FEM.Elastic] Test HexahedralFEMForceField: shows that HexahedralFEMForceField and HexahedronFEMForceField do not behave the same way! This should be investigated and fixed in another PR
- #3961 [Helper.System] Introduce function append for paths → ready
- #3959 [Simulation.Core] Refactor DefaultAnimationLoop + multithreading Further review will be done. This PR raises the fact that the computation of forces due to InteractionForceFields can not be done anytime in the loop. Another topic to investigate is why the speed up is only x2 instead of x4. → keep to review
- #3956 [Core] Remove macros!!!!! From this PR a new proposition will be done, maybe template based → wip
- #3948 [all] Implement empty buildDampingMatrix Fix conflicts then ready → keep to review
- #3945 [all] Unify how Animation/Visual loops are handling their "targetNode" Few reviews to take into account → wip
- #3944 [Helper] add the experimental filesystem library for gcc-8 compilation Adds a bit of complexity to access filesystem library, but it ensures compatibility with old compilers → ready
- #3942 [Tests] Properly remove exported files → ready
- #3938 [Sofa.Core] Implements a template deduction system in the object factory In the strategy to firstly factorize/homogeneize the canCreate function, this PR propose an API to deduct template. Would be nice to apply it on the entire code base → wait for CI, then ready
- #3936 [MechanicalLoad] Break data cross-dependency in CFF Duplication of data will finally not be the way to go, an alternative PR will be proposed → closed
- #3931 [all] Use NVI design pattern for drawVisual Use of a NVI design pattern. Factorize the boolean draw data, the use of getShowVisualModel. Should use the isComponentStateValid() function → wip
- #3930 [Sofa.Type] Reformat code Suggestion done, remains to test the PR with clang-format → keep to review
- #3928 [Mass] Replace doUpdateInternal by callback: MeshMatrixMass Same as #3924 → wip
- #3927 [Mass] Replace doUpdateInternal by callback: UniformMass Same as #3924 → wip
-
#3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF
Create a function including all the update process, split the updates in separate functions (recover commits from #3936), use function
isComponentStateValid()→ wip - #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint → ready
- #3888 [Constraint] Add tag to classify constraints → ready
- #3973 [MechanicalLoad] Implement buildStiffnessMatrix for LinearForceField
- #3929 [FEM.Elastic] Implement buildStiffnessMatrix for FastTetrahedralCorotationalForceField
- #3934 [all] Add DeprecatedData and RemovedData
- #3971 [Sofa.Component] FIX default color for TetrahedronFEMForceField
- #3980 [plugins] Remove references to external deleted plugins
- #3976 [image] Fix crash in case no parameters provided to TransferFunction
- #3979 [MechanicalLoad] Remove empty draw function in LinearForceField
- #3975 [all] Minor clean on indentation and warning
- #3970 [Spring] Implement buildStiffnessMatrix for SpringForceField
- #3963 [Project] Start dev phase v23.12
- #3960 [plugins] Remove references to old plugins
- #3905 [Constraint.Lagrangian.Solver] LCPConstraintSolver: Fix when mu=0 (no friction)
- Feedback on VivaTech 2023
- SOFA booth along with InfinyTech3D
- Compliance Robotics booth
- Careful: MacOS CI is not yet online
⚠️ wait before massive merge! - Preparation of the v23.06 release
- Linux and Windows are successfully generated, and tested
- Waiting for MacOS CI to generate them
- Issues on Caribou:
- change repo name
- change project name
- clean scenes
- ship scenes within install
- check the use of the Cosserat bindings
- add it to the fetchable plugins
- Go further with #354 Support copy of some binary files
- when preparing the python packages at install, the
configure_file()is corrupting some files - investigate what does the macro and the
configure_file()file (probably not only a simple copy) - Alex will give a try and could be a good first complicated topic for Paul
- when preparing the python packages at install, the
- #3963 [Project] Start dev phase v23.12 → ready
- #3960 [plugins] Remove references to old plugins PreassembledMass and RigidScale should be removed to due to the hard link to Compliant and/or Flexible → wip
- #3937 [all] Make local variables const Ready but wait for the MacOS CI → ready (wait MACOS)
- #3934 [all] Add DeprecatedData and RemovedData Deeper review on the change in Base will be done. Reviews added, test failing (which is nice, this PR detected them!) and problem of indentation to solve → keep to review
-
#3931 Use NVI design pattern for drawVisual
Missing deprecation layer on the data
d_visiblein OglLabel. Else wait for the discussion "component and data update" → wip -
#3930 [Sofa.Type] Reformat code
New rule
AllowShortCaseLabelsOnASingleLine: falsecould be added, then the format script should be tested by other devs → keep to review - #3929 [FEM.Elastic] Implement buildStiffnessMatrix for FastTetrahedralCorotationalForceField Failing tests are due to a CI machine not cleaned (due to MacOS missing CI), two reviews validating the PR. → ready
- #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint Reviews taken into account. In the class, CompressedRowSparseMatrixConstraint a utilitary code was present: Fred removed it. Wait for MacOS CI to merge → ready (wait MACOS)
-
#3889 [Sofa.Simulation] First steps to remove the singleton Simulation
Change function name
sofa::simulation::node::init(node)andsofa::simulation::node::initRoot(rootNode)→ ready -
#3882 [plugin] Add fetchable SoftRobots
Warnings with the topologyHandler in the SoftRobots plugin were remaining. When the scene in constructed, some nodes are initialized before the global initialization. This double
init()on Mass, the topology handlers are sending a warning. A proposed solution is to use the static MeshTopology instead, a longer term solution would be to avoid these double init. → keep to review
- #3957 [Simulation.Core] Deprecate unused classes *VisitorScheduler
- #3890 [Plugins] ADD external collisions plugins
- #3955 [Mapping/tests] Remove dependency on SceneCreator
- #3954 [Sofa.Simulation] Remove Node::bwdInit
- #3946 [all] Remove few lines of code that do nothing
- #3935 [MechanicalLoad] Restore addKToMatrix and test SurfacePressureForceField
- #3925 [Projective] Fix and test FixedPlaneConstraint
- #3891 [all] Rename DefaultContactManager into CollisionResponse
- VivaTech 2023 is coming, join us in Paris on Friday 16th of June!
- CI MacOS is down due to moving of the SOFA consortium staff and infrastructure
- Still a very nice dev activity (but therefore a lot of review effort)!
-
#3930 [Sofa.Type] Reformat code
Such a formatting tool has a great interest for SOFA, but for now not to apply on the whole codebase. With 25+ open PR, applying it to all SOFA would generate conflicts as well as make the comparison with older codes complicated. Moreover, only one rule (e.g. only the code tabulation) can not be applied. Howevever, the script can be applied on separated modules. Alex will test clang-format in command line and a review of the format is needed.
- Remark: OK to apply it on Sofa.Type. Exntending it to SOFA is not a priority, minimum effort for PR author and for the core-dev
- it would be simpler to apply it once on the whole code base (easy to do in the Sofa.Core)
- must be done in a synchronized way (for developer with multiple branches)
- then suggest/automatize/enforce format in PR (through CI, or GitHub actions) → Paul
-
#3924 [MechanicalLoad] Replace doUpdateInternal by callback: ConstantFF
- doUpdateInternal API was a DataEngine mechanism in all BaseObject to allow for a triggered update of components through the doUpdateInternal function. It was allowing for having input and output data but it is not spread and could be replaced by data
- #3636 is pursueing the work by separating the callback to have one per data, and it adds new data as input while having read-only data which are coherent
- have the read-only constraint (more than only GUI) and how to implement it (check in
beginEdit(), BaseData, Data) - break circular dependencies seems a good property, but we could keep only one input with an engine allowing to have other input
- a dedicated discussion will take place next week!
- have the read-only constraint (more than only GUI) and how to implement it (check in
- #3925 [Projective] Fix and test FixedPlaneConstraint → ready
- #3905 [Constraint.Lagrangian.Solver] LCPConstraintSolver: Fix when mu=0 (no friction) A discussion remains (but out of the PR scope): how to have a cleaner, simpler and more generic way to define friction → ready
- #3903 [Spring] Rename RestShapeSpringsForceField to a more user-oriented name Agreement on names found here. An issue will be created. → closed
- #3894 [LinearAlgebra] Implement CompressedRowSparseMatrixConstraint Brings back the InSimo's work to replace MapMapSparseMatrix. Some refactoring could be done but a deep review is needed from a max number of devs. → keep to review
- #3891 [all] Rename DefaultContactManager into CollisionResponse → ready
- #3890 [Plugins] ADD external collisions plugins PR on plugins merged, it's ready. Just note that those plugins do not have any CI, use at your own risk. → ready
-
#3889 [Sofa.Simulation] First steps to remove the singleton Simulation
Fred noticed the change of
init()functions which disappeared butinitNode()has changed and a newinitNodeNoContextUpdate()has been added. Damien suggests the use of different namespace to explicit the perimeter of the init function butsofa::simulation::simulation::init()could be misleading. A coherent renaming will be proposed → keep to review - #3882 [plugin] Add fetchable SoftRobots CI works on the SoftRobots scenes and Alex is working on fixing the failing scenes in the plugin. If fixing becomes too complex, some scenes might be added to the ignored files. → wip
- #3921 [Mapping.NonLinear] Implement buildGeometricStiffnessMatrix for DistanceFromTargetMapping + example
- #3949 [IO.Mesh] More debug info in the error message in MeshSTLLoader
- #3933 [Helper] Properly deprecate an already deprecated function
- #3932 [all] Cosmetic: apply nested namespaces style
- #3914 [Logging] Suggestion to better highlight warnings in console
- #3918 [Core] Access cumulative sum of VecIds through proxy class
- #3922 [Config] Allow fast math mode for gcc/clang
- #3915 [all] Minor clean of types
- #3850 [Spring] Limit spring force to some axis
- VivaTech 2023 is coming, join us in Paris on Friday 16th of June!
- CI MacOS is down due to moving of the SOFA consortium staff and infrastructure
- Nice dev activity!
-
Release v23.06 process ongoing
- SofaPython3: merged PR #351
- Remove reference: SofaPython, THMPGSpatialHashing, Flexible, Compliant, OptiTrackNatNet, OpenCTMPlugin
- Make sure a v23.06 branch is available in your plugins: Tearing, IT3DToolkit, Cosserat, SoftRobots, MOR, STLIB
- Test the addition of a new plugin: Caribou
-
Lifecycle for v23.12 will start after the release
-
PR to review
- #3903 [Spring] Rename RestShapeSpringsForceField to a more user-oriented name The new nomenclature suit all developers, renaming upcoming!
-
#3912 [Mass] Deprecate and make DiagonalMass inherit from MeshMatrixMass
Todo:
- assess again performances on large mesh
- remove CUDADiagonalMass
- edge implementation to backport in MMM
- deprecate XspLoaders (later, create an issue)
-
Damien is progressing well on the update of the SofaPython3 documentation
- #3918 [Core] Access cumulative sum of VecIds through proxy class With non-linear mappings, the derivative of J times the forces (on the mapped object) f has to be computed. Several forces apply: physical forces and Lagrangian forces contained in two different data (stored in different VecIds). The refactoring associated to the new matrix assemlby broke the fact that Lagrangian forces were taken into account in the geometric stiffness. This PR fixes this. → ready
-
#3882 [plugin] Add fetchable SoftRobots
Now SoftRobots plugin have a repository
examples/. Force full build triggered, let's wait CI. → keep to review - #3850 [Spring] Limit spring force to some axis → ready
- #3919 [examples] Remove example for MechanicalMatrixMapper
- #3920 [applications] remove unused variable
- #3911 [All] Remove warnings for v23.06
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField
- #3913 [Helper] Improve text message for users in ComponentChange
- #3887 [SolidMechanics] Use accessors & make geometrical data required in BFF
- #3884 [contact] Add missing call to super init
- #3871 [all] Deprecate unused verbose data
- #3870 [Config] Fix cross-compilation for embedded external libs
- #3868 [SofaCUDA] No longer use deprecated texture references in HexaTLED
- Feedback from SOFA Technical Committee #15. A new format could be suggested: separate STC roadmap discussions from the coding sprint, this would have the advantage of taking the time to converge on the roadmap.
- Next event: SOFA at VivaTech 2023 on Friday 16th of June!
-
#3903 [Spring] Rename RestShapeSpringsForceField to a more user-oriented name
A common use of RestShapeSpringsForceField is to fix some points using forces and sometimes fixing points to another object. In general this raises the question of: defining a naming convention on such components to distinguish:
- projective constraints (physicless, forceless)
- weak force constraints (physicless with forces)
- Lagrange-based constraints (taking into account the physics and applying forces)
- Process for the v23.06 release will start soon
- #3888 [Constraint] Add tag to classify constraints Proof of concept further to STC#15 discussions but so far, no use of this mechanism. Feedback from the community requested. A usecase could be to warn the user in LCPConstraintSolver when adding BilateralInteractionConstraint while this constraint solver does not support it. → keep to review
- #3887 [SolidMechanics] Use accessors & make geometrical data required in BFF → ready
- #3884 [contact] Add missing call to super init → ready
-
#3882 [plugin] Add fetchable SoftRobots
An
examples/folder should be at the root in SoftRobots for the CI to find it. It would be nice to have SoftRobots following this format. Possibly we should add STLIB. If this does not work, we will ignore the scenes. → wip - #3871 [all] Deprecate unused verbose data → ready
- #3870 [Config] Fix cross-compilation for embedded external libs → ready
- #3868 [SofaCUDA] No longer use deprecated texture references in HexaTLED The added scene is failing because CUDA scene are not tested on the CI. Add the scene to the ignore list, then rebase, then ready → keep to review
- #3850 [Spring] Limit spring force to some axis An idea to avoid this new data was to use a mapping but it has been concluded that it would complexify too much the scene and no one is available for the implementation. → wip
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField PR still to review, data renaming using d_ should be done in another PR → keep to review
- #3902 [SofaCUDA] Replace deprecated vector types
- #3886 [examples] Fix unstable scene constantMomentum.scn
- #3515 [LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch
- #3876 [test] Fix failing unit test
- #3869 [SofaCUDA] Deprecated CudaTexture.h
- #3865 [all] include base class inl file
- #3864 [test] Fix unit test on RestShapeSpringsForceField
- #3861 [all] Change variable name supportOnlySymmetricMatrix in MParams
- #3858 [Constraint.Lagrangian] Add messages when no compliance is given
- #3857 [Constraint.Lagrangian] Activate the export of lambda forces by default
- #3855 [plugins] Remove fetching of SofaPython
- #3848 [Spring] Remove unused dependencies
- #3843 [SceneChecking] Add check when setting contactStiffness uselessly
- #3783 [StateContainer] Fix bug in dynamic data registration
- #3834 [LinearAlgebra] Change access specifier for the method set
❌ No meeting due to the SOFA Technical Committee #15 taking place in Paris!
- SOFA Technical Committee in Paris from May 23th to 26th - Next week !
- VivaTech 2023 : 3 demos based on SOFA!
- Page on how to release on the wiki
- Issue when changing the
groupdata dynamically in CollisionModel #346- Quick dirty fix suggested
- AbstractTypeInfo could be updated to offer a consistent API, see comment
- Creation and freeze of the v23.06 release branch
- Share process to release
- Extend it to plugins : will be done while doing the release
- SOFA in conda by Olivier: packages will be done for each plugin + SOFA → first PR on conda forge will soon take place
- #3865 [all] include base class inl file Required if compatibility with CUDA 12 is desired → to review
- #3861 [all] Change variable name supportOnlySymmetricMatrix in MParams → ready
- #3858 [Constraint.Lagrangian] Add messages when no compliance is given → ready
- #3857 [Constraint.Lagrangian] Activate the export of lambda forces by default Wait for CI and then merge → ready
- #3855 [plugins] Remove fetching of SofaPython → ready
- #3850 [Spring] Limit spring force to some axis Interesting contributions (componentState, cleans) but the feature constraining the direction of the force of a RestShapeSFF is not that interesting for SOFA. → to be discussed (waiting feedback from Youness)
- #3843 [SceneChecking] Add check when setting contactStiffness uselessly → ready
- #3834 [LinearAlgebra] Change access specifier for the method set Reviews taken into account → ready
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField Review to be done by hugtalbot → keep to review
- #3783 [StateContainer] Fix bug in dynamic data registration Reviews to take into account. Small change → keep to review
- #95 Disable BeamLengthMapping test Test failing to investigate. The issue seems to be a precision issue (1e-13~14), epernod nicely proposed himself → keep to review
- #94 [MultiAdaptiveBeamMapping] Fix potential bug when removing baseEdge Small fix on type avoiding auto → ready and merged
- #3848 [Spring] Remove unused dependencies
- #3834 [LinearAlgebra] Change access specifier for the method set
- #3838 [Mapping.NonLinear] Warns when non-symmetric matrix is produced
-
SOFA Technical Committee #15 in Paris from May 23th to 26th - Organization
- REGISTER NOW!
- Social events are booked!
- For next STCs, Lille as a location might be preferred regarding the hotel / facilities availability
- Merge of the Matrix Assembly update #2777 feedback: not much feedback in general, the SoftRobots plugin has been successfully updated in #213
- Cosserat plugin:
- some GitHub CI issue, related to pybind version (forcing to use C++14), used for Cosserat bindings
- State of code: clean of examples is required → a tool is required to test python scenes in plugins
-
Issue when changing the
groupdata dynamically in CollisionModel, the change is not taken into account: it seems that setting a value in a set insert the new value, but does not remove the old one → feedback from Damien is expected - Creation of the v23.06 release branch: done today. Remaining todo:
- All PR must now have a milestone specified
- Share process to release
- Extend it to plugins
- Reviews on BeamAdapter PR are needed as well!
- #3843 [SceneChecking] Add check when setting contactStiffness uselessly Factorize checks in separate functions → wip
-
#3838 [Mapping.NonLinear] Warns when non-symmetric matrix is produced
Renaming
mparams->symmetricMatrixin asmparams->supportOnlySymmetricMatrixshould be done in another PR → wait for CI then ready -
#3834 [LinearAlgebra] Change access specifier for the method set.
Merge the
public:area, then ready → wip - #3833 [Lagrangian.Model] Missing _API keyword → wait for CI then ready
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField Ziqiu requested some assistance, Hugo should help → wip
- #3806 [SofaCUDA] Explicit instantiation of ForceField class for Cuda types Include of inl classes inheriting from ForceField should be done. Another PR will be open . → closed
- #3783 [StateContainer] Fix bug in dynamic data registration Check if when adding an existing alias throws a warning, merge changes and ready → keep to review
- #3515 [LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch Classes for the different uses of CRS are now well separated. Index to change, breaking alias with assistance message. Breaking with SofaCUDA. → keep to review
- #42 Fix references for EulerExplicitSolver and Mesh2PointTopologicalMapping Some regression results were missing (because not located in the right folder, now fixed) and no error got emitted. → merged
- #3841 [Rendering3D] OglModel: Revert back to glBufferSubData
- #3840 [LinearSolver.Iterative] CMake: Fix package configuration
- #3833 [Lagrangian.Model] Missing _API keyword
- #3832 [LinearAlgebra] Fix matrix unit test
- #3803 [Mapping.Nonlinear] Fix matrix assembly in RigidMapping
- SOFA Technical Committee in Paris from May 23th to 26th - Organization → REGISTER NOW!
- Merge of the PR [LinearSystem] Refactor matrix assembly #2777
- Freeze the release branch v23.06 imminent
- Issue in the RegularGrid of SOFA with Hexahedra: a workaround has been found, and an issue will be created to track the problem
- Need to integrate PRs from BeamAdapter
-
#3821 [Components] Add functions to visualization of TetrahedronFemForceField
→ introduce a data for scaling the gap between the elements
Instead of a showForceField data, use a VisualStyle
Add the
d_prefix to the introduced data - #3806 [SofaCUDA] Explicit instantiation of ForceField class for Cuda types → wait for the user feedback
- #3803 [Mapping.Nonlinear] Fix matrix assembly in RigidMapping → ready and merged
- #3783 [StateContainer] Fix bug in dynamic data registration → keep to review
- #3515 [LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch → to review, in particular the failing test
- #3823 [All] Remove trivial warnings
- #3822 [Rendering3D] OglModel: Use glMapBufferRange to update buffers
- #3815 [Visual] VisualModelImpl: Fix updateVisual()
- #3805 [Visual] VisualModelImpl: Clean and optimize slightly ComputeNormals()
- #3802 [PreassembledMass] Make it external
- #2777 [LinearSystem] Refactor matrix assembly
- SOFA Technical Committee in Paris from May 23th to 26th - Organization
- REGISTER NOW!
- Location : Cap Digital
- Reminder: new plugin for elasticity on shells using FEM
- Several training sessions taking place and new dates are available
- Freeze the release branch v23.06 at the beginning of May
- Issue in the RegularGrid of SOFA with Hexahedra where the first hexahedron is ordering the edges in a different order then the next hexahedra (next hexas are using udpateQuads())
- Need to another GUI for SOFA : ImGui is not very professional/user-friendly. The project SofaQtQuick was an idea but the project is over. To be further discussed at STC!
- #3823 [All] Remove trivial warnings → ready
- #3822 [Rendering3D] OglModel: Use glMapBufferRange to update buffers → ready
- #3821 [Components] Add functions to visualization of TetrahedronFemForceField Waiting for Ziqiu's feedback, the feature of node stress data rendered on tetrahedra and clean on if conditions should be integrated. → wip
- #3815 [Visual] VisualModelImpl: Fix updateVisual() → ready
- #3806 [SofaCUDA] Explicit instantiation of ForceField class for Cuda types Poke the user to test alxbilger's branch → keep to review
- #3805 [Visual] VisualModelImpl: Clean and optimize slightly ComputeNormals() → ready
- #3803 [Mapping.Nonlinear] Fix matrix assembly in RigidMapping A few questions are to be discussed with alxbilger → keep to review
- #3783 [StateContainer] Fix bug in dynamic data registration → keep to review
- #2777 [LinearSystem] Refactor matrix assembly Two related PR to merge in associated repositories (Regression and SofaPython30. Now force full-build when CI makes the last check, merge the PR. BRACE YOURSELF and report any issues related to this PR. → ready
- #3818 [Components] rename shadow variable
- #3816 [Constraint] Change print variable names to be consistent with doc
- #3807 [SofaCUDA] Move explicit template instantiations from CudaTypes.cpp to CudaMultiMapping.cpp
- #3802 [PreassembledMass] Make it external
- #3800 [BulletCollisionDetection] Revive project
- #3799 [Simulation] Suggest required plugin in the syntax of the scene loader
- #3798 [SofaCarving] Refresh : update file architecture and cmake
- #3796 [Constraint] Add data to access constraint forces in LCPCS
- #3792 [Hyperelastic] Reformat files and add override attribute
- #3782 [Core.Visual, Component.Visual] Create VisualState (formerly Vec3State)
-
SOFA Technical Committee in Paris from May 23th to 26th - Organization
- REGISTER NOW!!!
- Location information: Cap Digital, 14 rue Alexandre Parodi, Paris
- SOFA application for the French national prize for Open Science
- New plugin for elasticity on shells using FEM: https://github.com/SofaDefrost/Shell
- Several training sessions taking place and new dates are available
- Freeze the release branch v23.06 at the beginning of May
- Documentation for SofaCUDA : installation of the drivers should be tested on both Linux and Win. PR is opened but needs to be updated #87
- #3802 [PreassembledMass] Make it external → ready
- #3800 [BulletCollisionDetection] Revive project → ready
- #3799 [Simulation] Suggest required plugin in the syntax of the scene loader Very useful for users! → ready
- #3796 [Constraint] Add data to access constraint forces in LCPCS → ready
- #3792 [Hyperelastic] Reformat files and add override attribute Just cleaning and formatting. → ready
- #3783 [Sofa.Component.StateContainer] Fix bug in dynamic data registration. Changes suggested, waiting for feedback → wip
- #3782 [Core.Visual, Component.Visual] Create VisualState (formerly Vec3State) Work on full-floating visualization is paused, let’s merge it as is. → ready
- #2777 [LinearSystem] Refactor matrix assembly Last week, a discussion took place about some plugin compatibility. Now compilation is fixed for all plugins. The discussion also led to the conclusion that GPU codes should be opened Some issues remain about geometric stiffness to manage both forces and constraint forces. Even if no solution is implemented yet on this very specific case, the PR should be merged. A last clean will be done, then un-draft the PR and force-full-build. → to be merged
- #3795 [SofaCUDA] Reorganize following SOFA structure (8/n)
- #3791 [AnimationLoop] Call super init in FreeMotionAnimationLoop
- #3785 [SofaCUDA] Reorganize following SOFA structure (7/n)
- #3784 [Rendering3D] Missing StateLifeCycle
- #3780 [Config] Remove suspicious Eigen macro preventing vectorization
- #3776 [Mapping.NonLinear] Implement missing applyJT
- #3774 Update CONTRIBUTING.md
- #3771 [SofaPhysicsAPI] Remove unreachable code
- #3768 [examples] Introduce example and tests for SquareMapping
- #3680 [Mapping] Adds template to RigidMapping
- SOFA Technical Committee in Paris from May 23th to 26th - SAVE THE DATE
Announcement email incoming!!!
- Registration will be compulsory
- Sprint topics are being listed https://github.com/sofa-framework/sofa/issues?q=is%3Aopen+is%3Aissue+label%3ASTC%2315+
- Freeze the release branch v23.06 at the beginning of May
- Documentation for SofaCUDA should be updated : at least mentioning that CUDA12 is not supported so far (could be updated for the v23.06)
- #3782 [Core.Visual, Component.Visual] Create VisualState (formerly Vec3State) In the objective to have an Ogl model fully in float for performances, this is a first step towards templating the OglModelImpl. Evaluation of performance gain on Fred’s plugin is ongoing. → keep to review
- #3780 [Config] Remove suspicious Eigen macro preventing vectorization → ready
- #3776 [Mapping.NonLinear] Implement missing applyJT → ready
- #3774 Update CONTRIBUTING.md → ready
- #3771 [SofaPhysicsAPI] Remove unreachable code Issue pointed by maddin. The return could simply be removed, as well as all GUI related code. Revert and just remove the return → wip
- #3768 [examples] Introduce example and tests for SquareMapping Related to the comment in #2777, this scene and regression is testing the non-linear mappings in series → wait for the CI and then ready (regression)
- #3680 [Mapping] Adds template to RigidMapping Review done → ready
- #2777 [LinearSystem] Refactor matrix assembly Non-linear mappings in series are now supported. Regressions have been updated. Last todo : check that constraints are taken into account in non-linear mappings. A last discussion takes place today before the merge → keep to review
- #3775 [LinearAlgebra] Restore insertion operator for BaseVector
- #3763 [Core] Fix MSVC warning in Link
- #3761 [Mapping.NonLinear] Fix SquareMapping applyDJT
- #3760 [SofaCUDA] Reorganize following SOFA structure (6/n)
- #3757 [examples] Apply rest position in mappings
- #3756 [examples] Introduce examples for DistanceMapping and SquareDistanceMapping
- #3751 [plugins] ArticulatedSystemMapping : adds size check & fixes typo
-
SOFA Technical Committee in Paris from May 23th to 26th - Organization
- Email will be sent by next week (with registration link)
- Questions to members / EPIs: which dev topics to tackle
- Sprint topics are being listed here
- Dedicated page will be created and updated with all STC#15 information
- Defrost team is willing to increase the training materials to level up!
- Freeze the release branch v23.06 at the beginning of May
- #3761 [Mapping.NonLinear] Fix SquareMapping applyDJT Test added which was failing due to a misimplementation in the SquareMapping when a K cached matrix was not stored → ready
- #3757 [examples] Apply rest position in mappings Could be nice to see the impact of applyRestPosition=True as a default value → ready
- #3756 [examples] Introduce examples for DistanceMapping and SquareDistanceMapping → ready
- #3751 [plugins] ArticulatedSystemMapping : adds size check & fixes typo Callback has been properly added → ready
- #3680 [Mapping] Adds template to RigidMapping Looks good! Last reviews are being done → keep to review
- #2777 [LinearSystem] Refactor matrix assembly Two tasks ongoing: on geometric stiffness: combination of non-linear mappings is not working for now (to be done in a next PR) on geometric stiffness: take constraint forces into account generate the references for the regressions → wip
- #3763 [Core] Fix MSVC warning in Link
- #3760 [SofaCUDA] Reorganize following SOFA structure (6/n)
- #3758 [SofaCUDA] Reorganize following SOFA structure (5/n)
- #3755 [Tests] S.Components tests compiles with SReal=float
- #3754 [Spring] Remove variable redefinitions
- #3753 [Type] Support structured binding for type::fixed_array
- #3749 [GUI.Qt] Register meta type to fix asynchronous Qt call
- #3741 [Helper] Deprecate constructor of OptionsGroup
- #3740 [Mapping.NonLinear] Geometric stiffness method in an OptionsGroup
- #3714 [Core] TLink: Fix warnings about comparisons between unnamed enums
- New developers incoming in the community
- Organization of the STC : topics of the coding sprint will be discussed next week
- Next events:
- CMBBE SOFA workshop in Paris
- STC#15 in Paris
- SoFraSimS in Nice
- VivaTech in Paris
- Merge #2777 is imminent: test next week
- #3755 [Tests] S.Components tests compiles with SReal=float → wait the CI, ready
- #3754 [Spring] Remove variable redefinitions → ready
- #3753 [Type] Support structured binding for type::fixed_array Only supported by MSVC → wait CR then ready
- #3751 [plugins] ArticulatedSystemMapping : adds size check & fixes typo we discussed about a solution: a callback including the validity check could be added on the data so that we are sure about the validity anytime → wip
- #3749 [GUI.Qt] Register meta type to fix asynchronous Qt call Highlight the low quality of the GUI, looking forward to new work on GUI! → ready
- #3741 [Helper] Deprecate constructor of OptionsGroup Conflicts to solve and to be rebased. → keep to review
- #3740 [Mapping.NonLinear] Geometric stiffness method in an OptionsGroup For non-linear mappings, the option group becomes a data. A new PR will be done to create an intermediate class (NonLinearMapping and NonLinearMultiMapping) from which all non-linear classes must inherit. → ready
- #2777 [LinearSystem] Refactor matrix assembly Only remaining a regression on BeamForceFieldTest. Maybe due to the improvement of penalty forces taken into account with a direct (assembled) linear solver. → still to review until the end of next week (April, 7th)
- #3742 [example] Introduce an example for DistanceMultiMapping
- #3738 [applications] rename shadow variable
- #3737 [Helper] Improve OptionsGroup
- #3714 [Core] TLink: Fix warnings about comparisons between unnamed enums
- #3740 [Mapping.NonLinear] Geometric stiffness method in an OptionsGroup Unit tests are failing → wip
- #3738 [applications] rename shadow variable → ready
- #3737 [Helper] Improve OptionsGroup Unit tests are failing → wip then ready if fixed within the week
- #3680 [Mapping] Adds template to RigidMapping PR does not compile. Need thorough review. But the idea of the PR is accepted → keep to review
- #2777 [LinearSystem] Refactor matrix assembly Todo: highlight the most important code → keep to review
- #3727 [SofaCUDA] Fix includes pointing to compatibility layer
- #3713 [GUI.Qt] Clean and fix in the "inspector" panel
- #3711 [all] Remove a bunch of warnings
- #3707 [Mapping.NonLinear] Move DistanceMultiMapping in its own files
- #3706 [LinearSolver.Direct] Make sure the matrix is factorized in SparseCholeskySolver
- #3693 [Helper] Fix FileRepository::relativeToPath
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic
- #3714 [Core] TLink: Fix warnings about comparisons between unnamed enums → ready
- #3713 [GUI.Qt] Clean and fix in the "inspector" panel → ready
- #3711 [all] Remove a bunch of warnings → ready
- #3706 [LinearSolver.Direct] Make sure the matrix is factorized in SparseCholeskySolver → ready
- #3703 [Collision.Geometry] Replace comparison operator for deterministic sort → closed
- #3693 [Helper] Fix FileRepository::relativeToPath → ready
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField Reviews taken into account → ready
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic No more regression → ready, but PR #39 in Regression must be merged first
- #2777 [LinearSystem] Refactor matrix assembly → keep to review
- #3702 [IO.Mesh] Fix mesh creation if load called multiple times
- #3701 [SofaCUDA] Reorganize following SOFA structure (4/n)
- #3700 [LinearAlgebra] Fix crash when matrix has no nonzero values
-
[Collision] Make the (CubeModel) BoundingTree deterministic
- https://github.com/sofa-framework/sofa/pull/3703
- #3687 is selected to be merged (code is cleaner, easier to understand and performances difference are probably negligible. Remains to be done: re-generate the regression results.
- [InterventionalRadiologyController] Revert sampling change of behaviour Change of behavior introduced in https://github.com/sofa-framework/BeamAdapter/pull/62. A fix to restore the previous behavior in: https://github.com/sofa-framework/BeamAdapter/pull/88. The fix must be tested on scenes using the components. Decision on the merge will be taken next dev meeting
- #3702 [IO.Mesh] Fix mesh creation if load called multiple times This PR indicates that doLoad is called twice. It is called twice because the callback calls itself. The Data is edited whereas it is an output of the callback. The use of a WriteOnlyAccessor instead of WriteAccessor (or beginEdit) fixes this issue. Ready An issue must be created to warn that a WriteAccessor (or beginEdit) cannot be used in a callback -> https://github.com/sofa-framework/sofa/issues/3709
- #2777 [LinearSystem] Refactor matrix assembly Reviews are required → keep to review
- #3309 [Sofa.Core] Refactor BaseObject::canCreate & BaseObject::create → wip
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic Wait for regression results → keep to review
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField instead of invalidating the component, return silently → wip
- #337 Fix test according to the fix of string creation Depends on https://github.com/sofa-framework/sofa/pull/3702 → keep to review
- #336 Support dev environments on Windows Ready but to test with the installed SOFA. → ready
- #335 Prevent division by zero Exception must be thrown if nfo.size() is zero. If nfo.size() is zero, it must indicate a bug in SOFA. Need to be investigate to locate the bug. → keep to review
- #3698 [Geomagic] Fix potential crash at exit when device has not been init
- #3692 [MechanicalLoad] Stupid check for consistency between state and topology
- #3690 [FEM.Elastic] Check for nullptr in BeamFEMForceField
- #3685 [all] Simple robustification
- #3684 [SofaCUDA] Remove BeamLinearMapping<Rigid3fTypes,.>
- #3683 [Analyze] Raw pointers to Links
- #3682 [all] Give reason when component cannot be created
- #3678 [Config] Disable SOFA_EXTERN_TEMPLATE
- #3677 [Simulation] Error when trying to load a non-existing file
- Organization of the STC#15: more information coming very soon!!
- Work on CMake in Caribou plugin and associated SofaPython3 plugin by Rémi
- Discussion about FEM for continuum mechanics: TetahedronFEMForceField vs TetrahedralCorotational no more differences
- TetrahedronFEMForceField proposes linear elasticity in small deformation, a corotational approach for large displacement, a corotational-SVD approach
- TetrahedralCorotationalFEMForceField proposes the same with without factorizing code from TetrahedronFEMForceField (no inheritance). Erik started a work of factorization with TetrahedronFEMForceField
- FastTetrahedralCorotationalForceField: results differ due to code optimizations/approximations
- #3692 [MechanicalLoad] Stupid check for consistency between state and topology → ready
- #3691 [Spring] Check for nullptr in RestShapeSpringsForceField componentState to be added → wip
- #3690 [FEM.Elastic] Check for nullptr in BeamFEMForceField → ready
- #3687 [Collision] Make the (CubeModel) BoundingTree deterministic The use of stable_sort is slower than the basic sort. While having a deterministic result is expected for CI and for industrial applications. A more efficient while deterministic approach could be found like an additional check on other dimensions in the comparison operator. Test and benchmark should be done. → to be rediscussed
- #3685 [all] Simple robustification → ready
- #3684 [SofaCUDA] Remove BeamLinearMapping<Rigid3fTypes,.> → ready and fast merge
- #3683 [Analyze] Raw pointers to Links In an effort of generating the documentation, Alex fixed components crashing at initialization without data input. Paul noted that AverageCoord might be wrong for the Quat parts since a statistical average should be computed. PR to come → ready
- #3682 [all] Give reason when component cannot be created Clean is needed to clean the reason why a component cannot be created. Logs therefore are added, highlighting the fact that canCreate functions are sometimes copypasted. #3309 and #3311 were also going in this direction. #3309 factorizing this part of the code is set back to review. → ready
- #3680 [mapping] RigidRigidMapping: fixes init Feedback on the code given to Eulalie, and Paul will take a look → keep to review
- #3677 [Simulation] Error when trying to load a non-existing file Tests are added. → ready
- #2988 [All] Propose a new gravity API Not enough convincing arguments to bring such a breaking feature into SOFA. → close after STC#15
- #2777 [LinearSystem] Refactor matrix assembly Geometric stiffness is managed even for mapped non-linear mappings. Only current implementations of non-linear mappings are strange in several codes (like RigidMapping, where geometric stiffness behavior is deactivated by default) → stay tuned
- #3694 [Testing] Fix CMake config after removal of compat
- #3689 [IO.Mesh] Fix UB when filename is empty
- #3688 [SofaCUDA] Add missing templates for Cuda MechanicalObject
- #3686 [MultiThreading] Empty string instead of null pointer in DataExchange
- #3676 [Multithreading] Fix AnimationLoopParallelScheduler
- #3675 [Defaulttype] Add generic precision aliases for Mat templates
- #3674 [CI, Scenes] Restore custom parameters for the scene-tests
- #3672 [Helper] ArgumentParser: Fix map insertion when parsing more than once
- #3671 [Helper, GL] Fix various memleaks
- #3670 [MechanicalLoad] Fix ConstantForceField when no force given
- #3668 [MultiThreading] Implement addDForce in ParallelStiffSpringForceField
- #3666 [Helper,Geometry] Move proximity classes into free functions
- #3665 [Core] Use std::function for Link's Validator (and fix UB)
- #3664 [Core] Fix UB (misaligned address) when comparing string
- #3660 [SofaCUDA] Reorganize following SOFA structure (3/n)
- #3655 [all] Lifecycle v23.06 4/n
- #3654 [all] Lifecycle v23.06 3/n
- #3649 [all] Lifecycle v23.06 2/n
- Organization of the STC days in Paris
- Location being defined
- !!! Dates will be changed : 23 → 26th May !!!
- A new graph to present how to contribute code projects in the dev process of SOFA: Contributing guideline
- ALL PR must be first rebased with #3672 to check the tests
- Lifecycle for v23.06 is being prepared
- Log mutex locked twice (leading to crash) · Issue #3610
- Qt error is catched and displayed with msg. This creates a msg within another msg which generates a double mutex. Recursive mutex could solve it but it looks more like a design issue. We should maybe avoid forwarding messages within a SOFA msg
- Work on non-linear mappings continues: RigidMapping has been reviewed. An API is still there (getK(), a data geometricStiffness) but seems to be broken. The implementation should be assessed
- #3672 [Helper] ArgumentParser: Fix map insertion when parsing more than once Arguments of SOFA seem not to consider the path of a file if the arguments are given before the file path. Several scenes fail. It needs to be investigated and fixed in another PR → ready & merged
- #3671 [Helper, GL] Fix various memleaks MeshTopologyLoader uses the FactoryMesh::create function which creates a pointer but does not delete it. More generally MeshTopologyLoader #42 mention the fact that this part of the code should be deprecated (but it is still used in SparseGridRamification) → ready
- #3670 [MechanicalLoad] Fix ConstantForceField when no force given In the initData of the d_force data, it should be set to an explicit default value → wip
- #3668 [MultiThreading] Implement addDForce in ParallelStiffSpringForceField → ready
- #3666 [Helper,Geometry] Move proximity classes into free functions → ready
- #3665 [Core] Use std::function for Link's Validator (and fix UB) → ready
- #3664 [Core] Fix UB (misaligned address) when comparing string → ready
- #3655 [all] Lifecycle v23.06 4/n Wait for CI and merge → keep to review
- #3654 [all] Lifecycle v23.06 3/n → ready
- #2777 [LinearSystem] Refactor matrix assembly Should not wait for the integration of the feature of geometric stiffness. Few fixes to be done and then ALL should test their scene with this new API. → keep to review
- #3672 [Helper] ArgumentParser: Fix map insertion when parsing more than once
- #3667 [MultiThreading] Remove obsolete documentation
- #3660 [SofaCUDA] Reorganize following SOFA structure (3/n)
- #3658 [Collision.Geometry] Fix transparency while displaying the Bounding Collision Cubemodel
- #3650 [SofaCUDA] No longer use deprecated texture references in TetraTLED
- #3649 [all] Lifecycle v23.06 2/n
- #3635 [Scenes] Use "floating-point type"-independent templates
- #3634 [all] Lifecycle v23.06 1/n
- #3627 [Sofa] Remove warnings
- #3626 [Collision.Response.Contact] Implement addKToMatrix for PenalityContactForceField
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n)
- #3535 [all] Lifecycle v22.06
- Discussion about the organization of the SOFA Technical Committee (STC)
- Update about Jessy’s internship
- Contributing guideline: a new scheme will be proposed to clarify the discussion & contribution process
- Gitter moved to [Matrix]. TODO : add widget for recent activity
- Cuda async template unavailable #3644
- Template auto-instantiation caused a problem with CUDA. The role of template auto-instantiation should be re-discussed while the current fix removing the replacement of CRS_f to CRS_d is satisfactory for now. Update on the Caribou plugin: CMake of the SofaCaribou is being made similar to SOFA. For Caribou, CMake macros are not doing what is needed on Windows with python
- CUDA : review the content of SofaCUDA and make it compatible with other plugins (Defrost)
- CI : idea of STC discussion could be to clean all tests/scenes on the CI
- #3650 [SofaCUDA] No longer use deprecated texture references in TetraTLED Texture references have been disabled. Texture object could also have been used but it would have needed a dense refactoring. So a GPU pointer has been preferred. Fred will test the PR, Hexahedron is to be done. → keep to review
- #3649 [all] Lifecycle v23.06 2/n Wait for #3634 → keep to review
- #3635 [Scenes] Use "floating-point type"-independent templates → ready
- #3634 [all] Lifecycle v23.06 1/n → wait CI and then ready
- #3627 [Sofa] Remove warnings Remove both attribute [ [ maybe_used ] ] and the variable itself which does not seem to be actually used in the computation → back to wip
- #3535 [all] Lifecycle v22.06 Considered as ready → ready
- #2777 [LinearSystem] Refactor matrix assembly Will be rebased and tested in the next days → keep to review
- #3646 [defaulttype] Fix cuda template instantiation
- #3637 [GUI.Qt, Multithreading] Fix compilation when SReal=float
- #3636 [Topology.Container.Grid] RegularGrid: Fix rounding errors with SReal=float
- #3633 [Type] Fix massive warning due to Mat.h
- #3632 [SofaCUDA] Clean removed code and add useful one
- #3629 [Component.Engine] Replace some explicit instanciations on double with SReal
- #3628 [Sofa.framework] Compile and run tests when SReal is float
- #3626 [Collision.Response.Contact] Implement addKToMatrix for PenalityContactForceField
- #3625 [Contributing] Update file to mention good first issue
- #3624 [Tutorials] Fix CMake with Sofa.GUI
- #3620 [Simulation.Graph] SimpleAPI: Remove reference to Node argument in createChild()
- #3607 [MultiThreading] Factorize task scheduler user
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n)
- #3601 [SofaCUDA] Reorganize following SOFA structure (1/n)
- 2-week Jessy's internship on SOFA with investigations on pip install / conda install (SOFA deployment for python environment)
- Training material getting updated (continuum mechanics with Caribou)
- Soon, Inria Days on HPC : topic of resolution of linear systems could be of interest. We'll keep you updated!
- Events: SOFA has the opportunity to attend Vivatech & SoFraSimS 2023
- CI slaves : validity date extended Strange behavior using PenalityContactForceField with flashing contact point Update on the Caribou plugin Several repositories where CMake macros needed changed
- Several questions risen
- On Windows, why dlls are not copied in bin/ in when installing (unless, executing runSofa is impossible)
- On Windows, why keeping the folders Release/Debug/...
- Why the rules sofa/cmake/Module/windeployqt.cmake specify specific rules for the folders "resources" et "location"?
- What has been tested
- In-tree compilation (Windows / Linux(wsl/debian))
- Use of Python bindings (Windows / Linux(wsl/debian))
- Remains to be tested
- MacOs
- Out-of-tree compilation
- #3629 [Component.Engine] Replace some explicit instanciations on double with SReal → ready
- #3628 [Sofa.framework] Compile and run tests when SReal is float → ready
- #3627 [Sofa] Remove warnings Suggestion made → keep to review
- #3626 [Collision.Response.Contact] Implement addKToMatrix for PenalityContactForceField Check force derivation but impossible to test in a simulation since the feature is not available before #2777 → keep to review
- #3625 [Contributing] Update file to mention good first issue → ready
- #3624 [Tutorials] Fix CMake with Sofa.GUI Compilation error due to missing updates includes → wip
- #3620 [Simulation.Graph] SimpleAPI: Remove reference to Node argument in createChild() → ready
- #3607 [MultiThreading] Factorize task scheduler user Compilation has been fixed (decoration with deprecation was creating the error) → ready
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n) Merged first #3601 → keep to review
- #3601 [SofaCUDA] Reorganize following SOFA structure (1/n) Discussion on namespace (for code *.cu) will be updated later → ready
- #2777 [LinearSystem] Refactor matrix assembly PR is getting cleaned and updated (reason why the #3626 has been created). Before merging it, Alex would like to make sure that mapped non-linear mappings. InteractionForceFields are now working with the new API. However, performance and pattern-constance awareness are now paused. This could be done later. → keep to review
- #3622 [all] Update totalmass to totalMass
- #3612 [SofaPhysicsAPI] Fix compilation by replacing use of SofaGUI by sofa::GUI::common
- #3611 [Cmake] Update warning replacement message for deprecated macro sofa_add_XX
- #3596 [MultiThreading] Parallel springs
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline
- New consortium member! University Clermont Auvergne interested in stent simulation, thanks for their support
- New opensource plugin coupling SOFA - Unreal Engine released by InfinyTech3D
- New tutorial on parallelism in SOFA from Alexandre
- Training sessions going on! Check online for next dates
- Work on Caribou get restarted!
- [BeamAdapter] Change of behaviour in InterventionalRadiologyController #87 Bug has been identified for beams that are not visible, the computation using the curvilinear abscissa fails → a PR will be submitted by Camille with his python script possibly fixing the issue
- #3612 [SofaPhysicsAPI] Fix compilation by replacing use of SofaGUI by sofa::GUI::common → ready
- #3611 [Cmake] Update warning replacement message for deprecated macro sofa_add_XX → ready
- #3607 [MultiThreading] Factorize task scheduler user Work factorizing and cleaning the code but compilation fails → wip
- #3605 [SofaCUDA] Reorganize following SOFA structure (2/n) Wait for #3596, apply the new architecture using SofaCUDA → let it to review waiting for Alex feedback
- #3601 [SofaCUDA] Reorganize following SOFA structure (1/n) New architecture validated: SofaCUDA/component/… namespace sofa::gpu::cuda remains for utility code, to be discussed if we want to keep it → to review
- #3596 [MultiThreading] Parallel springs Reviews taken into account → ready
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline Use SOFA_DEPRECATED_ATTRIBUTE instead → wip
- #332 Update cmake.in to fix configuration step → ready and merged
- #3606 [Components] rename shadow variable
- #3603 [SofaCUDA] Missing support for double precision floating-points
- #3599 [MultiThreading] Prepare data for rendering in parallel
- #3598 [MultiThreading] Reorganize following SOFA structure
- #3597 [Simulation] SceneCheck can be added in plugins
- #3595 [GUI] Fix CMake Packaging
- #3594 [Spring] Remove duplicated code
- #3592 [defaulttype] Template aliases for CRS matrices
- #3588 [examples] Apply Sofa/Component structure for all examples
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix
- SOFA v22.12 is out, experience it!
- Community recruits!
- Coupling of SOFA and Unreal Engine is coming soon!
- Caribou plugin: new investigation on CMake and FEM
- Soon a tutorial video on coding with Multithreading plugin in SOFA
- Float compilation: all scenes are usually using
template=Vec3dwe should use the SReal versiontemplate=Vec3allowing us to test the float cases. Is float really useful? Remark added in #3451
-
#3601 [SofaCUDA] Reorganize following SOFA structure (1/n)
This PR does not change the namespaces, it only moves the files into the SOFA architecture and it adds a compatibility layer.
SOFA_ENABLE_LEGACY_HEADERSvariable is used to activate the compatibility layer. → approved but let open for further review (<7 days) - #3599 [MultiThreading] Prepare data for rendering in parallel → ready
-
#3598 [MultiThreading] Reorganize following SOFA structure
Plugin proposing code is now following the architecture of SOFA.
SOFA_ENABLE_LEGACY_HEADERSvariable is used to activate the compatibility layer. → ready -
#3597 [Simulation] SceneCheck can be added in plugins
This PR arises from the fact that we want to invite more users to use codes from the Multithreading. SceneCheck is generalized. We discussed the fact that in the Multithreading plugin components are named MultithreadingNameOfChildClass: the SceneCheck now suggests to use this verbose component name.
Discussion took place on the suggestion to use such code, should the MT classes be aliases of the sequential code, should the user have a boolean
threadeddata option that would activate one or the other version. → ready - #3596 [MultiThreading] Parallel springs Note on the call super. #3317 was a PR testing a new design. Call super issue open in #785. Work todo: use modern accessors instead of beginEdit → wip
- #3595 [GUI] Fix CMake Packaging → ready
- #3592 [defaulttype] Template aliases for CRS matrices Related to issue #3451 → ready
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline To be rebased → wip
- #3588 [examples] Apply Sofa/Component structure for all examples To be rebased → wip
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix Iteration process of the loop updated → ready
- #3603 [SofaCUDA] Missing support for double precision floating-points
- #3594 [Spring] Remove duplicated code
- #3593 [Mass] Remove empty loop in addForce
- #3591 [image] Fix Sofa.GUI dependency
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix
- #3581 [plugins] rename shadow variable
- #3575 [Core] Display flags spelling suggestion
- #3574 [MultiThreading] ParallelBruteForceBroadPhase: Fix assertion error
- #3573 [Project] Start v23.06 dev phase
- #3572 [Multithreading] 2 steps to maximize coalescing memory access
- #3570 [all] Fix some warnings further v22.12
- #3556 [LinearAlgebra, LinearSolver.Direct] make getSubMatrixDim() compile-time constant
- #3550 [GUI] GUI libraries as plugins
- #3526 [All] Fix example scenes showing warnings or errors
- #3465 [Helper] Use DataTypeInfo in NameDecoder
- SOFA v22.12 is out, experience it and share your feedback!
- Tutorial on how to contribute a bug fix in SOFA?
- STLIB SPLIT: a discussion could take place to evaluate the need to bring it back into SofaPython3 and discuss its format
- Interest of having SOFA installer with conda
- #3590 [Collision.Detection] Rename DefaultPipeline into CollisionPipeline Additional c++ error when using the old class and new namespace → wip
- #3588 [examples] Apply Sofa/Component structure for all examples Scene tests are failing / crashing → wip
- #3586 [LinearAlgebra] Factorize rotateMatrix in RotationMatrix We could find a way to explicit the type and the iteration process of the loop. Comment upcoming → keep to review then ready
- #3581 [plugins] rename shadow variable → ready
- #3575 [Core] Display flags spelling suggestion → ready
- #3574 [MultiThreading] ParallelBruteForceBroadPhase: Fix assertion error Could be replaced by the parallelForEach in another PR → ready
- #3572 [Multithreading] 2 steps to maximize coalescing memory access Conflicts. ParallelHexa had a naive approach (each thread with its own memory then serially assembles the result). Loop is now done over the nodes then requesting the surrounding elements. Implementation could be extended to the addForce (even if not the computational bottleneck) → wip
- #3570 [all] Fix some warnings further v22.12 → ready
-
#3556 [LinearAlgebra, LinearSolver.Direct] make getSubMatrixDim() compile-time constant
Parse function should warn when using the removed Data
blockSize🙏 Then, without additional feedback, will be merged → wip - #3550 [GUI] GUI libraries as plugins → ready
- #3526 [All] Fix example scenes showing warnings or errors Error opening file particleGravity.data → wip
- #3465 [Helper] Use DataTypeInfo in NameDecoder CI started, seems ok → ready
- #3585 [LinearAlgebra] Unit tests for RotationMatrix
- #3584 [Type] Construct matrices based on initializer-lists
- #3582 [LinearAlgebra] Remove wrong comment
- #3576 [CollisionOBBCapsule] Fix generation of configuration file for installation
- #3565 [Config] Remove unused SOFA_WITH_THREADING option
- #3563 [FEM.Elastic] Consistent default values for poisson's ratio and Young's modulus
- #3561 [SofaEulerianFluid] Fix: rename shadow variable in Fluid2D
- #3559 [Type] Quat: small optimization for axisToQuat()
- #3552 [MultiThreading] Introduce ParallelTetrahedronFEMForceField
- #3550 [GUI] GUI libraries as plugins
- #3548 [Core] Introduce parallel for each
- #3541 [StateContainer] Avoid code duplication in MechanicalObject
- #3534 [all] Lifecycle v22.12
- SOFA v22.12 upcoming this week
- SOFA Week 2022 - Symposium and STC#14 recordings available on YouTube
- [Sofa.LinearAlgebra] Pull Insimo's CompressedRowSparseMatrix into the main branch (#3515) Working branch only two tests were giving different results on non-zero values in CRS (python test check_matrix). Else useful and improving performance! Failing tests to be investigated.
- [MultiThreading] Implement domain decomposition for a lock-free parallelism (#3566) Make a ForceField parallel using domain decomposition (it is therefore only useful in an unbuilt CG): within one domain we cannot have twice on the same node. The decomposition is done at init. After fixing a bug in the benchmark, the performance gain is not as good as expected … The investigation led to an PR improving the naive version.
- Doc SofaPython3: a new way to generate the doc with sphinx and send it to readthedoc, using GitHub has to be investigated (#329)
- #3576 [CollisionOBBCapsule] Fix generation of configuration file for installation → ready
- #3573 [Project] Start v23.06 dev phase Waiting for the release to be completed (possible change in CHANGELOG if anything is backported) → keep to wip
- #3565 [Sofa.Config] Remove unused SOFA_WITH_THREADING option → ready
- #3563 [FEM.Elastic] Consistent default values for poisson's ratio and Young's modulus → ready
- #3561 [SofaEulerianFluid] Fix: rename shadow variable in Fluid2D → ready
- #3559 [Sofa.Type] Quat: small optimization for axisToQuat() → ready
- #3556 [LinearAlgebra, LinearSolver.Direct] make getSubMatrixDim() compile-time constant Could affect some private CUDA codes. Notify devs → keep to review
- #3552 [MultiThreading] Introduce ParallelTetrahedronFEMForceField Merge #3548 first then ready → ready
-
#3550 [Sofa.GUI] GUI libraries as plugins
Great work from Fred: runSofa was considering that Sofa.GUI was in charge of loading the libraries. This has been cleaned and now
- Qt/Batch/HeadLessRecorder are loadable plugins and register themselves in the GUIManager, if loaded .
- Batch is still forcefully loaded by runSofa
- SofaGui is officially deprecated → keep to review until next week
- #3548 [Core] Introduce parallel for each Will be merged this week! → ready
- #3541 [StateContainer] Avoid code duplication in MechanicalObject Report no visible change on either the speed or the accuracy → ready
- #3536 [DefaultType] RigidCoord/Deriv become iterable Devs are circumspect about the iteration of two different things : Position and Orientation. → close
- #3534 [all] Lifecycle v22.12 → ready
- #329 Update SofaPython3 plugin documentation Firstly regenerate doc and see how to connect with readthedoc. Comments given → wip
- #3564 [FEM.Elastic] Minor refactoring and optimization in draw
- #3562 [GUI] Revert unexpected change of behavior introduced in #3299
- #3560 [Helper] Fix GenerateRigidMass redirection
- #3551 [Core] Give threads a name on Windows
- #3545 [FEM.Elastic] Fix unit tests warnings
- #3501 [Solver.Direct] Unit test on topological changes leading to empty system
- CI MacOS using python has an issue, a workaround is proposed here, do not hesitate to apply it in your own plugin repositories. This might be fixed later (python action or homebrew)
- Use of external libraries could be considered to implement C++ code compatible with any accelerating architecture (GPU, multithreaded CPU etc). Sycl is an interesting example (Intel, Khronos)
- #3548 [Core] Introduce parallel for each Nice work to avoid the boiler plate code of Task with the old TaskScheduler. Tested and applied in BeamAdapter by Fred → ready but notify other reviewers to give them time to review/read
- #3545 [FEM.Elastic] Fix unit tests warnings → ready
- #3541 [StateContainer] Avoid code duplication in MechanicalObject Performances will be tested in the coming days → keep to review
- #3536 [DefaultType] RigidCoord/Deriv become iterable Need to know more about the utility, get back to Alex → keep to review
- #3535 [all] Lifecycle v22.06 For DISABLED macro, we must make sure that the compilation fails using =delete or DepreactedAndRemoved → back to wip
- #3526 [All] Fix example scenes showing warnings or errors Milestone v23.06, deeper review needed (400 files changed) → keep to review
- #3501 [Solver.Direct] Unit test on topological changes leading to empty system → ready
- #328 [CI] Fix mac ci with homebrew workaround → ready
- #327 Add unit test for Mass multiple inheritance → ready
- #3560 [Helper] Fix GenerateRigidMass redirection
- #3557 [SofaEulerianFluid] Fix: rename shadow variable in Fluid3D
- #3549 [GUI.Common] Cmake: Fix message when searching for Sofa.GL
- #3547 [Core] Missing include in SingleStateAccessor
- #3546 [Modeler] rename shadow variable
- #3540 [SofaPhysicsAPI] Add methods and C bindings to load SOFA ini file, plugins and messageHandler
- #3539 [SofaPhysicsAPI] Add C bindings to access C++ api