-
Notifications
You must be signed in to change notification settings - Fork 299
/
TriangleFEMForceField_compare.scn
108 lines (81 loc) · 5.87 KB
/
TriangleFEMForceField_compare.scn
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<?xml version="1.0" ?>
<Node name="root" dt="0.01" gravity="0 10 0">
<RequiredPlugin name="Sofa.Component.Constraint.Projective"/> <!-- Needed to use components [FixedProjectiveConstraint] -->
<RequiredPlugin name="Sofa.Component.LinearSolver.Iterative"/> <!-- Needed to use components [CGLinearSolver] -->
<RequiredPlugin name="Sofa.Component.Mapping.Linear"/> <!-- Needed to use components [IdentityMapping] -->
<RequiredPlugin name="Sofa.Component.Mass"/> <!-- Needed to use components [DiagonalMass] -->
<RequiredPlugin name="Sofa.Component.ODESolver.Backward"/> <!-- Needed to use components [EulerImplicitSolver] -->
<RequiredPlugin name="Sofa.Component.SolidMechanics.FEM.Elastic"/> <!-- Needed to use components [TriangleFEMForceField TriangularFEMForceField TriangularFEMForceFieldOptim] -->
<RequiredPlugin name="Sofa.Component.StateContainer"/> <!-- Needed to use components [MechanicalObject] -->
<RequiredPlugin name="Sofa.Component.Topology.Container.Dynamic"/> <!-- Needed to use components [QuadSetGeometryAlgorithms QuadSetTopologyContainer QuadSetTopologyModifier TriangleSetGeometryAlgorithms TriangleSetTopologyContainer TriangleSetTopologyModifier] -->
<RequiredPlugin name="Sofa.Component.Topology.Container.Grid"/> <!-- Needed to use components [RegularGridTopology] -->
<RequiredPlugin name="Sofa.Component.Topology.Mapping"/> <!-- Needed to use components [Quad2TriangleTopologicalMapping] -->
<RequiredPlugin name="Sofa.Component.Visual"/> <!-- Needed to use components [VisualStyle] -->
<RequiredPlugin name="Sofa.GL.Component.Rendering3D"/> <!-- Needed to use components [OglModel] -->
<DefaultAnimationLoop/>
<VisualStyle displayFlags="showBehaviorModels showVisual" />
<RegularGridTopology name="grid" n="40 1 40" min="0 0 0" max="10 0 10" />
<Node name="TriangularFEMForceField">
<EulerImplicitSolver name="cg_odesolver" printLog="false" rayleighStiffness="0.1" rayleighMass="0.1" />
<CGLinearSolver iterations="25" name="linear solver" tolerance="1.0e-9" threshold="1.0e-9" />
<QuadSetTopologyContainer name="Quad_topo" src="@../grid" />
<QuadSetTopologyModifier name="Modifier" />
<QuadSetGeometryAlgorithms name="GeomAlgo" template="Vec3" />
<MechanicalObject name="TriangularFEMForceField_dof" />
<DiagonalMass totalMass="1.0" />
<FixedProjectiveConstraint indices="0 39" />
<Node name="T">
<TriangleSetTopologyContainer name="Triangle_topo" />
<TriangleSetTopologyModifier name="Modifier" />
<TriangleSetGeometryAlgorithms name="GeomAlgo" template="Vec3" />
<Quad2TriangleTopologicalMapping name="TriangularFEMForceField_mapTopo" input="@../Quad_topo" output="@Triangle_topo" />
<TriangularFEMForceField name="FEM" youngModulus="1000" poissonRatio="0.3" method="large" />
<Node name="Visu">
<OglModel name="TriangularFEMForceField_visu" color="red" />
<IdentityMapping name="TriangularFEMForceField_mapping" input="@../.." output="@." />
</Node>
</Node>
</Node>
<Node name="TriangularFEMForceFieldOptim">
<EulerImplicitSolver name="cg_odesolver" printLog="false" rayleighStiffness="0.1" rayleighMass="0.1" />
<CGLinearSolver iterations="25" name="linear solver" tolerance="1.0e-9" threshold="1.0e-9" />
<QuadSetTopologyContainer name="Quad_topo" src="@../grid" />
<QuadSetTopologyModifier name="Modifier" />
<QuadSetGeometryAlgorithms name="GeomAlgo" template="Vec3" />
<MechanicalObject name="TriangularFEMForceFieldOptim_dof" />
<DiagonalMass totalMass="1.0" />
<FixedProjectiveConstraint indices="0 39" />
<Node name="T">
<TriangleSetTopologyContainer name="Triangle_topo" />
<TriangleSetTopologyModifier name="Modifier" />
<TriangleSetGeometryAlgorithms name="GeomAlgo" template="Vec3" />
<Quad2TriangleTopologicalMapping name="TriangularFEMForceFieldOptim_mapTopo" input="@../Quad_topo" output="@Triangle_topo" />
<TriangularFEMForceFieldOptim name="FEM" youngModulus="1000" poissonRatio="0.3" method="large" />
<Node name="Visu">
<OglModel name="TriangularFEMForceFieldOptim_visu" color="blue" />
<IdentityMapping name="TriangularFEMForceFieldOptim_mapping" input="@../.." output="@." />
</Node>
</Node>
</Node>
<Node name="TriangleFEMForceField">
<EulerImplicitSolver name="cg_odesolver" printLog="false" rayleighStiffness="0.1" rayleighMass="0.1" />
<CGLinearSolver iterations="25" name="linear solver" tolerance="1.0e-9" threshold="1.0e-9" />
<QuadSetTopologyContainer name="Quad_topo" src="@../grid" />
<QuadSetTopologyModifier name="Modifier" />
<QuadSetGeometryAlgorithms name="GeomAlgo" template="Vec3" />
<MechanicalObject name="TriangleFEMForceField_dof" />
<DiagonalMass totalMass="1.0" />
<FixedProjectiveConstraint indices="0 39" />
<Node name="T">
<TriangleSetTopologyContainer name="Triangle_topo" />
<TriangleSetTopologyModifier name="Modifier" />
<TriangleSetGeometryAlgorithms name="GeomAlgo" template="Vec3" />
<Quad2TriangleTopologicalMapping name="TriangleFEMForceField_mapTopo" input="@../Quad_topo" output="@Triangle_topo" />
<TriangleFEMForceField name="FEM" youngModulus="1000" poissonRatio="0.3" method="large" />
<Node name="Visu">
<OglModel name="TriangleFEMForceField_visu" color="green" />
<IdentityMapping name="TriangleFEMForceField_mapping" input="@../.." output="@." />
</Node>
</Node>
</Node>
</Node>