@@ -73,7 +73,10 @@ Main = {
7373When you load the model, open a model view window, and run the
7474SetInitialConditions operation, you should get the following picture:
7575
76- ![ simple model] ( _static/lesson1/image1.jpeg )
76+ ``` {image} _static/lesson1/image1.jpeg
77+ :alt: simple model
78+ :align: center
79+ ```
7780
7881The model has a driver, so you can run the kinematic analysis and see
7982the movement. The arm flexes about the origin of the red reference
@@ -95,7 +98,10 @@ If you pick the Classes tab in the right-hand side of the window, then
9598you will get access to the class tree. Expand the tree as shown in the
9699picture until you get to the AnyMuscleModel.
97100
98- ![ class tree] ( _static/lesson1/image2.png )
101+ ``` {image} _static/lesson1/image2.png
102+ :alt: class tree
103+ :align: center
104+ ```
99105
100106Notice that this class has three derived classes. These are more
101107advanced muscle models, and we shall get to those later. However for the
@@ -185,23 +191,26 @@ Place the cursor right after the end brace of the musle model,
185191right-click the AnyMuscleViaPoint class in the tree, and insert an
186192instance of it:
187193
188- ![ class tree AnyMuscleViaPoint] ( _static/lesson1/image3.png )
194+ ``` {image} _static/lesson1/image3.png
195+ :alt: class tree AnyMuscleViaPoint
196+ :align: center
197+ ```
189198
190199``` AnyScriptDoc
191200AnyMuscleModel SimpleModel = {
192- F0 = 100;
193- //Lf0 = 0;
194- //Vol0 = 0;
195- };
196-
197- § AnyMuscleViaPoint <ObjectName> = {
198- //RefFrames = ;
199- //Surfaces = ;
200- AnyMuscleModel &<Insert name0> = <Insert object reference (or full object definition)>;
201- AnyRefFrame &<Insert name0> = <Insert object reference (or full object definition)>;
202- AnyRefFrame &<Insert name1> = <Insert object reference (or full object definition)>;
203- //AnyRefFrame &<Insert name2> = <Insert object reference (or full object definition)>; You can make any number of these objects!
204- };§
201+ F0 = 100;
202+ //Lf0 = 0;
203+ //Vol0 = 0;
204+ };
205+
206+ § AnyMuscleViaPoint <ObjectName> = {
207+ //RefFrames = ;
208+ //Surfaces = ;
209+ AnyMuscleModel &<Insert name0> = <Insert object reference (or full object definition)>;
210+ AnyRefFrame &<Insert name0> = <Insert object reference (or full object definition)>;
211+ AnyRefFrame &<Insert name1> = <Insert object reference (or full object definition)>;
212+ //AnyRefFrame &<Insert name2> = <Insert object reference (or full object definition)>; You can make any number of these objects!
213+ };§
205214```
206215
207216Let us start by filling out what we can and removing what we have no use
@@ -265,13 +274,19 @@ window unless you specifically ask for it. When you load the model and
265274run the SetInitialConditions study you will get the following picture
266275(if your model does not load, and you cannot find the error, {download}` clickhere to download a model that works <Downloads/MuscleDemo.1.any> ` ):
267276
268- ![ simple model with muscle] ( _static/lesson1/image4.jpeg )
277+ ``` {image} _static/lesson1/image4.jpeg
278+ :alt: simple model with muscle
279+ :align: center
280+ ```
269281
270282Notice that the muscle is now able to balance the gravity, and we are
271283able to run the InverseDynamicAnalysis. If you try it out and
272284subsequently open a chart view, you are able to plot the muscle force:
273285
274- ![ muscle force] ( _static/lesson1/image5.png )
286+ ``` {image} _static/lesson1/image5.png
287+ :alt: muscle force
288+ :align: center
289+ ```
275290
276291The muscle force is the item Fm in the list of properties you can plot
277292for a muscle. As you can see, lots of other properties are available,
0 commit comments