<?xml version="1.0" encoding="UTF-8" ?>
<OpenSimDocument Version="20303">
	<Model name="toy_with_forces">
		<credits>
      Author: Matt DeMers
      License:
      Creative Commons (CCBY 3.0). You are free to distribute, remix, tweak, and build upon this work, even commercially,
      as long as you credit us for the original creation.
      http://creativecommons.org/licenses/by/3.0/
    </credits>
		<publications>Unassigned</publications>
		<length_units>m</length_units>
		<force_units>N</force_units>
		<!--Acceleration due to gravity.-->
		<gravity> 0 -9.80665 0</gravity>
		<!--Bodies in the model.-->
		<BodySet>
			<objects>
				<Body name="ground">
					<mass>0</mass>
					<mass_center> 0 0 0</mass_center>
					<inertia_xx>1</inertia_xx>
					<inertia_yy>1</inertia_yy>
					<inertia_zz>1</inertia_zz>
					<inertia_xy>0</inertia_xy>
					<inertia_xz>0</inertia_xz>
					<inertia_yz>0</inertia_yz>
					<!--Joint that connects this body with the parent body.-->
					<Joint />
					<VisibleObject>
						<!--Set of geometry files and associated attributes, allow .vtp, .stl, .obj-->
						<GeometrySet>
							<objects>
								<DisplayGeometry>
									<!--Name of geometry file .vtp, .stl, .obj-->
									<geometry_file>checkered_floor.vtp</geometry_file>
									<!--Color used to display the geometry when visible-->
									<color> 1 1 1</color>
									<!--Name of texture file .jpg, .bmp-->
									<texture_file />
									<!--in body transform specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
									<transform> -0 0 -0 0 0 0</transform>
									<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
									<scale_factors> 1 1 1</scale_factors>
									<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
									<display_preference>4</display_preference>
									<!--Display opacity between 0.0 and 1.0-->
									<opacity>1</opacity>
								</DisplayGeometry>
							</objects>
							<groups />
						</GeometrySet>
						<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
						<scale_factors> 1 1 1</scale_factors>
						<!--transform relative to owner specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
						<transform> -0 0 -0 0 0 0</transform>
						<!--Whether to show a coordinate frame-->
						<show_axes>false</show_axes>
						<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded Can be overriden for individual geometries-->
						<display_preference>4</display_preference>
					</VisibleObject>
					<WrapObjectSet>
						<objects />
						<groups />
					</WrapObjectSet>
				</Body>
				<Body name="block">
					<mass>20</mass>
					<mass_center> 0 0 0</mass_center>
					<inertia_xx>0.53333333</inertia_xx>
					<inertia_yy>0.53333333</inertia_yy>
					<inertia_zz>0.53333333</inertia_zz>
					<inertia_xy>0</inertia_xy>
					<inertia_xz>0</inertia_xz>
					<inertia_yz>0</inertia_yz>
					<!--Joint that connects this body with the parent body.-->
					<Joint>
						<FreeJoint name="ground_block">
							<!--Name of the parent body to which this joint connects its owner body.-->
							<parent_body>ground</parent_body>
							<!--Location of the joint in the parent body specified in the parent reference frame. Default is (0,0,0).-->
							<location_in_parent>0 0 0</location_in_parent>
							<!--Orientation of the joint in the parent body specified in the parent reference frame. Euler XYZ body-fixed rotation angles are used to express the orientation. Default is (0,0,0).-->
							<orientation_in_parent>0 0 0</orientation_in_parent>
							<!--Location of the joint in the child body specified in the child reference frame. For SIMM models, this vector is always the zero vector (i.e., the body reference frame coincides with the joint). -->
							<location>0 0 0</location>
							<!--Orientation of the joint in the owing body specified in the owning body reference frame.  Euler XYZ body-fixed rotation angles are used to express the orientation. -->
							<orientation>0 0 0</orientation>
							<!--Set holding the generalized coordinates (q's) that parmeterize this joint.-->
							<CoordinateSet>
								<objects>
									<Coordinate name="xRotation">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>rotational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>0</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-2 2</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>false</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
									<Coordinate name="yRotation">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>rotational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>0</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-2 2</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>false</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
									<Coordinate name="zRotation">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>rotational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>0.698131700797732</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-2 2</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>false</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
									<Coordinate name="xTranslation">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>translational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>0.000277983525703001</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-10 10</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>true</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
									<Coordinate name="yTranslation">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>translational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>1.1</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-10 10</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>true</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
									<Coordinate name="zTranslation">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>translational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>0</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-10 10</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>true</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
								</objects>
								<groups />
							</CoordinateSet>
							<!--Whether the joint transform defines parent->child or child->parent.-->
							<reverse>false</reverse>
						</FreeJoint>
					</Joint>
					<VisibleObject>
						<!--Set of geometry files and associated attributes, allow .vtp, .stl, .obj-->
						<GeometrySet>
							<objects>
								<DisplayGeometry>
									<!--Name of geometry file .vtp, .stl, .obj-->
									<geometry_file>block.vtp</geometry_file>
									<!--Color used to display the geometry when visible-->
									<color> 0.862745 0.117647 0.117647</color>
									<!--Name of texture file .jpg, .bmp-->
									<texture_file />
									<!--in body transform specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
									<transform> -0 0 -0 0 0 0</transform>
									<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
									<scale_factors> 2 2 2</scale_factors>
									<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
									<display_preference>4</display_preference>
									<!--Display opacity between 0.0 and 1.0-->
									<opacity>1</opacity>
								</DisplayGeometry>
							</objects>
							<groups />
						</GeometrySet>
						<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
						<scale_factors> 1 1 1</scale_factors>
						<!--transform relative to owner specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
						<transform> -0 0 -0 0 0 0</transform>
						<!--Whether to show a coordinate frame-->
						<show_axes>false</show_axes>
						<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded Can be overriden for individual geometries-->
						<display_preference>4</display_preference>
					</VisibleObject>
					<WrapObjectSet>
						<objects />
						<groups />
					</WrapObjectSet>
				</Body>
				<Body name="link1">
					<mass>5</mass>
					<mass_center> 0 0.25 0</mass_center>
					<inertia_xx>8.333e-005</inertia_xx>
					<inertia_yy>8e-006</inertia_yy>
					<inertia_zz>8.333e-005</inertia_zz>
					<inertia_xy>0</inertia_xy>
					<inertia_xz>0</inertia_xz>
					<inertia_yz>0</inertia_yz>
					<!--Joint that connects this body with the parent body.-->
					<Joint>
						<PinJoint name="pin1">
							<!--Name of the parent body to which this joint connects its owner body.-->
							<parent_body>block</parent_body>
							<!--Location of the joint in the parent body specified in the parent reference frame. Default is (0,0,0).-->
							<location_in_parent>0 0 0</location_in_parent>
							<!--Orientation of the joint in the parent body specified in the parent reference frame. Euler XYZ body-fixed rotation angles are used to express the orientation. Default is (0,0,0).-->
							<orientation_in_parent>0 0 0</orientation_in_parent>
							<!--Location of the joint in the child body specified in the child reference frame. For SIMM models, this vector is always the zero vector (i.e., the body reference frame coincides with the joint). -->
							<location>0 0.5 0</location>
							<!--Orientation of the joint in the owing body specified in the owning body reference frame.  Euler XYZ body-fixed rotation angles are used to express the orientation. -->
							<orientation>0 0 0</orientation>
							<!--Set holding the generalized coordinates (q's) that parmeterize this joint.-->
							<CoordinateSet>
								<objects>
									<Coordinate name="pin1_rot">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>rotational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>0</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-2 2</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>true</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
								</objects>
								<groups />
							</CoordinateSet>
							<!--Whether the joint transform defines parent->child or child->parent.-->
							<reverse>false</reverse>
						</PinJoint>
					</Joint>
					<VisibleObject>
						<!--Set of geometry files and associated attributes, allow .vtp, .stl, .obj-->
						<GeometrySet>
							<objects>
								<DisplayGeometry>
									<!--Name of geometry file .vtp, .stl, .obj-->
									<geometry_file>block.vtp</geometry_file>
									<!--Color used to display the geometry when visible-->
									<color> 0.862745 0.117647 0.117647</color>
									<!--Name of texture file .jpg, .bmp-->
									<texture_file />
									<!--in body transform specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
									<transform> -0 0 -0 0 0.25 0</transform>
									<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
									<scale_factors> 0.6 5 0.6</scale_factors>
									<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
									<display_preference>4</display_preference>
									<!--Display opacity between 0.0 and 1.0-->
									<opacity>1</opacity>
								</DisplayGeometry>
								<DisplayGeometry>
									<!--Name of geometry file .vtp, .stl, .obj-->
									<geometry_file>sphere.vtp</geometry_file>
									<!--Color used to display the geometry when visible-->
									<color> 0.862745 0.117647 0.117647</color>
									<!--Name of texture file .jpg, .bmp-->
									<texture_file />
									<!--in body transform specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
									<transform> 0 0 0 0 0 0</transform>
									<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
									<scale_factors> 0.1 0.1 0.1</scale_factors>
									<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
									<display_preference>4</display_preference>
									<!--Display opacity between 0.0 and 1.0-->
									<opacity>1</opacity>
								</DisplayGeometry>
							</objects>
							<groups />
						</GeometrySet>
						<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
						<scale_factors> 1 1 1</scale_factors>
						<!--transform relative to owner specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
						<transform> -0 0 -0 0 0 0</transform>
						<!--Whether to show a coordinate frame-->
						<show_axes>false</show_axes>
						<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded Can be overriden for individual geometries-->
						<display_preference>4</display_preference>
					</VisibleObject>
					<WrapObjectSet>
						<objects />
						<groups />
					</WrapObjectSet>
				</Body>
				<Body name="link2">
					<mass>5</mass>
					<mass_center> 0 0.25 0</mass_center>
					<inertia_xx>8.333e-005</inertia_xx>
					<inertia_yy>8e-006</inertia_yy>
					<inertia_zz>8.333e-005</inertia_zz>
					<inertia_xy>0</inertia_xy>
					<inertia_xz>0</inertia_xz>
					<inertia_yz>0</inertia_yz>
					<!--Joint that connects this body with the parent body.-->
					<Joint>
						<PinJoint name="pin2">
							<!--Name of the parent body to which this joint connects its owner body.-->
							<parent_body>link1</parent_body>
							<!--Location of the joint in the parent body specified in the parent reference frame. Default is (0,0,0).-->
							<location_in_parent>0 0 0</location_in_parent>
							<!--Orientation of the joint in the parent body specified in the parent reference frame. Euler XYZ body-fixed rotation angles are used to express the orientation. Default is (0,0,0).-->
							<orientation_in_parent>0 0 0</orientation_in_parent>
							<!--Location of the joint in the child body specified in the child reference frame. For SIMM models, this vector is always the zero vector (i.e., the body reference frame coincides with the joint). -->
							<location>0 0.5 0</location>
							<!--Orientation of the joint in the owing body specified in the owning body reference frame.  Euler XYZ body-fixed rotation angles are used to express the orientation. -->
							<orientation>0 0 0</orientation>
							<!--Set holding the generalized coordinates (q's) that parmeterize this joint.-->
							<CoordinateSet>
								<objects>
									<Coordinate name="pin2_rot">
										<!--Coordinate can describe rotational, translational, or coupled motion. Defaults to rotational.-->
										<motion_type>rotational</motion_type>
										<!--The value of this coordinate before any value has been set. Rotational coordinate value is in radians and Translational in meters.-->
										<default_value>-1.39626340159546</default_value>
										<!--The speed value of this coordinate before any value has been set. Rotational coordinate value is in rad/s and Translational in m/s.-->
										<default_speed_value>0</default_speed_value>
										<!--The minimum and maximum values that the coordinate can range between. Rotational coordinate range in radians and Translational in meters.-->
										<range>-2 2</range>
										<!--Flag indicating whether or not the values of the coordinates should be limited to the range, above.-->
										<clamped>true</clamped>
										<!--Flag indicating whether or not the values of the coordinates should be constrained to the current (e.g. default) value, above.-->
										<locked>false</locked>
										<!--If specified, the coordinate can be prescribed by a function of time. It can be any OpenSim Function with valid second order derivatives.-->
										<prescribed_function />
										<!--Flag indicating whether or not the values of the coordinates should be prescribed according to the function above. It is ignored if the no prescribed function is specified.-->
										<prescribed>false</prescribed>
									</Coordinate>
								</objects>
								<groups />
							</CoordinateSet>
							<!--Whether the joint transform defines parent->child or child->parent.-->
							<reverse>false</reverse>
						</PinJoint>
					</Joint>
					<VisibleObject>
						<!--Set of geometry files and associated attributes, allow .vtp, .stl, .obj-->
						<GeometrySet>
							<objects>
								<DisplayGeometry>
									<!--Name of geometry file .vtp, .stl, .obj-->
									<geometry_file>block.vtp</geometry_file>
									<!--Color used to display the geometry when visible-->
									<color> 0.862745 0.117647 0.117647</color>
									<!--Name of texture file .jpg, .bmp-->
									<texture_file />
									<!--in body transform specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
									<transform> 0 0 0 0 0.25 0</transform>
									<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
									<scale_factors> 0.6 5 0.6</scale_factors>
									<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
									<display_preference>4</display_preference>
									<!--Display opacity between 0.0 and 1.0-->
									<opacity>1</opacity>
								</DisplayGeometry>
							</objects>
							<groups />
						</GeometrySet>
						<!--Three scale factors for display purposes: scaleX scaleY scaleZ-->
						<scale_factors> 1 1 1</scale_factors>
						<!--transform relative to owner specified as 3 rotations (rad) followed by 3 translations rX rY rZ tx ty tz-->
						<transform> -0 0 -0 0 0 0</transform>
						<!--Whether to show a coordinate frame-->
						<show_axes>false</show_axes>
						<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded Can be overriden for individual geometries-->
						<display_preference>4</display_preference>
					</VisibleObject>
					<WrapObjectSet>
						<objects />
						<groups />
					</WrapObjectSet>
				</Body>
			</objects>
			<groups />
		</BodySet>
		<!--Constraints in the model.-->
		<ConstraintSet>
			<objects>
				<PointOnLineConstraint name="lock_block_to_y_axis">
					<isDisabled>false</isDisabled>
					<line_body>ground</line_body>
					<line_direction_vec> 0 1 0</line_direction_vec>
					<point_on_line> 0 0 0</point_on_line>
					<follower_body>block</follower_body>
					<point_on_follower> 0 0 0</point_on_follower>
				</PointOnLineConstraint>
				<PointOnLineConstraint name="lock_foot_to_y_axis">
					<isDisabled>false</isDisabled>
					<line_body>ground</line_body>
					<line_direction_vec> 0 1 0</line_direction_vec>
					<point_on_line> 0 0 0</point_on_line>
					<follower_body>link2</follower_body>
					<point_on_follower> 0 0 0</point_on_follower>
				</PointOnLineConstraint>
			</objects>
			<groups />
		</ConstraintSet>
		<!--Forces in the model.-->
		<ForceSet>
			<objects>
				<HuntCrossleyForce name="foot_contact_force">
					<!--Flag indicating whether the force is disabled or not. Disabled means that the force is not active in subsequent dynamics realizations.-->
					<isDisabled>false</isDisabled>
					<!--Material properties.-->
					<HuntCrossleyForce::ContactParametersSet name="contact_parameters">
						<objects>
							<HuntCrossleyForce::ContactParameters>
								<!--Names of geometry objects affected by these parameters.-->
								<geometry>platform heel</geometry>
								<stiffness>100000000</stiffness>
								<dissipation>0.5</dissipation>
								<static_friction>0.9</static_friction>
								<dynamic_friction>0.9</dynamic_friction>
								<viscous_friction>0.6</viscous_friction>
							</HuntCrossleyForce::ContactParameters>
						</objects>
						<groups />
					</HuntCrossleyForce::ContactParametersSet>
					<!--Slip velocity (creep) at which peak static friction occurs.-->
					<transition_velocity>0.1</transition_velocity>
				</HuntCrossleyForce>
				<PointToPointSpring name="spring">
					<!--Flag indicating whether the force is disabled or not. Disabled means that the force is not active in subsequent dynamics realizations.-->
					<isDisabled>false</isDisabled>
					<!--Name of Body to which 1 end of the spring is attached.-->
					<body1>block</body1>
					<!--Name of Body to which the 2nd end of the spring is attached.-->
					<body2>link2</body2>
					<!--Force application point on body1.-->
					<point1>0 0 0</point1>
					<!--Force application point on body2.-->
					<point2>0 0 0</point2>
					<!--Spring stiffness.-->
					<stiffness>2000</stiffness>
					<!--Spring resting length.-->
					<rest_length>0.8</rest_length>
				</PointToPointSpring>
				<CoordinateLimitForce name="knee_limit">
					<!--Flag indicating whether the force is disabled or not. Disabled means that the force is not active in subsequent dynamics realizations.-->
					<isDisabled>false</isDisabled>
					<!--Coordinate (name) to be limited.-->
					<coordinate>pin2_rot</coordinate>
					<!--Stiffness of the passive limit force when coordinate exceeds upper limit. Note, rotational stiffness expected in N*m/degree.-->
					<upper_stiffness>20</upper_stiffness>
					<!--The upper limit of the coordinate range of motion (rotations in degrees).-->
					<upper_limit>0</upper_limit>
					<!--Stiffness of the passive limit force when coordinate exceeds lower limit. Note, rotational stiffness expected in N*m/degree.-->
					<lower_stiffness>20</lower_stiffness>
					<!--The lower limit of the coordinate range of motion (rotations in degrees).-->
					<lower_limit>-140</lower_limit>
					<!--Damping factor on the coordinate's speed applied only when limit is exceeded. For translational has units N/(m/s) and rotational has Nm/(degree/s)-->
					<damping>1</damping>
					<!--Transition region width in the units of the coordinate (rotations in degrees). Dictates the transition from zero to constant stiffness as coordinate exceeds its limit.-->
					<transition>5</transition>
				</CoordinateLimitForce>
				<BushingForce name="hip_bushing">
					<!--Flag indicating whether the force is disabled or not. Disabled means that the force is not active in subsequent dynamics realizations.-->
					<isDisabled>false</isDisabled>
					<!--One of the two bodies connected by the bushing.-->
					<body_1>block</body_1>
					<!--The other of the two bodies connected by the bushing.-->
					<body_2>link1</body_2>
					<!--Location of bushing frame on body 1.-->
					<location_body_1>0 0 0</location_body_1>
					<!--Orientation of bushing frame in body 1 as x-y-z, body fixed Euler rotations.-->
					<orientation_body_1>0 0 0</orientation_body_1>
					<!--Location of bushing frame on body 2.-->
					<location_body_2>0 0.5 0</location_body_2>
					<!--Orientation of bushing frame in body 2 as x-y-z, body fixed Euler rotations.-->
					<orientation_body_2>0 0 0</orientation_body_2>
					<!--Stiffness parameters resisting relative rotation.-->
					<rotational_stiffness>10 10 10</rotational_stiffness>
					<!--Stiffness parameters resisting relative translation.-->
					<translational_stiffness>0 0 0</translational_stiffness>
					<!--Damping parameters resisting relative angular velocity.-->
					<rotational_damping>0.1 0.1 0.1</rotational_damping>
					<!--Damping parameters resisting relative translational velocity.-->
					<translational_damping>0 0 0</translational_damping>
				</BushingForce>
			</objects>
			<groups />
		</ForceSet>
		<!--Markers in the model.-->
		<MarkerSet>
			<objects />
			<groups />
		</MarkerSet>
		<!--ContactGeometries  in the model.-->
		<ContactGeometrySet>
			<objects>
				<ContactHalfSpace name="platform">
					<!--Body name to connect the contact geometry to-->
					<body_name>ground</body_name>
					<!--Location of geometry center in the body frame-->
					<location>0 0 0</location>
					<!--Orientation of geometry in the body frame-->
					<orientation>0 0 -1.57079633</orientation>
					<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
					<display_preference>0</display_preference>
				</ContactHalfSpace>
				<ContactSphere name="heel">
					<!--Body name to connect the contact geometry to-->
					<body_name>link2</body_name>
					<!--Location of geometry center in the body frame-->
					<location>0 0 0</location>
					<!--Orientation of geometry in the body frame-->
					<orientation>0 0 0</orientation>
					<!--Display Pref. 0:Hide 1:Wire 3:Flat 4:Shaded-->
					<display_preference>4</display_preference>
					<radius>0.05</radius>
				</ContactSphere>
			</objects>
			<groups />
		</ContactGeometrySet>
		<!--Controllers in the model.-->
		<ControllerSet name="Controllers">
			<objects />
			<groups />
		</ControllerSet>
	</Model>
</OpenSimDocument>
