Monitor
Monitoring of particles
Templates:
Rigid3d
Vec3d
Vec6d
Target: SofaValidation
namespace: sofa::component::misc
parents:
BaseObject
Data:
Name | Description | Default value |
---|---|---|
name | object name | unnamed |
printLog | if true, emits extra messages at runtime. | 0 |
tags | list of the subsets the objet belongs to | |
bbox | this object bounding box | |
componentState | The state of the component among (Dirty, Valid, Undefined, Loading, Invalid). | Undefined |
listening | if true, handle the events, otherwise ignore the events | 0 |
indices | MechanicalObject points indices to monitor | |
ExportPositions | export Monitored positions as gnuplot file | 0 |
ExportVelocities | export Monitored velocities as gnuplot file | 0 |
ExportForces | export Monitored forces as gnuplot file | 0 |
PositionsColor | define the color of positions | |
VelocitiesColor | define the color of velocities | |
ForcesColor | define the color of forces | |
TrajectoriesPrecision | set the dt between to save of positions | 0.1 |
TrajectoriesColor | define the color of the trajectories | |
sizeFactor | factor to multiply to arrows | 1 |
fileName | name of the plot files to be generated | |
Visualization | ||
showPositions | see the Monitored positions | 0 |
showVelocities | see the Monitored velocities | 0 |
showForces | see the Monitored forces | 0 |
showMinThreshold | under this value, vectors are not represented | 0.01 |
showTrajectories | print the trajectory of Monitored particles | 0 |
Links:
Name | Description |
---|---|
context | Graph Node containing this object (or BaseContext::getDefault() if no graph is used) |
slaves | Sub-objects used internally by this object |
master | nullptr for regular objects, or master object for which this object is one sub-objects |
Examples
Component/SceneUtility/Monitor.scn
<Node name="root" gravity="0 -9.81 0" dt="0.0005">
<VisualStyle displayFlags="showBehaviorModels showForceFields showCollisionModels showMappings" />
<DefaultAnimationLoop/>
<Node name="Poutre1" gravity="0 -9.81 0">
<RequiredPlugin name="Sofa.Component.Constraint.Projective"/> <!-- Needed to use components [FixedProjectiveConstraint] -->
<RequiredPlugin name="Sofa.Component.IO.Mesh"/> <!-- Needed to use components [MeshGmshLoader] -->
<RequiredPlugin name="Sofa.Component.Mass"/> <!-- Needed to use components [UniformMass] -->
<RequiredPlugin name="Sofa.Component.ODESolver.Forward"/> <!-- Needed to use components [EulerExplicitSolver] -->
<RequiredPlugin name="Sofa.Component.SolidMechanics.Spring"/> <!-- Needed to use components [StiffSpringForceField] -->
<RequiredPlugin name="Sofa.Component.StateContainer"/> <!-- Needed to use components [MechanicalObject] -->
<RequiredPlugin name="Sofa.Component.Visual"/> <!-- Needed to use components [VisualStyle] -->
<RequiredPlugin name="SofaValidation"/> <!-- Needed to use components [Monitor] -->
<EulerExplicitSolver name="Explicit" printLog="0" />
<Node name="M1" gravity="0 -9.81 0">
<MeshGmshLoader name="loader" filename="mesh/smCube27.msh" />
<MechanicalObject src="@loader" template="Vec3" name="default1" restScale="1" showObject="1" />
<UniformMass name="default2" vertexMass="0.1" />
<FixedProjectiveConstraint template="Vec3" name="default3" indices="0 3 6 9 12 15 18 21 24" />
<Monitor template="Vec3" name="velocities_2-11-20" listening="1" indices="2 11 20" showPositions="0" PositionsColor="1 1 0 1" showVelocities="1" VelocitiesColor="1 1 0 1" ForcesColor="1 1 0 1" showMinThreshold="0.01" TrajectoriesPrecision="0.1" TrajectoriesColor="1 1 0 1" />
<Monitor template="Vec3" name="positions_8-16-24" listening="1" indices="8 16 24" showPositions="1" PositionsColor="1 1 0 1" VelocitiesColor="1 1 0 1" ForcesColor="1 1 0 1" showMinThreshold="0.01" TrajectoriesPrecision="0.1" TrajectoriesColor="1 1 0 1" />
<StiffSpringForceField template="Vec3" name="InternalSprings1" spring="0 9 100 5 3.5
 1 10 500 5 3.5
 2 11 500 5 3.5
 3 12 500 5 3.5
 4 13 500 5 3.5
 5 14 500 5 3.5
 6 15 500 5 3.5
 7 16 500 5 3.5
 8 17 500 5 3.5
 9 18 500 5 3.5
 10 19 500 5 3.5
 11 20 500 5 3.5
 12 21 500 5 3.5
 13 22 500 5 3.5
 14 23 500 5 3.5
 15 24 500 5 3.5
 16 25 500 5 3.5
 17 26 500 5 3.5
 0 3 500 5 3.5
 1 4 500 5 3.5
 2 5 500 5 3.5
 3 6 500 5 3.5
 4 7 500 5 3.5
 5 8 500 5 3.5
 9 12 500 5 3.5
 10 13 500 5 3.5
 11 14 500 5 3.5
 12 15 500 5 3.5
 13 16 500 5 3.5
 14 17 500 5 3.5
 18 21 500 5 3.5
 19 22 500 5 3.5
 20 23 500 5 3.5
 21 24 500 5 3.5
 22 25 500 5 3.5
 23 26 500 5 3.5
 0 1 500 5 3.5
 1 2 500 5 3.5
 3 4 500 5 3.5
 4 5 500 5 3.5
 6 7 500 5 3.5
 7 8 500 5 3.5
 9 10 500 5 3.5
 10 11 500 5 3.5
 12 13 500 5 3.5
 13 14 500 5 3.5
 15 16 500 5 3.5
 16 17 500 5 3.5
 18 19 500 5 3.5
 19 20 500 5 3.5
 21 22 500 5 3.5
 22 23 500 5 3.5
 24 25 500 5 3.5
 25 26 100 5 3.5
 0 13 500 5 6.06218
 1 14 500 5 6.06218
 3 16 500 5 6.06218
 4 17 500 5 6.06218
 9 22 500 5 6.06218
 10 23 500 5 6.06218
 12 25 500 5 6.06218
 13 26 500 5 6.06218
 9 4 500 5 6.06218
 10 5 500 5 6.06218
 12 7 500 5 6.06218
 13 8 500 5 6.06218
 18 13 500 5 6.06218
 19 14 500 5 6.06218
 21 16 500 5 6.06218
 22 17 500 5 6.06218
 3 10 500 5 6.06218
 4 11 500 5 6.06218
 6 13 500 5 6.06218
 7 14 500 5 6.06218
 12 19 500 5 6.06218
 13 20 500 5 6.06218
 15 22 500 5 6.06218
 16 23 500 5 6.06218
 12 1 500 5 6.06218
 13 2 500 5 6.06218
 15 4 500 5 6.06218
 16 5 500 5 6.06218
 21 10 500 5 6.06218
 22 11 500 5 6.06218
 24 13 500 5 6.06218
 25 14 500 5 6.06218
 0 12 500 5 4.94975
 1 13 500 5 4.94975
 2 14 500 5 4.94975
 3 15 500 5 4.94975
 4 16 500 5 4.94975
 5 17 500 5 4.94975
 9 21 500 5 4.94975
 10 22 500 5 4.94975
 11 23 500 5 4.94975
 12 24 500 5 4.94975
 13 25 500 5 4.94975
 14 26 500 5 4.94975
 3 9 500 5 4.94975
 4 10 500 5 4.94975
 5 11 500 5 4.94975
 6 12 500 5 4.94975
 7 13 500 5 4.94975
 8 14 500 5 4.94975
 12 18 500 5 4.94975
 13 19 500 5 4.94975
 14 20 500 5 4.94975
 15 21 500 5 4.94975
 16 22 500 5 4.94975
 17 23 500 5 4.94975
 0 10 500 5 4.94975
 1 11 500 5 4.94975
 3 13 500 5 4.94975
 4 14 500 5 4.94975
 6 16 500 5 4.94975
 7 17 500 5 4.94975
 9 19 500 5 4.94975
 10 20 500 5 4.94975
 12 22 500 5 4.94975
 13 23 500 5 4.94975
 15 25 500 5 4.94975
 16 26 500 5 4.94975
 9 1 500 5 4.94975
 10 2 500 5 4.94975
 12 4 500 5 4.94975
 13 5 500 5 4.94975
 15 7 500 5 4.94975
 16 8 500 5 4.94975
 18 10 500 5 4.94975
 19 11 500 5 4.94975
 21 13 500 5 4.94975
 22 14 500 5 4.94975
 24 16 500 5 4.94975
 25 17 500 5 4.94975
 0 4 500 5 4.94975
 1 5 500 5 4.94975
 3 7 500 5 4.94975
 4 8 500 5 4.94975
 9 13 500 5 4.94975
 10 14 500 5 4.94975
 12 16 500 5 4.94975
 13 17 500 5 4.94975
 18 22 500 5 4.94975
 19 23 500 5 4.94975
 21 25 500 5 4.94975
 22 26 500 5 4.94975
 3 1 500 5 4.94975
 4 2 500 5 4.94975
 6 4 500 5 4.94975
 7 5 500 5 4.94975
 12 10 500 5 4.94975
 13 11 500 5 4.94975
 15 13 500 5 4.94975
 16 14 500 5 4.94975
 21 19 500 5 4.94975
 22 20 500 5 4.94975
 24 22 500 5 4.94975
 25 23 500 5 4.94975
