From 7237e27529567f8ee11fcd258b132bb016669ba1 Mon Sep 17 00:00:00 2001 From: bakpaul Date: Thu, 11 Jun 2026 09:48:08 +0200 Subject: [PATCH 1/3] Fix scenes with new integration schemes names --- .../BarycentricCenterEffector_Rigid.py | 6 +++--- .../component/constraint/CableActuator/CableActuator.py | 4 ++-- .../component/constraint/CableActuator/Finger.py | 4 ++-- .../component/constraint/CableEffector/PneuNets.py | 2 +- .../component/constraint/CableEquality/CableEquality.py | 2 +- .../component/constraint/ForcePointActuator/Tissues.py | 8 ++++---- .../ForceSurfaceActuator/ForceSurfaceActuator.py | 4 ++-- .../component/constraint/JointActuator/JointActuator.py | 6 +++--- .../component/constraint/SlidingActuator/actuatedBeam.py | 6 +++--- .../constraint/SlidingActuator/actuatedRigidCube.py | 6 +++--- .../constraint/SurfacePressureActuator/PneuNets.py | 4 ++-- .../SurfacePressureActuator/SurfacePressureActuator.py | 4 ++-- .../SurfacePressureAndCableActuator.py | 4 ++-- .../SurfacePressureEquality/SurfacePressureEquality.py | 2 +- .../component/constraint/VolumeEffector/VolumeEffector.py | 2 +- .../YoungModulusActuator/YoungModulusActuator.py | 4 ++-- examples/sofapython3/robots/Diamond.py | 6 +++--- .../PositionEffector/PositionEffector_Rigid.scn | 4 ++-- .../constraint/scenes/SurfacePressureConstraint.scn | 2 +- tests/component/solver/scenes/Finger.scn | 6 +++--- 20 files changed, 43 insertions(+), 43 deletions(-) diff --git a/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py b/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py index e7e09c4..945aa2b 100644 --- a/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py +++ b/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py @@ -13,7 +13,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [SparseLDLSolver] rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Iterative') # Needed to use components [CGLinearSolver] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.NonLinear') # Needed to use components [RigidMapping] - rootNode.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitSolver] + rootNode.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Topology.Container.Constant') # Needed to use components [MeshTopology] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Visual') # Needed to use components [VisualStyle] @@ -28,7 +28,7 @@ def createScene(rootNode): ########################################## goal = rootNode.addChild('goal') goal.addObject('VisualStyle', displayFlags="showCollisionModels") - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', template="Rigid3", showObject=True, showObjectScale=3, position=[[10, 0, 0, 0, 0, -sin(pi/16), cos(pi/16)]]) @@ -38,7 +38,7 @@ def createScene(rootNode): # solver ########################################## solverNode = rootNode.addChild('Solver') - solverNode.addObject('EulerImplicitSolver', firstOrder=False, rayleighStiffness=1) + solverNode.addObject('EulerImplicitIntegrationScheme', firstOrder=False, rayleighStiffness=1) solverNode.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") solverNode.addObject('GenericConstraintCorrection') diff --git a/examples/sofapython3/component/constraint/CableActuator/CableActuator.py b/examples/sofapython3/component/constraint/CableActuator/CableActuator.py index 0f6b00d..da3737b 100644 --- a/examples/sofapython3/component/constraint/CableActuator/CableActuator.py +++ b/examples/sofapython3/component/constraint/CableActuator/CableActuator.py @@ -13,7 +13,7 @@ def createScene(rootNode): # goal goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', position=[-5.72055, 1.13543, 3.10608]) goal.addObject('SphereCollisionModel', radius=0.25, group=3) @@ -21,7 +21,7 @@ def createScene(rootNode): # bunny bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver') + bunny.addObject('EulerImplicitIntegrationScheme') bunny.addObject('SparseLDLSolver') bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/sofapython3/component/constraint/CableActuator/Finger.py b/examples/sofapython3/component/constraint/CableActuator/Finger.py index 869a342..4b981be 100644 --- a/examples/sofapython3/component/constraint/CableActuator/Finger.py +++ b/examples/sofapython3/component/constraint/CableActuator/Finger.py @@ -21,7 +21,7 @@ def createScene(rootNode): # FEM Model # ########################################## finger = rootNode.addChild('finger') - finger.addObject('EulerImplicitSolver', firstOrder=True, rayleighMass=0.1, rayleighStiffness=0.1) + finger.addObject('EulerImplicitIntegrationScheme', firstOrder=True, rayleighMass=0.1, rayleighStiffness=0.1) finger.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") finger.addObject('MeshVTKLoader', name='loader', filename=path + 'finger.vtk') finger.addObject('MeshTopology', src='@loader', name='container') @@ -78,7 +78,7 @@ def createScene(rootNode): # Effector goal for interactive control # ########################################## goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', position=[-120, 7, 7]) diff --git a/examples/sofapython3/component/constraint/CableEffector/PneuNets.py b/examples/sofapython3/component/constraint/CableEffector/PneuNets.py index 591b3cf..da4bab8 100644 --- a/examples/sofapython3/component/constraint/CableEffector/PneuNets.py +++ b/examples/sofapython3/component/constraint/CableEffector/PneuNets.py @@ -17,7 +17,7 @@ def createScene(rootNode): # FEM Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver', rayleighStiffness=0.1, rayleighMass=0.1) + model.addObject('EulerImplicitIntegrationScheme', rayleighStiffness=0.1, rayleighMass=0.1) model.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") model.addObject('MeshVTKLoader', name='loader', filename=path + 'PneuNets.vtk') model.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/sofapython3/component/constraint/CableEquality/CableEquality.py b/examples/sofapython3/component/constraint/CableEquality/CableEquality.py index 6c1c322..fd09cac 100644 --- a/examples/sofapython3/component/constraint/CableEquality/CableEquality.py +++ b/examples/sofapython3/component/constraint/CableEquality/CableEquality.py @@ -24,7 +24,7 @@ def createScene(rootNode): # Mechanical Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver') + model.addObject('EulerImplicitIntegrationScheme') model.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') model.addObject('MeshVTKLoader', name='loader', filename=VolumetricMeshPath) model.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py b/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py index c6763c3..6cbe205 100644 --- a/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py +++ b/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py @@ -30,7 +30,7 @@ def createScene(rootNode): name='Sofa.Component.Mapping.Linear') # Needed to use components [BarycentricMapping] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mass') # Needed to use components [UniformMass] rootNode.addObject('RequiredPlugin', - name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitSolver] + name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.FEM.Elastic') # Needed to use components [TetrahedronFEMForceField] rootNode.addObject('RequiredPlugin', @@ -60,7 +60,7 @@ def createScene(rootNode): ########################################## goal = rootNode.addChild('goal') goal.addObject('VisualStyle', displayFlags='showCollisionModels') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', showObject=True, showObjectScale=10, drawMode=1, showColor=[255, 255, 255, 255], position=[40, 30, 30]) @@ -71,7 +71,7 @@ def createScene(rootNode): # FEM Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver') + model.addObject('EulerImplicitIntegrationScheme') model.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") model.addObject('MeshVTKLoader', name='loader', filename=path + 'sphere.vtk') model.addObject('MeshTopology', src='@loader', name='container') @@ -86,7 +86,7 @@ def createScene(rootNode): # FEM Model # ########################################## skin = rootNode.addChild('skin') - skin.addObject('EulerImplicitSolver') + skin.addObject('EulerImplicitIntegrationScheme') skin.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") skin.addObject('MeshVTKLoader', name='loader', filename=path + 'skin.vtk') skin.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/sofapython3/component/constraint/ForceSurfaceActuator/ForceSurfaceActuator.py b/examples/sofapython3/component/constraint/ForceSurfaceActuator/ForceSurfaceActuator.py index 6bc7813..51edff2 100644 --- a/examples/sofapython3/component/constraint/ForceSurfaceActuator/ForceSurfaceActuator.py +++ b/examples/sofapython3/component/constraint/ForceSurfaceActuator/ForceSurfaceActuator.py @@ -27,7 +27,7 @@ def createScene(rootNode): # Effector goal for interactive control # ########################################## goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=0.0001, threshold=0.0001) goal.addObject('MechanicalObject', name='dofs', showObject=True, showObjectScale=2, drawMode=1, position=[[50, 5, 130], [50, 5, 70], [50, 5, 15]]) @@ -44,7 +44,7 @@ def createScene(rootNode): # FEM Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver') + model.addObject('EulerImplicitIntegrationScheme') model.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") model.addObject('MeshVTKLoader', name='loader', filename=mecaMeshFile, scale3d=[1.5, 1.5, 1.5], translation=translation) diff --git a/examples/sofapython3/component/constraint/JointActuator/JointActuator.py b/examples/sofapython3/component/constraint/JointActuator/JointActuator.py index d21e81c..eb00b55 100644 --- a/examples/sofapython3/component/constraint/JointActuator/JointActuator.py +++ b/examples/sofapython3/component/constraint/JointActuator/JointActuator.py @@ -17,7 +17,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.AnimationLoop') # Needed to use components [FreeMotionAnimationLoop] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Constraint.Lagrangian.Correction') # Needed to use components [UncoupledConstraintCorrection] rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Iterative') # Needed to use components [CGLinearSolver] - rootNode.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitSolver] + rootNode.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Setting') # Needed to use components [BackgroundSetting] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Visual') # Needed to use components [VisualStyle] @@ -38,7 +38,7 @@ def createScene(rootNode): # Target position of the end effector goal = rootNode.addChild('Goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=25, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='dofs', position=[5, 5, 0], showObject=True, showObjectScale=0.5, drawMode=2) @@ -46,7 +46,7 @@ def createScene(rootNode): # Simulation node simulation = rootNode.addChild('Simulation') - simulation.addObject('EulerImplicitSolver') + simulation.addObject('EulerImplicitIntegrationScheme') simulation.addObject('CGLinearSolver', iterations=25, tolerance=1e-5, threshold=1e-5) object = simulation.addChild('Object') diff --git a/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py b/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py index 857c878..be8f15f 100644 --- a/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py +++ b/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py @@ -23,7 +23,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.NonLinear') # Needed to use components [RigidMapping] rootNode.addObject('RequiredPlugin', - name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitSolver] + name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] rootNode.addObject('RequiredPlugin', @@ -41,7 +41,7 @@ def createScene(rootNode): # Goal for end effector # ######################################### goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-4) goal.addObject('MechanicalObject', name='dofs', template='Rigid3', showObject=True, drawMode=2, showObjectScale=1, position=[30.0, 0.0, 0.0, 0, 0, 0, 1]) @@ -52,7 +52,7 @@ def createScene(rootNode): # Beam Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver', rayleighStiffness=0.1, rayleighMass=0.1) + model.addObject('EulerImplicitIntegrationScheme', rayleighStiffness=0.1, rayleighMass=0.1) model.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") model.addObject('GenericConstraintCorrection') model.addObject('MeshTopology', position=[[0, 0, 0], [5, 0, 0], [10, 0, 0], [15, 0, 0], [20, 0, 0]], diff --git a/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py b/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py index 33276fe..f16912e 100644 --- a/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py +++ b/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py @@ -17,7 +17,7 @@ def createScene(rootnode): name='Sofa.Component.Mapping.NonLinear') # Needed to use components [RigidMapping] rootnode.addObject('RequiredPlugin', name='Sofa.Component.Mass') # Needed to use components [UniformMass] rootnode.addObject('RequiredPlugin', - name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitSolver] + name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootnode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] rootnode.addObject('RequiredPlugin', name='Sofa.GL.Component.Rendering3D') # Needed to use components [OglModel] @@ -29,7 +29,7 @@ def createScene(rootnode): rootnode.addObject('QPInverseProblemSolver') cube = rootnode.addChild('Cube') - cube.addObject('EulerImplicitSolver') + cube.addObject('EulerImplicitIntegrationScheme') cube.addObject('SparseLDLSolver') cube.addObject('GenericConstraintCorrection') cube.addObject('MechanicalObject', template='Rigid3', position=[-10, 0, 0, 0, 0, 0, 1]) @@ -52,7 +52,7 @@ def createScene(rootnode): # Set a target for the effector that can be moved interactively target = rootnode.addChild('Target') - target.addObject('EulerImplicitSolver', firstOrder=True) + target.addObject('EulerImplicitIntegrationScheme', firstOrder=True) target.addObject('CGLinearSolver', tolerance=1e-5, iterations=20, threshold=1e-5) target.addObject('MechanicalObject', position=[30, 0, 0], showObject=True, drawMode=2, showObjectScale=3) target.addObject('PartialFixedProjectiveConstraint', fixedDirections=[0, 1, 1]) diff --git a/examples/sofapython3/component/constraint/SurfacePressureActuator/PneuNets.py b/examples/sofapython3/component/constraint/SurfacePressureActuator/PneuNets.py index e2746cb..5c57121 100644 --- a/examples/sofapython3/component/constraint/SurfacePressureActuator/PneuNets.py +++ b/examples/sofapython3/component/constraint/SurfacePressureActuator/PneuNets.py @@ -17,7 +17,7 @@ def createScene(rootNode): # Goal # ########################################## goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', position=[[-230, 15, 0]]) goal.addObject('SphereCollisionModel', radius=5, group=3) @@ -27,7 +27,7 @@ def createScene(rootNode): # FEM Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver', rayleighStiffness=0.2, rayleighMass=0.2) + model.addObject('EulerImplicitIntegrationScheme', rayleighStiffness=0.2, rayleighMass=0.2) model.addObject('SparseLDLSolver') model.addObject('MeshVTKLoader', name='loader', filename=path + 'PneuNets.vtk') diff --git a/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureActuator.py b/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureActuator.py index bbcde64..2ab1569 100644 --- a/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureActuator.py +++ b/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureActuator.py @@ -15,7 +15,7 @@ def createScene(rootNode): # goal goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', position=[-5.72055, 1.13543, 3.10608]) goal.addObject('SphereCollisionModel', radius=0.25, group=3) @@ -23,7 +23,7 @@ def createScene(rootNode): # bunny bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver') + bunny.addObject('EulerImplicitIntegrationScheme') bunny.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('MeshTopology', src=bunny.loader.linkpath, name='container') diff --git a/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureAndCableActuator.py b/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureAndCableActuator.py index 9dab45b..7f9c691 100644 --- a/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureAndCableActuator.py +++ b/examples/sofapython3/component/constraint/SurfacePressureActuator/SurfacePressureAndCableActuator.py @@ -15,7 +15,7 @@ def createScene(rootNode): # goal goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-05, threshold=1e-05) goal.addObject('MechanicalObject', name='goalMO', position=[-5.72055, 1.13543, 3.10608]) goal.addObject('SphereCollisionModel', radius=0.25, group=3) @@ -23,7 +23,7 @@ def createScene(rootNode): # bunny bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver') + bunny.addObject('EulerImplicitIntegrationScheme') bunny.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('MeshTopology', src=bunny.loader.linkpath, name='container') diff --git a/examples/sofapython3/component/constraint/SurfacePressureEquality/SurfacePressureEquality.py b/examples/sofapython3/component/constraint/SurfacePressureEquality/SurfacePressureEquality.py index db9eba8..c2bcc0f 100644 --- a/examples/sofapython3/component/constraint/SurfacePressureEquality/SurfacePressureEquality.py +++ b/examples/sofapython3/component/constraint/SurfacePressureEquality/SurfacePressureEquality.py @@ -30,7 +30,7 @@ def createScene(rootNode): # Mechanical Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver') + model.addObject('EulerImplicitIntegrationScheme') model.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") model.addObject('MeshVTKLoader', name='loader', filename=VolumetricMeshPath, scale3d=[1, 1, 1]) model.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/sofapython3/component/constraint/VolumeEffector/VolumeEffector.py b/examples/sofapython3/component/constraint/VolumeEffector/VolumeEffector.py index b579481..9742d29 100644 --- a/examples/sofapython3/component/constraint/VolumeEffector/VolumeEffector.py +++ b/examples/sofapython3/component/constraint/VolumeEffector/VolumeEffector.py @@ -15,7 +15,7 @@ def createScene(rootNode): # bunny bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver') + bunny.addObject('EulerImplicitIntegrationScheme') bunny.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/sofapython3/component/constraint/YoungModulusActuator/YoungModulusActuator.py b/examples/sofapython3/component/constraint/YoungModulusActuator/YoungModulusActuator.py index 7dc9b80..b92e83e 100644 --- a/examples/sofapython3/component/constraint/YoungModulusActuator/YoungModulusActuator.py +++ b/examples/sofapython3/component/constraint/YoungModulusActuator/YoungModulusActuator.py @@ -16,7 +16,7 @@ def createScene(rootNode): # goal goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) goal.addObject('MechanicalObject', name='goalMO', position=[[-2.87, 1.6, -3.46], [0.10, 2.19, -1.25]]) goal.addObject('SphereCollisionModel', radius=0.25, group=3) @@ -24,7 +24,7 @@ def createScene(rootNode): # bunny bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver', rayleighStiffness=0.1, rayleighMass=0.1) + bunny.addObject('EulerImplicitIntegrationScheme', rayleighStiffness=0.1, rayleighMass=0.1) bunny.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'bunny.vtu', translation=[0.1, 0, 1]) bunny.addObject('TetrahedronSetTopologyContainer', src='@loader', name='container') diff --git a/examples/sofapython3/robots/Diamond.py b/examples/sofapython3/robots/Diamond.py index 4606089..dbd5b28 100644 --- a/examples/sofapython3/robots/Diamond.py +++ b/examples/sofapython3/robots/Diamond.py @@ -13,7 +13,7 @@ def createScene(rootNode): settings.addObject('RequiredPlugin', name='Sofa.Component.IO.Mesh') # Needed to use components [MeshVTKLoader] settings.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [SparseLDLSolver] settings.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Iterative') # Needed to use components [CGLinearSolver,ShewchukPCGLinearSolver] - settings.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitSolver] + settings.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] settings.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] settings.addObject('RequiredPlugin', name='Sofa.Component.Visual') # Needed to use components [VisualStyle] settings.addObject('RequiredPlugin', name='Sofa.Component.Constraint.Projective') # Needed to use components [FixedProjectiveConstraint] @@ -38,7 +38,7 @@ def createScene(rootNode): #goal goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100,threshold=1e-5, tolerance=1e-5) goal.addObject('MechanicalObject', name='goalMO', position=[[0, 0, 125]]) goal.addObject('SphereCollisionModel', radius=5, group=1) @@ -46,7 +46,7 @@ def createScene(rootNode): #robot robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver') + robot.addObject('EulerImplicitIntegrationScheme') robot.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") robot.addObject('GenericConstraintCorrection') robot.addObject('MeshVTKLoader', name="loader", filename="mesh/diamond.vtk") diff --git a/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn b/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn index 5e1747f..413c6b3 100644 --- a/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn +++ b/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn @@ -11,7 +11,7 @@ - + @@ -30,7 +30,7 @@ - + - + diff --git a/tests/component/solver/scenes/Finger.scn b/tests/component/solver/scenes/Finger.scn index e4a20f4..7359443 100644 --- a/tests/component/solver/scenes/Finger.scn +++ b/tests/component/solver/scenes/Finger.scn @@ -12,7 +12,7 @@ - + @@ -28,7 +28,7 @@ - + @@ -36,7 +36,7 @@ - + From ae3139ae7b70918ec441c6be8d8264eba14fc6d4 Mon Sep 17 00:00:00 2001 From: bakpaul Date: Thu, 11 Jun 2026 10:03:58 +0200 Subject: [PATCH 2/3] Fix tests --- tests/component/solver/scenes/CubeOnFloor.pyscn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/component/solver/scenes/CubeOnFloor.pyscn b/tests/component/solver/scenes/CubeOnFloor.pyscn index f7439bf..4c2a7f5 100644 --- a/tests/component/solver/scenes/CubeOnFloor.pyscn +++ b/tests/component/solver/scenes/CubeOnFloor.pyscn @@ -32,7 +32,7 @@ def createScene(rootNode): # FEM Model # ########################################## model = rootNode.addChild('model') - model.addObject('EulerImplicitSolver') + model.addObject('EulerImplicitIntegrationScheme') model.addObject('SparseLDLSolver') model.addObject('RegularGridTopology', name='loader', n=[6, 6, 6], min=[-10, -10, -10], max=[10, 10, 10]) model.addObject('MechanicalObject', name='tetras', template='Vec3', showIndices=False, showIndicesScale=4e-5) From d3850f8582e44c047af99791fdda28a98cf5f401 Mon Sep 17 00:00:00 2001 From: bakpaul Date: Thu, 11 Jun 2026 11:43:47 +0200 Subject: [PATCH 3/3] Fix requiredPlugins --- .../BarycentricCenterEffector_Rigid.py | 2 +- .../component/constraint/ForcePointActuator/Tissues.py | 2 +- .../component/constraint/JointActuator/JointActuator.py | 2 +- .../component/constraint/SlidingActuator/actuatedBeam.py | 2 +- .../component/constraint/SlidingActuator/actuatedRigidCube.py | 2 +- examples/sofapython3/robots/Diamond.py | 2 +- .../constraint/PositionEffector/PositionEffector_Rigid.scn | 2 +- tests/component/solver/scenes/Finger.scn | 2 +- 8 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py b/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py index 945aa2b..cc8865e 100644 --- a/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py +++ b/examples/sofapython3/component/constraint/BarycentricCenterEffector/BarycentricCenterEffector_Rigid.py @@ -13,7 +13,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [SparseLDLSolver] rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Iterative') # Needed to use components [CGLinearSolver] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.NonLinear') # Needed to use components [RigidMapping] - rootNode.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] + rootNode.addObject('RequiredPlugin', name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Topology.Container.Constant') # Needed to use components [MeshTopology] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Visual') # Needed to use components [VisualStyle] diff --git a/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py b/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py index 6cbe205..0027b5c 100644 --- a/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py +++ b/examples/sofapython3/component/constraint/ForcePointActuator/Tissues.py @@ -30,7 +30,7 @@ def createScene(rootNode): name='Sofa.Component.Mapping.Linear') # Needed to use components [BarycentricMapping] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mass') # Needed to use components [UniformMass] rootNode.addObject('RequiredPlugin', - name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] + name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.FEM.Elastic') # Needed to use components [TetrahedronFEMForceField] rootNode.addObject('RequiredPlugin', diff --git a/examples/sofapython3/component/constraint/JointActuator/JointActuator.py b/examples/sofapython3/component/constraint/JointActuator/JointActuator.py index eb00b55..ff83265 100644 --- a/examples/sofapython3/component/constraint/JointActuator/JointActuator.py +++ b/examples/sofapython3/component/constraint/JointActuator/JointActuator.py @@ -17,7 +17,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.AnimationLoop') # Needed to use components [FreeMotionAnimationLoop] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Constraint.Lagrangian.Correction') # Needed to use components [UncoupledConstraintCorrection] rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Iterative') # Needed to use components [CGLinearSolver] - rootNode.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] + rootNode.addObject('RequiredPlugin', name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Setting') # Needed to use components [BackgroundSetting] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Visual') # Needed to use components [VisualStyle] diff --git a/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py b/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py index be8f15f..ceadacf 100644 --- a/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py +++ b/examples/sofapython3/component/constraint/SlidingActuator/actuatedBeam.py @@ -23,7 +23,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.NonLinear') # Needed to use components [RigidMapping] rootNode.addObject('RequiredPlugin', - name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] + name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] rootNode.addObject('RequiredPlugin', diff --git a/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py b/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py index f16912e..e86ec57 100644 --- a/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py +++ b/examples/sofapython3/component/constraint/SlidingActuator/actuatedRigidCube.py @@ -17,7 +17,7 @@ def createScene(rootnode): name='Sofa.Component.Mapping.NonLinear') # Needed to use components [RigidMapping] rootnode.addObject('RequiredPlugin', name='Sofa.Component.Mass') # Needed to use components [UniformMass] rootnode.addObject('RequiredPlugin', - name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] + name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootnode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] rootnode.addObject('RequiredPlugin', name='Sofa.GL.Component.Rendering3D') # Needed to use components [OglModel] diff --git a/examples/sofapython3/robots/Diamond.py b/examples/sofapython3/robots/Diamond.py index dbd5b28..9f6ca63 100644 --- a/examples/sofapython3/robots/Diamond.py +++ b/examples/sofapython3/robots/Diamond.py @@ -13,7 +13,7 @@ def createScene(rootNode): settings.addObject('RequiredPlugin', name='Sofa.Component.IO.Mesh') # Needed to use components [MeshVTKLoader] settings.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [SparseLDLSolver] settings.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Iterative') # Needed to use components [CGLinearSolver,ShewchukPCGLinearSolver] - settings.addObject('RequiredPlugin', name='Sofa.Component.ODESolver.Backward') # Needed to use components [EulerImplicitIntegrationScheme] + settings.addObject('RequiredPlugin', name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] settings.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] settings.addObject('RequiredPlugin', name='Sofa.Component.Visual') # Needed to use components [VisualStyle] settings.addObject('RequiredPlugin', name='Sofa.Component.Constraint.Projective') # Needed to use components [FixedProjectiveConstraint] diff --git a/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn b/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn index 413c6b3..3ba4978 100644 --- a/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn +++ b/examples/xml/component/constraint/PositionEffector/PositionEffector_Rigid.scn @@ -11,7 +11,7 @@ - + diff --git a/tests/component/solver/scenes/Finger.scn b/tests/component/solver/scenes/Finger.scn index 7359443..a6049e5 100644 --- a/tests/component/solver/scenes/Finger.scn +++ b/tests/component/solver/scenes/Finger.scn @@ -12,7 +12,7 @@ - +