diff --git a/examples/component/constraint/CableConstraint/CableSmoothActuation.py b/examples/component/constraint/CableConstraint/CableSmoothActuation.py index b73e04cf..0962e6cc 100644 --- a/examples/component/constraint/CableConstraint/CableSmoothActuation.py +++ b/examples/component/constraint/CableConstraint/CableSmoothActuation.py @@ -11,7 +11,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', pluginName= ['SoftRobots', 'Sofa.Component.SolidMechanics.Spring', 'Sofa.Component.Engine.Select', - 'Sofa.Component.ODESolver.Backward', + 'Sofa.Component.IntegrationSchemes.Backward', 'Sofa.Component.IO.Mesh', 'Sofa.GL.Component.Rendering2D', 'Sofa.GL.Component.Rendering3D', @@ -41,7 +41,7 @@ def createScene(rootNode): ################################################### Bunny ###################################################### ################################################################################################################ bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver', name='odesolver') + bunny.addObject('EulerImplicitIntegrationScheme', name='odesolver') bunny.addObject('EigenSimplicialLDLT', template="CompressedRowSparseMatrixMat3x3d") bunny.addObject('MeshVTKLoader', name='loader', filename=path+'Hollow_Stanford_Bunny.vtu') diff --git a/examples/component/constraint/CableConstraint/DisplacementVsForceControl.py b/examples/component/constraint/CableConstraint/DisplacementVsForceControl.py index da4dc02c..4e827d27 100644 --- a/examples/component/constraint/CableConstraint/DisplacementVsForceControl.py +++ b/examples/component/constraint/CableConstraint/DisplacementVsForceControl.py @@ -22,7 +22,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology diff --git a/examples/component/constraint/CableConstraint/Finger.py b/examples/component/constraint/CableConstraint/Finger.py index e9bb14fe..8322bc87 100644 --- a/examples/component/constraint/CableConstraint/Finger.py +++ b/examples/component/constraint/CableConstraint/Finger.py @@ -16,7 +16,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField @@ -44,7 +44,7 @@ def createScene(rootNode): # FEM Model # ########################################## finger = rootNode.addChild('finger') - finger.addObject('EulerImplicitSolver', name='odesolver', rayleighMass=0.1, rayleighStiffness=0.1) + finger.addObject('EulerImplicitIntegrationScheme', name='odesolver', rayleighMass=0.1, rayleighStiffness=0.1) finger.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') # Add a component to load a VTK tetrahedral mesh and expose the resulting topology in the scene . diff --git a/examples/component/constraint/CableConstraint/FingerWithSTLIB.py b/examples/component/constraint/CableConstraint/FingerWithSTLIB.py index 1aded738..6c5f3ee3 100644 --- a/examples/component/constraint/CableConstraint/FingerWithSTLIB.py +++ b/examples/component/constraint/CableConstraint/FingerWithSTLIB.py @@ -24,7 +24,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Dynamic", # Needed to use components TetrahedronSetTopologyContainer diff --git a/examples/component/constraint/JointConstraint/JointConstraint.py b/examples/component/constraint/JointConstraint/JointConstraint.py index fea6d87c..a28bae67 100644 --- a/examples/component/constraint/JointConstraint/JointConstraint.py +++ b/examples/component/constraint/JointConstraint/JointConstraint.py @@ -16,7 +16,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.IO.Mesh') # Needed to use components [MeshSTLLoader] rootNode.addObject('RequiredPlugin', 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] + 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.SolidMechanics.FEM.Elastic') # Needed to use components [BeamFEMForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] @@ -32,7 +32,7 @@ def createScene(rootNode): # Simulation node simulation = rootNode.addChild('Simulation') - simulation.addObject('EulerImplicitSolver') + simulation.addObject('EulerImplicitIntegrationScheme') simulation.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") simulation.addObject('GenericConstraintCorrection') diff --git a/examples/component/constraint/PositionConstraint/PositionConstraint.py b/examples/component/constraint/PositionConstraint/PositionConstraint.py index da3a6e08..f74c4a87 100644 --- a/examples/component/constraint/PositionConstraint/PositionConstraint.py +++ b/examples/component/constraint/PositionConstraint/PositionConstraint.py @@ -8,7 +8,7 @@ def createScene(rootnode): rootnode.addObject('VisualStyle', displayFlags='showForceFields') body = rootnode.addChild('Body') - body.addObject('EulerImplicitSolver') + body.addObject('EulerImplicitIntegrationScheme') body.addObject('SparseLDLSolver') body.addObject('RegularGridTopology', min=[0, 0, 0], max=[0.5, 1, 0.1], n=[5, 10, 2]) body.addObject('MechanicalObject') diff --git a/examples/component/constraint/SurfacePressureConstraint/PressureVsVolumeGrowthControl.py b/examples/component/constraint/SurfacePressureConstraint/PressureVsVolumeGrowthControl.py index edeab60b..77e70dee 100644 --- a/examples/component/constraint/SurfacePressureConstraint/PressureVsVolumeGrowthControl.py +++ b/examples/component/constraint/SurfacePressureConstraint/PressureVsVolumeGrowthControl.py @@ -18,7 +18,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshOBJLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology diff --git a/examples/component/constraint/SurfacePressureConstraint/Springy.py b/examples/component/constraint/SurfacePressureConstraint/Springy.py index 5037f0bd..0910b7f6 100644 --- a/examples/component/constraint/SurfacePressureConstraint/Springy.py +++ b/examples/component/constraint/SurfacePressureConstraint/Springy.py @@ -19,7 +19,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField @@ -43,7 +43,7 @@ def createScene(rootNode): # FEM Model # ########################################## accordion = rootNode.addChild('accordion') - accordion.addObject('EulerImplicitSolver', firstOrder=False, rayleighStiffness=0.2, rayleighMass=0.2) + accordion.addObject('EulerImplicitIntegrationScheme', firstOrder=False, rayleighStiffness=0.2, rayleighMass=0.2) accordion.addObject('SparseLDLSolver') accordion.addObject('MeshVTKLoader', name='loader', filename=path + 'Springy.vtk', rotation=[0, 0, 0]) diff --git a/examples/component/constraint/SurfacePressureConstraint/SurfacePressureConstraint.py b/examples/component/constraint/SurfacePressureConstraint/SurfacePressureConstraint.py index fdf4b25e..6bcc3392 100644 --- a/examples/component/constraint/SurfacePressureConstraint/SurfacePressureConstraint.py +++ b/examples/component/constraint/SurfacePressureConstraint/SurfacePressureConstraint.py @@ -14,7 +14,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [EigenSimplicialLDLT] rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.Linear') # Needed to use components [BarycentricMapping,IdentityMapping] 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] + rootNode.addObject('RequiredPlugin', name='Sofa.Component.IntegrationSchemes.Backward') # Needed to use components [EulerImplicitIntegrationScheme] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.FEM.Elastic') # Needed to use components [FastTetrahedralCorotationalForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] @@ -36,7 +36,7 @@ def createScene(rootNode): # bunny bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver', name='odesolver') + bunny.addObject('EulerImplicitIntegrationScheme', name='odesolver') bunny.addObject('EigenSimplicialLDLT', template='CompressedRowSparseMatrixMat3x3') bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('TetrahedronSetTopologyContainer', src='@loader', name='container') diff --git a/examples/component/constraint/UnilateralPlaneConstraint/ArticulatedTentacle.py b/examples/component/constraint/UnilateralPlaneConstraint/ArticulatedTentacle.py index f9e5b403..9fa9b42d 100644 --- a/examples/component/constraint/UnilateralPlaneConstraint/ArticulatedTentacle.py +++ b/examples/component/constraint/UnilateralPlaneConstraint/ArticulatedTentacle.py @@ -23,7 +23,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField @@ -51,7 +51,7 @@ def createScene(rootNode): # FEM Model tentacle = rootNode.addChild('tentacle') - tentacle.addObject('EulerImplicitSolver', name='odesolver', rayleighMass=0.1, rayleighStiffness=0.1) + tentacle.addObject('EulerImplicitIntegrationScheme', name='odesolver', rayleighMass=0.1, rayleighStiffness=0.1) tentacle.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') tentacle.addObject('MeshVTKLoader', name='loader', filename=path+'Tentacle.vtk') diff --git a/examples/component/controller/AnimationEditor/RigidAnimation.py b/examples/component/controller/AnimationEditor/RigidAnimation.py index 4ce55fde..65230bb2 100644 --- a/examples/component/controller/AnimationEditor/RigidAnimation.py +++ b/examples/component/controller/AnimationEditor/RigidAnimation.py @@ -14,7 +14,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', pluginName=[ "Sofa.Component.IO.Mesh", # Needed to use components MeshOBJLoader "Sofa.Component.LinearSolver.Iterative", # Needed to use components CGLinearSolver - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.GL.Component.Rendering3D", # Needed to use components OglModel, OglSceneFrame ]) @@ -23,7 +23,7 @@ def createScene(rootNode): rootNode.addObject('DefaultVisualManagerLoop') point = rootNode.addChild('point') - point.addObject('EulerImplicitSolver', firstOrder=True) + point.addObject('EulerImplicitIntegrationScheme', firstOrder=True) point.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) point.addObject('MechanicalObject', template='Rigid3', position=[0, 0, 0, 0, 0, 0, 1], diff --git a/examples/component/controller/AnimationEditor/__init__.py b/examples/component/controller/AnimationEditor/__init__.py index 4ff1a519..f5fb7816 100644 --- a/examples/component/controller/AnimationEditor/__init__.py +++ b/examples/component/controller/AnimationEditor/__init__.py @@ -41,7 +41,7 @@ def createScene(rootNode): point = rootNode.addChild('point') - point.addObject('EulerImplicitSolver', firstOrder=True) + point.addObject('EulerImplicitIntegrationScheme', firstOrder=True) point.addObject('CGLinearSolver', iterations=100, tolerance=1e-5, threshold=1e-5) point.addObject('MechanicalObject', template='Rigid3', position=[0, 0, 0, 0, 0, 0, 1], diff --git a/examples/component/controller/CommunicationController/SimulationDirect_Receiver.py b/examples/component/controller/CommunicationController/SimulationDirect_Receiver.py index e0a5913a..c32d3127 100644 --- a/examples/component/controller/CommunicationController/SimulationDirect_Receiver.py +++ b/examples/component/controller/CommunicationController/SimulationDirect_Receiver.py @@ -14,7 +14,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology diff --git a/examples/component/controller/CommunicationController/SimulationInverse_Sender.py b/examples/component/controller/CommunicationController/SimulationInverse_Sender.py index 0bf8a182..0434efde 100644 --- a/examples/component/controller/CommunicationController/SimulationInverse_Sender.py +++ b/examples/component/controller/CommunicationController/SimulationInverse_Sender.py @@ -18,7 +18,7 @@ def createScene(rootNode): "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.LinearSolver.Iterative", # Needed to use components CGLinearSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology @@ -45,7 +45,7 @@ def createScene(rootNode): if INVERSE: # 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=[0, 0, 8]) goal.addObject('SphereCollisionModel', radius=1) diff --git a/examples/component/controller/CommunicationController/modules/accordion3.py b/examples/component/controller/CommunicationController/modules/accordion3.py index d40c1f5c..32502558 100644 --- a/examples/component/controller/CommunicationController/modules/accordion3.py +++ b/examples/component/controller/CommunicationController/modules/accordion3.py @@ -5,7 +5,7 @@ def addAccordion(node, inverse=False): accordion = node.addChild('accordion') - accordion.addObject('EulerImplicitSolver', firstOrder=False, rayleighStiffness=0.1, rayleighMass=0.1) + accordion.addObject('EulerImplicitIntegrationScheme', firstOrder=False, rayleighStiffness=0.1, rayleighMass=0.1) accordion.addObject('SparseLDLSolver') accordion.addObject('MeshVTKLoader', name='loader', filename=path+'Springy.vtk') accordion.addObject('MeshTopology', src='@loader') diff --git a/examples/component/controller/DataVariationLimiter/DataVariationLimiter.py b/examples/component/controller/DataVariationLimiter/DataVariationLimiter.py index c3619297..6eff6a3b 100644 --- a/examples/component/controller/DataVariationLimiter/DataVariationLimiter.py +++ b/examples/component/controller/DataVariationLimiter/DataVariationLimiter.py @@ -26,8 +26,8 @@ def createScene(rootNode): "Sofa.Component.LinearSolver.Iterative", # Needed to use components CGLinearSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", - # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", + # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.Component.SolidMechanics.FEM.Elastic", @@ -62,7 +62,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=[0, 0, 5], @@ -81,7 +81,7 @@ def createScene(rootNode): # FEM Model # ########################################## accordion = rootNode.addChild('accordion') - accordion.addObject('EulerImplicitSolver', firstOrder=False, rayleighStiffness=0.1, rayleighMass=0.1) + accordion.addObject('EulerImplicitIntegrationScheme', firstOrder=False, rayleighStiffness=0.1, rayleighMass=0.1) accordion.addObject('SparseLDLSolver') accordion.addObject('MeshVTKLoader', name='loader', filename=pathMesh + 'Accordion.vtu', rotation=[90, 0, 0]) diff --git a/examples/component/controller/DataVariationLimiter/__init__.py b/examples/component/controller/DataVariationLimiter/__init__.py index 5a736c88..12eb5b4e 100644 --- a/examples/component/controller/DataVariationLimiter/__init__.py +++ b/examples/component/controller/DataVariationLimiter/__init__.py @@ -28,7 +28,7 @@ .. sourcecode:: python goal = rootNode.createChild('goal') - goal.createObject('EulerImplicitSolver') + goal.createObject('EulerImplicitIntegrationScheme') goal.createObject('CGLinearSolver', iterations='100', tolerance="1e-5", threshold="1e-5") goal.createObject('MechanicalObject', name='goalMO', position='0 0 5', diff --git a/examples/component/engine/VolumeFromTetrahedrons/Finger.py b/examples/component/engine/VolumeFromTetrahedrons/Finger.py index e72c21c7..3dd06bef 100644 --- a/examples/component/engine/VolumeFromTetrahedrons/Finger.py +++ b/examples/component/engine/VolumeFromTetrahedrons/Finger.py @@ -12,7 +12,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', pluginName=[ "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Iterative", # Needed to use components CGLinearSolver - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.Topology.Container.Dynamic", # Needed to use components TetrahedronSetTopologyContainer, TetrahedronSetTopologyModifier @@ -26,7 +26,7 @@ def createScene(rootNode): # FEM Model # ########################################## finger = rootNode.addChild('finger') - finger.addObject('EulerImplicitSolver') + finger.addObject('EulerImplicitIntegrationScheme') finger.addObject('CGLinearSolver', iterations=25, tolerance=1e-5, threshold=1e-5) finger.addObject('MeshVTKLoader', name='loader', filename=path + 'finger.vtk') diff --git a/examples/component/engine/VolumeFromTriangles/Finger.py b/examples/component/engine/VolumeFromTriangles/Finger.py index e27e956d..6a0258ee 100644 --- a/examples/component/engine/VolumeFromTriangles/Finger.py +++ b/examples/component/engine/VolumeFromTriangles/Finger.py @@ -11,7 +11,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', pluginName=[ "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader "Sofa.Component.LinearSolver.Iterative", # Needed to use components CGLinearSolver - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology "Sofa.Component.Visual", # Needed to use components VisualStyle @@ -28,7 +28,7 @@ def createScene(rootNode): # FEM Model # ########################################## finger = rootNode.addChild('finger') - finger.addObject('EulerImplicitSolver') + finger.addObject('EulerImplicitIntegrationScheme') finger.addObject('CGLinearSolver', iterations=25, tolerance=1e-5, threshold=1e-5) finger.addObject('MeshSTLLoader', name='loader', filename=path + 'finger.stl') diff --git a/examples/sofaros/test_sofaros.py b/examples/sofaros/test_sofaros.py index 698cb96b..eeb8ce7d 100644 --- a/examples/sofaros/test_sofaros.py +++ b/examples/sofaros/test_sofaros.py @@ -16,8 +16,8 @@ def recv(data, datafield): def createScene(rootNode): rootNode.addObject('RequiredPlugin', - pluginName=["Sofa.Component.ODESolver.Backward", "Sofa.Component.SceneUtility"]) - rootNode.addObject("EulerImplicitSolver") + pluginName=["Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SceneUtility"]) + rootNode.addObject("EulerImplicitIntegrationScheme") rootNode.addObject("CGLinearSolver", iterations=25, threshold=1e-5, tolerance=1e-5) rootNode.addObject('DefaultAnimationLoop') rootNode.addObject('DefaultVisualManagerLoop') diff --git a/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Beam/Beam.py b/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Beam/Beam.py index 823e9567..b686e8e5 100644 --- a/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Beam/Beam.py +++ b/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Beam/Beam.py @@ -29,7 +29,7 @@ def createScene(rootNode): # Beam model beam = rootNode.addChild('beam') - beam.addObject('EulerImplicitSolver') + beam.addObject('EulerImplicitIntegrationScheme') beam.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixd') beam.addObject('MeshTopology', edges=edgesList) beam.addObject('MechanicalObject', template="Rigid3", position=positionsList, name='frame') diff --git a/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Hexa/Hexa.py b/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Hexa/Hexa.py index 66ac0518..d04acc74 100644 --- a/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Hexa/Hexa.py +++ b/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Hexa/Hexa.py @@ -21,7 +21,7 @@ def createScene(rootNode): ############################### robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver') + robot.addObject('EulerImplicitIntegrationScheme') robot.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') # Here you set the Hexahedron topology robot.addObject('MeshSTLLoader', name='loader', filename=path + 'branch.stl') diff --git a/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Tetra/Tetra.py b/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Tetra/Tetra.py index 5365b780..282e509d 100644 --- a/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Tetra/Tetra.py +++ b/examples/thematicalDocs/T1-Elements_TetraHexaBeam/Tetra/Tetra.py @@ -22,7 +22,7 @@ def createScene(rootNode): ############################### robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver') + robot.addObject('EulerImplicitIntegrationScheme') robot.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') robot.addObject('MeshVTKLoader', name='loader', filename=path + 'branch.vtu') # Here you set the tetrahedra topology diff --git a/examples/thematicalDocs/T3-MaterialProperties/Elastic/Simulation.py b/examples/thematicalDocs/T3-MaterialProperties/Elastic/Simulation.py index a0abd3cb..9ac44879 100644 --- a/examples/thematicalDocs/T3-MaterialProperties/Elastic/Simulation.py +++ b/examples/thematicalDocs/T3-MaterialProperties/Elastic/Simulation.py @@ -22,7 +22,7 @@ def createScene(rootNode): ############################### robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver') + robot.addObject('EulerImplicitIntegrationScheme') robot.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') robot.addObject('MeshVTKLoader', name='loader', filename=path + 'branch.vtu') robot.addObject('TetrahedronSetTopologyContainer', position='@loader.position', tetrahedra='@loader.tetrahedra', diff --git a/examples/thematicalDocs/T3-MaterialProperties/Hyperelastic/Simulation.py b/examples/thematicalDocs/T3-MaterialProperties/Hyperelastic/Simulation.py index 2e5b8ea1..0e0c6707 100644 --- a/examples/thematicalDocs/T3-MaterialProperties/Hyperelastic/Simulation.py +++ b/examples/thematicalDocs/T3-MaterialProperties/Hyperelastic/Simulation.py @@ -22,7 +22,7 @@ def createScene(rootNode): ############################### robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver') + robot.addObject('EulerImplicitIntegrationScheme') robot.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') robot.addObject('MeshVTKLoader', name='loader', filename=path + 'branch.vtu') robot.addObject('TetrahedronSetTopologyContainer', position='@loader.position', tetrahedra='@loader.tetrahedra', diff --git a/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableDisplacement.py b/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableDisplacement.py index 8951efe9..29be5546 100644 --- a/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableDisplacement.py +++ b/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableDisplacement.py @@ -24,7 +24,7 @@ def createScene(rootNode): # FEM Model # ########################################## finger = rootNode.addChild('finger') - finger.addObject('EulerImplicitSolver', name='odesolver', firstOrder=True) + finger.addObject('EulerImplicitIntegrationScheme', name='odesolver', firstOrder=True) finger.addObject('SparseLDLSolver', name='preconditioner', template='CompressedRowSparseMatrixMat3x3d') # Add a component to load a VTK tetrahedral mesh and expose the resulting topology in the scene . diff --git a/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableForce.py b/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableForce.py index f2345d1d..e6231bee 100644 --- a/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableForce.py +++ b/examples/thematicalDocs/T4-DirectActuation/Actuators/Cable/CableForce.py @@ -24,7 +24,7 @@ def createScene(rootNode): # FEM Model # ########################################## finger = rootNode.addChild('finger') - finger.addObject('EulerImplicitSolver', name='odesolver', firstOrder=True) + finger.addObject('EulerImplicitIntegrationScheme', name='odesolver', firstOrder=True) finger.addObject('SparseLDLSolver', name='preconditioner', template='CompressedRowSparseMatrixMat3x3d') # Add a component to load a VTK tetrahedral mesh and expose the resulting topology in the scene . diff --git a/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintPressure.py b/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintPressure.py index 8c2d0043..483cb025 100644 --- a/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintPressure.py +++ b/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintPressure.py @@ -18,7 +18,7 @@ def createScene(rootNode): # bunny mechanical model bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver', name='odesolver') + bunny.addObject('EulerImplicitIntegrationScheme', name='odesolver') bunny.addObject('SparseLDLSolver', name='LDLsolver') bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('TetrahedronSetTopologyContainer', src='@loader', name='container') diff --git a/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintVolume.py b/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintVolume.py index cf82cd19..521a6355 100644 --- a/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintVolume.py +++ b/examples/thematicalDocs/T4-DirectActuation/Actuators/Pneumatic/SurfaceConstraintVolume.py @@ -16,7 +16,7 @@ def createScene(rootNode): # bunny mechanical model bunny = rootNode.addChild('bunny') - bunny.addObject('EulerImplicitSolver', name='odesolver') + bunny.addObject('EulerImplicitIntegrationScheme', name='odesolver') bunny.addObject('SparseLDLSolver', name='LDLsolver') bunny.addObject('MeshVTKLoader', name='loader', filename=path + 'Hollow_Stanford_Bunny.vtu') bunny.addObject('TetrahedronSetTopologyContainer', src='@loader', name='container') diff --git a/examples/thematicalDocs/T4-DirectActuation/DriveTheRobot/Simulation.py b/examples/thematicalDocs/T4-DirectActuation/DriveTheRobot/Simulation.py index 023c9c6f..75aa484d 100644 --- a/examples/thematicalDocs/T4-DirectActuation/DriveTheRobot/Simulation.py +++ b/examples/thematicalDocs/T4-DirectActuation/DriveTheRobot/Simulation.py @@ -28,7 +28,7 @@ def createScene(rootNode): ############################### robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver', name='odesolver', firstOrder=False) + robot.addObject('EulerImplicitIntegrationScheme', name='odesolver', firstOrder=False) robot.addObject('SparseLDLSolver') robot.addObject('MeshVTKLoader', name='loader', filename=path + 'branch.vtu') robot.addObject('TetrahedronSetTopologyContainer', position='@loader.position', tetrahedra='@loader.tetrahedra', diff --git a/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.psl b/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.psl index f1ec1de4..4e4592c4 100644 --- a/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.psl +++ b/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.psl @@ -15,7 +15,7 @@ Node : { name : "root" #goal ########################### Node : { name : "goal" - EulerImplicitSolver : {firstOrder : "1"} + EulerImplicitIntegrationScheme : {firstOrder : "1"} CGLinearSolver : {iterations : "200" tolerance : "1e-05" threshold : "1e-05"} MechanicalObject : { name : "goalMO" @@ -31,7 +31,7 @@ Node : { name : "root" #robot ########################### Node : {name : "robot" - EulerImplicitSolver : {} + EulerImplicitIntegrationScheme : {} ShewchukPCGLinearSolver : {iterations : "25" tolerance : "1e-15" preconditioners : "preconditioner"} SparseLDLSolver : {name : "preconditioner"} MeshVTKLoader : {name : "loader" filename : "mesh/branch.vtu"} diff --git a/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.py b/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.py index 919099d7..573212d2 100644 --- a/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.py +++ b/examples/thematicalDocs/T5-OpenLoopControl/InverseSimulation/simuInverse.py @@ -29,7 +29,7 @@ def createScene(rootNode): # EFFECTOR GOAL ########################################## goal = rootNode.addChild('goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=200, threshold=1e-5, tolerance=1e-5) goal.addObject('MechanicalObject', name='goalMO', showObject=1, @@ -43,7 +43,7 @@ def createScene(rootNode): ############################### robot = rootNode.addChild('robot') - robot.addObject('EulerImplicitSolver', name='odesolver', firstOrder=False) + robot.addObject('EulerImplicitIntegrationScheme', name='odesolver', firstOrder=False) robot.addObject('SparseLDLSolver') robot.addObject('MeshVTKLoader', name='loader', filename=path + 'branch.vtu') robot.addObject('MeshTopology', src='@loader') diff --git a/examples/tutorials/CircularRobot/circularrobot.py b/examples/tutorials/CircularRobot/circularrobot.py index 32abf670..e26fe3a5 100644 --- a/examples/tutorials/CircularRobot/circularrobot.py +++ b/examples/tutorials/CircularRobot/circularrobot.py @@ -7,7 +7,7 @@ def Target(parentNode): target = parentNode.addChild('Target') - target.addObject('EulerImplicitSolver', firstOrder=True) + target.addObject('EulerImplicitIntegrationScheme', firstOrder=True) target.addObject('CGLinearSolver', iterations=100, tolerance=1e-4, threshold=1e-4) target.addObject('MechanicalObject', name='dofs', showObject=True, showObjectScale=5, drawMode=1, position=[0, 0, 5]) @@ -55,7 +55,7 @@ def __init__(self, parentNode, youngModulus=500, poissonRatio=0.3, totalMass=0.0 self.node = parentNode.addChild('CircularRobot') if withSolver: - self.node.addObject('EulerImplicitSolver', rayleighMass=0.015, rayleighStiffness=0.015) + self.node.addObject('EulerImplicitIntegrationScheme', rayleighMass=0.015, rayleighStiffness=0.015) self.node.addObject('SparseLDLSolver') self.node.addObject("GenericConstraintCorrection") @@ -130,8 +130,8 @@ def createScene(rootNode): "Sofa.Component.LinearSolver.Iterative", # Needed to use components CGLinearSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", - # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", + # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.Topology.Container.Constant", diff --git a/examples/tutorials/DiamondRobot/DiamondRobot.py b/examples/tutorials/DiamondRobot/DiamondRobot.py index 4d4dce62..f1c2a7c7 100644 --- a/examples/tutorials/DiamondRobot/DiamondRobot.py +++ b/examples/tutorials/DiamondRobot/DiamondRobot.py @@ -27,7 +27,7 @@ def createScene(rootNode): "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.LinearSolver.Iterative", # Needed to use components ShewchukPCGLinearSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology "Sofa.Component.Visual", # Needed to use components VisualStyle @@ -40,7 +40,7 @@ def createScene(rootNode): # Robot robot = rootNode.addChild('Robot') # The solvers - robot.addObject('EulerImplicitSolver') + robot.addObject('EulerImplicitIntegrationScheme') robot.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixMat3x3d") # Load the volume mesh robot.addObject('MeshVTKLoader', name="loader", filename=meshRobot) diff --git a/examples/tutorials/FirstSteps/details/step1.py b/examples/tutorials/FirstSteps/details/step1.py index 331b1326..f634cae0 100644 --- a/examples/tutorials/FirstSteps/details/step1.py +++ b/examples/tutorials/FirstSteps/details/step1.py @@ -15,7 +15,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", "Sofa.Component.Visual", diff --git a/examples/tutorials/FirstSteps/details/step2.py b/examples/tutorials/FirstSteps/details/step2.py index fa41fad6..c76a2ab0 100644 --- a/examples/tutorials/FirstSteps/details/step2.py +++ b/examples/tutorials/FirstSteps/details/step2.py @@ -8,7 +8,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", "Sofa.Component.Visual", @@ -37,7 +37,7 @@ def createScene(rootNode): # Time integration and solver - cube.addObject('EulerImplicitSolver', name='odesolver') + cube.addObject('EulerImplicitIntegrationScheme', name='odesolver') cube.addObject('CGLinearSolver', name='Solver', iterations=25, tolerance=1e-5, threshold=1e-5) # Visual Object of the Cube diff --git a/examples/tutorials/FirstSteps/details/step3.py b/examples/tutorials/FirstSteps/details/step3.py index 745fce3c..13805171 100644 --- a/examples/tutorials/FirstSteps/details/step3.py +++ b/examples/tutorials/FirstSteps/details/step3.py @@ -14,7 +14,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", "Sofa.Component.Visual", @@ -44,7 +44,7 @@ def createScene(rootNode): # Time integration and solver - cube.addObject('EulerImplicitSolver', name='odesolver') + cube.addObject('EulerImplicitIntegrationScheme', name='odesolver') cube.addObject('CGLinearSolver', name='Solver', iterations=25, tolerance=1e-5, threshold=1e-5) # Visual Object of the Cube diff --git a/examples/tutorials/FirstSteps/details/step4.py b/examples/tutorials/FirstSteps/details/step4.py index 929af0e2..0d1b5228 100644 --- a/examples/tutorials/FirstSteps/details/step4.py +++ b/examples/tutorials/FirstSteps/details/step4.py @@ -16,7 +16,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", "Sofa.Component.Visual", diff --git a/examples/tutorials/FirstSteps/firststeps-tuto.py b/examples/tutorials/FirstSteps/firststeps-tuto.py index ee4bf4fb..a403e575 100644 --- a/examples/tutorials/FirstSteps/firststeps-tuto.py +++ b/examples/tutorials/FirstSteps/firststeps-tuto.py @@ -15,7 +15,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", "Sofa.Component.Visual", diff --git a/examples/tutorials/PneunetGripper/details/step5-timeIntegrationAndMatrixSolver.py b/examples/tutorials/PneunetGripper/details/step5-timeIntegrationAndMatrixSolver.py index 089b2a22..607397ff 100644 --- a/examples/tutorials/PneunetGripper/details/step5-timeIntegrationAndMatrixSolver.py +++ b/examples/tutorials/PneunetGripper/details/step5-timeIntegrationAndMatrixSolver.py @@ -13,7 +13,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.IO.Mesh') # Needed to use components [MeshVTKLoader] rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [SparseLDLSolver] 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] + rootNode.addObject('RequiredPlugin', 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', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] @@ -22,7 +22,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.GUI.Component') # Needed to use components [AttachBodyButtonSetting] finger = rootNode.addChild('Finger') - finger.addObject('EulerImplicitSolver') + finger.addObject('EulerImplicitIntegrationScheme') finger.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixd') finger.addObject('MeshVTKLoader', name='loader', filename='data/mesh/pneunetCutCoarse.vtk') finger.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/tutorials/PneunetGripper/details/step6-pneumaticActuatorAndPythonScriptController.py b/examples/tutorials/PneunetGripper/details/step6-pneumaticActuatorAndPythonScriptController.py index 4d836b94..dd592849 100644 --- a/examples/tutorials/PneunetGripper/details/step6-pneumaticActuatorAndPythonScriptController.py +++ b/examples/tutorials/PneunetGripper/details/step6-pneumaticActuatorAndPythonScriptController.py @@ -14,7 +14,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.LinearSolver.Direct') # Needed to use components [SparseLDLSolver] rootNode.addObject('RequiredPlugin', 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] + rootNode.addObject('RequiredPlugin', 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', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] @@ -28,7 +28,7 @@ def createScene(rootNode): rootNode.addObject('BlockGaussSeidelConstraintSolver', tolerance=1e-7, maxIterations=1000) finger = rootNode.addChild('Finger') - finger.addObject('EulerImplicitSolver', rayleighStiffness=0.1, rayleighMass=0.1) + finger.addObject('EulerImplicitIntegrationScheme', rayleighStiffness=0.1, rayleighMass=0.1) finger.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixd') finger.addObject('MeshVTKLoader', name='loader', filename='data/mesh/pneunetCutCoarse.vtk') finger.addObject('MeshTopology', src='@loader', name='container') diff --git a/examples/tutorials/PneunetGripper/details/step7-grabTheCube.py b/examples/tutorials/PneunetGripper/details/step7-grabTheCube.py index 0ae7e277..ebb347cd 100644 --- a/examples/tutorials/PneunetGripper/details/step7-grabTheCube.py +++ b/examples/tutorials/PneunetGripper/details/step7-grabTheCube.py @@ -32,7 +32,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.Linear') # Needed to use components [BarycentricMapping] rootNode.addObject('RequiredPlugin', 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] + 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.SolidMechanics.FEM.Elastic') # Needed to use components [TetrahedronFEMForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] @@ -75,7 +75,7 @@ def createScene(rootNode): # Cube ########################################## cube = rootNode.addChild('Cube') - cube.addObject('EulerImplicitSolver') + cube.addObject('EulerImplicitIntegrationScheme') cube.addObject('CGLinearSolver', threshold=1e-5, tolerance=1e-5, iterations=50) cube.addObject('MechanicalObject', template='Rigid3', position=[-100, 70, 0, 0, 0, 0, 1]) cube.addObject('UniformMass', totalMass=0.001) @@ -102,7 +102,7 @@ def createScene(rootNode): # Finger Model ########################################## finger = rootNode.addChild('Finger' + str(i + 1)) - finger.addObject('EulerImplicitSolver', name='odesolver', rayleighStiffness=0.1, rayleighMass=0.1) + finger.addObject('EulerImplicitIntegrationScheme', name='odesolver', rayleighStiffness=0.1, rayleighMass=0.1) finger.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") finger.addObject('MeshVTKLoader', name='loader', filename='data/mesh/pneunetCutCoarse.vtk', rotation=[360 - angles[i] * 180 / math.pi, 0, 0], translation=translations[i]) diff --git a/examples/tutorials/PneunetGripper/details/step7-withSTLIB.py b/examples/tutorials/PneunetGripper/details/step7-withSTLIB.py index 2ffa545c..c3790aa1 100644 --- a/examples/tutorials/PneunetGripper/details/step7-withSTLIB.py +++ b/examples/tutorials/PneunetGripper/details/step7-withSTLIB.py @@ -30,7 +30,7 @@ def createScene(rootNode): rootNode.addObject('RequiredPlugin', name='Sofa.Component.Mapping.Linear') # Needed to use components [BarycentricMapping] rootNode.addObject('RequiredPlugin', 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] + rootNode.addObject('RequiredPlugin', 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', name='Sofa.Component.SolidMechanics.Spring') # Needed to use components [RestShapeSpringsForceField] rootNode.addObject('RequiredPlugin', name='Sofa.Component.StateContainer') # Needed to use components [MechanicalObject] diff --git a/examples/tutorials/PneunetGripper/pneunetgripper-tuto.html b/examples/tutorials/PneunetGripper/pneunetgripper-tuto.html index 906f31a8..a4fad042 100644 --- a/examples/tutorials/PneunetGripper/pneunetgripper-tuto.html +++ b/examples/tutorials/PneunetGripper/pneunetgripper-tuto.html @@ -231,7 +231,7 @@