" />
</Node>
<Node name="M2" gravity="0 -9.81 0">
<MeshGmshLoader name="loader" filename="mesh/smCube27.msh" />
<MechanicalObject src="@loader" template="Vec3" name="default5" translation="0 0 10.5" restScale="1" />
<Monitor template="Vec3" name="positions_8-16-24" listening="1" indices="8 16 24" showPositions="1" PositionsColor="1 1 0 1" VelocitiesColor="1 1 0 1" ForcesColor="1 1 0 1" showMinThreshold="0.01" TrajectoriesPrecision="0.1" TrajectoriesColor="1 1 0 1" />
<UniformMass name="default6" vertexMass="0.1" />
<StiffSpringForceField template="Vec3" name="InternalSprings2" spring="0 9 100 5 3.5
 1 10 500 5 3.5
 2 11 500 5 3.5
 3 12 500 5 3.5
 4 13 500 5 3.5
 5 14 500 5 3.5
 6 15 500 5 3.5
 7 16 500 5 3.5
 8 17 500 5 3.5
 9 18 500 5 3.5
 10 19 500 5 3.5
 11 20 500 5 3.5
 12 21 500 5 3.5
 13 22 500 5 3.5
 14 23 500 5 3.5
 15 24 500 5 3.5
 16 25 500 5 3.5
 17 26 500 5 3.5
 0 3 500 5 3.5
 1 4 500 5 3.5
 2 5 500 5 3.5
 3 6 500 5 3.5
 4 7 500 5 3.5
 5 8 500 5 3.5
 9 12 500 5 3.5
 10 13 500 5 3.5
 11 14 500 5 3.5
 12 15 500 5 3.5
 13 16 500 5 3.5
 14 17 500 5 3.5
 18 21 500 5 3.5
 19 22 500 5 3.5
 20 23 500 5 3.5
 21 24 500 5 3.5
 22 25 500 5 3.5
 23 26 500 5 3.5
 0 1 500 5 3.5
 1 2 500 5 3.5
 3 4 500 5 3.5
 4 5 500 5 3.5
 6 7 500 5 3.5
 7 8 500 5 3.5
 9 10 500 5 3.5
 10 11 500 5 3.5
 12 13 500 5 3.5
 13 14 500 5 3.5
 15 16 500 5 3.5
 16 17 500 5 3.5
 18 19 500 5 3.5
 19 20 500 5 3.5
 21 22 500 5 3.5
 22 23 500 5 3.5
 24 25 500 5 3.5
 25 26 100 5 3.5
 0 13 500 5 6.06218
 1 14 500 5 6.06218
 3 16 500 5 6.06218
 4 17 500 5 6.06218
 9 22 500 5 6.06218
 10 23 500 5 6.06218
 12 25 500 5 6.06218
 13 26 500 5 6.06218
 9 4 500 5 6.06218
 10 5 500 5 6.06218
 12 7 500 5 6.06218
 13 8 500 5 6.06218
 18 13 500 5 6.06218
 19 14 500 5 6.06218
 21 16 500 5 6.06218
 22 17 500 5 6.06218
 3 10 500 5 6.06218
 4 11 500 5 6.06218
 6 13 500 5 6.06218
 7 14 500 5 6.06218
 12 19 500 5 6.06218
 13 20 500 5 6.06218
 15 22 500 5 6.06218
 16 23 500 5 6.06218
 12 1 500 5 6.06218
 13 2 500 5 6.06218
 15 4 500 5 6.06218
 16 5 500 5 6.06218
 21 10 500 5 6.06218
 22 11 500 5 6.06218
 24 13 500 5 6.06218
 25 14 500 5 6.06218
 0 12 500 5 4.94975
 1 13 500 5 4.94975
 2 14 500 5 4.94975
 3 15 500 5 4.94975
 4 16 500 5 4.94975
 5 17 500 5 4.94975
 9 21 500 5 4.94975
 10 22 500 5 4.94975
 11 23 500 5 4.94975
 12 24 500 5 4.94975
 13 25 500 5 4.94975
 14 26 500 5 4.94975
 3 9 500 5 4.94975
 4 10 500 5 4.94975
 5 11 500 5 4.94975
 6 12 500 5 4.94975
 7 13 500 5 4.94975
 8 14 500 5 4.94975
 12 18 500 5 4.94975
 13 19 500 5 4.94975
 14 20 500 5 4.94975
 15 21 500 5 4.94975
 16 22 500 5 4.94975
 17 23 500 5 4.94975
 0 10 500 5 4.94975
 1 11 500 5 4.94975
 3 13 500 5 4.94975
 4 14 500 5 4.94975
 6 16 500 5 4.94975
 7 17 500 5 4.94975
 9 19 500 5 4.94975
 10 20 500 5 4.94975
 12 22 500 5 4.94975
 13 23 500 5 4.94975
 15 25 500 5 4.94975
 16 26 500 5 4.94975
 9 1 500 5 4.94975
 10 2 500 5 4.94975
 12 4 500 5 4.94975
 13 5 500 5 4.94975
 15 7 500 5 4.94975
 16 8 500 5 4.94975
 18 10 500 5 4.94975
 19 11 500 5 4.94975
 21 13 500 5 4.94975
 22 14 500 5 4.94975
 24 16 500 5 4.94975
 25 17 500 5 4.94975
 0 4 500 5 4.94975
 1 5 500 5 4.94975
 3 7 500 5 4.94975
 4 8 500 5 4.94975
 9 13 500 5 4.94975
 10 14 500 5 4.94975
 12 16 500 5 4.94975
 13 17 500 5 4.94975
 18 22 500 5 4.94975
 19 23 500 5 4.94975
 21 25 500 5 4.94975
 22 26 500 5 4.94975
 3 1 500 5 4.94975
 4 2 500 5 4.94975
 6 4 500 5 4.94975
 7 5 500 5 4.94975
 12 10 500 5 4.94975
 13 11 500 5 4.94975
 15 13 500 5 4.94975
 16 14 500 5 4.94975
 21 19 500 5 4.94975
 22 20 500 5 4.94975
 24 22 500 5 4.94975
 25 23 500 5 4.94975
" />
</Node>
<Node name="M3" gravity="0 -9.81 0">
<MeshGmshLoader name="loader" filename="mesh/smCube27.msh" />
<MechanicalObject src="@loader" template="Vec3" name="default8" translation="0 0 21" restScale="1" />
<Monitor template="Vec3" name="velocities_8-16-24" listening="1" indices="8 16 24" showPositions="0" PositionsColor="1 1 0 1" showVelocities="1" VelocitiesColor="1 1 0 1" ForcesColor="1 1 0 1" showMinThreshold="0.01" TrajectoriesPrecision="0.1" TrajectoriesColor="1 1 0 1" sizeFactor="1" />
<UniformMass name="default9" vertexMass="0.1" />
<StiffSpringForceField template="Vec3" name="InternalSprings3" spring="0 9 100 5 3.5
 1 10 500 5 3.5
 2 11 500 5 3.5
 3 12 500 5 3.5
 4 13 500 5 3.5
 5 14 500 5 3.5
 6 15 500 5 3.5
 7 16 500 5 3.5
 8 17 500 5 3.5
 9 18 500 5 3.5
 10 19 500 5 3.5
 11 20 500 5 3.5
 12 21 500 5 3.5
 13 22 500 5 3.5
 14 23 500 5 3.5
 15 24 500 5 3.5
 16 25 500 5 3.5
 17 26 500 5 3.5
 0 3 500 5 3.5
 1 4 500 5 3.5
 2 5 500 5 3.5
 3 6 500 5 3.5
 4 7 500 5 3.5
 5 8 500 5 3.5
 9 12 500 5 3.5
 10 13 500 5 3.5
 11 14 500 5 3.5
 12 15 500 5 3.5
 13 16 500 5 3.5
 14 17 500 5 3.5
 18 21 500 5 3.5
 19 22 500 5 3.5
 20 23 500 5 3.5
 21 24 500 5 3.5
 22 25 500 5 3.5
 23 26 500 5 3.5
 0 1 500 5 3.5
 1 2 500 5 3.5
 3 4 500 5 3.5
 4 5 500 5 3.5
 6 7 500 5 3.5
 7 8 500 5 3.5
 9 10 500 5 3.5
 10 11 500 5 3.5
 12 13 500 5 3.5
 13 14 500 5 3.5
 15 16 500 5 3.5
 16 17 500 5 3.5
 18 19 500 5 3.5
 19 20 500 5 3.5
 21 22 500 5 3.5
 22 23 500 5 3.5
 24 25 500 5 3.5
 25 26 100 5 3.5
 0 13 500 5 6.06218
 1 14 500 5 6.06218
 3 16 500 5 6.06218
 4 17 500 5 6.06218
 9 22 500 5 6.06218
 10 23 500 5 6.06218
 12 25 500 5 6.06218
 13 26 500 5 6.06218
 9 4 500 5 6.06218
 10 5 500 5 6.06218
 12 7 500 5 6.06218
 13 8 500 5 6.06218
 18 13 500 5 6.06218
 19 14 500 5 6.06218
 21 16 500 5 6.06218
 22 17 500 5 6.06218
 3 10 500 5 6.06218
 4 11 500 5 6.06218
 6 13 500 5 6.06218
 7 14 500 5 6.06218
 12 19 500 5 6.06218
 13 20 500 5 6.06218
 15 22 500 5 6.06218
 16 23 500 5 6.06218
 12 1 500 5 6.06218
 13 2 500 5 6.06218
 15 4 500 5 6.06218
 16 5 500 5 6.06218
 21 10 500 5 6.06218
 22 11 500 5 6.06218
 24 13 500 5 6.06218
 25 14 500 5 6.06218
 0 12 500 5 4.94975
 1 13 500 5 4.94975
 2 14 500 5 4.94975
 3 15 500 5 4.94975
 4 16 500 5 4.94975
 5 17 500 5 4.94975
 9 21 500 5 4.94975
 10 22 500 5 4.94975
 11 23 500 5 4.94975
 12 24 500 5 4.94975
 13 25 500 5 4.94975
 14 26 500 5 4.94975
 3 9 500 5 4.94975
 4 10 500 5 4.94975
 5 11 500 5 4.94975
 6 12 500 5 4.94975
 7 13 500 5 4.94975
 8 14 500 5 4.94975
 12 18 500 5 4.94975
 13 19 500 5 4.94975
 14 20 500 5 4.94975
 15 21 500 5 4.94975
 16 22 500 5 4.94975
 17 23 500 5 4.94975
 0 10 500 5 4.94975
 1 11 500 5 4.94975
 3 13 500 5 4.94975
 4 14 500 5 4.94975
 6 16 500 5 4.94975
 7 17 500 5 4.94975
 9 19 500 5 4.94975
 10 20 500 5 4.94975
 12 22 500 5 4.94975
 13 23 500 5 4.94975
 15 25 500 5 4.94975
 16 26 500 5 4.94975
 9 1 500 5 4.94975
 10 2 500 5 4.94975
 12 4 500 5 4.94975
 13 5 500 5 4.94975
 15 7 500 5 4.94975
 16 8 500 5 4.94975
 18 10 500 5 4.94975
 19 11 500 5 4.94975
 21 13 500 5 4.94975
 22 14 500 5 4.94975
 24 16 500 5 4.94975
 25 17 500 5 4.94975
 0 4 500 5 4.94975
 1 5 500 5 4.94975
 3 7 500 5 4.94975
 4 8 500 5 4.94975
 9 13 500 5 4.94975
 10 14 500 5 4.94975
 12 16 500 5 4.94975
 13 17 500 5 4.94975
 18 22 500 5 4.94975
 19 23 500 5 4.94975
 21 25 500 5 4.94975
 22 26 500 5 4.94975
 3 1 500 5 4.94975
 4 2 500 5 4.94975
 6 4 500 5 4.94975
 7 5 500 5 4.94975
 12 10 500 5 4.94975
 13 11 500 5 4.94975
 15 13 500 5 4.94975
 16 14 500 5 4.94975
 21 19 500 5 4.94975
 22 20 500 5 4.94975
 24 22 500 5 4.94975
 25 23 500 5 4.94975
