<?xml version="1.0" ?>
<!-- See https://wiki.sofa-framework.org/wiki/TutorialTopologyLinearMesh -->
<Node name="Root" gravity="0 -9.81 0" dt="0.02">
    <!-- Basic Components to perform the collision detection -->
    <VisualStyle displayFlags="showVisual showBehavior" />
    <DefaultPipeline name="DefaultCollisionPipeline" depth="6" />
    <BruteForceDetection name="Detection" />
    <MinProximityIntersection name="Proximity" alarmDistance="0.3" contactDistance="0.2" />
    <DefaultContactManager name="Response" />
    <DefaultCollisionGroupManager name="Group" />
    <Node name="Pendulum Static Mesh">
        <MechanicalObject template="Vec3d" name="DOF" position="0 0 -2 1 0 -2 2 0 -2 3 0 -2 4 0 -2 5 0 -2" />
        <UniformMass template="Vec3d" name="Mass" totalmass="1" />
        <CGLinearSolver template="GraphScattered" name="CG solver" iterations="25" tolerance="1e-5" threshold="1e-5"/>
        <EulerImplicitSolver name="EulerImplicit" />
        <FixedConstraint template="Vec3d" name="Fixed dof" indices="0" />
        <MeshTopology name="Static Mesh" edges="0 1  1 2  2 3  3 4  4 5 " />
        <MeshSpringForceField template="Vec3d" name="springs" stiffness="100" damping="1" />
    </Node>
    <Node name="Pendulum Regular Mesh">
        <MechanicalObject template="Vec3d" name="DOF" position="0 0 6" />
        <UniformMass template="Vec3d" name="Mass" totalmass="1" />
        <CGLinearSolver template="GraphScattered" name="CG solver" iterations="25" tolerance="1e-5" threshold="1e-5"/>
        <EulerImplicitSolver name="EulerImplicit" />
        <FixedConstraint template="Vec3d" name="Fixed dof" indices="0" />
        <RegularGridTopology name="Regular Mesh" n="6 1 1" min="0 0 6" max="5 1 6" />
        <RegularGridSpringForceField template="Vec3d" name="springs" />
    </Node>
    <Node name="Pendulum Dynamic Mesh">
        <MechanicalObject template="Vec3d" name="DOF" position="0 0 2 1 0 2 2 0 2 3 0 2 4 0 2 5 0 2" />
        <UniformMass template="Vec3d" name="Mass" totalmass="1" />
        <CGLinearSolver template="GraphScattered" name="CG solver" iterations="25" tolerance="1e-5" threshold="1e-5"/>
        <EulerImplicitSolver name="EulerImplicit" />
        <FixedConstraint template="Vec3d" name="Fixed dof" indices="0" />
        <EdgeSetTopologyContainer name="Dynamic Mesh" edges="0 1  1 2  2 3  3 4  4 5 " />
        <MeshSpringForceField template="Vec3d" name="springs" stiffness="100" damping="1" />
    </Node>
</Node>