Appendix

planeNode.addObject('OglModel',name='Visual', src='@loader', color=[1, 0, 0, 1]) cube = rootNode.addChild('cube') - cube.addObject('EulerImplicitSolver', name='odesolver') + cube.addObject('EulerImplicitIntegrationScheme', name='odesolver') cube.addObject('SparseLDLSolver', name='linearSolver') cube.addObject('MechanicalObject', template='Rigid3', position=[-100, 70, 0, 0, 0, 0, 1]) cube.addObject('UniformMass', totalMass=0.001) @@ -258,7 +258,7 @@

Appendix

# Finger Model # ########################################## finger = rootNode.addChild('finger'+str(i+1)) - finger.addObject('EulerImplicitSolver', name='odesolver', rayleighStiffness=0.1, rayleighMass=0.1) + finger.addObject('EulerImplicitIntegrationScheme', name='odesolver', rayleighStiffness=0.1, rayleighMass=0.1) finger.addObject('SparseLDLSolver', name='preconditioner') finger.addObject('MeshVTKLoader', name='loader', filename='data/mesh/pneunetCutCoarse.vtk', rotation=[360 - angles[i]*180/math.pi, 0, 0], translation = translations[i]) diff --git a/examples/tutorials/PneunetGripper/pneunetgripper-tuto.md b/examples/tutorials/PneunetGripper/pneunetgripper-tuto.md index 6f745b8c..5f66dd08 100644 --- a/examples/tutorials/PneunetGripper/pneunetgripper-tuto.md +++ b/examples/tutorials/PneunetGripper/pneunetgripper-tuto.md @@ -246,7 +246,7 @@ def createScene(rootNode): planeNode.addObject('OglModel',name='Visual', src='@loader', color=[1, 0, 0, 1]) cube = rootNode.addChild('cube') - cube.addObject('EulerImplicitSolver', name='odesolver') + cube.addObject('EulerImplicitIntegrationScheme', name='odesolver') cube.addObject('SparseLDLSolver', name='linearSolver') cube.addObject('MechanicalObject', template='Rigid3', position=[-100, 70, 0, 0, 0, 0, 1]) cube.addObject('UniformMass', totalMass=0.001) @@ -273,7 +273,7 @@ def createScene(rootNode): # Finger Model # ########################################## finger = rootNode.addChild('finger'+str(i+1)) - finger.addObject('EulerImplicitSolver', name='odesolver', rayleighStiffness=0.1, rayleighMass=0.1) + finger.addObject('EulerImplicitIntegrationScheme', name='odesolver', rayleighStiffness=0.1, rayleighMass=0.1) finger.addObject('SparseLDLSolver', name='preconditioner') finger.addObject('MeshVTKLoader', name='loader', filename='data/mesh/pneunetCutCoarse.vtk', rotation=[360 - angles[i]*180/math.pi, 0, 0], translation = translations[i]) diff --git a/examples/tutorials/SoftArmGripper/header.py b/examples/tutorials/SoftArmGripper/header.py index f742ee8c..f0756fc9 100644 --- a/examples/tutorials/SoftArmGripper/header.py +++ b/examples/tutorials/SoftArmGripper/header.py @@ -16,7 +16,7 @@ def addHeader(node): "Sofa.Component.IO.Mesh", # Needed to use components MeshOBJLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.Setting", # Needed to use components BackgroundSetting "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology diff --git a/examples/tutorials/SoftArmGripper/scene.py b/examples/tutorials/SoftArmGripper/scene.py index c0d11a4f..69543064 100644 --- a/examples/tutorials/SoftArmGripper/scene.py +++ b/examples/tutorials/SoftArmGripper/scene.py @@ -32,7 +32,7 @@ def addArm(node): size = params.Arm.nbRibs * params.Arm.nbSection arm = node.addChild("Arm") arm.addData(name='nbDofs', value=len(position), type='int') - arm.addObject('EulerImplicitSolver', firstOrder=True) + arm.addObject('EulerImplicitIntegrationScheme', firstOrder=True) arm.addObject('SparseLDLSolver', name='ldl', template='CompressedRowSparseMatrixMat3x3d') arm.addObject('GenericConstraintCorrection') arm.addObject('MeshTopology', position=position, edges=edges) @@ -73,7 +73,7 @@ def addFinger(node, fingerId, translation, rotation): cable = [[], [], []] finger = node.addChild('Finger' + str(fingerId + 1)) - finger.addObject('EulerImplicitSolver', firstOrder=False) + finger.addObject('EulerImplicitIntegrationScheme', firstOrder=False) finger.addObject('SparseLDLSolver', template='CompressedRowSparseMatrixMat3x3d') finger.addObject('GenericConstraintCorrection') finger.addObject('MeshVTKLoader', name='loader', filename=params.Simulation.path + '/mesh/finger.vtk', @@ -172,7 +172,7 @@ def createScene(rootnode): # You can select the target with the mouse (left click) while pressing the shift key on the keyboard. # Once selected you can move the target around and see the robot follow. target = rootnode.addChild('Target') - target.addObject('EulerImplicitSolver', firstOrder=True) + target.addObject('EulerImplicitIntegrationScheme', firstOrder=True) target.addObject('CGLinearSolver', iterations=10, threshold=1e-5, tolerance=1e-5) target.addObject('MechanicalObject', name='dofs', template='Rigid3', position=[0, 880, 0, 0, 0, 0, 1]) target.addObject('SphereCollisionModel', radius=20) diff --git a/examples/tutorials/SoftFingerDesign/details/cylinder.py b/examples/tutorials/SoftFingerDesign/details/cylinder.py index cb387dfd..44417193 100644 --- a/examples/tutorials/SoftFingerDesign/details/cylinder.py +++ b/examples/tutorials/SoftFingerDesign/details/cylinder.py @@ -63,7 +63,7 @@ def Cylinder(name="Cylinder", object.addObject('UniformMass', name="mass", vertexMass=[totalMass, volume, inertiaMatrix[:]]) if not isAStaticObject: - object.addObject('EulerImplicitSolver') + object.addObject('EulerImplicitIntegrationScheme') object.addObject('CGLinearSolver') def addCollisionModel(inputMesh=surfaceMeshFileName): diff --git a/examples/tutorials/SoftFingerDesign/details/elastic_material_object.py b/examples/tutorials/SoftFingerDesign/details/elastic_material_object.py index a8780bd5..514f430b 100644 --- a/examples/tutorials/SoftFingerDesign/details/elastic_material_object.py +++ b/examples/tutorials/SoftFingerDesign/details/elastic_material_object.py @@ -26,7 +26,7 @@ def __init__(self, *args, **kwargs): def init(self): if self.solverName.value == '': - self.integration = self.addObject('EulerImplicitSolver', name='integration') + self.integration = self.addObject('EulerImplicitIntegrationScheme', name='integration') self.solver = self.addObject('SparseLDLSolver', name="solver") if self.volumeMeshFileName.value == '': diff --git a/examples/tutorials/Tripod/details/maze.py b/examples/tutorials/Tripod/details/maze.py index b751b25e..2b1b8dac 100644 --- a/examples/tutorials/Tripod/details/maze.py +++ b/examples/tutorials/Tripod/details/maze.py @@ -39,7 +39,7 @@ def __init__(self, *args, **kwargs): def init(self): if self.withSolver.value: - self.addObject('EulerImplicitSolver') + self.addObject('EulerImplicitIntegrationScheme') self.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") self.addObject('GenericConstraintCorrection') self.addObject("MechanicalObject", position=self.position.value) @@ -60,7 +60,7 @@ def createScene(rootNode): "Sofa.Component.Constraint.Lagrangian.Solver", "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", @@ -74,7 +74,7 @@ def createScene(rootNode): rootNode.addObject('DefaultVisualManagerLoop') effector = rootNode.addChild('Effector') - effector.addObject('EulerImplicitSolver', firstOrder=True) + effector.addObject('EulerImplicitIntegrationScheme', firstOrder=True) effector.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) effector.addObject('MechanicalObject', template='Rigid3', name='goalMO', position=[0, 40, 0, 0, 0, 0, 1], showObject=True, showObjectScale=10) diff --git a/examples/tutorials/Tripod/details/step8-maze.py b/examples/tutorials/Tripod/details/step8-maze.py index 31337a74..f68c5fe6 100644 --- a/examples/tutorials/Tripod/details/step8-maze.py +++ b/examples/tutorials/Tripod/details/step8-maze.py @@ -13,7 +13,7 @@ def EffectorGoal(node, position): goal = node.addChild('Goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, threshold=1e-12, tolerance=1e-10) goal.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position+[0., 0., 0., 1.], showObject=True, showObjectScale=10) goal.addObject('RestShapeSpringsForceField', points=0, angularStiffness=1e5, stiffness=1e5) diff --git a/examples/tutorials/Tripod/details/step8.py b/examples/tutorials/Tripod/details/step8.py index cdb16192..a52f45b2 100644 --- a/examples/tutorials/Tripod/details/step8.py +++ b/examples/tutorials/Tripod/details/step8.py @@ -11,7 +11,7 @@ def EffectorGoal(position): self = Sofa.Core.Node('Goal') - self.addObject('EulerImplicitSolver', firstOrder=True) + self.addObject('EulerImplicitIntegrationScheme', firstOrder=True) self.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) self.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position + [0., 0., 0., 1.], showObject=True, showObjectScale=10) diff --git a/examples/tutorials/Tripod/details/step9.py b/examples/tutorials/Tripod/details/step9.py index 53142aa2..e276dae8 100644 --- a/examples/tutorials/Tripod/details/step9.py +++ b/examples/tutorials/Tripod/details/step9.py @@ -11,7 +11,7 @@ def EffectorGoal(position, name='Goal'): self = Sofa.Core.Node(name) - self.addObject('EulerImplicitSolver', firstOrder=True) + self.addObject('EulerImplicitIntegrationScheme', firstOrder=True) self.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) self.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position + [0., 0., 0., 1.], showObject=True, showObjectScale=10) diff --git a/examples/tutorials/Tripod/details/tutorial.py b/examples/tutorials/Tripod/details/tutorial.py index 1be6bcef..c53fd7e2 100644 --- a/examples/tutorials/Tripod/details/tutorial.py +++ b/examples/tutorials/Tripod/details/tutorial.py @@ -51,7 +51,7 @@ def Modelling(parent): def Simulation(parent): """add an empty node for simulation""" simulation = parent.addChild("Simulation") - simulation.addObject("EulerImplicitSolver") + simulation.addObject("EulerImplicitIntegrationScheme") simulation.addObject("CGLinearSolver", iterations=250, tolerance=1e-20, threshold=1e-20) return simulation diff --git a/examples/tutorials/Tripod/myproject/maze.py b/examples/tutorials/Tripod/myproject/maze.py index b751b25e..2b1b8dac 100644 --- a/examples/tutorials/Tripod/myproject/maze.py +++ b/examples/tutorials/Tripod/myproject/maze.py @@ -39,7 +39,7 @@ def __init__(self, *args, **kwargs): def init(self): if self.withSolver.value: - self.addObject('EulerImplicitSolver') + self.addObject('EulerImplicitIntegrationScheme') self.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") self.addObject('GenericConstraintCorrection') self.addObject("MechanicalObject", position=self.position.value) @@ -60,7 +60,7 @@ def createScene(rootNode): "Sofa.Component.Constraint.Lagrangian.Solver", "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", @@ -74,7 +74,7 @@ def createScene(rootNode): rootNode.addObject('DefaultVisualManagerLoop') effector = rootNode.addChild('Effector') - effector.addObject('EulerImplicitSolver', firstOrder=True) + effector.addObject('EulerImplicitIntegrationScheme', firstOrder=True) effector.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) effector.addObject('MechanicalObject', template='Rigid3', name='goalMO', position=[0, 40, 0, 0, 0, 0, 1], showObject=True, showObjectScale=10) diff --git a/examples/tutorials/Tripod/myproject/parts/maze.py b/examples/tutorials/Tripod/myproject/parts/maze.py index 9dba6ffc..efe8e306 100644 --- a/examples/tutorials/Tripod/myproject/parts/maze.py +++ b/examples/tutorials/Tripod/myproject/parts/maze.py @@ -36,7 +36,7 @@ def __init__(self, *args, **kwargs): def init(self): if self.withSolver.value: - self.addObject('EulerImplicitSolver') + self.addObject('EulerImplicitIntegrationScheme') self.addObject('SparseLDLSolver') self.addObject('GenericConstraintCorrection') self.addObject("MechanicalObject", position=self.position.value) @@ -52,7 +52,7 @@ def createScene(rootNode): rootNode.addObject('DefaultVisualManagerLoop') effector = rootNode.addChild('Effector') - effector.addObject('EulerImplicitSolver', firstOrder=True) + effector.addObject('EulerImplicitIntegrationScheme', firstOrder=True) effector.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) effector.addObject('MechanicalObject', template='Rigid3', name='goalMO', position=[0, 40, 0, 0, 0, 0, 1], showObject=True, showObjectScale=10) diff --git a/examples/tutorials/Tripod/myproject/parts/tutorial.py b/examples/tutorials/Tripod/myproject/parts/tutorial.py index fbd0d1ff..4a69471e 100644 --- a/examples/tutorials/Tripod/myproject/parts/tutorial.py +++ b/examples/tutorials/Tripod/myproject/parts/tutorial.py @@ -51,7 +51,7 @@ def Modelling(parent): def Simulation(parent): """add an empty node for simulation""" simulation = parent.addChild("Simulation") - simulation.addObject("EulerImplicitSolver") + simulation.addObject("EulerImplicitIntegrationScheme") simulation.addObject("CGLinearSolver", iterations=250, tolerance=1e-20, threshold=1e-20) return simulation diff --git a/examples/tutorials/Tripod/myproject/step8-maze.py b/examples/tutorials/Tripod/myproject/step8-maze.py index 0de6977a..ac36d658 100644 --- a/examples/tutorials/Tripod/myproject/step8-maze.py +++ b/examples/tutorials/Tripod/myproject/step8-maze.py @@ -13,7 +13,7 @@ def EffectorGoal(node, position): goal = node.addChild('Goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, threshold=1e-12, tolerance=1e-10) goal.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position+[0., 0., 0., 1.], showObject=True, showObjectScale=10) goal.addObject('RestShapeSpringsForceField', points=0, angularStiffness=1e5, stiffness=1e5) diff --git a/examples/tutorials/Tripod/myproject/step9.py b/examples/tutorials/Tripod/myproject/step9.py index 53142aa2..e276dae8 100644 --- a/examples/tutorials/Tripod/myproject/step9.py +++ b/examples/tutorials/Tripod/myproject/step9.py @@ -11,7 +11,7 @@ def EffectorGoal(position, name='Goal'): self = Sofa.Core.Node(name) - self.addObject('EulerImplicitSolver', firstOrder=True) + self.addObject('EulerImplicitIntegrationScheme', firstOrder=True) self.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) self.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position + [0., 0., 0., 1.], showObject=True, showObjectScale=10) diff --git a/examples/tutorials/Tripod/myproject/tutorial.py b/examples/tutorials/Tripod/myproject/tutorial.py index 1be6bcef..c53fd7e2 100644 --- a/examples/tutorials/Tripod/myproject/tutorial.py +++ b/examples/tutorials/Tripod/myproject/tutorial.py @@ -51,7 +51,7 @@ def Modelling(parent): def Simulation(parent): """add an empty node for simulation""" simulation = parent.addChild("Simulation") - simulation.addObject("EulerImplicitSolver") + simulation.addObject("EulerImplicitIntegrationScheme") simulation.addObject("CGLinearSolver", iterations=250, tolerance=1e-20, threshold=1e-20) return simulation diff --git a/examples/tutorials/Tripod/tripod-tuto.html b/examples/tutorials/Tripod/tripod-tuto.html index e42de69a..7ab082fb 100644 --- a/examples/tutorials/Tripod/tripod-tuto.html +++ b/examples/tutorials/Tripod/tripod-tuto.html @@ -148,7 +148,7 @@