" />
</Node>
<Node name="M4" gravity="0 -9.81 0">
<MeshGmshLoader name="loader" filename="mesh/smCube27.msh" />
<MechanicalObject src="@loader" template="Vec3" name="default11" translation="0 0 31.5" restScale="1" />
<UniformMass name="default12" vertexMass="0.1" />
<Monitor template="Vec3" name="forces_2-11-20" listening="1" indices="2 11 20" showPositions="0" PositionsColor="1 1 0 1" showVelocities="0" VelocitiesColor="1 1 0 1" showForces="1" ForcesColor="0 1 1 1" showMinThreshold="0.01" TrajectoriesPrecision="0.1" TrajectoriesColor="1 1 0 1" sizeFactor="1" />
<StiffSpringForceField template="Vec3" name="InternalSprings4" spring="0 9 100 5 3.5
 1 10 500 5 3.5
 2 11 500 5 3.5
 3 12 500 5 3.5
 4 13 500 5 3.5
 5 14 500 5 3.5
 6 15 500 5 3.5
 7 16 500 5 3.5
 8 17 500 5 3.5
 9 18 500 5 3.5
 10 19 500 5 3.5
 11 20 500 5 3.5
 12 21 500 5 3.5
 13 22 500 5 3.5
 14 23 500 5 3.5
 15 24 500 5 3.5
 16 25 500 5 3.5
 17 26 500 5 3.5
 0 3 500 5 3.5
 1 4 500 5 3.5
 2 5 500 5 3.5
 3 6 500 5 3.5
 4 7 500 5 3.5
 5 8 500 5 3.5
 9 12 500 5 3.5
 10 13 500 5 3.5
 11 14 500 5 3.5
 12 15 500 5 3.5
 13 16 500 5 3.5
 14 17 500 5 3.5
 18 21 500 5 3.5
 19 22 500 5 3.5
 20 23 500 5 3.5
 21 24 500 5 3.5
 22 25 500 5 3.5
 23 26 500 5 3.5
 0 1 500 5 3.5
 1 2 500 5 3.5
 3 4 500 5 3.5
 4 5 500 5 3.5
 6 7 500 5 3.5
 7 8 500 5 3.5
 9 10 500 5 3.5
 10 11 500 5 3.5
 12 13 500 5 3.5
 13 14 500 5 3.5
 15 16 500 5 3.5
 16 17 500 5 3.5
 18 19 500 5 3.5
 19 20 500 5 3.5
 21 22 500 5 3.5
 22 23 500 5 3.5
 24 25 500 5 3.5
 25 26 100 5 3.5
 0 13 500 5 6.06218
 1 14 500 5 6.06218
 3 16 500 5 6.06218
 4 17 500 5 6.06218
 9 22 500 5 6.06218
 10 23 500 5 6.06218
 12 25 500 5 6.06218
 13 26 500 5 6.06218
 9 4 500 5 6.06218
 10 5 500 5 6.06218
 12 7 500 5 6.06218
 13 8 500 5 6.06218
 18 13 500 5 6.06218
 19 14 500 5 6.06218
 21 16 500 5 6.06218
 22 17 500 5 6.06218
 3 10 500 5 6.06218
 4 11 500 5 6.06218
 6 13 500 5 6.06218
 7 14 500 5 6.06218
 12 19 500 5 6.06218
 13 20 500 5 6.06218
 15 22 500 5 6.06218
 16 23 500 5 6.06218
 12 1 500 5 6.06218
 13 2 500 5 6.06218
 15 4 500 5 6.06218
 16 5 500 5 6.06218
 21 10 500 5 6.06218
 22 11 500 5 6.06218
 24 13 500 5 6.06218
 25 14 500 5 6.06218
 0 12 500 5 4.94975
 1 13 500 5 4.94975
 2 14 500 5 4.94975
 3 15 500 5 4.94975
 4 16 500 5 4.94975
 5 17 500 5 4.94975
 9 21 500 5 4.94975
 10 22 500 5 4.94975
 11 23 500 5 4.94975
 12 24 500 5 4.94975
 13 25 500 5 4.94975
 14 26 500 5 4.94975
 3 9 500 5 4.94975
 4 10 500 5 4.94975
 5 11 500 5 4.94975
 6 12 500 5 4.94975
 7 13 500 5 4.94975
 8 14 500 5 4.94975
 12 18 500 5 4.94975
 13 19 500 5 4.94975
 14 20 500 5 4.94975
 15 21 500 5 4.94975
 16 22 500 5 4.94975
 17 23 500 5 4.94975
 0 10 500 5 4.94975
 1 11 500 5 4.94975
 3 13 500 5 4.94975
 4 14 500 5 4.94975
 6 16 500 5 4.94975
 7 17 500 5 4.94975
 9 19 500 5 4.94975
 10 20 500 5 4.94975
 12 22 500 5 4.94975
 13 23 500 5 4.94975
 15 25 500 5 4.94975
 16 26 500 5 4.94975
 9 1 500 5 4.94975
 10 2 500 5 4.94975
 12 4 500 5 4.94975
 13 5 500 5 4.94975
 15 7 500 5 4.94975
 16 8 500 5 4.94975
 18 10 500 5 4.94975
 19 11 500 5 4.94975
 21 13 500 5 4.94975
 22 14 500 5 4.94975
 24 16 500 5 4.94975
 25 17 500 5 4.94975
 0 4 500 5 4.94975
 1 5 500 5 4.94975
 3 7 500 5 4.94975
 4 8 500 5 4.94975
 9 13 500 5 4.94975
 10 14 500 5 4.94975
 12 16 500 5 4.94975
 13 17 500 5 4.94975
 18 22 500 5 4.94975
 19 23 500 5 4.94975
 21 25 500 5 4.94975
 22 26 500 5 4.94975
 3 1 500 5 4.94975
 4 2 500 5 4.94975
 6 4 500 5 4.94975
 7 5 500 5 4.94975
 12 10 500 5 4.94975
 13 11 500 5 4.94975
 15 13 500 5 4.94975
 16 14 500 5 4.94975
 21 19 500 5 4.94975
 22 20 500 5 4.94975
 24 22 500 5 4.94975
 25 23 500 5 4.94975
