[38ba34]: / Body / AAUHuman / LegTLEM / TLEM2.2 / ModelParameters.any

Download this file

836 lines (652 with data), 46.9 kB

/**
This dataset is part of The TLEMsafe Project Dataset. The dataset was
created during the TLEMsafe project (www.tlemsafe.eu) funded by the
European Commission under Grant Agreement (no. 247860) and under the
TLEMsafe Consortium Agreement.

Use the following paper when citing:
Carbone, V., Fluit, R., Pellikaan, P., van der Krogt, M.M., Janssen, D.,
Damsgaard, M., Vigneron, L., Feilkas, T., Koopman, H.F.J.M., Verdonschot, N., 2015.
TLEM 2.0 - a comprehensive musculoskeletal geometry dataset for
subject-specific modeling of lower extremity.
J. Biomech. 48, 734-741. doi:10.1016/j.jbiomech.2014.12.034
*/
AnyFolder ModelParameters = {
  //^ This folder contains all hard coded values of the LegTLEM model. This includes
  //^ joint parameters, muscle origin, and insertion points along with other hardcoded
  //^ parameter measured during the cadaver study on wich this model is based.
  
  AnyMat33 TF = {{1,0,0},{0,1,0},{0,0,.Sign}};
  #include "ModelSegmentParameters.any"
  #include "ModelJointParameters.any"
  #include "ModelMuscleParameters.any"
  
  AnyFolder Pelvis = {
    // The published model measured all pelvis muscle insertions with respect to
    // the hip joint center.
    // To simplify the implementation AnyBody use anatomical coordinate system of
    // Pelvis instead. This means that the raw values are c
    
    /// AsisIpsilateral position with respect to the hip joint
    AnyVec3 AsisIpsilateral_wrt_hipjoint = {0.0338,    0.0807,    0.0334}*.TF';
    /// AsisColateralposition with respect to the hip joint
    AnyVec3 AsisColateral_wrt_hipjoint  = {0.0338,    0.0807,   -0.2020}*.TF';
    /// PsisIpsilateralposition with respect to the hip joint
    AnyVec3 PsisIpsilateral_wrt_hipjoint   = {-0.0894,    0.0804,   -0.0470}*.TF';
    /// PsisColateralposition with respect to the hip joint
    AnyVec3 PsisColateral_wrt_hipjoint   = {    -0.0894,    0.0804,   -0.1175}*.TF';
    
    /// Offset which must be substracted from the raw values to get coordinates
    /// with respect to Pelvis anatomical frame instead of the hip center.
    AnyVec3 FrameOffset = 0.5*(AsisIpsilateral_wrt_hipjoint + AsisColateral_wrt_hipjoint  );
    
    AnyVec3 AsisIpsilateral = AsisIpsilateral_wrt_hipjoint - FrameOffset;
    AnyVec3 AsisColateral = AsisColateral_wrt_hipjoint - FrameOffset;
    AnyVec3 PsisIpsilateral = PsisIpsilateral_wrt_hipjoint - FrameOffset;
    AnyVec3 PsisColateral = PsisColateral_wrt_hipjoint - FrameOffset;
    
    AnyVec3 PubicTubercleIpsilateral = {0.01554, -0.08181, 0.0191}*.TF';
    AnyVec3 PubicTubercleColateral = {0.01554, -0.08181, -0.0191}*.TF';
    
    AnyVec3 IschialTuberosityWrapNode = {-0.0440, -0.04697, -0.02211}*.TF' - FrameOffset;
    
    // AdductorBrevisDistal, Line (2 order) using 2 elements
    AnyVec3 AdductorBrevisDistal2Node = {0.02212,-0.03264,-0.07382}*.TF' - FrameOffset;
    AnyVec3 AdductorBrevisDistal1Node = {0.02319,-0.03086,-0.07468}*.TF' - FrameOffset;
    
    // AdductorBrevisMid, Line (2 order) using 2 elements
    AnyVec3 AdductorBrevisMid2Node = {0.02528,-0.02788,-0.07488}*.TF' - FrameOffset;
    AnyVec3 AdductorBrevisMid1Node = {0.02829,-0.02370,-0.07456}*.TF' - FrameOffset;
    
    // AdductorBrevisProximal, Line (2 order) using 2 elements
    AnyVec3 AdductorBrevisProximal2Node = {0.03220,-0.01821,-0.07377}*.TF' - FrameOffset;
    AnyVec3 AdductorBrevisProximal1Node = {0.03676,-0.01114,-0.07278}*.TF' - FrameOffset;
    
    // AdductorLongus, LineArea (2 order) using 6 elements
    AnyVec3 AdductorLongus6Node = {0.04150,-0.01154,-0.07775}*.TF' - FrameOffset;
    AnyVec3 AdductorLongus5Node = {0.04171,-0.01026,-0.07695}*.TF' - FrameOffset;
    AnyVec3 AdductorLongus4Node = {0.04216,-0.00904,-0.07600}*.TF' - FrameOffset;
    AnyVec3 AdductorLongus3Node = {0.04266,-0.00801,-0.07516}*.TF' - FrameOffset;
    AnyVec3 AdductorLongus2Node = {0.04313,-0.00708,-0.07422}*.TF' - FrameOffset;
    AnyVec3 AdductorLongus1Node = {0.04368,-0.00617,-0.07330}*.TF' - FrameOffset;
    
    // AdductorMagnusDistal, Line (2 order) using 3 elements
    AnyVec3 AdductorMagnusDistal3Node = {-0.01184,-0.06217,-0.05526}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusDistal2Node = {-0.02427,-0.06448,-0.04670}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusDistal1Node = {-0.03079,-0.06387,-0.04159}*.TF' - FrameOffset;
    
    // AdductorMagnusProximal, Line (2 order) using 4 elements
    AnyVec3 AdductorMagnusProximal1Node = {0.02523,-0.03014,-0.07745}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusProximal2Node = {0.02224,-0.03585,-0.07324}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusProximal3Node = {0.01986,-0.04151,-0.06944}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusProximal4Node = {0.01699,-0.04660,-0.06556}*.TF' - FrameOffset;
    
    // AdductorMagnusMid, Line (2 order) using 6 elements
    AnyVec3 AdductorMagnusMid1Node = {0.00499,-0.05578,-0.05761}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusMid2Node = {-0.00291,-0.06026,-0.05462}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusMid3Node = {-0.01042,-0.06165,-0.05072}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusMid4Node = {-0.01643,-0.06298,-0.04623}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusMid5Node = {-0.02099,-0.06449,-0.04102}*.TF' - FrameOffset;
    AnyVec3 AdductorMagnusMid6Node = {-0.02514,-0.06349,-0.03526}*.TF' - FrameOffset;
    
    AnyVec3 BicepsFemorisCaputLongum1Node = {-0.04648, -0.04847, -0.02661}*.TF' - FrameOffset;

    // GemellusInferior, Point using 1 elements
    AnyVec3 GemellusInferior1Node = {-0.03562,-0.01646,-0.01567}*.TF' - FrameOffset;
    
    // GemellusSuperior, Point using 1 elements
    AnyVec3 GemellusSuperior1Node = {-0.04828,-0.00642,-0.03504}*.TF' - FrameOffset;
    
    // GluteusMaximusInferior, Area using 6 elements
    AnyVec3 GluteusMaximusInferior6Node = {-0.07987, -0.01008,-0.07769}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusInferior5Node = {-0.08267, -0.00586,-0.06855}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusInferior4Node = {-0.08948, 0.01379, -0.07041}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusInferior3Node = {-0.08492, 0.01396, -0.05762}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusInferior2Node = {-0.08405, 0.03945, -0.05900}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusInferior1Node = {-0.08467, 0.04858, -0.04897}*.TF' - FrameOffset;
    
    AnyVec3 GluteusMaximusSuperior6Node = {-0.08466, 0.05289, -0.03927}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusSuperior5Node = {-0.07993, 0.06667, -0.03844}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusSuperior4Node = {-0.07993, 0.07367, -0.03044}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusSuperior3Node = {-0.08766, 0.08989, -0.03227}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusSuperior2Node = {-0.082885, 0.10457,-0.02771}*.TF' - FrameOffset;
    AnyVec3 GluteusMaximusSuperior1Node = {-0.07811, 0.12125, -0.01815}*.TF' - FrameOffset;
    
    // GluteusMediusAnterior, Area using 3 elements
    AnyVec3 GluteusMediusAnterior6Node = { 0.02373, 0.0846, 0.04051}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusAnterior5Node = { 0.01513, 0.0956, 0.04659}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusAnterior4Node = {0.002285,  0.101335,  0.04859}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusAnterior3Node = {-0.00856, 0.10680, 0.05059}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusAnterior2Node = {-0.01813 ,  0.113175,  0.04818}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusAnterior1Node = {-0.0237, 0.11888, 0.03977}*.TF' - FrameOffset;
    
    // GluteusMediusPosterior, Area using 4 elements
    AnyVec3 GluteusMediusPosterior6Node = {-0.05382,0.05809,-0.01627}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusPosterior5Node = {-0.07232 ,  0.085995, -0.02277 }*.TF' - FrameOffset;
    AnyVec3 GluteusMediusPosterior4Node = {-0.07282,  0.1139 , -0.01977}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusPosterior3Node = {-0.06054,  0.12789, -0.0066}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusPosterior2Node = {-0.046305,  0.12883 ,  0.014825}*.TF' - FrameOffset;
    AnyVec3 GluteusMediusPosterior1Node = {-0.03122, 0.12208, 0.03577}*.TF' - FrameOffset;
    
    // GluteusMinimusAnterior, Area using 1 elements
    AnyVec3 GluteusMinimusAnterior1Node = {0.01976, 0.08933, 0.04217}*.TF' - FrameOffset;
    
    // GluteusMinimusMid, Area using 2 elements
    AnyVec3 GluteusMinimusMid1Node = {-0.012625, 0.09145, 0.025825}*.TF' - FrameOffset;
    
    // GluteusMinimusPosterior, Area using 1 elements
    AnyVec3 GluteusMinimusPosterior1Node = {-0.03774,0.05215,-0.00660}*.TF' - FrameOffset;
    
    // Gracilis, Line (1 order) using 2 elements
    AnyVec3 Gracilis1Node = {0.01360,-0.04919,-0.06466}*.TF' - FrameOffset;
    AnyVec3 Gracilis2Node = {0.02457,-0.03054,-0.07614}*.TF' - FrameOffset;
    
    // IliacusLateralis, Area using 2 elements
    AnyVec3 IliacusLateralis1Node = {0.00931,0.09386,0.03065}*.TF' - FrameOffset;
    AnyVec3 IliacusLateralis2Node = {-0.02044,0.10574,0.02684}*.TF' - FrameOffset;
    
    // IliacusMid, Area using 2 elements
    AnyVec3 IliacusMid1Node = { 0.00122,0.06624,0.00993}*.TF' - FrameOffset;
    AnyVec3 IliacusMid2Node = {-0.04138,0.12323,0.00677}*.TF' - FrameOffset;
    
    // IliacusMedialis, Area using 2 elements
    AnyVec3 IliacusMedialis1Node = {-0.02449,0.07658,-0.00223}*.TF' - FrameOffset;
    AnyVec3 IliacusMedialis2Node = {-0.04417,0.10243,-0.01629}*.TF' - FrameOffset;
    
    
    //NOT USED
    // IliacusMid, Area using 2 elements
    //    AnyVec3 IliacusMid3Node = {-0.05424,0.02507,0.11115}*.TF' - FrameOffset;
    //    AnyVec3 IliacusMid4Node = {-0.05829,-0.00409,0.08208}*.TF' - FrameOffset;
    //
    // IliacusMedialis, Area using 2 elements
    //    AnyVec3 IliacusMedialis5Node = {-0.07517,0.04256,0.09107}*.TF' - FrameOffset;
    //    AnyVec3 IliacusMedialis6Node = {-0.07797,0.02176,0.06801}*.TF' - FrameOffset;
    //
    // ObturatorExternusInferior, Line (3 order) using 2 elements
    AnyVec3 ObturatorExternusInferior1Node = {-0.01270,-0.04004,-0.04599}*.TF' - FrameOffset;
    AnyVec3 ObturatorExternusInferior2Node = {0.00143,-0.04121,-0.05500}*.TF' - FrameOffset;
    
    // ObturatorExternusSuperior, LineArea (1 order) using 3 elements
    AnyVec3 ObturatorExternusSuperior3Node = {0.02995,-0.02076,-0.07377}*.TF' - FrameOffset;
    AnyVec3 ObturatorExternusSuperior2Node = {0.02641,-0.01239,-0.06355}*.TF' - FrameOffset;
    AnyVec3 ObturatorExternusSuperior1Node = {0.02338,-0.00470,-0.05241}*.TF' - FrameOffset;
    
    // ObturatorInternus, Area using 6 elements
    AnyVec3 ObturatorInternus5Node = {0.00540,-0.03414,-0.06107}*.TF' - FrameOffset;
    AnyVec3 ObturatorInternus6Node = {-0.02498,-0.03405,-0.04085}*.TF' - FrameOffset;
    AnyVec3 ObturatorInternus3Node = {0.01664,0.00353,-0.04450}*.TF' - FrameOffset;
    AnyVec3 ObturatorInternus4Node = {-0.02693,-0.00750,-0.03464}*.TF' - FrameOffset;
    AnyVec3 ObturatorInternus1Node = {-0.00230,0.02697,-0.02756}*.TF' - FrameOffset;
    AnyVec3 ObturatorInternus2Node = {-0.02568,0.02361,-0.02374}*.TF' - FrameOffset;
    
    // Pectineus, Line (2 order) using 4 elements
    AnyVec3 Pectineus1Node = {0.02206,0.01545,-0.03548}*.TF' - FrameOffset;
    AnyVec3 Pectineus1ViaNode = {0.02606,0.00345,-0.02748}*.TF' - FrameOffset;
    AnyVec3 Pectineus2Node = {0.02832,0.00760,-0.04272}*.TF' - FrameOffset;
    AnyVec3 Pectineus3Node = {0.03589,0.00055,-0.04982}*.TF' - FrameOffset;
    AnyVec3 Pectineus4Node = {0.04046,-0.0025,-0.05692}*.TF' - FrameOffset;
    
    // Piriformis, Point using 1 elements
    AnyVec3 Piriformis1Node = {-0.07157,0.05790,-0.05668}*.TF' - FrameOffset;
    
    // QuadratusFemoris, Line (1 order) using 4 elements
    AnyVec3 QuadratusFemoris1Node = {-0.02485,-0.03623,-0.01703}*.TF' - FrameOffset;
    AnyVec3 QuadratusFemoris2Node = {-0.02230,-0.04428,-0.02104}*.TF' - FrameOffset;
    AnyVec3 QuadratusFemoris3Node = {-0.02154,-0.05263,-0.02694}*.TF' - FrameOffset;
    AnyVec3 QuadratusFemoris4Node = {-0.02171,-0.06072,-0.03223}*.TF' - FrameOffset;
    
    // RectusFemorisMedialis, Point using 1 elements
    AnyVec3 RectusFemoris1Node = {0.02073,0.04280,0.01613}*.TF' - FrameOffset;
    AnyVec3 RectusFemoris2Node = {-0.00784,0.03433,0.01127}*.TF' - FrameOffset;
    
    // Sartorius, Point using 1 elements
    AnyVec3 Sartorius1Node = {0.03195,0.07861,0.03261}*.TF' - FrameOffset;
    
    // Semimembranosus, Line (2 order) using 3 elements
    AnyVec3 Semimembranosus1Node = {-0.04132,-0.03461,-0.01548}*.TF' - FrameOffset;
    AnyVec3 Semimembranosus2Node = {-0.03901,-0.04898,-0.01900}*.TF' - FrameOffset;
    AnyVec3 Semimembranosus3Node = {-0.03010,-0.05677,-0.02339}*.TF' - FrameOffset;
    
  
    // Semitendinosus, Point using 1 elements
    AnyVec3 Semitendinosus1Node = {-0.04407, -0.05626, -0.03447}*.TF' - FrameOffset;

    
    // TensorFasciaeLatae, Line (2 order) using 2 elements
    AnyVec3 TensorFasciaeLatae2Node = {0.02942,0.08614,0.04266}*.TF' - FrameOffset;
    AnyVec3 TensorFasciaeLatae1Node = {0.02249,0.09155,0.04677}*.TF' - FrameOffset;
    
    AnyVec3 IliacusLateralisViaNode1 = {0.031, 0.074, 0.027}*.TF' - FrameOffset;
    AnyVec3 IliacusMidViaNode1 =       {0.028, 0.050, 0.009}*.TF' - FrameOffset;
    AnyVec3 IliacusMedialisViaNode1 = {0.030, 0.029, -0.005}*.TF' - FrameOffset;
    
    // PsoasMajorVia, ViaPoint using 1 elements
    AnyVec3 PsoasMajorVia1Node = {0.01349,0.03289,-0.00155}*.TF' - FrameOffset;
    
    // ObturatorInternusVia, ViaPoint using 1 elements
    AnyVec3 ObturatorInternusVia1Node = {-0.04548,-0.01870,-0.03121}*.TF' - FrameOffset;
    
    
    
    
  };
  
  AnyFolder Thigh = {
    
    AnyMatrix IliacusWrapLandmarks = {
      {-0.008, 0.322, 0.016}*.TF',
      HipJoint + {-0.003, -0.0155, -0.015}*.TF',
      HipJoint + {0, 0.025, 0.007}*.TF',
      HipJoint + {0.022,0, -0.005}*.TF',
      HipJoint + {-0.003, -0.0155, -0.015}*.TF'
    };
    
    AnyMatrix RectusVastiiWrapLandmarks = {
      {0.03, -0.005689559, -0.01682781}*.TF',
      {0.037, -0.002689559, 0.01917219}*.TF',
      {0.015, -0.02468956, 0.004172187}*.TF',
      {0.035, -0.004689559, 0.004172187}*.TF',
      {0.03, 0.01231044, 0.004172187}*.TF'
    };
    
    AnyMatrix GastroWrapLandmarks = {
      {-0.032 , -0.006 , - 0.023}*.TF',
      {-0.0252 , -0.006 , 0.028}*.TF',
      {-0.0152 , 0.009 , - 0.021}*.TF',
      {-0.0252 , -0.006 , 0.028}*.TF',
      {-0.0235 , -0.022 , - 0.023}*.TF'
    }; 
    
    AnyMatrix HamstringWrapLandmarks = {
      {-0.037 , -0.006 , - 0.023}*.TF',
      {-0.0302 , -0.006 , 0.028}*.TF',
      {-0.0152 , 0.009 , - 0.021}*.TF',
      {-0.0302 , -0.006 , 0.028}*.TF',
      {-0.0235 , -0.022 , - 0.023}*.TF'
    };       
    
    AnyVec3 EpicondylusFemorisLateralis = {  -0.000000000000000,  -0.004310441121570, 0.040827812900271}*.TF';
    AnyVec3 EpicondylusFemorisMedialis = {-0.000000000000000, 0.004310441121570, -0.040827812900271}*.TF';
    
    // AdductorBrevisProximal, Line (1 order) using 2 elements
    AnyVec3 AdductorBrevisProximal1Node = {-0.00679,0.26827,0.02838}*.TF';
    AnyVec3 AdductorBrevisProximal2Node = {-0.00510,0.25768,0.02783}*.TF';
    
    // AdductorBrevisMid,  (1 order) using 2 elements
    AnyVec3 AdductorBrevisMid1Node = {-0.00364,0.24702,0.02712}*.TF';
    AnyVec3 AdductorBrevisMid2Node = {-0.00246,0.23627,0.02623}*.TF';
    
    // AdductorBrevisDistal,  (1 order) using 2 elements
    AnyVec3 AdductorBrevisDistal1Node = {-0.00172,0.22554,0.02503}*.TF';
    AnyVec3 AdductorBrevisDistal2Node = {-0.00071,0.21485,0.02402}*.TF';
    
    // AdductorLongus, Line (2 order) using 6 elements
    AnyVec3 AdductorLongus1Node = {0.00126,0.20345,0.02025}*.TF';
    AnyVec3 AdductorLongus2Node = {0.00153,0.18542,0.01752}*.TF';
    AnyVec3 AdductorLongus3Node = {0.00242,0.16979,0.01390}*.TF';
    AnyVec3 AdductorLongus4Node = {0.00279,0.15215,0.01198}*.TF';
    AnyVec3 AdductorLongus5Node = {0.00258,0.13902,0.01124}*.TF';
    AnyVec3 AdductorLongus6Node = {0.00193,0.11877,0.01071}*.TF';
    
    // AdductorMagnusDistal, Point using 1 elements
    AnyVec3 AdductorMagnusDistal1Node = {-0.01093,0.01454,-0.02939}*.TF';
    
    // AdductorMagnusMid, Line (2 order) using 6 elements
    AnyVec3 AdductorMagnusMid1Node = {-0.00577,0.24412,0.03348}*.TF';
    AnyVec3 AdductorMagnusMid2Node = {-0.00293,0.22074,0.02864}*.TF';
    AnyVec3 AdductorMagnusMid3Node = {-0.00120,0.19532,0.02397}*.TF';
    AnyVec3 AdductorMagnusMid4Node = {-0.00060,0.16799,0.01980}*.TF';
    AnyVec3 AdductorMagnusMid5Node = {-0.00040,0.13867,0.01578}*.TF';
    AnyVec3 AdductorMagnusMid6Node = { 0.00135,0.10782,0.01234}*.TF';
    
    // AdductorMagnusProximal, Line (1 order) using 4 elements
    AnyVec3 AdductorMagnusProximal4Node = {-0.00811,0.26684,0.03512}*.TF';
    AnyVec3 AdductorMagnusProximal3Node = {-0.01019,0.27710,0.03801}*.TF';
    AnyVec3 AdductorMagnusProximal2Node = {-0.01179,0.28741,0.04097}*.TF';
    AnyVec3 AdductorMagnusProximal1Node = {-0.01439,0.29772,0.04405}*.TF';
    
    // BicepsFemorisCaputBreve, Line (2 order) using 3 elements
    AnyVec3 BicepsFemorisCaputBreve1Node = {-0.00172,0.21961,0.02546}*.TF';
    AnyVec3 BicepsFemorisCaputBreve2Node = {-0.00067,0.16753,0.01767}*.TF';
    AnyVec3 BicepsFemorisCaputBreve3Node = {0.00122,0.10762,0.01337}*.TF';
    
    // GastrocnemiusLateralis, Point using 1 elements
    AnyVec3 GastrocnemiusLateralis1Node = {-0.00866,0.00494+0.005,0.03635}*.TF';
    
    // GastrocnemiusMedialis, Point using 1 elements
    AnyVec3 GastrocnemiusMedialis1Node = {-0.00851,0.01580,-0.02853}*.TF';
    
    // GemellusInferior, Point using 1 elements
    AnyVec3 GemellusInferior1Node = {-0.00752,0.34984,0.03214}*.TF';
    
    // GemellusSuperior, Point using 1 elements
    AnyVec3 GemellusSuperior1Node = {0.00321,0.35505,0.03253}*.TF';
    
    AnyVec3 GluteusMaximusInferior1Node = {-0.0117,  0.28838,  0.045480}*.TF';
    AnyVec3 GluteusMaximusInferior2Node = {-0.00933, 0.27438,  0.043026}*.TF';
    AnyVec3 GluteusMaximusInferior3Node = {-0.00696, 0.26038,  0.040572}*.TF';
    AnyVec3 GluteusMaximusInferior4Node = {-0.00459, 0.24638,  0.038118}*.TF';
    AnyVec3 GluteusMaximusInferior5Node = {-0.00222, 0.23238,  0.035664}*.TF';
    AnyVec3 GluteusMaximusInferior6Node = {0.00015,  0.21838,  0.033210}*.TF';
    
    
    AnyVec3 GluteusMaximusSuperior1Node = {-0.01389, 0.365117, 0.067731}*.TF';
    AnyVec3 GluteusMaximusSuperior2Node = {-0.01979, 0.355234, 0.065461}*.TF';
    AnyVec3 GluteusMaximusSuperior3Node = {-0.02568, 0.345352, 0.063192}*.TF';
    AnyVec3 GluteusMaximusSuperior4Node = {-0.02502, 0.330528, 0.059788}*.TF';
    AnyVec3 GluteusMaximusSuperior5Node = {-0.0217,  0.315704, 0.056384}*.TF';
    AnyVec3 GluteusMaximusSuperior6Node = {-0.0167,  0.30088,  0.052980}*.TF';
    
    
    AnyVec3 GluteusMediusAnterior1Node = {-0.0235964,0.359021,0.0471878}*.TF';
    AnyVec3 GluteusMediusAnterior2Node = {-0.0220794,0.354483,0.0548045}*.TF';
    AnyVec3 GluteusMediusAnterior3Node = {-0.0179342,0.351566,0.060473}*.TF';
    AnyVec3 GluteusMediusAnterior4Node = {-0.0126233,0.346893,0.0640114}*.TF';
    AnyVec3 GluteusMediusAnterior5Node = {-0.0055407,0.342186,0.0669147}*.TF';
    AnyVec3 GluteusMediusAnterior6Node = {0.00107288,0.33868,0.0678163}*.TF';

        
    // GluteusMediusPosterior, Area using 6 elements
    AnyVec3 GluteusMediusPosterior1Node = {-0.0184438,0.361704,0.0504105}*.TF';
    AnyVec3 GluteusMediusPosterior2Node = {-0.0120976,0.362576,0.053858}*.TF';
    AnyVec3 GluteusMediusPosterior3Node = {-0.0061009,0.36184,0.0582055}*.TF';
    AnyVec3 GluteusMediusPosterior4Node = {-0.000400744,0.358869,0.0601335}*.TF';
    AnyVec3 GluteusMediusPosterior5Node = {0.00477651,0.353151,0.0622942}*.TF';
    AnyVec3 GluteusMediusPosterior6Node = {0.00548003,0.346231,0.0646099}*.TF';
    
    // GluteusMinimusAnterior
    AnyVec3 GluteusMinimusPosterior1Node  = {0.01656,0.32615,0.05660}*.TF';
    // GluteusMinimusMid
    AnyVec3 GluteusMinimusMid1Node = {0.01635,0.33517,0.05715}*.TF';
    // GluteusMinimusPosterior
    AnyVec3 GluteusMinimusAnterior1Node = {0.01523,0.34569,0.05730}*.TF';
    

    AnyVec3 GluteusMinimusAnterior1Via  = {0.01593,0.35569,0.05530}*.TF';
    AnyVec3 GluteusMinimusMid1Via =      {0.01593,0.35569,0.051530}*.TF';
    AnyVec3 GluteusMinimusPosterior1Via ={0.01623,0.35569,0.04630}*.TF';        
    
    
    
    
    // Iliopsoas, LineArea (2 order) using 3 elements
    AnyVec3 Iliopsoas3Node = {-0.00963,0.29515,0.02220}*.TF';
    AnyVec3 Iliopsoas2Node = {-0.01139,0.30134,0.01690}*.TF';
    AnyVec3 Iliopsoas1Node = {-0.01551,0.30733,0.01332}*.TF';
    
    // ObturatorExternus, Point using 1 elements
    AnyVec3 ObturatorExternus1Node = {-0.01228,0.34359,0.03067}*.TF';
    
    // ObturatorInternus, Point using 1 elements
    AnyVec3 ObturatorInternus1Node = {-0.00001,0.35651,0.04529}*.TF';
    
    // Pectineus, Line (3 order) using 4 elements
    AnyVec3 Pectineus1Node = {-0.01002,0.27797,0.03517}*.TF';
    AnyVec3 Pectineus2Node = {-0.00821,0.26952,0.03433}*.TF';
    AnyVec3 Pectineus3Node = {-0.00708,0.26132,0.03340}*.TF';
    AnyVec3 Pectineus4Node = {-0.00632,0.2558, 0.03278}*.TF';

    // Piriformis, Point using 1 elements
    AnyVec3 Piriformis1Node = {0.00153,0.36326,0.05249}*.TF';
    
    // Plantaris, Point using 1 elements
    AnyVec3 Plantaris1Node = {-0.00776,0.01220,0.03011}*.TF';
    
    // Popliteus, Line (2 order) using 3 elements
    AnyVec3 Popliteus1Node = {-0.002498738, -0.01840084, 0.03724713}*.TF';
    AnyVec3 Popliteus2Node = {-0.002498738, -0.01840084, 0.03724713}*.TF';
    AnyVec3 Popliteus3Node = {-0.002498738, -0.01840084, 0.03724713}*.TF';
    
    // QuadratusFemoris, Line (2 order) using 4 elements
    AnyVec3 QuadratusFemoris4Node = {-0.01767,0.31090,0.04680}*.TF';
    AnyVec3 QuadratusFemoris3Node = {-0.02434,0.32528,0.04640}*.TF';
    AnyVec3 QuadratusFemoris2Node = {-0.02468,0.33712,0.04391}*.TF';
    AnyVec3 QuadratusFemoris1Node = {-0.02018,0.34341,0.04217}*.TF';
    
    // VastusIntermedius, Area using 6 elements
    AnyVec3 VastusIntermedius5Node = {0.02900,0.11960,0.01242}*.TF';
    AnyVec3 VastusIntermedius6Node = {0.02021,0.11731,0.02719}*.TF';
    AnyVec3 VastusIntermedius3Node = {0.01259,0.20295,0.01122}*.TF';
    AnyVec3 VastusIntermedius4Node = {0.00202,0.19948,0.02964}*.TF';
    AnyVec3 VastusIntermedius2Node = {0.00307,0.27226,0.04922}*.TF';
    AnyVec3 VastusIntermedius1Node = {0.01612,0.27680,0.03078}*.TF';
    
    // VastusLateralisInferior, Line (2 order) using 6 elements
    AnyVec3 VastusLateralisInferior1Node = {-0.00799,0.28089,0.04663}*.TF';
    AnyVec3 VastusLateralisInferior2Node = {-0.00211,0.23091,0.03520}*.TF';
    AnyVec3 VastusLateralisInferior3Node = {0.00249,0.18389,0.02637}*.TF';
    AnyVec3 VastusLateralisInferior4Node = {0.00430,0.13948,0.02228}*.TF';
    AnyVec3 VastusLateralisInferior5Node = {0.00403,0.09823,0.02102}*.TF';
    AnyVec3 VastusLateralisInferior6Node = {0.00391,0.06017,0.02207}*.TF';
    
    // VastusLateralisSuperior, Line (2 order) using 2 elements
    AnyVec3 VastusLateralisSuperior1Node = {0.01584,0.33503,0.04286}*.TF';
    AnyVec3 VastusLateralisSuperior2Node = {-0.00461,0.31140,0.05643}*.TF';
    
    // VastusMedialisInferior, Line (3 order) using 4 elements
    AnyVec3 VastusMedialisMid1Node = {0.00322,0.20104,0.01712}*.TF';
    AnyVec3 VastusMedialisMid2Node = {0.00339,0.17020,0.01324}*.TF';
    
    AnyVec3 VastusMedialisInferior1Node = {0.00460,0.13871,0.00952}*.TF';
    AnyVec3 VastusMedialisInferior2Node = {0.00317,0.10589,0.00621}*.TF';
    
    // VastusMedialisSuperior, Line (2 order) using 4 elements
    AnyVec3 VastusMedialisSuperior1Node = {0.00951,0.31153,0.02639}*.TF';
    AnyVec3 VastusMedialisSuperior2Node = {-0.00162,0.30299,0.02059}*.TF';
    AnyVec3 VastusMedialisSuperior3Node = {-0.00459,0.28775,0.02312}*.TF';
    AnyVec3 VastusMedialisSuperior4Node = {-0.00349,0.26498,0.02467}*.TF';
    
    // SartoriusVia, Viapoint (3 order) using 6 elements
    AnyVar ang = 20;
    AnyVec3 SartoriusVia1Node = {0.051823  -0.01,    0.38614  ,  0.011768}*RotMat(ang*pi/180, y)*.TF';
    AnyVec3 SartoriusVia2NodeOrg = { 0.042187   ,   0.34  , 0.0017475}*RotMat(ang*pi/180, y)*.TF';
    AnyVec3 SartoriusVia2Node= 0.5*(SartoriusVia2NodeOrg+SartoriusVia3Node);
    AnyVec3 SartoriusVia3Node = {0.034481,  0.2675  , -0.017538}*RotMat(ang*pi/180, y)*.TF';
    AnyVec3 SartoriusVia4Node = { 0.0085826,  0.19503  , -0.025708}*RotMat(ang*pi/180, y)*.TF';
    AnyVec3 SartoriusVia5Node = {-0.015957,  0.148864, -0.032495}*RotMat(ang*pi/180, y)*.TF';
    AnyVec3 SartoriusVia6Node = {-0.040196,  0.060221, -0.035041}*RotMat(ang*pi/180, y)*.TF';
    
    // ObturatorExternusVia, Viapoint using 1 elements
    AnyVec3 ObturatorExternusVia1Node = {-0.015,0.338,0.01}*.TF';
    
    // GastrocnemiusLateralisVia, Viapoint (2 order) using 6 elements
    AnyVec3 GastrocnemiusLateralisVia1Node = {-0.01139,0.00266,0.03605}*.TF';
    AnyVec3 GastrocnemiusLateralisVia2Node = {-0.01585,0.00193,0.03506}*.TF';
    AnyVec3 GastrocnemiusLateralisVia3Node = {-0.01957,0.00056,0.03377}*.TF';
    AnyVec3 GastrocnemiusLateralisVia4Node = {-0.02292,-0.00172,0.03230}*.TF';
    AnyVec3 GastrocnemiusLateralisVia5Node = {-0.02445,-0.00464,0.03107}*.TF';
    AnyVec3 GastrocnemiusLateralisVia6Node = {-0.02474,-0.00808,0.02890}*.TF';
    
    // GastrocnemiusMedialisVia, Viapoint (3 order) using 3 elements
    AnyVec3 GastrocnemiusMedialisVia3Node = {-0.02932,-0.00208,-0.01697}*.TF';
    AnyVec3 GastrocnemiusMedialisVia2Node = {-0.02320,0.00650,-0.01785}*.TF';
    AnyVec3 GastrocnemiusMedialisVia1Node = {-0.01276,0.01103,-0.01670}*.TF';
    
    // TensorFasiaLatae Viapoints
    AnyVec3 TensorFasciaeLatae1ViaNode = {0.011, 0.3005, 0.067}*.TF';
    AnyVec3 TensorFasciaeLatae2ViaNode = {0.019, 0.2803, 0.067}*.TF';
    
    
    AnyVec3 HipJointNode = {-66.88629,-149.88357,-321.49101}*.TF';
  };
  
  
  AnyFolder Patella = {
    AnyVec3 EpicondylusFemorisLateralis = {-0.042092976174922,  -0.009403957512015,   0.042873830319038}*.TF';
    AnyVec3 EpicondylusFemorisMedialis = {-0.042092976174922, -0.018024839755155,  -0.038781795481504}*.TF';
    AnyVec3 Origin_patella_tendon = ({0.006867077185266, -0.015235215526958, -0.000738033888764}+0*{0, 0.00, 0.0025})*.TF';
    
    // RectusFemoris, Line (2 order) using 2 elements
    AnyVec3 RectusFemoris2Node = {0.00397,0.01249, 0.00462}*.TF';
    AnyVec3 RectusFemoris1Node ={0.00290,0.01391,- 0.00732}*.TF';
    
    // VastusLateralisInferior, Line (3 order) using 3 elements
    AnyVec3 VastusLateralisInferior3Node = {0.00042,-0.00694,0.01884}*.TF';
    AnyVec3 VastusLateralisInferior2Node = {0.00108,0.00089,0.02200}*.TF';
    AnyVec3 VastusLateralisInferior1Node = {0.00083,0.00713,0.02075}*.TF';
    
    // VastusLateralisSuperior, Point using 1 elements
    AnyVec3 VastusLateralisSuperior1Node = {0.00391,0.01007,0.01535}*.TF';
    
    // VastusMedialisInferior, Line (3 order) using 2 elements
    AnyVec3 VastusMedialisMid1Node = {-0.00294,0.01136,-0.01534}*.TF';
    AnyVec3 VastusMedialisInferior1Node = {-0.00094,0.00164,-0.01873}*.TF';
    
    // VastusMedialisSuperior, Point using 1 elements
    AnyVec3 VastusMedialisSuperior1Node = {0.00145,0.01251,-0.01563}*.TF';
    
  };
  
  AnyFolder Shank = {
    AnyVec3 MedialMalleolus = {0.0175632, 0.0049177, -0.0283476}*.TF';
    AnyVec3 LateralMalleolus = {-0.016105, -0.00455128, 0.0263205}*.TF';
    AnyVec3 MedialAnkleAxisMarker = MedialMalleolus;
    AnyVec3 LateralAnkleAxisMarker = LateralMalleolus;
    
    AnyVec3 MedialTibialEpicondyle = {0, 0.321463224672736, -0.038645847149671}*.TF';
    AnyVec3 LateralTibialEpicondyle = {0, 0.319398338284877, 0.038645847149671}*.TF';
    AnyVec3 EpicondylusFemorisLateralis = {-0.013799904272473566, 0.3604483073593871, 0.035533545794049159}*.TF';
    AnyVec3 EpicondylusFemorisMedialis = {0.018956339047724022, 0.36545891021476923, -0.039592236851470661}*.TF';
    AnyVec3 TibialTuberosity = {0.032171160650425,   0.274763256123998,  0.009788268180715}*.TF';
    AnyVec3 FibularHead  = {-0.028327618118351,   0.319739226657290,   0.031814278337036}*.TF';
        
    // BicepsFemoris, Point using 1 el0.017065441344676   0.004967186589899  -0.027608399085015ements
    AnyVec3 BicepsFemoris1Node = {-0.02252,0.31306,0.03954}*.TF';
    
    // ExtensorDigitorumLongus, Line (2 order) using 3 elements
    AnyVec3 ExtensorDigitorumLongus1Node = { 0.00565,0.30732,0.02794}*.TF';
    AnyVec3 ExtensorDigitorumLongus2Node = {-0.01721,0.21765,0.02381}*.TF';
    AnyVec3 ExtensorDigitorumLongus3Node = {-0.01402,0.09700,0.02065}*.TF';
    AnyVec3 ExtensorDigitorumLongus4Node = {-0.01402,0.09700,0.02065}*.TF';
    
    // ExtensorHallucisLongus, Line (3 order) using 3 elements
    AnyVec3 ExtensorHallucisLongus1Node = {-0.01910,0.21283,0.01896}*.TF';
    AnyVec3 ExtensorHallucisLongus2Node = {-0.01373,0.13964,0.01345}*.TF';
    AnyVec3 ExtensorHallucisLongus3Node = {-0.00963,0.08052,0.01333}*.TF';
    
    // FlexorDigitorumLongus, LineArea (3 order) using 3 elements
    AnyVec3 FlexorDigitorumLongus4Node = {-0.00050,0.12931,-0.00108}*.TF';
    AnyVec3 FlexorDigitorumLongus3Node = {-0.00050,0.12931,-0.00108}*.TF';
    AnyVec3 FlexorDigitorumLongus2Node = {-0.00009,0.18162,-0.00427}*.TF';
    AnyVec3 FlexorDigitorumLongus1Node = {-0.00208,0.23212, 0.00137}*.TF';
    
    // FlexorHallucisLongus, Line (2 order) using 3 elements
    AnyVec3 FlexorHallucisLongus1Node = {-0.02731,0.20329,0.01594}*.TF';
    AnyVec3 FlexorHallucisLongus2Node = {-0.02034,0.12716,0.01041}*.TF';
    AnyVec3 FlexorHallucisLongus3Node = {-0.01039,0.05536,0.01121}*.TF';
    
    // Gracilis, Point using 1 elements
    AnyVec3 Gracilis1Node = {0.02047,0.28263,-0.00681}*.TF';
    
    // Insertion_patella_tendon, Point using 1 elements
    AnyVec3 Insertion_patella_tendon = {0.030672,0.311525,0.0128247}*.TF';
        
    // PeroneusBrevis, Line (3 order) using 3 elements
    AnyVec3 PeroneusBrevis3Node = {-0.01592,0.03615,0.01474}*.TF';
    AnyVec3 PeroneusBrevis2Node = {-0.02008,0.12226,0.01984}*.TF';
    AnyVec3 PeroneusBrevis1Node = {-0.01950,0.19345,0.02392}*.TF';
    
    // PeroneusLongus, Line (3 order) using 3 elements
    AnyVec3 PeroneusLongus3Node = {-0.02588,0.16304,0.02012}*.TF';
    AnyVec3 PeroneusLongus2Node = {-0.02396,0.23465,0.02721}*.TF';
    AnyVec3 PeroneusLongus1Node = {-0.01688,0.29115,0.03256}*.TF';
    
    // Popliteus, LineArea (3 order) using 3 elements
    AnyVec3 Popliteus3Node = {0.00092,0.22854,-0.01291}*.TF';
    AnyVec3 Popliteus2Node = {-0.00218,0.26089,-0.00955}*.TF';
    AnyVec3 Popliteus1Node = {-0.00475,0.28125,-0.00658}*.TF';
    
    // Sartorius, Point using 1 elements
    AnyVec3 Sartorius1Node = {0.01796,0.29020,-0.01085}*.TF';
    
    // Semimembranosus, Line (2 order) using 3 elements
    AnyVec3 Semimembranosus1Node = {-0.02054,0.31458,-0.01617}*.TF';
    AnyVec3 Semimembranosus2Node = {-0.01521,0.31218,-0.02770}*.TF';
    AnyVec3 Semimembranosus3Node = {-0.00644,0.31340,-0.03297}*.TF';
    
    // Semitendinosus, Point using 1 elements
    AnyVec3 Semitendinosus1Node = {0.01942,0.27145,-0.00743}*.TF';
    
    // SoleusLateralis, Line (2 order) using 3 elements
    AnyVec3 SoleusLateralis1Node = {-0.02800,0.29987,0.02729}*.TF';
    AnyVec3 SoleusLateralis2Node = {-0.02813,0.25003,0.02253}*.TF';
    AnyVec3 SoleusLateralis3Node = {-0.02698,0.18321,0.01689}*.TF';
    
    // SoleusMedialis, Line (3 order) using 3 elements
    AnyVec3 SoleusMedialis3Node = {0.00378,0.19825,-0.01310}*.TF';
    AnyVec3 SoleusMedialis2Node = {0.00113,0.22050,-0.01218}*.TF';
    AnyVec3 SoleusMedialis1Node = {-0.00360,0.24540,-0.00375}*.TF';
    
    // TensorFasciaeLatae, Point using 1 elements
    AnyVec3 TensorFasciaeLatae1Node = {0.01568,0.32738,0.03194}*.TF';
    
    // TibialisAnterior, LineArea (2 order) using 3 elements
    AnyVec3 TibialisAnterior3Node = {0.00786,0.13667,0.00912}*.TF';
    AnyVec3 TibialisAnterior2Node = {0.01150,0.21214,0.00949}*.TF';
    AnyVec3 TibialisAnterior1Node = {0.01253,0.27569,0.01594}*.TF';
    
    // TibialisPosteriorLateralis, Line (2 order) using 3 elements
    AnyVec3 TibialisPosteriorLateralis1Node = {-0.02198,0.26428,0.02075}*.TF';
    AnyVec3 TibialisPosteriorLateralis2Node = {-0.02280,0.19286,0.01283}*.TF';
    AnyVec3 TibialisPosteriorLateralis3Node = {-0.01587,0.10849,0.00943}*.TF';
    
    // TibialisPosteriorMedialis, Line (2 order) using 3 elements
    AnyVec3 TibialisPosteriorMedialis1Node = {-0.00128,0.27674,0.01142}*.TF';
    AnyVec3 TibialisPosteriorMedialis2Node = {0.00258,0.20455,0.00749}*.TF';
    AnyVec3 TibialisPosteriorMedialis3Node = {0.00237,0.11025,0.00752}*.TF';
    
    // ExtensorDigitorumLongusVia, Viapoint (2 order) using 4 elements
    /// The via points for the ankle extensors are placed so close to the foot
    /// that the line of action reverses in full dorsiflexion. This change moves 
    /// the via point up slightly to prevent that problem. 
    AnyVec3 AnkleExtensorViaOffset = {0,0.015,0};
    AnyVec3 ExtensorDigitorumLongusViaNode1 = AnkleExtensorViaOffset + {0.01858,0.00757,0.01443}*.TF';
    AnyVec3 ExtensorDigitorumLongusViaNode2 = AnkleExtensorViaOffset + {0.02043,0.00455,0.01356}*.TF';
    AnyVec3 ExtensorDigitorumLongusViaNode3 = AnkleExtensorViaOffset + {0.02315,0.00072,0.01456}*.TF';
    AnyVec3 ExtensorDigitorumLongusViaNode4 = AnkleExtensorViaOffset + {0.02675,-0.00390,0.01741}*.TF';
    
    // ExtensorHallucisLongusVia, Viapoint (2 order) using 3 elements
    AnyVec3 ExtensorHallucisLongusViaNode1 = AnkleExtensorViaOffset + {0.02380,0.01079,0.00865}*.TF';
    AnyVec3 ExtensorHallucisLongusViaNode2 = AnkleExtensorViaOffset + {0.02804,0.00333,0.00544}*.TF';
    AnyVec3 ExtensorHallucisLongusViaNode3 = AnkleExtensorViaOffset + {0.03222,-0.00101,0.00544}*.TF';
    
    // FlexorDigitorumLongusVia, Viapoint (3 order) using 6 elements
    AnyVec3 FlexorDigitorumLongusViaNode1 = {-0.00071,0.00933,-0.02222}*.TF';
    AnyVec3 FlexorDigitorumLongusViaNode2 = {-0.00031,0.00766,-0.02322}*.TF';
    AnyVec3 FlexorDigitorumLongusViaNode3 = {0.00163,0.00368,-0.02351}*.TF';
    AnyVec3 FlexorDigitorumLongusViaNode4 = {0.00461,-0.00144,-0.02314}*.TF';
    AnyVec3 FlexorDigitorumLongusViaNode5 = {0.00815,-0.00655,-0.02214}*.TF';
    AnyVec3 FlexorDigitorumLongusViaNode6 = {0.01173,-0.01049,-0.02055}*.TF';
    
    // FlexorHallucisLongusVia, Viapoint (2 order) using 6 elements
    AnyVec3 FlexorHallucisLongusViaNode1 = {-0.00514,0.00265,-0.01064}*.TF';
    AnyVec3 FlexorHallucisLongusViaNode2 = {-0.00495,-0.00224,-0.01029}*.TF';
    AnyVec3 FlexorHallucisLongusViaNode3 = {-0.00463,-0.00670,-0.01027}*.TF';
    AnyVec3 FlexorHallucisLongusViaNode4 = {-0.00417,-0.01073,-0.01057}*.TF';
    AnyVec3 FlexorHallucisLongusViaNode5 = {-0.00357,-0.01432,-0.01120}*.TF';
    AnyVec3 FlexorHallucisLongusViaNode6 = {-0.00284,-0.01747,-0.01215}*.TF';
    
    // PeroneusBrevisVia, Viapoint (3 order) using 3 elements
    AnyVec3 PeroneusBrevisViaNode3 = {-0.01481,-0.01400,0.02261}*.TF';
    AnyVec3 PeroneusBrevisViaNode2 = {-0.01912,-0.00904,0.02248}*.TF';
    AnyVec3 PeroneusBrevisViaNode1 = {-0.01900,-0.00216,0.02239}*.TF';
    
    // PeroneusLongusVia, Viapoint (2 order) using 4 elements
    AnyVec3 PeroneusLongusViaNode1 = {-0.01599,-0.01128,0.02010}*.TF';
    AnyVec3 PeroneusLongusViaNode2 = {-0.01408,-0.01409,0.02033}*.TF';
    AnyVec3 PeroneusLongusViaNode3 = {-0.01350,-0.01624,0.02054}*.TF';
    AnyVec3 PeroneusLongusViaNode4 = {-0.01425,-0.01773,0.02070}*.TF';
    
    // TibialisAnteriorVia, Viapoint using 1 elements
    AnyVec3 TibialisAnteriorViaNode1 = AnkleExtensorViaOffset + {0.03221,0.00648,-0.00050}*.TF';
    
    // TibialisPosteriorVia, Viapoint (2 order) using 4 elements
    AnyVec3 TibialisPosteriorViaNode1 = {0.00248,0.00941,-0.02552}*.TF';
    AnyVec3 TibialisPosteriorViaNode2 = {0.00704,0.00146,-0.02628}*.TF';
    AnyVec3 TibialisPosteriorViaNode3 = {0.01252,-0.00636,-0.02496}*.TF';
    AnyVec3 TibialisPosteriorViaNode4 = {0.01891,-0.01407,-0.02156}*.TF';
    
    // GracilisVia, Viapoint (2 order) using 3 elements
    AnyVec3 GracilisViaNode1 = {-0.01316,0.31812,-0.03736}*.TF';
    AnyVec3 GracilisViaNode2 = {-0.01079,0.31117,-0.03469}*.TF';
    AnyVec3 GracilisViaNode3 = {-0.00621,0.30449,-0.03171}*.TF';
    
    // SemitendinosusVia, Viapoint using 1 elements
    AnyVec3 SemitendinosusViaNode1 = {-0.01540,0.31325,-0.03226}*.TF';
    
    // PopliteusVia, Viapoint using 1 elements
    AnyVec3 PopliteusViaNode1 = {-0.0207851, 0.3267897, 0.02256417}*.TF';
    AnyVec3 PopliteusViaNode2 = {-0.02315183, 0.320414, 0.01750983}*.TF';
    
    // GastrocnemiusLateralisVia, Viapoint (2 order) using 4 elements
    AnyVec3 GastrocnemiusLateralis7ViaNode = {-0.04547,0.30833,0.01390}*.TF';
    AnyVec3 GastrocnemiusLateralis8ViaNode = {-0.04509,0.26850,0.01016}*.TF';
    AnyVec3 GastrocnemiusLateralis9ViaNode = {-0.04810,0.21809,0.00598}*.TF';
    AnyVec3 GastrocnemiusLateralis10ViaNode = {-0.04748,0.15711,0.00138}*.TF';
    
    // GastrocnemiusMedialisVia,  (2 order) using 6 elements
    AnyVec3 GastrocnemiusMedialis4ViaNode = {-0.04310,0.30075,-0.01802}*.TF';
    AnyVec3 GastrocnemiusMedialis5ViaNode = {-0.04395,0.26145,-0.02239}*.TF';
    AnyVec3 GastrocnemiusMedialis6ViaNode = {-0.04433,0.22333,-0.02427}*.TF';
    AnyVec3 GastrocnemiusMedialis7ViaNode = {-0.04426,0.18640,-0.02367}*.TF';
    AnyVec3 GastrocnemiusMedialis8ViaNode = {-0.04372,0.15066,-0.02059}*.TF';
    AnyVec3 GastrocnemiusMedialis9ViaNode = {-0.04271,0.11610,-0.01503}*.TF';
    
    AnyVec3 SartoriusVia1Node = {-0.006668463738826   ,0.318659379478723 , -0.037092713313338}*.TF';
    AnyVec3 SartoriusVia2Node = {  -0.003654893482948 ,  0.309695467910520,  -0.034995576286264}*.TF';
    AnyVec3 SartoriusVia3Node = { -0.000420611395851 ,  0.303302262988060,  -0.032113675836818}*.TF';
    
  };
  
  AnyFolder Talus = {
    // The coordinates of malleoli in the talus coordinate system with default ankle joint configuration 
    AnyVec3 MedialMalleolus = .Foot.MedialMalleolus;
    AnyVec3 LateralMalleolus = .Foot.LateralMalleolus;
    
  };
  
  //This is the unscaled length of the patellar ligament, this length is used to constrain the patella motion
  AnyVar PatellarLigamentLength = 0.0515;
  AnyFolder Foot = {
    
    // Metatarsal1ContactNode, point using 1 elements
    AnyVec3 Metatarsal1ContactNode = {0.1219,  -0.0491,   -0.0196}*.TF';
    
    // Metatarsal5ContactNode, point using 1 elements
    AnyVec3 Metatarsal5ContactNode = {0.0979, -0.0491, 0.0330}*.TF';
    
    // HeelContactNode, point using 1 elements
    AnyVec3 HeelContactNode1Node = {-0.0261,   -0.0491+0.005,  -0.0021}*.TF';
    
    // Metatarsal2ContactNode, point using 1 elements
    AnyVec3 Metatarsal2ContactNode = {0.1139,  -0.0491, -0.0021}*.TF';
    
    // Nodes on the bone at plantar side of the foot.
    AnyVec3 Metatarsal1PlantarNode = {0.12928,  -0.04402,   -0.02383}*.TF'; // Node on the medial sesmoid
    AnyVec3 Metatarsal2PlantarNode = {0.12222,  -0.03879,   -0.00026}*.TF';
    AnyVec3 Metatarsal5PlantarNode = {0.10507, -0.04454, 0.03246}*.TF';
    AnyVec3 HeelPlantarNode = {-0.021301, -0.03769, -0.00823}*.TF';
    
    AnyVec3 BigToeNode = {0.1741 + 0.013   , -0.0408 - 0.01 , -0.0060 +0.005}*.TF';
    AnyVec3 HeelNode = TendonCalcaneousNode;
    AnyVec3 ToeMedialContactNode = {0.1219 + 0.045,  -0.0491 + 0.005,   -0.0196-0.005}*.TF';
    AnyVec3 ToeLateralContactNode = {0.0979 + 0.035, -0.0491 + 0.005, 0.0330+0.008}*.TF';
    AnyVec3 HeelContactNodeLow = HeelContactNode1Node;
    
    AnyVec3 MedialMalleolusInNeutralConf = MedialMalleolus;
    AnyVec3 LateralMalleolusInNeutralConf = LateralMalleolus;
    AnyVec3 MedialAnkleAxisMarkerInNeutralConf = MedialMalleolusInNeutralConf;
    AnyVec3 LateralAnkleAxisMarkerInNeutralConf = LateralMalleolusInNeutralConf;

    // The coordinates of malleoli in the foot coordinate system with default ankle joint configuration 
    AnyVec3 MedialMalleolus = {0.008623813, 0.0271727, -0.04230592}*.TF';
    AnyVec3 LateralMalleolus = {-0.007908084, 0.02393846, 0.02036821}*.TF';
    // This is the coordinate of the ankle joint in default configuration in foot coordinate system.
    AnyVec3 AnkleJointInNeutralConf = {0.009856931, 0.01487197, -0.006810152}*.TF'; 
    
    
    // TendonCalcaneousNode, Point using 1 elements
    AnyVec3 TendonCalcaneousNode = {-0.03679,-0.01718,-0.00514}*.TF';
    AnyVec3 TendonCalcaneousMedialisNode  = TendonCalcaneousNode-{0, 0, 0.003}*.TF';
    AnyVec3 TendonCalcaneousLateralisNode = TendonCalcaneousNode+{-0.001, 0, 0.003}*.TF';    
    AnyVec3 GastrocnemiusLateralis1Node = TendonCalcaneousLateralisNode;
    AnyVec3 GastrocnemiusMedialis1Node =  TendonCalcaneousMedialisNode;
    AnyVec3 Plantaris1Node = TendonCalcaneousMedialisNode;
    AnyVec3 SoleusMedialis1Node = TendonCalcaneousMedialisNode;
    AnyVec3 SoleusMedialis2Node = TendonCalcaneousMedialisNode;
    AnyVec3 SoleusMedialis3Node =  TendonCalcaneousMedialisNode;
    AnyVec3 SoleusLateralis1Node = TendonCalcaneousLateralisNode;
    AnyVec3 SoleusLateralis2Node = TendonCalcaneousLateralisNode;
    AnyVec3 SoleusLateralis3Node = TendonCalcaneousLateralisNode;

    AnyVec3 TendonCalcaneousSuperiorNode = {-0.03679,-0.003,-0.00514}*.TF';    
    AnyVec3 TendonCalcaneousMedialisSuperiorNode  = TendonCalcaneousSuperiorNode-{0, 0,0.003}*.TF';
    AnyVec3 TendonCalcaneousLateralisSuperiorNode = TendonCalcaneousSuperiorNode+{-0.001, 0,0.003}*.TF';    
    AnyVec3 GastrocnemiusLateralis1SuperiorNode = TendonCalcaneousLateralisSuperiorNode;
    AnyVec3 GastrocnemiusMedialis1SuperiorNode =  TendonCalcaneousMedialisSuperiorNode;
    AnyVec3 Plantaris1SuperiorNode = TendonCalcaneousMedialisSuperiorNode;
    AnyVec3 SoleusMedialis1SuperiorNode = TendonCalcaneousMedialisSuperiorNode;
    AnyVec3 SoleusMedialis2SuperiorNode = TendonCalcaneousMedialisSuperiorNode;
    AnyVec3 SoleusMedialis3SuperiorNode =  TendonCalcaneousMedialisSuperiorNode;
    AnyVec3 SoleusLateralis1SuperiorNode = TendonCalcaneousLateralisSuperiorNode;
    AnyVec3 SoleusLateralis2SuperiorNode = TendonCalcaneousLateralisSuperiorNode;
    AnyVec3 SoleusLateralis3SuperiorNode = TendonCalcaneousLateralisSuperiorNode;
 
    
    // PeroneusBrevisDistal, Point using 1 elements
    AnyVec3 PeroneusBrevisDistal1Node = {0.04494,-0.02783,0.03219}*.TF';
    
    // PeroneusBrevisProximal, Point using 1 elements
    AnyVec3 PeroneusBrevisProximal1Node = {0.10508,-0.04435,0.03364}*.TF';
    
    // PeroneusLongus, Point using 1 elements
    AnyVec3 PeroneusLongus1Node = {0.08292,-0.01936,-0.00997}*.TF';
    
    // TibialisAnteriorDistal, Point using 1 elements
    AnyVec3 TibialisAnteriorDistal1Node = {0.06649,-0.02515,-0.02191}*.TF';
    
    // TibialisAnteriorProximal, Point using 1 elements
    AnyVec3 TibialisAnteriorProximal1Node = {0.07628,-0.02512,-0.01172}*.TF';
    
    // TibialisPosterior, Point using 1 elements
    AnyVec3 TibialisPosterior1Node = {0.04489,-0.01477,-0.02404}*.TF';
    
    // ExtensorDigitorumLongus2, Point using 1 elements
    AnyVec3 ExtensorDigitorumLongus1Node = {0.17395,-0.04189,0.01317}*.TF';
    AnyVec3 ExtensorDigitorumLongus2Node = {0.16922,-0.04202,0.02498}*.TF';
    AnyVec3 ExtensorDigitorumLongus3Node = {0.16016,-0.04209,0.03502}*.TF';
    AnyVec3 ExtensorDigitorumLongus4Node = {0.14504,-0.04263,0.04140}*.TF';
    
    // ExtencorHallucisLongus, Point using 1 elements
    AnyVec3 ExtensorHallucisLongus1Node = {0.17139,-0.03638,-0.01176}*.TF';
    
    // FlexorDigitorumLongus2, Point using 1 elements
    AnyVec3 FlexorDigitorumLongus1Node = {0.17072,-0.04781,0.01191}*.TF';
    AnyVec3 FlexorDigitorumLongus2Node = {0.16725,-0.04775,0.02419}*.TF';
    AnyVec3 FlexorDigitorumLongus3Node = {0.15795,-0.04771,0.03348}*.TF';
    AnyVec3 FlexorDigitorumLongus4Node = {0.14244,-0.04648,0.04012}*.TF';
    
    // FlexorHallucisLongus, Point using 1 elements
    AnyVec3 FlexorHallucisLongus1Node = {0.16693,-0.04508,-0.01198}*.TF';
    
    // ExtensorDigitorumViaPoint2, Viapoint using 1 elements
    AnyVec3 ExtensorDigitorumViaNode1 = {0.12646,-0.02591,0.00071}*.TF';
    AnyVec3 ExtensorDigitorumViaNode2 = {0.12431,-0.02753,0.01194}*.TF';
    AnyVec3 ExtensorDigitorumViaNode3 = {0.11786,-0.03093,0.02267}*.TF';
    AnyVec3 ExtensorDigitorumViaNode4 = {0.10859,-0.03239,0.03430}*.TF';
    
    // ExtensorDigitorumSplitPoint, Viapoint using 1 elements
    AnyVec3 ExtensorDigitorumSplitPoint1Node = {0.04651,0.01235,-0.00180}*.TF';
    
    // ExtensorHallucisViaPont1, Viapoint using 1 elements
    AnyVec3 ExtensorHallucisLongusViaNode4 = {0.05156,0.01481,-0.01398}*.TF';
    
    // ExtensorDigitorumLongusViaPoint, Viapoint using 1 elements
    AnyVec3 ExtensorDigitorumLongusViaNode5 = {0.02443,0.01799,-0.00174}*.TF';
    
    // FlexorDigitorumLongusViaPoint, Viapoint (2 order) using 2 elements
    AnyVec3 FlexorDigitorumLongusViaNode1 = {0.01189,-0.00657,-0.02966}*.TF';
    AnyVec3 FlexorDigitorumLongusViaNode2 = {0.01725,-0.00771,-0.02803}*.TF';
    
    // FlexorHallucisLongusViaPoint, Viapoint using 1 elements
    AnyVec3 FlexorHallucisLongusViaNode1 = {-0.00459,0.00114,-0.02048}*.TF';
    
    // PeroneusBrevisViaPoint, Viapoint using 1 elements
    AnyVec3 PeroneusBrevisViaNode4 = {0.018462,-0.007238,0.0214}*.TF';
    
    // PeroneusBrevisSplitPoint, Viapoint using 1 elements
    AnyVec3 PeroneusBrevisSplitPoint1Node = {0.03351,-0.01785,0.02532}*.TF';
    
    // PeroneusLongusViaPoint1, Viapoint using 1 elements
    AnyVec3 PeroneusLongusViaNode1 = {0.004404,-0.00846 ,0.019012}*.TF';
    AnyVec3 PeroneusLongusViaNode2 = {0.00962,-0.01494,0.02008}*.TF';
    AnyVec3 PeroneusLongusViaNode3 = {0.04096,-0.02919,0.01887}*.TF';
    
    // TibialisAnteriorViaPoint, Viapoint using 1 elements
    AnyVec3 TibialisAnteriorViaNode1 = {0.03967,0.01383,-0.02391}*.TF';
    
    // TibialisPosteriorViaPoint, Viapoint (2 order) using 3 elements
    AnyVec3 TibialisPosteriorViaNode3 = {0.01795,-0.00110,-0.03315}*.TF';
    AnyVec3 TibialisPosteriorViaNode2 = {0.01331,0.00573,-0.03424}*.TF';
    AnyVec3 TibialisPosteriorViaNode1 = {0.00929,0.01141,-0.03534}*.TF';
  };
  
};