Reminders of the First Steps t pluginList = ["Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.StateContainer", "Sofa.Component.Visual", "Sofa.GL.Component.Rendering3D", @@ -255,7 +255,7 @@

At the end of this ste pluginList = ["Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Dynamic", @@ -386,7 +386,7 @@

At the end of this ste "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -537,7 +537,7 @@

At the end of this ste "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -691,7 +691,7 @@

At the end of this ste "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -859,7 +859,7 @@

At the end of this ste "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -1010,7 +1010,7 @@

At the end of this ste "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -1213,7 +1213,7 @@

At the end of this ste "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -1439,7 +1439,7 @@

At the end of this ste "Sofa.Component.LinearSolver.Direct", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -1528,7 +1528,7 @@

STEP 8.1: Inverse control

def EffectorGoal(position): self = Sofa.Core.Node('Goal') - self.addObject('EulerImplicitSolver', firstOrder=True) + self.addObject('EulerImplicitIntegrationScheme', firstOrder=True) self.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) self.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position+[0., 0., 0., 1.], showObject=True, showObjectScale=10) self.addObject('UncoupledConstraintCorrection') @@ -1616,7 +1616,7 @@

STEP 8.1: Inverse control

"Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", @@ -1745,7 +1745,7 @@

STEP 8.2: Defining a motio def init(self): if self.withSolver.value: - self.addObject('EulerImplicitSolver') + self.addObject('EulerImplicitIntegrationScheme') self.addObject('SparseLDLSolver', template="CompressedRowSparseMatrixd") self.addObject('GenericConstraintCorrection') self.addObject("MechanicalObject", position=self.position.value) @@ -1766,7 +1766,7 @@