" />
</Node>
<Node name="M5" gravity="0 -9.81 0">
<MeshGmshLoader name="loader" filename="mesh/smCube27.msh" />
<MechanicalObject src="@loader" template="Vec3" name="default14" translation="0 0 42" restScale="1" showObject="1" />
<UniformMass name="default15" vertexMass="0.1" />
<Monitor template="Vec3" name="trajectories_8-16-24" listening="1" indices="8 16 24" showPositions="0" PositionsColor="1 1 0 1" VelocitiesColor="1 1 0 1" showForces="0" ForcesColor="0 1 1 1" showMinThreshold="0.01" showTrajectories="1" TrajectoriesPrecision="0.1" TrajectoriesColor="1 0 1 1" sizeFactor="1" />
<StiffSpringForceField template="Vec3" name="InternalSprings5" spring="0 9 100 5 3.5
 1 10 500 5 3.5
 2 11 500 5 3.5
 3 12 500 5 3.5
 4 13 500 5 3.5
 5 14 500 5 3.5
 6 15 500 5 3.5
 7 16 500 5 3.5
 8 17 500 5 3.5
 9 18 500 5 3.5
 10 19 500 5 3.5
 11 20 500 5 3.5
 12 21 500 5 3.5
 13 22 500 5 3.5
 14 23 500 5 3.5
 15 24 500 5 3.5
 16 25 500 5 3.5
 17 26 500 5 3.5
 0 3 500 5 3.5
 1 4 500 5 3.5
 2 5 500 5 3.5
 3 6 500 5 3.5
 4 7 500 5 3.5
 5 8 500 5 3.5
 9 12 500 5 3.5
 10 13 500 5 3.5
 11 14 500 5 3.5
 12 15 500 5 3.5
 13 16 500 5 3.5
 14 17 500 5 3.5
 18 21 500 5 3.5
 19 22 500 5 3.5
 20 23 500 5 3.5
 21 24 500 5 3.5
 22 25 500 5 3.5
 23 26 500 5 3.5
 0 1 500 5 3.5
 1 2 500 5 3.5
 3 4 500 5 3.5
 4 5 500 5 3.5
 6 7 500 5 3.5
 7 8 500 5 3.5
 9 10 500 5 3.5
 10 11 500 5 3.5
 12 13 500 5 3.5
 13 14 500 5 3.5
 15 16 500 5 3.5
 16 17 500 5 3.5
 18 19 500 5 3.5
 19 20 500 5 3.5
 21 22 500 5 3.5
 22 23 500 5 3.5
 24 25 500 5 3.5
 25 26 100 5 3.5
 0 13 500 5 6.06218
 1 14 500 5 6.06218
 3 16 500 5 6.06218
 4 17 500 5 6.06218
 9 22 500 5 6.06218
 10 23 500 5 6.06218
 12 25 500 5 6.06218
 13 26 500 5 6.06218
 9 4 500 5 6.06218
 10 5 500 5 6.06218
 12 7 500 5 6.06218
 13 8 500 5 6.06218
 18 13 500 5 6.06218
 19 14 500 5 6.06218
 21 16 500 5 6.06218
 22 17 500 5 6.06218
 3 10 500 5 6.06218
 4 11 500 5 6.06218
 6 13 500 5 6.06218
 7 14 500 5 6.06218
 12 19 500 5 6.06218
 13 20 500 5 6.06218
 15 22 500 5 6.06218
 16 23 500 5 6.06218
 12 1 500 5 6.06218
 13 2 500 5 6.06218
 15 4 500 5 6.06218
 16 5 500 5 6.06218
 21 10 500 5 6.06218
 22 11 500 5 6.06218
 24 13 500 5 6.06218
 25 14 500 5 6.06218
 0 12 500 5 4.94975
 1 13 500 5 4.94975
 2 14 500 5 4.94975
 3 15 500 5 4.94975
 4 16 500 5 4.94975
 5 17 500 5 4.94975
 9 21 500 5 4.94975
 10 22 500 5 4.94975
 11 23 500 5 4.94975
 12 24 500 5 4.94975
 13 25 500 5 4.94975
 14 26 500 5 4.94975
 3 9 500 5 4.94975
 4 10 500 5 4.94975
 5 11 500 5 4.94975
 6 12 500 5 4.94975
 7 13 500 5 4.94975
 8 14 500 5 4.94975
 12 18 500 5 4.94975
 13 19 500 5 4.94975
 14 20 500 5 4.94975
 15 21 500 5 4.94975
 16 22 500 5 4.94975
 17 23 500 5 4.94975
 0 10 500 5 4.94975
 1 11 500 5 4.94975
 3 13 500 5 4.94975
 4 14 500 5 4.94975
 6 16 500 5 4.94975
 7 17 500 5 4.94975
 9 19 500 5 4.94975
 10 20 500 5 4.94975
 12 22 500 5 4.94975
 13 23 500 5 4.94975
 15 25 500 5 4.94975
 16 26 500 5 4.94975
 9 1 500 5 4.94975
 10 2 500 5 4.94975
 12 4 500 5 4.94975
 13 5 500 5 4.94975
 15 7 500 5 4.94975
 16 8 500 5 4.94975
 18 10 500 5 4.94975
 19 11 500 5 4.94975
 21 13 500 5 4.94975
 22 14 500 5 4.94975
 24 16 500 5 4.94975
 25 17 500 5 4.94975
 0 4 500 5 4.94975
 1 5 500 5 4.94975
 3 7 500 5 4.94975
 4 8 500 5 4.94975
 9 13 500 5 4.94975
 10 14 500 5 4.94975
 12 16 500 5 4.94975
 13 17 500 5 4.94975
 18 22 500 5 4.94975
 19 23 500 5 4.94975
 21 25 500 5 4.94975
 22 26 500 5 4.94975
 3 1 500 5 4.94975
 4 2 500 5 4.94975
 6 4 500 5 4.94975
 7 5 500 5 4.94975
 12 10 500 5 4.94975
 13 11 500 5 4.94975
 15 13 500 5 4.94975
 16 14 500 5 4.94975
 21 19 500 5 4.94975
 22 20 500 5 4.94975
 24 22 500 5 4.94975
 25 23 500 5 4.94975
" />
</Node>
<StiffSpringForceField template="Vec3" name="ExternalSprings1" object1="@M1" object2="@M2" spring="2 0 500 5 3.5
 5 3 500 5 3.5
 8 6 500 5 3.5
 11 9 500 5 3.5
 14 12 500 5 3.5
 17 15 500 5 3.5
 20 18 500 5 3.5
 23 21 500 5 3.5
 26 24 500 5 3.5
 14 0 500 5 6.06218
 17 3 500 5 6.06218
 23 9 500 5 6.06218
 26 12 500 5 6.06218
 5 9 500 5 6.06218
 8 12 500 5 6.06218
 14 18 500 5 6.06218
 17 21 500 5 6.06218
 11 3 500 5 6.06218
 14 6 500 5 6.06218
 20 12 500 5 6.06218
 23 15 500 5 6.06218
 2 12 500 5 6.06218
 5 15 500 5 6.06218
 11 21 500 5 6.06218
 14 24 500 5 6.06218
 11 0 500 5 4.94975
 14 3 500 5 4.94975
 17 6 500 5 4.94975
 20 9 500 5 4.94975
 23 12 500 5 4.94975
 26 15 500 5 4.94975
 2 9 500 5 4.94975
 5 12 500 5 4.94975
 8 15 500 5 4.94975
 11 18 500 5 4.94975
 14 21 500 5 4.94975
 17 24 500 5 4.94975
 5 0 500 5 4.94975
 8 3 500 5 4.94975
 14 9 500 5 4.94975
 17 12 500 5 4.94975
 23 18 500 5 4.94975
 26 21 500 5 4.94975
 2 3 500 5 4.94975
 5 6 500 5 4.94975
 11 12 500 5 4.94975
 14 15 500 5 4.94975
 20 21 500 5 4.94975
 23 24 500 5 4.94975
" />
<StiffSpringForceField template="Vec3" name="ExternalSprings2" object1="@M2" object2="@M3" spring="2 0 500 5 3.5
 5 3 500 5 3.5
 8 6 500 5 3.5
 11 9 500 5 3.5
 14 12 500 5 3.5
 17 15 500 5 3.5
 20 18 500 5 3.5
 23 21 500 5 3.5
 26 24 500 5 3.5
 14 0 500 5 6.06218
 17 3 500 5 6.06218
 23 9 500 5 6.06218
 26 12 500 5 6.06218
 5 9 500 5 6.06218
 8 12 500 5 6.06218
 14 18 500 5 6.06218
 17 21 500 5 6.06218
 11 3 500 5 6.06218
 14 6 500 5 6.06218
 20 12 500 5 6.06218
 23 15 500 5 6.06218
 2 12 500 5 6.06218
 5 15 500 5 6.06218
 11 21 500 5 6.06218
 14 24 500 5 6.06218
 11 0 500 5 4.94975
 14 3 500 5 4.94975
 17 6 500 5 4.94975
 20 9 500 5 4.94975
 23 12 500 5 4.94975
 26 15 500 5 4.94975
 2 9 500 5 4.94975
 5 12 500 5 4.94975
 8 15 500 5 4.94975
 11 18 500 5 4.94975
 14 21 500 5 4.94975
 17 24 500 5 4.94975
 5 0 500 5 4.94975
 8 3 500 5 4.94975
 14 9 500 5 4.94975
 17 12 500 5 4.94975
 23 18 500 5 4.94975
 26 21 500 5 4.94975
 2 3 500 5 4.94975
 5 6 500 5 4.94975
 11 12 500 5 4.94975
 14 15 500 5 4.94975
 20 21 500 5 4.94975
 23 24 500 5 4.94975
" />
<StiffSpringForceField template="Vec3" name="ExternalSprings3" object1="@M3" object2="@M4" spring="2 0 500 5 3.5
 5 3 500 5 3.5
 8 6 500 5 3.5
 11 9 500 5 3.5
 14 12 500 5 3.5
 17 15 500 5 3.5
 20 18 500 5 3.5
 23 21 500 5 3.5
 26 24 500 5 3.5
 14 0 500 5 6.06218
 17 3 500 5 6.06218
 23 9 500 5 6.06218
 26 12 500 5 6.06218
 5 9 500 5 6.06218
 8 12 500 5 6.06218
 14 18 500 5 6.06218
 17 21 500 5 6.06218
 11 3 500 5 6.06218
 14 6 500 5 6.06218
 20 12 500 5 6.06218
 23 15 500 5 6.06218
 2 12 500 5 6.06218
 5 15 500 5 6.06218
 11 21 500 5 6.06218
 14 24 500 5 6.06218
 11 0 500 5 4.94975
 14 3 500 5 4.94975
 17 6 500 5 4.94975
 20 9 500 5 4.94975
 23 12 500 5 4.94975
 26 15 500 5 4.94975
 2 9 500 5 4.94975
 5 12 500 5 4.94975
 8 15 500 5 4.94975
 11 18 500 5 4.94975
 14 21 500 5 4.94975
 17 24 500 5 4.94975
 5 0 500 5 4.94975
 8 3 500 5 4.94975
 14 9 500 5 4.94975
 17 12 500 5 4.94975
 23 18 500 5 4.94975
 26 21 500 5 4.94975
 2 3 500 5 4.94975
 5 6 500 5 4.94975
 11 12 500 5 4.94975
 14 15 500 5 4.94975
 20 21 500 5 4.94975
 23 24 500 5 4.94975
" />
<StiffSpringForceField template="Vec3" name="ExternalSprings4" object1="@M4" object2="@M5" spring="2 0 500 5 3.5
 5 3 500 5 3.5
 8 6 500 5 3.5
 11 9 500 5 3.5
 14 12 500 5 3.5
 17 15 500 5 3.5
 20 18 500 5 3.5
 23 21 500 5 3.5
 26 24 500 5 3.5
 14 0 500 5 6.06218
 17 3 500 5 6.06218
 23 9 500 5 6.06218
 26 12 500 5 6.06218
 5 9 500 5 6.06218
 8 12 500 5 6.06218
 14 18 500 5 6.06218
 17 21 500 5 6.06218
 11 3 500 5 6.06218
 14 6 500 5 6.06218
 20 12 500 5 6.06218
 23 15 500 5 6.06218
 2 12 500 5 6.06218
 5 15 500 5 6.06218
 11 21 500 5 6.06218
 14 24 500 5 6.06218
 11 0 500 5 4.94975
 14 3 500 5 4.94975
 17 6 500 5 4.94975
 20 9 500 5 4.94975
 23 12 500 5 4.94975
 26 15 500 5 4.94975
 2 9 500 5 4.94975
 5 12 500 5 4.94975
 8 15 500 5 4.94975
 11 18 500 5 4.94975
 14 21 500 5 4.94975
 17 24 500 5 4.94975
 5 0 500 5 4.94975
 8 3 500 5 4.94975
 14 9 500 5 4.94975
 17 12 500 5 4.94975
 23 18 500 5 4.94975
 26 21 500 5 4.94975
 2 3 500 5 4.94975
 5 6 500 5 4.94975
 11 12 500 5 4.94975
 14 15 500 5 4.94975
 20 21 500 5 4.94975
 23 24 500 5 4.94975
