/**^ This folder implements the simple muscle models for the shoulder arm model. Anatomical muscles are in many cases split into several branches (elements). Strength parameters are split between the branches, typically by uniform split. */ AnyFolder DefaultMusPar = { AnyVar PCSAfactor ??= ......HumanModel.StrengthParameters.SpecificMuscleTensionShoulderArm; ///< PCSAfactor in N/cm^2 , the PCSA itself is given in cm^2 so F0 is in Newton`s. }; AnyVar StrengthScaleHumerus = .StrengthScaling.Humerus.StrengthScale; AnyVar StrengthScaleUlna = .StrengthScaling.Ulna.StrengthScale; AnyVar StrengthScaleHand = .StrengthScaling.Hand.StrengthScale; ///////////////////////////////////////////////////// // biceps_brachii_caput_breve (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel biceps_brachii_caput_breve = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.biceps_brachii_caput_breve; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////////////////////// // biceps_brachii_caput_longum (1 element ) // ////////////////////////////////////////////////////// AnyMuscleModel biceps_brachii_caput_longum = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.biceps_brachii_caput_longum; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////// // coracobrachialis (6 elements) // /////////////////////////////////////////// AnyMuscleModel coracobrachialis_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.coracobrachialis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.coracobrachialis_1.Lf0 +.coracobrachialis_2.Lf0 +.coracobrachialis_3.Lf0 +.coracobrachialis_4.Lf0 +.coracobrachialis_5.Lf0 +.coracobrachialis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel coracobrachialis_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.coracobrachialis; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.coracobrachialis_1.Lf0 +.coracobrachialis_2.Lf0 +.coracobrachialis_3.Lf0 +.coracobrachialis_4.Lf0 +.coracobrachialis_5.Lf0 +.coracobrachialis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel coracobrachialis_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.coracobrachialis; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.coracobrachialis_1.Lf0 +.coracobrachialis_2.Lf0 +.coracobrachialis_3.Lf0 +.coracobrachialis_4.Lf0 +.coracobrachialis_5.Lf0 +.coracobrachialis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel coracobrachialis_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.coracobrachialis; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.coracobrachialis_1.Lf0 +.coracobrachialis_2.Lf0 +.coracobrachialis_3.Lf0 +.coracobrachialis_4.Lf0 +.coracobrachialis_5.Lf0 +.coracobrachialis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel coracobrachialis_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.coracobrachialis; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.coracobrachialis_1.Lf0 +.coracobrachialis_2.Lf0 +.coracobrachialis_3.Lf0 +.coracobrachialis_4.Lf0 +.coracobrachialis_5.Lf0 +.coracobrachialis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel coracobrachialis_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.coracobrachialis; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.coracobrachialis_1.Lf0 +.coracobrachialis_2.Lf0 +.coracobrachialis_3.Lf0 +.coracobrachialis_4.Lf0 +.coracobrachialis_5.Lf0 +.coracobrachialis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #if BM_ARM_DELTOID_WRAPPING == OFF ///////////////////////////////////////////////////// // deltoideus_scapular_part_1 (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel deltoideus_scapular_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_scapular_part_1; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF ///////////////////////////////////////////////////// // deltoideus_scapular_part_2 (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel deltoideus_scapular_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_scapular_part_2; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF ///////////////////////////////////////////////////// // deltoideus_scapular_part_3 (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel deltoideus_scapular_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_scapular_part_3; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF ///////////////////////////////////////////////////// // deltoideus_scapular_part_4 (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel deltoideus_scapular_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_scapular_part_4; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF ///////////////////////////////////////////////////// // deltoideus_scapular_part_5 (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel deltoideus_scapular_part_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_scapular_part_5; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF ///////////////////////////////////////////////////// // deltoideus_scapular_part_6 (1 element ) // ///////////////////////////////////////////////////// AnyMuscleModel deltoideus_scapular_part_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_scapular_part_6; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF /////////////////////////////////////////////////////// // deltoideus_clavicular_part_1 (1 element ) // /////////////////////////////////////////////////////// AnyMuscleModel deltoideus_clavicular_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_clavicular_part_1; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF /////////////////////////////////////////////////////// // deltoideus_clavicular_part_2 (1 element ) // /////////////////////////////////////////////////////// AnyMuscleModel deltoideus_clavicular_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_clavicular_part_2; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF /////////////////////////////////////////////////////// // deltoideus_clavicular_part_3 (1 element ) // /////////////////////////////////////////////////////// AnyMuscleModel deltoideus_clavicular_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_clavicular_part_3; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF /////////////////////////////////////////////////////// // deltoideus_clavicular_part_4 (1 element ) // /////////////////////////////////////////////////////// AnyMuscleModel deltoideus_clavicular_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_clavicular_part_4; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF /////////////////////////////////////////////////////// // deltoideus_clavicular_part_5 (1 element ) // /////////////////////////////////////////////////////// AnyMuscleModel deltoideus_clavicular_part_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_clavicular_part_5; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING == OFF /////////////////////////////////////////////////////// // deltoideus_clavicular_part_6 (1 element ) // /////////////////////////////////////////////////////// AnyMuscleModel deltoideus_clavicular_part_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_clavicular_part_6; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING != OFF //////////////////////////////////////////////////// // deltoideus_posterior_part (4 elements) // //////////////////////////////////////////////////// AnyMuscleModel deltoideus_posterior_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_posterior_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_posterior_part_1.Lf0 +.deltoideus_posterior_part_2.Lf0 +.deltoideus_posterior_part_3.Lf0 +.deltoideus_posterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_posterior_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_posterior_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_posterior_part_1.Lf0 +.deltoideus_posterior_part_2.Lf0 +.deltoideus_posterior_part_3.Lf0 +.deltoideus_posterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_posterior_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_posterior_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_posterior_part_1.Lf0 +.deltoideus_posterior_part_2.Lf0 +.deltoideus_posterior_part_3.Lf0 +.deltoideus_posterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_posterior_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_posterior_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_posterior_part_1.Lf0 +.deltoideus_posterior_part_2.Lf0 +.deltoideus_posterior_part_3.Lf0 +.deltoideus_posterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING != OFF ////////////////////////////////////////////////// // deltoideus_lateral_part (4 elements) // ////////////////////////////////////////////////// AnyMuscleModel deltoideus_lateral_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_lateral_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_lateral_part_1.Lf0 +.deltoideus_lateral_part_2.Lf0 +.deltoideus_lateral_part_3.Lf0 +.deltoideus_lateral_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_lateral_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_lateral_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_lateral_part_1.Lf0 +.deltoideus_lateral_part_2.Lf0 +.deltoideus_lateral_part_3.Lf0 +.deltoideus_lateral_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_lateral_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_lateral_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_lateral_part_1.Lf0 +.deltoideus_lateral_part_2.Lf0 +.deltoideus_lateral_part_3.Lf0 +.deltoideus_lateral_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_lateral_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_lateral_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_lateral_part_1.Lf0 +.deltoideus_lateral_part_2.Lf0 +.deltoideus_lateral_part_3.Lf0 +.deltoideus_lateral_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif #if BM_ARM_DELTOID_WRAPPING != OFF /////////////////////////////////////////////////// // deltoideus_anterior_part (4 elements) // /////////////////////////////////////////////////// AnyMuscleModel deltoideus_anterior_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_anterior_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_anterior_part_1.Lf0 +.deltoideus_anterior_part_2.Lf0 +.deltoideus_anterior_part_3.Lf0 +.deltoideus_anterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_anterior_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_anterior_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_anterior_part_1.Lf0 +.deltoideus_anterior_part_2.Lf0 +.deltoideus_anterior_part_3.Lf0 +.deltoideus_anterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_anterior_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_anterior_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_anterior_part_1.Lf0 +.deltoideus_anterior_part_2.Lf0 +.deltoideus_anterior_part_3.Lf0 +.deltoideus_anterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel deltoideus_anterior_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.deltoideus_anterior_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.deltoideus_anterior_part_1.Lf0 +.deltoideus_anterior_part_2.Lf0 +.deltoideus_anterior_part_3.Lf0 +.deltoideus_anterior_part_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; #endif //////////////////////////////////////// // infraspinatus (6 elements) // //////////////////////////////////////// AnyMuscleModel infraspinatus_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.infraspinatus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.infraspinatus_1.Lf0 +.infraspinatus_2.Lf0 +.infraspinatus_3.Lf0 +.infraspinatus_4.Lf0 +.infraspinatus_5.Lf0 +.infraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel infraspinatus_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.infraspinatus; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.infraspinatus_1.Lf0 +.infraspinatus_2.Lf0 +.infraspinatus_3.Lf0 +.infraspinatus_4.Lf0 +.infraspinatus_5.Lf0 +.infraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel infraspinatus_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.infraspinatus; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.infraspinatus_1.Lf0 +.infraspinatus_2.Lf0 +.infraspinatus_3.Lf0 +.infraspinatus_4.Lf0 +.infraspinatus_5.Lf0 +.infraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel infraspinatus_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.infraspinatus; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.infraspinatus_1.Lf0 +.infraspinatus_2.Lf0 +.infraspinatus_3.Lf0 +.infraspinatus_4.Lf0 +.infraspinatus_5.Lf0 +.infraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel infraspinatus_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.infraspinatus; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.infraspinatus_1.Lf0 +.infraspinatus_2.Lf0 +.infraspinatus_3.Lf0 +.infraspinatus_4.Lf0 +.infraspinatus_5.Lf0 +.infraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel infraspinatus_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.infraspinatus; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.infraspinatus_1.Lf0 +.infraspinatus_2.Lf0 +.infraspinatus_3.Lf0 +.infraspinatus_4.Lf0 +.infraspinatus_5.Lf0 +.infraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////// // latissimus_dorsi (11 elements) // /////////////////////////////////////////// AnyMuscleModel latissimus_dorsi_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_7 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 7; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_8 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 8; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_9 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 9; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_10 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 10; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel latissimus_dorsi_11 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.latissimus_dorsi; AnyIntVar MuscleElemNo = 11; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.latissimus_dorsi_1.Lf0 +.latissimus_dorsi_2.Lf0 +.latissimus_dorsi_3.Lf0 +.latissimus_dorsi_4.Lf0 +.latissimus_dorsi_5.Lf0 +.latissimus_dorsi_6.Lf0 +.latissimus_dorsi_7.Lf0 +.latissimus_dorsi_8.Lf0 +.latissimus_dorsi_9.Lf0 +.latissimus_dorsi_10.Lf0 +.latissimus_dorsi_11.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////// // levator_scapulae (4 elements) // /////////////////////////////////////////// AnyMuscleModel levator_scapulae_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.levator_scapulae; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.levator_scapulae_1.Lf0 +.levator_scapulae_2.Lf0 +.levator_scapulae_3.Lf0 +.levator_scapulae_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel levator_scapulae_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.levator_scapulae; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.levator_scapulae_1.Lf0 +.levator_scapulae_2.Lf0 +.levator_scapulae_3.Lf0 +.levator_scapulae_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel levator_scapulae_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.levator_scapulae; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.levator_scapulae_1.Lf0 +.levator_scapulae_2.Lf0 +.levator_scapulae_3.Lf0 +.levator_scapulae_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel levator_scapulae_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.levator_scapulae; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.levator_scapulae_1.Lf0 +.levator_scapulae_2.Lf0 +.levator_scapulae_3.Lf0 +.levator_scapulae_4.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////////////// // pectoralis_major_thoracic_part (10 elements) // ///////////////////////////////////////////////////////// AnyMuscleModel pectoralis_major_thoracic_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_7 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 7; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_8 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 8; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_9 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 9; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_thoracic_part_10 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_thoracic_part; AnyIntVar MuscleElemNo = 10; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_thoracic_part_1.Lf0 +.pectoralis_major_thoracic_part_2.Lf0 +.pectoralis_major_thoracic_part_3.Lf0 +.pectoralis_major_thoracic_part_4.Lf0 +.pectoralis_major_thoracic_part_5.Lf0 +.pectoralis_major_thoracic_part_6.Lf0 +.pectoralis_major_thoracic_part_7.Lf0 +.pectoralis_major_thoracic_part_8.Lf0 +.pectoralis_major_thoracic_part_9.Lf0 +.pectoralis_major_thoracic_part_10.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////////////////////// // pectoralis_major_clavicular_part (5 elements) // /////////////////////////////////////////////////////////// AnyMuscleModel pectoralis_major_clavicular_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_clavicular_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_clavicular_part_1.Lf0 +.pectoralis_major_clavicular_part_2.Lf0 +.pectoralis_major_clavicular_part_3.Lf0 +.pectoralis_major_clavicular_part_4.Lf0 +.pectoralis_major_clavicular_part_5.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_clavicular_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_clavicular_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_clavicular_part_1.Lf0 +.pectoralis_major_clavicular_part_2.Lf0 +.pectoralis_major_clavicular_part_3.Lf0 +.pectoralis_major_clavicular_part_4.Lf0 +.pectoralis_major_clavicular_part_5.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_clavicular_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_clavicular_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_clavicular_part_1.Lf0 +.pectoralis_major_clavicular_part_2.Lf0 +.pectoralis_major_clavicular_part_3.Lf0 +.pectoralis_major_clavicular_part_4.Lf0 +.pectoralis_major_clavicular_part_5.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_clavicular_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_clavicular_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_clavicular_part_1.Lf0 +.pectoralis_major_clavicular_part_2.Lf0 +.pectoralis_major_clavicular_part_3.Lf0 +.pectoralis_major_clavicular_part_4.Lf0 +.pectoralis_major_clavicular_part_5.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_major_clavicular_part_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_major_clavicular_part; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_major_clavicular_part_1.Lf0 +.pectoralis_major_clavicular_part_2.Lf0 +.pectoralis_major_clavicular_part_3.Lf0 +.pectoralis_major_clavicular_part_4.Lf0 +.pectoralis_major_clavicular_part_5.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////// // pectoralis_minor (3 elements) // /////////////////////////////////////////// AnyMuscleModel pectoralis_minor_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_minor; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_minor_1.Lf0 +.pectoralis_minor_2.Lf0 +.pectoralis_minor_3.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_minor_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_minor; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_minor_1.Lf0 +.pectoralis_minor_2.Lf0 +.pectoralis_minor_3.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel pectoralis_minor_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.pectoralis_minor; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.pectoralis_minor_1.Lf0 +.pectoralis_minor_2.Lf0 +.pectoralis_minor_3.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////// // rhomboideus (3 elements) // ////////////////////////////////////// AnyMuscleModel rhomboideus_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.rhomboideus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.rhomboideus_1.Lf0 +.rhomboideus_2.Lf0 +.rhomboideus_3.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel rhomboideus_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.rhomboideus; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.rhomboideus_1.Lf0 +.rhomboideus_2.Lf0 +.rhomboideus_3.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel rhomboideus_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.rhomboideus; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.rhomboideus_1.Lf0 +.rhomboideus_2.Lf0 +.rhomboideus_3.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////// // serratus_anterior (6 elements) // //////////////////////////////////////////// AnyMuscleModel serratus_anterior_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.serratus_anterior; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.serratus_anterior_1.Lf0 +.serratus_anterior_2.Lf0 +.serratus_anterior_3.Lf0 +.serratus_anterior_4.Lf0 +.serratus_anterior_5.Lf0 +.serratus_anterior_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel serratus_anterior_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.serratus_anterior; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.serratus_anterior_1.Lf0 +.serratus_anterior_2.Lf0 +.serratus_anterior_3.Lf0 +.serratus_anterior_4.Lf0 +.serratus_anterior_5.Lf0 +.serratus_anterior_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel serratus_anterior_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.serratus_anterior; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.serratus_anterior_1.Lf0 +.serratus_anterior_2.Lf0 +.serratus_anterior_3.Lf0 +.serratus_anterior_4.Lf0 +.serratus_anterior_5.Lf0 +.serratus_anterior_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel serratus_anterior_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.serratus_anterior; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.serratus_anterior_1.Lf0 +.serratus_anterior_2.Lf0 +.serratus_anterior_3.Lf0 +.serratus_anterior_4.Lf0 +.serratus_anterior_5.Lf0 +.serratus_anterior_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel serratus_anterior_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.serratus_anterior; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.serratus_anterior_1.Lf0 +.serratus_anterior_2.Lf0 +.serratus_anterior_3.Lf0 +.serratus_anterior_4.Lf0 +.serratus_anterior_5.Lf0 +.serratus_anterior_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel serratus_anterior_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.serratus_anterior; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.serratus_anterior_1.Lf0 +.serratus_anterior_2.Lf0 +.serratus_anterior_3.Lf0 +.serratus_anterior_4.Lf0 +.serratus_anterior_5.Lf0 +.serratus_anterior_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////////////// // Sternocleidomastoid (2 elements) // ////////////////////////////////////////////// AnyMuscleModel Sternocleidomastoid_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Sternocleidomastoid; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Sternocleidomastoid_1.Lf0 +.Sternocleidomastoid_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Sternocleidomastoid_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Sternocleidomastoid; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Sternocleidomastoid_1.Lf0 +.Sternocleidomastoid_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////// // subscapularis (6 elements) // //////////////////////////////////////// AnyMuscleModel subscapularis_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.subscapularis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.subscapularis_1.Lf0 +.subscapularis_2.Lf0 +.subscapularis_3.Lf0 +.subscapularis_4.Lf0 +.subscapularis_5.Lf0 +.subscapularis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel subscapularis_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.subscapularis; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.subscapularis_1.Lf0 +.subscapularis_2.Lf0 +.subscapularis_3.Lf0 +.subscapularis_4.Lf0 +.subscapularis_5.Lf0 +.subscapularis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel subscapularis_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.subscapularis; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.subscapularis_1.Lf0 +.subscapularis_2.Lf0 +.subscapularis_3.Lf0 +.subscapularis_4.Lf0 +.subscapularis_5.Lf0 +.subscapularis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel subscapularis_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.subscapularis; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.subscapularis_1.Lf0 +.subscapularis_2.Lf0 +.subscapularis_3.Lf0 +.subscapularis_4.Lf0 +.subscapularis_5.Lf0 +.subscapularis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel subscapularis_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.subscapularis; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.subscapularis_1.Lf0 +.subscapularis_2.Lf0 +.subscapularis_3.Lf0 +.subscapularis_4.Lf0 +.subscapularis_5.Lf0 +.subscapularis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel subscapularis_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.subscapularis; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.subscapularis_1.Lf0 +.subscapularis_2.Lf0 +.subscapularis_3.Lf0 +.subscapularis_4.Lf0 +.subscapularis_5.Lf0 +.subscapularis_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////// // supraspinatus (6 elements) // //////////////////////////////////////// AnyMuscleModel supraspinatus_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.supraspinatus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.supraspinatus_1.Lf0 +.supraspinatus_2.Lf0 +.supraspinatus_3.Lf0 +.supraspinatus_4.Lf0 +.supraspinatus_5.Lf0 +.supraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel supraspinatus_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.supraspinatus; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.supraspinatus_1.Lf0 +.supraspinatus_2.Lf0 +.supraspinatus_3.Lf0 +.supraspinatus_4.Lf0 +.supraspinatus_5.Lf0 +.supraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel supraspinatus_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.supraspinatus; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.supraspinatus_1.Lf0 +.supraspinatus_2.Lf0 +.supraspinatus_3.Lf0 +.supraspinatus_4.Lf0 +.supraspinatus_5.Lf0 +.supraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel supraspinatus_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.supraspinatus; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.supraspinatus_1.Lf0 +.supraspinatus_2.Lf0 +.supraspinatus_3.Lf0 +.supraspinatus_4.Lf0 +.supraspinatus_5.Lf0 +.supraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel supraspinatus_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.supraspinatus; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.supraspinatus_1.Lf0 +.supraspinatus_2.Lf0 +.supraspinatus_3.Lf0 +.supraspinatus_4.Lf0 +.supraspinatus_5.Lf0 +.supraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel supraspinatus_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.supraspinatus; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.supraspinatus_1.Lf0 +.supraspinatus_2.Lf0 +.supraspinatus_3.Lf0 +.supraspinatus_4.Lf0 +.supraspinatus_5.Lf0 +.supraspinatus_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////// // teres_major (6 elements) // ////////////////////////////////////// AnyMuscleModel teres_major_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_major; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_major_1.Lf0 +.teres_major_2.Lf0 +.teres_major_3.Lf0 +.teres_major_4.Lf0 +.teres_major_5.Lf0 +.teres_major_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_major_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_major; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_major_1.Lf0 +.teres_major_2.Lf0 +.teres_major_3.Lf0 +.teres_major_4.Lf0 +.teres_major_5.Lf0 +.teres_major_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_major_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_major; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_major_1.Lf0 +.teres_major_2.Lf0 +.teres_major_3.Lf0 +.teres_major_4.Lf0 +.teres_major_5.Lf0 +.teres_major_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_major_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_major; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_major_1.Lf0 +.teres_major_2.Lf0 +.teres_major_3.Lf0 +.teres_major_4.Lf0 +.teres_major_5.Lf0 +.teres_major_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_major_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_major; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_major_1.Lf0 +.teres_major_2.Lf0 +.teres_major_3.Lf0 +.teres_major_4.Lf0 +.teres_major_5.Lf0 +.teres_major_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_major_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_major; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_major_1.Lf0 +.teres_major_2.Lf0 +.teres_major_3.Lf0 +.teres_major_4.Lf0 +.teres_major_5.Lf0 +.teres_major_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////// // teres_minor (6 elements) // ////////////////////////////////////// AnyMuscleModel teres_minor_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_minor; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_minor_1.Lf0 +.teres_minor_2.Lf0 +.teres_minor_3.Lf0 +.teres_minor_4.Lf0 +.teres_minor_5.Lf0 +.teres_minor_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_minor_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_minor; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_minor_1.Lf0 +.teres_minor_2.Lf0 +.teres_minor_3.Lf0 +.teres_minor_4.Lf0 +.teres_minor_5.Lf0 +.teres_minor_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_minor_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_minor; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_minor_1.Lf0 +.teres_minor_2.Lf0 +.teres_minor_3.Lf0 +.teres_minor_4.Lf0 +.teres_minor_5.Lf0 +.teres_minor_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_minor_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_minor; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_minor_1.Lf0 +.teres_minor_2.Lf0 +.teres_minor_3.Lf0 +.teres_minor_4.Lf0 +.teres_minor_5.Lf0 +.teres_minor_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_minor_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_minor; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_minor_1.Lf0 +.teres_minor_2.Lf0 +.teres_minor_3.Lf0 +.teres_minor_4.Lf0 +.teres_minor_5.Lf0 +.teres_minor_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel teres_minor_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.teres_minor; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.teres_minor_1.Lf0 +.teres_minor_2.Lf0 +.teres_minor_3.Lf0 +.teres_minor_4.Lf0 +.teres_minor_5.Lf0 +.teres_minor_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////////////////// // trapezius_scapular_part (6 elements) // ////////////////////////////////////////////////// AnyMuscleModel trapezius_scapular_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_scapular_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_scapular_part_1.Lf0 +.trapezius_scapular_part_2.Lf0 +.trapezius_scapular_part_3.Lf0 +.trapezius_scapular_part_4.Lf0 +.trapezius_scapular_part_5.Lf0 +.trapezius_scapular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_scapular_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_scapular_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_scapular_part_1.Lf0 +.trapezius_scapular_part_2.Lf0 +.trapezius_scapular_part_3.Lf0 +.trapezius_scapular_part_4.Lf0 +.trapezius_scapular_part_5.Lf0 +.trapezius_scapular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_scapular_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_scapular_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_scapular_part_1.Lf0 +.trapezius_scapular_part_2.Lf0 +.trapezius_scapular_part_3.Lf0 +.trapezius_scapular_part_4.Lf0 +.trapezius_scapular_part_5.Lf0 +.trapezius_scapular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_scapular_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_scapular_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_scapular_part_1.Lf0 +.trapezius_scapular_part_2.Lf0 +.trapezius_scapular_part_3.Lf0 +.trapezius_scapular_part_4.Lf0 +.trapezius_scapular_part_5.Lf0 +.trapezius_scapular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_scapular_part_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_scapular_part; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_scapular_part_1.Lf0 +.trapezius_scapular_part_2.Lf0 +.trapezius_scapular_part_3.Lf0 +.trapezius_scapular_part_4.Lf0 +.trapezius_scapular_part_5.Lf0 +.trapezius_scapular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_scapular_part_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_scapular_part; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_scapular_part_1.Lf0 +.trapezius_scapular_part_2.Lf0 +.trapezius_scapular_part_3.Lf0 +.trapezius_scapular_part_4.Lf0 +.trapezius_scapular_part_5.Lf0 +.trapezius_scapular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////// // trapezius_clavicular_part (6 elements) // //////////////////////////////////////////////////// AnyMuscleModel trapezius_clavicular_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_clavicular_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_clavicular_part_1.Lf0 +.trapezius_clavicular_part_2.Lf0 +.trapezius_clavicular_part_3.Lf0 +.trapezius_clavicular_part_4.Lf0 +.trapezius_clavicular_part_5.Lf0 +.trapezius_clavicular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_clavicular_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_clavicular_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_clavicular_part_1.Lf0 +.trapezius_clavicular_part_2.Lf0 +.trapezius_clavicular_part_3.Lf0 +.trapezius_clavicular_part_4.Lf0 +.trapezius_clavicular_part_5.Lf0 +.trapezius_clavicular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_clavicular_part_3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_clavicular_part; AnyIntVar MuscleElemNo = 3; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_clavicular_part_1.Lf0 +.trapezius_clavicular_part_2.Lf0 +.trapezius_clavicular_part_3.Lf0 +.trapezius_clavicular_part_4.Lf0 +.trapezius_clavicular_part_5.Lf0 +.trapezius_clavicular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_clavicular_part_4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_clavicular_part; AnyIntVar MuscleElemNo = 4; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_clavicular_part_1.Lf0 +.trapezius_clavicular_part_2.Lf0 +.trapezius_clavicular_part_3.Lf0 +.trapezius_clavicular_part_4.Lf0 +.trapezius_clavicular_part_5.Lf0 +.trapezius_clavicular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_clavicular_part_5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_clavicular_part; AnyIntVar MuscleElemNo = 5; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_clavicular_part_1.Lf0 +.trapezius_clavicular_part_2.Lf0 +.trapezius_clavicular_part_3.Lf0 +.trapezius_clavicular_part_4.Lf0 +.trapezius_clavicular_part_5.Lf0 +.trapezius_clavicular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel trapezius_clavicular_part_6 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.trapezius_clavicular_part; AnyIntVar MuscleElemNo = 6; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.trapezius_clavicular_part_1.Lf0 +.trapezius_clavicular_part_2.Lf0 +.trapezius_clavicular_part_3.Lf0 +.trapezius_clavicular_part_4.Lf0 +.trapezius_clavicular_part_5.Lf0 +.trapezius_clavicular_part_6.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////// // Triceps_LH (2 elements) // ///////////////////////////////////// AnyMuscleModel Triceps_LH_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Triceps_LH; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Triceps_LH_1.Lf0 +.Triceps_LH_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Triceps_LH_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Triceps_LH; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Triceps_LH_1.Lf0 +.Triceps_LH_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////// // Brachialis (2 elements) // ///////////////////////////////////// AnyMuscleModel Brachialis_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Brachialis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Brachialis_1.Lf0 +.Brachialis_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Brachialis_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Brachialis; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Brachialis_1.Lf0 +.Brachialis_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////// // Triceps_ME (2 elements) // ///////////////////////////////////// AnyMuscleModel Triceps_ME_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Triceps_ME; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Triceps_ME_1.Lf0 +.Triceps_ME_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Triceps_ME_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Triceps_ME; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Triceps_ME_1.Lf0 +.Triceps_ME_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////// // Triceps_LA (2 elements) // ///////////////////////////////////// AnyMuscleModel Triceps_LA_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Triceps_LA; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Triceps_LA_1.Lf0 +.Triceps_LA_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Triceps_LA_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Triceps_LA; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleHumerus*MuscleParameters.MuscleVolumeSIScaled/(.Triceps_LA_1.Lf0 +.Triceps_LA_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////// // Brach_rad (2 elements) // //////////////////////////////////// AnyMuscleModel Brach_rad_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Brach_rad; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Brach_rad_1.Lf0 +.Brach_rad_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Brach_rad_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Brach_rad; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Brach_rad_1.Lf0 +.Brach_rad_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////// // Anconeus (2 elements) // /////////////////////////////////// AnyMuscleModel Anconeus_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Anconeus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Anconeus_1.Lf0 +.Anconeus_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Anconeus_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Anconeus; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Anconeus_1.Lf0 +.Anconeus_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////////////////// // Pronator_teres_caput_humeral (2 elements) // /////////////////////////////////////////////////////// AnyMuscleModel Pronator_teres_caput_humeral_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Pronator_teres_caput_humeral; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Pronator_teres_caput_humeral_1.Lf0 +.Pronator_teres_caput_humeral_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Pronator_teres_caput_humeral_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Pronator_teres_caput_humeral; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Pronator_teres_caput_humeral_1.Lf0 +.Pronator_teres_caput_humeral_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////////////////////// // Pronator_teres_caput_ulnare (1 element ) // ////////////////////////////////////////////////////// AnyMuscleModel Pronator_teres_caput_ulnare = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Pronator_teres_caput_ulnare; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////// // Supinator_humerus_part (2 elements) // ///////////////////////////////////////////////// AnyMuscleModel Supinator_humerus_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Supinator_humerus_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Supinator_humerus_part_1.Lf0 +.Supinator_humerus_part_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Supinator_humerus_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Supinator_humerus_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Supinator_humerus_part_1.Lf0 +.Supinator_humerus_part_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////////////// // Supinator_ulna_part (2 elements) // ////////////////////////////////////////////// AnyMuscleModel Supinator_ulna_part_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Supinator_ulna_part; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Supinator_ulna_part_1.Lf0 +.Supinator_ulna_part_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Supinator_ulna_part_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Supinator_ulna_part; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Supinator_ulna_part_1.Lf0 +.Supinator_ulna_part_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////// // Pron_quadr (2 elements) // ///////////////////////////////////// AnyMuscleModel Pron_quadr_1 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Pron_quadr; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Pron_quadr_1.Lf0 +.Pron_quadr_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; AnyMuscleModel Pron_quadr_2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Pron_quadr; AnyIntVar MuscleElemNo = 2; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(.Pron_quadr_1.Lf0 +.Pron_quadr_2.Lf0 ); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////////////// // Extensor_Pollicis_Longus (1 element ) // /////////////////////////////////////////////////// AnyMuscleModel Extensor_Pollicis_Longus = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Pollicis_Longus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////////////// // Extensor_Pollicis_Brevis (1 element ) // /////////////////////////////////////////////////// AnyMuscleModel Extensor_Pollicis_Brevis = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Pollicis_Brevis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////////////// // Abductor_Pollicis_Longus (1 element ) // /////////////////////////////////////////////////// AnyMuscleModel Abductor_Pollicis_Longus = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Abductor_Pollicis_Longus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////// // Extensor_Indicis (1 element ) // /////////////////////////////////////////// AnyMuscleModel Extensor_Indicis = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Indicis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////// // Extensor_Carpi_Ulnaris (1 element ) // ///////////////////////////////////////////////// AnyMuscleModel Extensor_Carpi_Ulnaris = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Carpi_Ulnaris; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////////////// // Extensor_Carpi_Radialis_Longus (1 element ) // ///////////////////////////////////////////////////////// AnyMuscleModel Extensor_Carpi_Radialis_Longus = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Carpi_Radialis_Longus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////////////// // Extensor_Carpi_Radialis_Brevis (1 element ) // ///////////////////////////////////////////////////////// AnyMuscleModel Extensor_Carpi_Radialis_Brevis = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Carpi_Radialis_Brevis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////// // Flexor_Carpi_Radialis (1 element ) // //////////////////////////////////////////////// AnyMuscleModel Flexor_Carpi_Radialis = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Carpi_Radialis; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; /////////////////////////////////////////////// // Flexor_Carpi_Ulnaris (1 element ) // /////////////////////////////////////////////// AnyMuscleModel Flexor_Carpi_Ulnaris = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Carpi_Ulnaris; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ////////////////////////////////////////// // Palmaris_Longus (1 element ) // ////////////////////////////////////////// AnyMuscleModel Palmaris_Longus = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Palmaris_Longus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////////// // Flexor_Digitorum_Superficialis_Digit5 (1 element ) // //////////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Superficialis_Digit5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Superficialis_Digit5; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////////// // Flexor_Digitorum_Superficialis_Digit4 (1 element ) // //////////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Superficialis_Digit4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Superficialis_Digit4; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////////// // Flexor_Digitorum_Superficialis_Digit3 (1 element ) // //////////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Superficialis_Digit3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Superficialis_Digit3; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////////// // Flexor_Digitorum_Superficialis_Digit2 (1 element ) // //////////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Superficialis_Digit2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Superficialis_Digit2; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////// // Flexor_Digitorum_Profundus_Digit5 (1 element ) // //////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Profundus_Digit5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Profundus_Digit5; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////// // Flexor_Digitorum_Profundus_Digit4 (1 element ) // //////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Profundus_Digit4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Profundus_Digit4; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////// // Flexor_Digitorum_Profundus_Digit3 (1 element ) // //////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Profundus_Digit3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Profundus_Digit3; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////////////// // Flexor_Digitorum_Profundus_Digit2 (1 element ) // //////////////////////////////////////////////////////////// AnyMuscleModel Flexor_Digitorum_Profundus_Digit2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Digitorum_Profundus_Digit2; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////// // Extensor_Digitorum_Digit5 (1 element ) // //////////////////////////////////////////////////// AnyMuscleModel Extensor_Digitorum_Digit5 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Digitorum_Digit5; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////// // Extensor_Digitorum_Digit4 (1 element ) // //////////////////////////////////////////////////// AnyMuscleModel Extensor_Digitorum_Digit4 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Digitorum_Digit4; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////// // Extensor_Digitorum_Digit3 (1 element ) // //////////////////////////////////////////////////// AnyMuscleModel Extensor_Digitorum_Digit3 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Digitorum_Digit3; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; //////////////////////////////////////////////////// // Extensor_Digitorum_Digit2 (1 element ) // //////////////////////////////////////////////////// AnyMuscleModel Extensor_Digitorum_Digit2 = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Digitorum_Digit2; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////// // Extensor_Digiti_Minimi (1 element ) // ///////////////////////////////////////////////// AnyMuscleModel Extensor_Digiti_Minimi = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Extensor_Digiti_Minimi; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) }; ///////////////////////////////////////////////// // Flexor_Pollicis_Longus (1 element ) // ///////////////////////////////////////////////// AnyMuscleModel Flexor_Pollicis_Longus = { AnyFolder& MuscleParameters = ..ModelParameters.Muscles.Flexor_Pollicis_Longus; AnyIntVar MuscleElemNo = 1; ///< The number of this element of the muscle AnyIntVar MuscleElemAmount = MuscleParameters.MuscleElemAmount; ///< The total amount of elements for this muscle F0 ??= .DefaultMusPar.PCSAfactor*PCSA; ///< Maximum force output at optimum fiber length Lf0 ??= MuscleParameters.OptimalFiberlength / cos(pi/180*MuscleParameters.Pennationangle); //< Optimal fiber length corrected by pennation angle AnyVar PCSA ??= 1e4*.StrengthScaleUlna*MuscleParameters.MuscleVolumeSIScaled/(Lf0); ///< PCSA (cm2) of the individual element is total volumen divided by the sum of muscle element fiber lengths. Vol0 ??= 1e-4 * PCSA * Lf0; // New calculation of the vol for the specific muscle branch (m^3) };