STEP 8.2: Defining a motio "Sofa.Component.Constraint.Lagrangian.Solver", "Sofa.Component.IO.Mesh", "Sofa.Component.LinearSolver.Direct", "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", "Sofa.Component.Topology.Container.Constant", @@ -1779,7 +1779,7 @@

STEP 8.2: Defining a motio rootNode.addObject('DefaultVisualManagerLoop') effector = rootNode.addChild('Effector') - effector.addObject('EulerImplicitSolver', firstOrder=True) + effector.addObject('EulerImplicitIntegrationScheme', firstOrder=True) effector.addObject('CGLinearSolver', iterations=100, threshold=1e-5, tolerance=1e-5) effector.addObject('MechanicalObject', template='Rigid3', name='goalMO', position=[0, 40, 0, 0, 0, 0, 1], showObject=True, showObjectScale=10) @@ -1828,7 +1828,7 @@

STEP 8.3: I def EffectorGoal(node, position): goal = node.addChild('Goal') - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', iterations=100, threshold=1e-12, tolerance=1e-10) goal.addObject('MechanicalObject', name='goalMO', template='Rigid3', position=position+[0., 0., 0., 1.], showObject=True, showObjectScale=10) goal.addObject('RestShapeSpringsForceField', points=0, angularStiffness=1e5, stiffness=1e5) @@ -1920,7 +1920,7 @@