" />
</Node>
</Node>
```python def createScene(rootNode):
root = rootNode.addChild('root', gravity="0 -9.81 0", dt="0.0005")
root.addObject('VisualStyle', displayFlags="showBehaviorModels showForceFields showCollisionModels showMappings")
root.addObject('DefaultAnimationLoop')
Poutre1 = root.addChild('Poutre1', gravity="0 -9.81 0")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.Constraint.Projective")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.IO.Mesh")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.Mass")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.ODESolver.Forward")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.SolidMechanics.Spring")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.StateContainer")
Poutre1.addObject('RequiredPlugin', name="Sofa.Component.Visual")
Poutre1.addObject('RequiredPlugin', name="SofaValidation")
Poutre1.addObject('EulerExplicitSolver', name="Explicit", printLog="0")
M1 = Poutre1.addChild('M1', gravity="0 -9.81 0")
M1.addObject('MeshGmshLoader', name="loader", filename="mesh/smCube27.msh")
M1.addObject('MechanicalObject', src="@loader", template="Vec3", name="default1", restScale="1", showObject="1")
M1.addObject('UniformMass', name="default2", vertexMass="0.1")
M1.addObject('FixedProjectiveConstraint', template="Vec3", name="default3", indices="0 3 6 9 12 15 18 21 24")
M1.addObject('Monitor', template="Vec3", name="velocities_2-11-20", listening="1", indices="2 11 20", showPositions="0", PositionsColor="1 1 0 1", showVelocities="1", VelocitiesColor="1 1 0 1", ForcesColor="1 1 0 1", showMinThreshold="0.01", TrajectoriesPrecision="0.1", TrajectoriesColor="1 1 0 1")
M1.addObject('Monitor', template="Vec3", name="positions_8-16-24", listening="1", indices="8 16 24", showPositions="1", PositionsColor="1 1 0 1", VelocitiesColor="1 1 0 1", ForcesColor="1 1 0 1", showMinThreshold="0.01", TrajectoriesPrecision="0.1", TrajectoriesColor="1 1 0 1")
M1.addObject('StiffSpringForceField', template="Vec3", name="InternalSprings1", spring="0 9 100 5 3.5
1 10 500 5 3.5 2 11 500 5 3.5 3 12 500 5 3.5 4 13 500 5 3.5 5 14 500 5 3.5 6 15 500 5 3.5 7 16 500 5 3.5 8 17 500 5 3.5 9 18 500 5 3.5 10 19 500 5 3.5 11 20 500 5 3.5 12 21 500 5 3.5 13 22 500 5 3.5 14 23 500 5 3.5 15 24 500 5 3.5 16 25 500 5 3.5 17 26 500 5 3.5 0 3 500 5 3.5 1 4 500 5 3.5 2 5 500 5 3.5 3 6 500 5 3.5 4 7 500 5 3.5 5 8 500 5 3.5 9 12 500 5 3.5 10 13 500 5 3.5 11 14 500 5 3.5 12 15 500 5 3.5 13 16 500 5 3.5 14 17 500 5 3.5 18 21 500 5 3.5 19 22 500 5 3.5 20 23 500 5 3.5 21 24 500 5 3.5 22 25 500 5 3.5 23 26 500 5 3.5 0 1 500 5 3.5 1 2 500 5 3.5 3 4 500 5 3.5 4 5 500 5 3.5 6 7 500 5 3.5 7 8 500 5 3.5 9 10 500 5 3.5 10 11 500 5 3.5 12 13 500 5 3.5 13 14 500 5 3.5 15 16 500 5 3.5 16 17 500 5 3.5 18 19 500 5 3.5 19 20 500 5 3.5 21 22 500 5 3.5 22 23 500 5 3.5 24 25 500 5 3.5 25 26 100 5 3.5 0 13 500 5 6.06218 1 14 500 5 6.06218 3 16 500 5 6.06218 4 17 500 5 6.06218 9 22 500 5 6.06218 10 23 500 5 6.06218 12 25 500 5 6.06218 13 26 500 5 6.06218 9 4 500 5 6.06218 10 5 500 5 6.06218 12 7 500 5 6.06218 13 8 500 5 6.06218 18 13 500 5 6.06218 19 14 500 5 6.06218 21 16 500 5 6.06218 22 17 500 5 6.06218 3 10 500 5 6.06218 4 11 500 5 6.06218 6 13 500 5 6.06218 7 14 500 5 6.06218 12 19 500 5 6.06218 13 20 500 5 6.06218 15 22 500 5 6.06218 16 23 500 5 6.06218 12 1 500 5 6.06218 13 2 500 5 6.06218 15 4 500 5 6.06218 16 5 500 5 6.06218 21 10 500 5 6.06218 22 11 500 5 6.06218 24 13 500 5 6.06218 25 14 500 5 6.06218 0 12 500 5 4.94975 1 13 500 5 4.94975 2 14 500 5 4.94975 3 15 500 5 4.94975 4 16 500 5 4.94975 5 17 500 5 4.94975 9 21 500 5 4.94975 10 22 500 5 4.94975 11 23 500 5 4.94975 12 24 500 5 4.94975 13 25 500 5 4.94975 14 26 500 5 4.94975 3 9 500 5 4.94975 4 10 500 5 4.94975 5 11 500 5 4.94975 6 12 500 5 4.94975 7 13 500 5 4.94975 8 14 500 5 4.94975 12 18 500 5 4.94975 13 19 500 5 4.94975 14 20 500 5 4.94975 15 21 500 5 4.94975 16 22 500 5 4.94975 17 23 500 5 4.94975 0 10 500 5 4.94975 1 11 500 5 4.94975 3 13 500 5 4.94975 4 14 500 5 4.94975 6 16 500 5 4.94975 7 17 500 5 4.94975 9 19 500 5 4.94975 10 20 500 5 4.94975 12 22 500 5 4.94975 13 23 500 5 4.94975 15 25 500 5 4.94975 16 26 500 5 4.94975 9 1 500 5 4.94975 10 2 500 5 4.94975 12 4 500 5 4.94975 13 5 500 5 4.94975 15 7 500 5 4.94975 16 8 500 5 4.94975 18 10 500 5 4.94975 19 11 500 5 4.94975 21 13 500 5 4.94975 22 14 500 5 4.94975 24 16 500 5 4.94975 25 17 500 5 4.94975 0 4 500 5 4.94975 1 5 500 5 4.94975 3 7 500 5 4.94975 4 8 500 5 4.94975 9 13 500 5 4.94975 10 14 500 5 4.94975 12 16 500 5 4.94975 13 17 500 5 4.94975 18 22 500 5 4.94975 19 23 500 5 4.94975 21 25 500 5 4.94975 22 26 500 5 4.94975 3 1 500 5 4.94975 4 2 500 5 4.94975 6 4 500 5 4.94975 7 5 500 5 4.94975 12 10 500 5 4.94975 13 11 500 5 4.94975 15 13 500 5 4.94975 16 14 500 5 4.94975 21 19 500 5 4.94975 22 20 500 5 4.94975 24 22 500 5 4.94975 25 23 500 5 4.94975 ")
M2 = Poutre1.addChild('M2', gravity="0 -9.81 0")
M2.addObject('MeshGmshLoader', name="loader", filename="mesh/smCube27.msh")
M2.addObject('MechanicalObject', src="@loader", template="Vec3", name="default5", translation="0 0 10.5", restScale="1")
M2.addObject('Monitor', template="Vec3", name="positions_8-16-24", listening="1", indices="8 16 24", showPositions="1", PositionsColor="1 1 0 1", VelocitiesColor="1 1 0 1", ForcesColor="1 1 0 1", showMinThreshold="0.01", TrajectoriesPrecision="0.1", TrajectoriesColor="1 1 0 1")
M2.addObject('UniformMass', name="default6", vertexMass="0.1")
M2.addObject('StiffSpringForceField', template="Vec3", name="InternalSprings2", spring="0 9 100 5 3.5
1 10 500 5 3.5 2 11 500 5 3.5 3 12 500 5 3.5 4 13 500 5 3.5 5 14 500 5 3.5 6 15 500 5 3.5 7 16 500 5 3.5 8 17 500 5 3.5 9 18 500 5 3.5 10 19 500 5 3.5 11 20 500 5 3.5 12 21 500 5 3.5 13 22 500 5 3.5 14 23 500 5 3.5 15 24 500 5 3.5 16 25 500 5 3.5 17 26 500 5 3.5 0 3 500 5 3.5 1 4 500 5 3.5 2 5 500 5 3.5 3 6 500 5 3.5 4 7 500 5 3.5 5 8 500 5 3.5 9 12 500 5 3.5 10 13 500 5 3.5 11 14 500 5 3.5 12 15 500 5 3.5 13 16 500 5 3.5 14 17 500 5 3.5 18 21 500 5 3.5 19 22 500 5 3.5 20 23 500 5 3.5 21 24 500 5 3.5 22 25 500 5 3.5 23 26 500 5 3.5 0 1 500 5 3.5 1 2 500 5 3.5 3 4 500 5 3.5 4 5 500 5 3.5 6 7 500 5 3.5 7 8 500 5 3.5 9 10 500 5 3.5 10 11 500 5 3.5 12 13 500 5 3.5 13 14 500 5 3.5 15 16 500 5 3.5 16 17 500 5 3.5 18 19 500 5 3.5 19 20 500 5 3.5 21 22 500 5 3.5 22 23 500 5 3.5 24 25 500 5 3.5 25 26 100 5 3.5 0 13 500 5 6.06218 1 14 500 5 6.06218 3 16 500 5 6.06218 4 17 500 5 6.06218 9 22 500 5 6.06218 10 23 500 5 6.06218 12 25 500 5 6.06218 13 26 500 5 6.06218 9 4 500 5 6.06218 10 5 500 5 6.06218 12 7 500 5 6.06218 13 8 500 5 6.06218 18 13 500 5 6.06218 19 14 500 5 6.06218 21 16 500 5 6.06218 22 17 500 5 6.06218 3 10 500 5 6.06218 4 11 500 5 6.06218 6 13 500 5 6.06218 7 14 500 5 6.06218 12 19 500 5 6.06218 13 20 500 5 6.06218 15 22 500 5 6.06218 16 23 500 5 6.06218 12 1 500 5 6.06218 13 2 500 5 6.06218 15 4 500 5 6.06218 16 5 500 5 6.06218 21 10 500 5 6.06218 22 11 500 5 6.06218 24 13 500 5 6.06218 25 14 500 5 6.06218 0 12 500 5 4.94975 1 13 500 5 4.94975 2 14 500 5 4.94975 3 15 500 5 4.94975 4 16 500 5 4.94975 5 17 500 5 4.94975 9 21 500 5 4.94975 10 22 500 5 4.94975 11 23 500 5 4.94975 12 24 500 5 4.94975 13 25 500 5 4.94975 14 26 500 5 4.94975 3 9 500 5 4.94975 4 10 500 5 4.94975 5 11 500 5 4.94975 6 12 500 5 4.94975 7 13 500 5 4.94975 8 14 500 5 4.94975 12 18 500 5 4.94975 13 19 500 5 4.94975 14 20 500 5 4.94975 15 21 500 5 4.94975 16 22 500 5 4.94975 17 23 500 5 4.94975 0 10 500 5 4.94975 1 11 500 5 4.94975 3 13 500 5 4.94975 4 14 500 5 4.94975 6 16 500 5 4.94975 7 17 500 5 4.94975 9 19 500 5 4.94975 10 20 500 5 4.94975 12 22 500 5 4.94975 13 23 500 5 4.94975 15 25 500 5 4.94975 16 26 500 5 4.94975 9 1 500 5 4.94975 10 2 500 5 4.94975 12 4 500 5 4.94975 13 5 500 5 4.94975 15 7 500 5 4.94975 16 8 500 5 4.94975 18 10 500 5 4.94975 19 11 500 5 4.94975 21 13 500 5 4.94975 22 14 500 5 4.94975 24 16 500 5 4.94975 25 17 500 5 4.94975 0 4 500 5 4.94975 1 5 500 5 4.94975 3 7 500 5 4.94975 4 8 500 5 4.94975 9 13 500 5 4.94975 10 14 500 5 4.94975 12 16 500 5 4.94975 13 17 500 5 4.94975 18 22 500 5 4.94975 19 23 500 5 4.94975 21 25 500 5 4.94975 22 26 500 5 4.94975 3 1 500 5 4.94975 4 2 500 5 4.94975 6 4 500 5 4.94975 7 5 500 5 4.94975 12 10 500 5 4.94975 13 11 500 5 4.94975 15 13 500 5 4.94975 16 14 500 5 4.94975 21 19 500 5 4.94975 22 20 500 5 4.94975 24 22 500 5 4.94975 25 23 500 5 4.94975 ")
M3 = Poutre1.addChild('M3', gravity="0 -9.81 0")
M3.addObject('MeshGmshLoader', name="loader", filename="mesh/smCube27.msh")
M3.addObject('MechanicalObject', src="@loader", template="Vec3", name="default8", translation="0 0 21", restScale="1")
M3.addObject('Monitor', template="Vec3", name="velocities_8-16-24", listening="1", indices="8 16 24", showPositions="0", PositionsColor="1 1 0 1", showVelocities="1", VelocitiesColor="1 1 0 1", ForcesColor="1 1 0 1", showMinThreshold="0.01", TrajectoriesPrecision="0.1", TrajectoriesColor="1 1 0 1", sizeFactor="1")
M3.addObject('UniformMass', name="default9", vertexMass="0.1")
M3.addObject('StiffSpringForceField', template="Vec3", name="InternalSprings3", spring="0 9 100 5 3.5
1 10 500 5 3.5 2 11 500 5 3.5 3 12 500 5 3.5 4 13 500 5 3.5 5 14 500 5 3.5 6 15 500 5 3.5 7 16 500 5 3.5 8 17 500 5 3.5 9 18 500 5 3.5 10 19 500 5 3.5 11 20 500 5 3.5 12 21 500 5 3.5 13 22 500 5 3.5 14 23 500 5 3.5 15 24 500 5 3.5 16 25 500 5 3.5 17 26 500 5 3.5 0 3 500 5 3.5 1 4 500 5 3.5 2 5 500 5 3.5 3 6 500 5 3.5 4 7 500 5 3.5 5 8 500 5 3.5 9 12 500 5 3.5 10 13 500 5 3.5 11 14 500 5 3.5 12 15 500 5 3.5 13 16 500 5 3.5 14 17 500 5 3.5 18 21 500 5 3.5 19 22 500 5 3.5 20 23 500 5 3.5 21 24 500 5 3.5 22 25 500 5 3.5 23 26 500 5 3.5 0 1 500 5 3.5 1 2 500 5 3.5 3 4 500 5 3.5 4 5 500 5 3.5 6 7 500 5 3.5 7 8 500 5 3.5 9 10 500 5 3.5 10 11 500 5 3.5 12 13 500 5 3.5 13 14 500 5 3.5 15 16 500 5 3.5 16 17 500 5 3.5 18 19 500 5 3.5 19 20 500 5 3.5 21 22 500 5 3.5 22 23 500 5 3.5 24 25 500 5 3.5 25 26 100 5 3.5 0 13 500 5 6.06218 1 14 500 5 6.06218 3 16 500 5 6.06218 4 17 500 5 6.06218 9 22 500 5 6.06218 10 23 500 5 6.06218 12 25 500 5 6.06218 13 26 500 5 6.06218 9 4 500 5 6.06218 10 5 500 5 6.06218 12 7 500 5 6.06218 13 8 500 5 6.06218 18 13 500 5 6.06218 19 14 500 5 6.06218 21 16 500 5 6.06218 22 17 500 5 6.06218 3 10 500 5 6.06218 4 11 500 5 6.06218 6 13 500 5 6.06218 7 14 500 5 6.06218 12 19 500 5 6.06218 13 20 500 5 6.06218 15 22 500 5 6.06218 16 23 500 5 6.06218 12 1 500 5 6.06218 13 2 500 5 6.06218 15 4 500 5 6.06218 16 5 500 5 6.06218 21 10 500 5 6.06218 22 11 500 5 6.06218 24 13 500 5 6.06218 25 14 500 5 6.06218 0 12 500 5 4.94975 1 13 500 5 4.94975 2 14 500 5 4.94975 3 15 500 5 4.94975 4 16 500 5 4.94975 5 17 500 5 4.94975 9 21 500 5 4.94975 10 22 500 5 4.94975 11 23 500 5 4.94975 12 24 500 5 4.94975 13 25 500 5 4.94975 14 26 500 5 4.94975 3 9 500 5 4.94975 4 10 500 5 4.94975 5 11 500 5 4.94975 6 12 500 5 4.94975 7 13 500 5 4.94975 8 14 500 5 4.94975 12 18 500 5 4.94975 13 19 500 5 4.94975 14 20 500 5 4.94975 15 21 500 5 4.94975 16 22 500 5 4.94975 17 23 500 5 4.94975 0 10 500 5 4.94975 1 11 500 5 4.94975 3 13 500 5 4.94975 4 14 500 5 4.94975 6 16 500 5 4.94975 7 17 500 5 4.94975 9 19 500 5 4.94975 10 20 500 5 4.94975 12 22 500 5 4.94975 13 23 500 5 4.94975 15 25 500 5 4.94975 16 26 500 5 4.94975 9 1 500 5 4.94975 10 2 500 5 4.94975 12 4 500 5 4.94975 13 5 500 5 4.94975 15 7 500 5 4.94975 16 8 500 5 4.94975 18 10 500 5 4.94975 19 11 500 5 4.94975 21 13 500 5 4.94975 22 14 500 5 4.94975 24 16 500 5 4.94975 25 17 500 5 4.94975 0 4 500 5 4.94975 1 5 500 5 4.94975 3 7 500 5 4.94975 4 8 500 5 4.94975 9 13 500 5 4.94975 10 14 500 5 4.94975 12 16 500 5 4.94975 13 17 500 5 4.94975 18 22 500 5 4.94975 19 23 500 5 4.94975 21 25 500 5 4.94975 22 26 500 5 4.94975 3 1 500 5 4.94975 4 2 500 5 4.94975 6 4 500 5 4.94975 7 5 500 5 4.94975 12 10 500 5 4.94975 13 11 500 5 4.94975 15 13 500 5 4.94975 16 14 500 5 4.94975 21 19 500 5 4.94975 22 20 500 5 4.94975 24 22 500 5 4.94975 25 23 500 5 4.94975 ")
M4 = Poutre1.addChild('M4', gravity="0 -9.81 0")
M4.addObject('MeshGmshLoader', name="loader", filename="mesh/smCube27.msh")
M4.addObject('MechanicalObject', src="@loader", template="Vec3", name="default11", translation="0 0 31.5", restScale="1")
M4.addObject('UniformMass', name="default12", vertexMass="0.1")
M4.addObject('Monitor', template="Vec3", name="forces_2-11-20", listening="1", indices="2 11 20", showPositions="0", PositionsColor="1 1 0 1", showVelocities="0", VelocitiesColor="1 1 0 1", showForces="1", ForcesColor="0 1 1 1", showMinThreshold="0.01", TrajectoriesPrecision="0.1", TrajectoriesColor="1 1 0 1", sizeFactor="1")
M4.addObject('StiffSpringForceField', template="Vec3", name="InternalSprings4", spring="0 9 100 5 3.5
1 10 500 5 3.5 2 11 500 5 3.5 3 12 500 5 3.5 4 13 500 5 3.5 5 14 500 5 3.5 6 15 500 5 3.5 7 16 500 5 3.5 8 17 500 5 3.5 9 18 500 5 3.5 10 19 500 5 3.5 11 20 500 5 3.5 12 21 500 5 3.5 13 22 500 5 3.5 14 23 500 5 3.5 15 24 500 5 3.5 16 25 500 5 3.5 17 26 500 5 3.5 0 3 500 5 3.5 1 4 500 5 3.5 2 5 500 5 3.5 3 6 500 5 3.5 4 7 500 5 3.5 5 8 500 5 3.5 9 12 500 5 3.5 10 13 500 5 3.5 11 14 500 5 3.5 12 15 500 5 3.5 13 16 500 5 3.5 14 17 500 5 3.5 18 21 500 5 3.5 19 22 500 5 3.5 20 23 500 5 3.5 21 24 500 5 3.5 22 25 500 5 3.5 23 26 500 5 3.5 0 1 500 5 3.5 1 2 500 5 3.5 3 4 500 5 3.5 4 5 500 5 3.5 6 7 500 5 3.5 7 8 500 5 3.5 9 10 500 5 3.5 10 11 500 5 3.5 12 13 500 5 3.5 13 14 500 5 3.5 15 16 500 5 3.5 16 17 500 5 3.5 18 19 500 5 3.5 19 20 500 5 3.5 21 22 500 5 3.5 22 23 500 5 3.5 24 25 500 5 3.5 25 26 100 5 3.5 0 13 500 5 6.06218 1 14 500 5 6.06218 3 16 500 5 6.06218 4 17 500 5 6.06218 9 22 500 5 6.06218 10 23 500 5 6.06218 12 25 500 5 6.06218 13 26 500 5 6.06218 9 4 500 5 6.06218 10 5 500 5 6.06218 12 7 500 5 6.06218 13 8 500 5 6.06218 18 13 500 5 6.06218 19 14 500 5 6.06218 21 16 500 5 6.06218 22 17 500 5 6.06218 3 10 500 5 6.06218 4 11 500 5 6.06218 6 13 500 5 6.06218 7 14 500 5 6.06218 12 19 500 5 6.06218 13 20 500 5 6.06218 15 22 500 5 6.06218 16 23 500 5 6.06218 12 1 500 5 6.06218 13 2 500 5 6.06218 15 4 500 5 6.06218 16 5 500 5 6.06218 21 10 500 5 6.06218 22 11 500 5 6.06218 24 13 500 5 6.06218 25 14 500 5 6.06218 0 12 500 5 4.94975 1 13 500 5 4.94975 2 14 500 5 4.94975 3 15 500 5 4.94975 4 16 500 5 4.94975 5 17 500 5 4.94975 9 21 500 5 4.94975 10 22 500 5 4.94975 11 23 500 5 4.94975 12 24 500 5 4.94975 13 25 500 5 4.94975 14 26 500 5 4.94975 3 9 500 5 4.94975 4 10 500 5 4.94975 5 11 500 5 4.94975 6 12 500 5 4.94975 7 13 500 5 4.94975 8 14 500 5 4.94975 12 18 500 5 4.94975 13 19 500 5 4.94975 14 20 500 5 4.94975 15 21 500 5 4.94975 16 22 500 5 4.94975 17 23 500 5 4.94975 0 10 500 5 4.94975 1 11 500 5 4.94975 3 13 500 5 4.94975 4 14 500 5 4.94975 6 16 500 5 4.94975 7 17 500 5 4.94975 9 19 500 5 4.94975 10 20 500 5 4.94975 12 22 500 5 4.94975 13 23 500 5 4.94975 15 25 500 5 4.94975 16 26 500 5 4.94975 9 1 500 5 4.94975 10 2 500 5 4.94975 12 4 500 5 4.94975 13 5 500 5 4.94975 15 7 500 5 4.94975 16 8 500 5 4.94975 18 10 500 5 4.94975 19 11 500 5 4.94975 21 13 500 5 4.94975 22 14 500 5 4.94975 24 16 500 5 4.94975 25 17 500 5 4.94975 0 4 500 5 4.94975 1 5 500 5 4.94975 3 7 500 5 4.94975 4 8 500 5 4.94975 9 13 500 5 4.94975 10 14 500 5 4.94975 12 16 500 5 4.94975 13 17 500 5 4.94975 18 22 500 5 4.94975 19 23 500 5 4.94975 21 25 500 5 4.94975 22 26 500 5 4.94975 3 1 500 5 4.94975 4 2 500 5 4.94975 6 4 500 5 4.94975 7 5 500 5 4.94975 12 10 500 5 4.94975 13 11 500 5 4.94975 15 13 500 5 4.94975 16 14 500 5 4.94975 21 19 500 5 4.94975 22 20 500 5 4.94975 24 22 500 5 4.94975 25 23 500 5 4.94975 ")
M5 = Poutre1.addChild('M5', gravity="0 -9.81 0")
M5.addObject('MeshGmshLoader', name="loader", filename="mesh/smCube27.msh")
M5.addObject('MechanicalObject', src="@loader", template="Vec3", name="default14", translation="0 0 42", restScale="1", showObject="1")
M5.addObject('UniformMass', name="default15", vertexMass="0.1")
M5.addObject('Monitor', template="Vec3", name="trajectories_8-16-24", listening="1", indices="8 16 24", showPositions="0", PositionsColor="1 1 0 1", VelocitiesColor="1 1 0 1", showForces="0", ForcesColor="0 1 1 1", showMinThreshold="0.01", showTrajectories="1", TrajectoriesPrecision="0.1", TrajectoriesColor="1 0 1 1", sizeFactor="1")
M5.addObject('StiffSpringForceField', template="Vec3", name="InternalSprings5", spring="0 9 100 5 3.5
1 10 500 5 3.5 2 11 500 5 3.5 3 12 500 5 3.5 4 13 500 5 3.5 5 14 500 5 3.5 6 15 500 5 3.5 7 16 500 5 3.5 8 17 500 5 3.5 9 18 500 5 3.5 10 19 500 5 3.5 11 20 500 5 3.5 12 21 500 5 3.5 13 22 500 5 3.5 14 23 500 5 3.5 15 24 500 5 3.5 16 25 500 5 3.5 17 26 500 5 3.5 0 3 500 5 3.5 1 4 500 5 3.5 2 5 500 5 3.5 3 6 500 5 3.5 4 7 500 5 3.5 5 8 500 5 3.5 9 12 500 5 3.5 10 13 500 5 3.5 11 14 500 5 3.5 12 15 500 5 3.5 13 16 500 5 3.5 14 17 500 5 3.5 18 21 500 5 3.5 19 22 500 5 3.5 20 23 500 5 3.5 21 24 500 5 3.5 22 25 500 5 3.5 23 26 500 5 3.5 0 1 500 5 3.5 1 2 500 5 3.5 3 4 500 5 3.5 4 5 500 5 3.5 6 7 500 5 3.5 7 8 500 5 3.5 9 10 500 5 3.5 10 11 500 5 3.5 12 13 500 5 3.5 13 14 500 5 3.5 15 16 500 5 3.5 16 17 500 5 3.5 18 19 500 5 3.5 19 20 500 5 3.5 21 22 500 5 3.5 22 23 500 5 3.5 24 25 500 5 3.5 25 26 100 5 3.5 0 13 500 5 6.06218 1 14 500 5 6.06218 3 16 500 5 6.06218 4 17 500 5 6.06218 9 22 500 5 6.06218 10 23 500 5 6.06218 12 25 500 5 6.06218 13 26 500 5 6.06218 9 4 500 5 6.06218 10 5 500 5 6.06218 12 7 500 5 6.06218 13 8 500 5 6.06218 18 13 500 5 6.06218 19 14 500 5 6.06218 21 16 500 5 6.06218 22 17 500 5 6.06218 3 10 500 5 6.06218 4 11 500 5 6.06218 6 13 500 5 6.06218 7 14 500 5 6.06218 12 19 500 5 6.06218 13 20 500 5 6.06218 15 22 500 5 6.06218 16 23 500 5 6.06218 12 1 500 5 6.06218 13 2 500 5 6.06218 15 4 500 5 6.06218 16 5 500 5 6.06218 21 10 500 5 6.06218 22 11 500 5 6.06218 24 13 500 5 6.06218 25 14 500 5 6.06218 0 12 500 5 4.94975 1 13 500 5 4.94975 2 14 500 5 4.94975 3 15 500 5 4.94975 4 16 500 5 4.94975 5 17 500 5 4.94975 9 21 500 5 4.94975 10 22 500 5 4.94975 11 23 500 5 4.94975 12 24 500 5 4.94975 13 25 500 5 4.94975 14 26 500 5 4.94975 3 9 500 5 4.94975 4 10 500 5 4.94975 5 11 500 5 4.94975 6 12 500 5 4.94975 7 13 500 5 4.94975 8 14 500 5 4.94975 12 18 500 5 4.94975 13 19 500 5 4.94975 14 20 500 5 4.94975 15 21 500 5 4.94975 16 22 500 5 4.94975 17 23 500 5 4.94975 0 10 500 5 4.94975 1 11 500 5 4.94975 3 13 500 5 4.94975 4 14 500 5 4.94975 6 16 500 5 4.94975 7 17 500 5 4.94975 9 19 500 5 4.94975 10 20 500 5 4.94975 12 22 500 5 4.94975 13 23 500 5 4.94975 15 25 500 5 4.94975 16 26 500 5 4.94975 9 1 500 5 4.94975 10 2 500 5 4.94975 12 4 500 5 4.94975 13 5 500 5 4.94975 15 7 500 5 4.94975 16 8 500 5 4.94975 18 10 500 5 4.94975 19 11 500 5 4.94975 21 13 500 5 4.94975 22 14 500 5 4.94975 24 16 500 5 4.94975 25 17 500 5 4.94975 0 4 500 5 4.94975 1 5 500 5 4.94975 3 7 500 5 4.94975 4 8 500 5 4.94975 9 13 500 5 4.94975 10 14 500 5 4.94975 12 16 500 5 4.94975 13 17 500 5 4.94975 18 22 500 5 4.94975 19 23 500 5 4.94975 21 25 500 5 4.94975 22 26 500 5 4.94975 3 1 500 5 4.94975 4 2 500 5 4.94975 6 4 500 5 4.94975 7 5 500 5 4.94975 12 10 500 5 4.94975 13 11 500 5 4.94975 15 13 500 5 4.94975 16 14 500 5 4.94975 21 19 500 5 4.94975 22 20 500 5 4.94975 24 22 500 5 4.94975 25 23 500 5 4.94975 ") Poutre1.addObject('StiffSpringForceField', template="Vec3", name="ExternalSprings1", object1="@M1", object2="@M2", spring="2 0 500 5 3.5 5 3 500 5 3.5 8 6 500 5 3.5 11 9 500 5 3.5 14 12 500 5 3.5 17 15 500 5 3.5 20 18 500 5 3.5 23 21 500 5 3.5 26 24 500 5 3.5 14 0 500 5 6.06218 17 3 500 5 6.06218 23 9 500 5 6.06218 26 12 500 5 6.06218 5 9 500 5 6.06218 8 12 500 5 6.06218 14 18 500 5 6.06218 17 21 500 5 6.06218 11 3 500 5 6.06218 14 6 500 5 6.06218 20 12 500 5 6.06218 23 15 500 5 6.06218 2 12 500 5 6.06218 5 15 500 5 6.06218 11 21 500 5 6.06218 14 24 500 5 6.06218 11 0 500 5 4.94975 14 3 500 5 4.94975 17 6 500 5 4.94975 20 9 500 5 4.94975 23 12 500 5 4.94975 26 15 500 5 4.94975 2 9 500 5 4.94975 5 12 500 5 4.94975 8 15 500 5 4.94975 11 18 500 5 4.94975 14 21 500 5 4.94975 17 24 500 5 4.94975 5 0 500 5 4.94975 8 3 500 5 4.94975 14 9 500 5 4.94975 17 12 500 5 4.94975 23 18 500 5 4.94975 26 21 500 5 4.94975 2 3 500 5 4.94975 5 6 500 5 4.94975 11 12 500 5 4.94975 14 15 500 5 4.94975 20 21 500 5 4.94975 23 24 500 5 4.94975 ") Poutre1.addObject('StiffSpringForceField', template="Vec3", name="ExternalSprings2", object1="@M2", object2="@M3", spring="2 0 500 5 3.5 5 3 500 5 3.5 8 6 500 5 3.5 11 9 500 5 3.5 14 12 500 5 3.5 17 15 500 5 3.5 20 18 500 5 3.5 23 21 500 5 3.5 26 24 500 5 3.5 14 0 500 5 6.06218 17 3 500 5 6.06218 23 9 500 5 6.06218 26 12 500 5 6.06218 5 9 500 5 6.06218 8 12 500 5 6.06218 14 18 500 5 6.06218 17 21 500 5 6.06218 11 3 500 5 6.06218 14 6 500 5 6.06218 20 12 500 5 6.06218 23 15 500 5 6.06218 2 12 500 5 6.06218 5 15 500 5 6.06218 11 21 500 5 6.06218 14 24 500 5 6.06218 11 0 500 5 4.94975 14 3 500 5 4.94975 17 6 500 5 4.94975 20 9 500 5 4.94975 23 12 500 5 4.94975 26 15 500 5 4.94975 2 9 500 5 4.94975 5 12 500 5 4.94975 8 15 500 5 4.94975 11 18 500 5 4.94975 14 21 500 5 4.94975 17 24 500 5 4.94975 5 0 500 5 4.94975 8 3 500 5 4.94975 14 9 500 5 4.94975 17 12 500 5 4.94975 23 18 500 5 4.94975 26 21 500 5 4.94975 2 3 500 5 4.94975 5 6 500 5 4.94975 11 12 500 5 4.94975 14 15 500 5 4.94975 20 21 500 5 4.94975 23 24 500 5 4.94975 ") Poutre1.addObject('StiffSpringForceField', template="Vec3", name="ExternalSprings3", object1="@M3", object2="@M4", spring="2 0 500 5 3.5 5 3 500 5 3.5 8 6 500 5 3.5 11 9 500 5 3.5 14 12 500 5 3.5 17 15 500 5 3.5 20 18 500 5 3.5 23 21 500 5 3.5 26 24 500 5 3.5 14 0 500 5 6.06218 17 3 500 5 6.06218 23 9 500 5 6.06218 26 12 500 5 6.06218 5 9 500 5 6.06218 8 12 500 5 6.06218 14 18 500 5 6.06218 17 21 500 5 6.06218 11 3 500 5 6.06218 14 6 500 5 6.06218 20 12 500 5 6.06218 23 15 500 5 6.06218 2 12 500 5 6.06218 5 15 500 5 6.06218 11 21 500 5 6.06218 14 24 500 5 6.06218 11 0 500 5 4.94975 14 3 500 5 4.94975 17 6 500 5 4.94975 20 9 500 5 4.94975 23 12 500 5 4.94975 26 15 500 5 4.94975 2 9 500 5 4.94975 5 12 500 5 4.94975 8 15 500 5 4.94975 11 18 500 5 4.94975 14 21 500 5 4.94975 17 24 500 5 4.94975 5 0 500 5 4.94975 8 3 500 5 4.94975 14 9 500 5 4.94975 17 12 500 5 4.94975 23 18 500 5 4.94975 26 21 500 5 4.94975 2 3 500 5 4.94975 5 6 500 5 4.94975 11 12 500 5 4.94975 14 15 500 5 4.94975 20 21 500 5 4.94975 23 24 500 5 4.94975 ") Poutre1.addObject('StiffSpringForceField', template="Vec3", name="ExternalSprings4", object1="@M4", object2="@M5", spring="2 0 500 5 3.5 5 3 500 5 3.5 8 6 500 5 3.5 11 9 500 5 3.5 14 12 500 5 3.5 17 15 500 5 3.5 20 18 500 5 3.5 23 21 500 5 3.5 26 24 500 5 3.5 14 0 500 5 6.06218 17 3 500 5 6.06218 23 9 500 5 6.06218 26 12 500 5 6.06218 5 9 500 5 6.06218 8 12 500 5 6.06218 14 18 500 5 6.06218 17 21 500 5 6.06218 11 3 500 5 6.06218 14 6 500 5 6.06218 20 12 500 5 6.06218 23 15 500 5 6.06218 2 12 500 5 6.06218 5 15 500 5 6.06218 11 21 500 5 6.06218 14 24 500 5 6.06218 11 0 500 5 4.94975 14 3 500 5 4.94975 17 6 500 5 4.94975 20 9 500 5 4.94975 23 12 500 5 4.94975 26 15 500 5 4.94975 2 9 500 5 4.94975 5 12 500 5 4.94975 8 15 500 5 4.94975 11 18 500 5 4.94975 14 21 500 5 4.94975 17 24 500 5 4.94975 5 0 500 5 4.94975 8 3 500 5 4.94975 14 9 500 5 4.94975 17 12 500 5 4.94975 23 18 500 5 4.94975 26 21 500 5 4.94975 2 3 500 5 4.94975 5 6 500 5 4.94975 11 12 500 5 4.94975 14 15 500 5 4.94975 20 21 500 5 4.94975 23 24 500 5 4.94975 ") ```
Component/SceneUtility/MonitorTest.scn
<Node name="root" gravity="0 -9.81 0">
<DefaultAnimationLoop/>
<Node name="node">
<RequiredPlugin name="Sofa.Component.IO.Mesh"/> <!-- Needed to use components [MeshGmshLoader] -->
<RequiredPlugin name="Sofa.Component.LinearSolver.Iterative"/> <!-- Needed to use components [CGLinearSolver] -->
<RequiredPlugin name="Sofa.Component.Mass"/> <!-- Needed to use components [UniformMass] -->
<RequiredPlugin name="Sofa.Component.ODESolver.Backward"/> <!-- Needed to use components [EulerImplicitSolver] -->
<RequiredPlugin name="Sofa.Component.StateContainer"/> <!-- Needed to use components [MechanicalObject] -->
<RequiredPlugin name="SofaValidation"/> <!-- Needed to use components [Monitor] -->
<EulerImplicitSolver rayleighStiffness="0" printLog="false" />
<CGLinearSolver iterations="100" threshold="0.00000001" tolerance="1e-5"/>
<MeshGmshLoader name="loader" filename="mesh/smCube27.msh" createSubelements="true" />
<MechanicalObject template="Rigid3" src="@loader" name="MO" showObject="1"/>
<Monitor template="Rigid3" name="monitor" listening="1" indices="0" ExportPositions="true" ExportVelocities="true" ExportForces="true" />
<UniformMass totalMass="1" />
</Node>
</Node>
def createScene(rootNode):
root = rootNode.addChild('root', gravity="0 -9.81 0")
root.addObject('DefaultAnimationLoop')
node = root.addChild('node')
node.addObject('RequiredPlugin', name="Sofa.Component.IO.Mesh")
node.addObject('RequiredPlugin', name="Sofa.Component.LinearSolver.Iterative")
node.addObject('RequiredPlugin', name="Sofa.Component.Mass")
node.addObject('RequiredPlugin', name="Sofa.Component.ODESolver.Backward")
node.addObject('RequiredPlugin', name="Sofa.Component.StateContainer")
node.addObject('RequiredPlugin', name="SofaValidation")
node.addObject('EulerImplicitSolver', rayleighStiffness="0", printLog="false")
node.addObject('CGLinearSolver', iterations="100", threshold="0.00000001", tolerance="1e-5")
node.addObject('MeshGmshLoader', name="loader", filename="mesh/smCube27.msh", createSubelements="true")
node.addObject('MechanicalObject', template="Rigid3", src="@loader", name="MO", showObject="1")
node.addObject('Monitor', template="Rigid3", name="monitor", listening="1", indices="0", ExportPositions="true", ExportVelocities="true", ExportForces="true")
node.addObject('UniformMass', totalMass="1")