STEP 8.3: I "Sofa.Component.LinearSolver.Iterative", "Sofa.Component.Mapping.MappedMatrix", "Sofa.Component.Mass", - "Sofa.Component.ODESolver.Backward", + "Sofa.Component.IntegrationSchemes.Backward", "Sofa.Component.SolidMechanics.FEM.Elastic", "Sofa.Component.SolidMechanics.Spring", "Sofa.Component.StateContainer", diff --git a/examples/tutorials/Trunk/trunk.py b/examples/tutorials/Trunk/trunk.py index ee1b95de..2b20e34d 100644 --- a/examples/tutorials/Trunk/trunk.py +++ b/examples/tutorials/Trunk/trunk.py @@ -10,7 +10,7 @@ def effectorTarget(parentNode, position=[0., 0., 200]): target = parentNode.addChild('Target') - target.addObject('EulerImplicitSolver', firstOrder=True) + target.addObject('EulerImplicitIntegrationScheme', firstOrder=True) target.addObject('CGLinearSolver') target.addObject('MechanicalObject', name='dofs', position=position, showObject=True, showObjectScale=8, drawMode=2, showColor=[1., 1., 1., 1.]) target.addObject('UncoupledConstraintCorrection', defaultCompliance=1e-5) @@ -157,7 +157,7 @@ def createScene(rootNode): "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.LinearSolver.Iterative", # Needed to use components ShewchukPCGLinearSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology "Sofa.Component.Visual", # Needed to use components VisualStyle @@ -179,7 +179,7 @@ def createScene(rootNode): simulation = rootNode.addChild('Simulation') - simulation.addObject('EulerImplicitSolver', name='odesolver', firstOrder=False, rayleighMass=0.1, rayleighStiffness=0.1) + simulation.addObject('EulerImplicitIntegrationScheme', name='odesolver', firstOrder=False, rayleighMass=0.1, rayleighStiffness=0.1) simulation.addObject('SparseLDLSolver', name='precond') simulation.addObject('GenericConstraintCorrection') diff --git a/python3/softrobots/inverse/effectors/effectorGoal.py b/python3/softrobots/inverse/effectors/effectorGoal.py index 82fd3bc1..5ee5d11a 100644 --- a/python3/softrobots/inverse/effectors/effectorGoal.py +++ b/python3/softrobots/inverse/effectors/effectorGoal.py @@ -42,7 +42,7 @@ def EffectorGoal(attachedTo=None, # This add a MechanicalObject, a component holding the degree of freedom of our # mechanical modelling. In the case of a effector it is a set of positions specifying # ghe location of the effector - goal.addObject('EulerImplicitSolver', firstOrder=True) + goal.addObject('EulerImplicitIntegrationScheme', firstOrder=True) goal.addObject('CGLinearSolver', threshold=1e-5, tolerance=1e-5) goal.addObject('MechanicalObject', template=template, position=position, rotation=rotation, translation=translation, scale=uniformScale, diff --git a/python3/softrobots/parts/bunny/Bunny.py b/python3/softrobots/parts/bunny/Bunny.py index 2d0ff5bd..64927a0a 100644 --- a/python3/softrobots/parts/bunny/Bunny.py +++ b/python3/softrobots/parts/bunny/Bunny.py @@ -55,7 +55,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshOBJLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology diff --git a/python3/softrobots/parts/finger/finger.py b/python3/softrobots/parts/finger/finger.py index 634ecc1e..1d62fb04 100644 --- a/python3/softrobots/parts/finger/finger.py +++ b/python3/softrobots/parts/finger/finger.py @@ -96,7 +96,7 @@ def createScene(rootNode): "Sofa.Component.IO.Mesh", # Needed to use components MeshSTLLoader, MeshVTKLoader "Sofa.Component.LinearSolver.Direct", # Needed to use components SparseLDLSolver "Sofa.Component.Mass", # Needed to use components UniformMass - "Sofa.Component.ODESolver.Backward", # Needed to use components EulerImplicitSolver + "Sofa.Component.IntegrationSchemes.Backward", # Needed to use components EulerImplicitIntegrationScheme "Sofa.Component.SolidMechanics.FEM.Elastic", # Needed to use components TetrahedronFEMForceField "Sofa.Component.SolidMechanics.Spring", # Needed to use components RestShapeSpringsForceField "Sofa.Component.Topology.Container.Constant", # Needed to use components MeshTopology diff --git a/tests/component/constraint/scenes/SurfacePressureConstraint.scn b/tests/component/constraint/scenes/SurfacePressureConstraint.scn index 79fbf35a..bae1de61 100644 --- a/tests/component/constraint/scenes/SurfacePressureConstraint.scn +++ b/tests/component/constraint/scenes/SurfacePressureConstraint.scn @@ -14,7 +14,7 @@ - + @@ -39,7 +39,7 @@ - +