//This simple model has been created to illsutrate the moment reactions measured by the AnyStdJoint which by default is using a RotAxesAngles Measure //The model consist of one segment with a mass of 10 kg, which is mounted with a standard joint locking all six dof. //Please note that the AnyStdJoint is using the RotAxesAngles type for measuring the rotations, it is only in this special case with all dof //driven to zero, that the moment can be regarded as a vector. Otherwise the measured moment is more complex and each moment depend on the //rotations of the previous axis. //Please run the inverse analysis and try out different combinations of gravity loads to better understand the out from the model. Main = { // The actual body model goes in this folder AnyFolder MyModel = { // Global Reference Frame AnyFixedRefFrame GlobalRef = { AnyDrawRefFrame drw= { RGB={0,0,1}; ScaleXYZ={1,1,1}*0.75; }; }; // Global reference frame AnySeg Mass= { Mass=10; Jii={0.01,0.01,0.01}; AnyRefNode Node1= { sRel={-0.5,0,0}; AnyDrawRefFrame drw= { RGB={1,0,0}; ScaleXYZ={1,1,1}*0.5; }; }; AnyDrawSeg drw={}; }; AnyStdJoint stdjoint= { AnyFixedRefFrame &ref1=.GlobalRef; AnyRefNode &ref2=.Mass.Node1; }; }; // MyModel AnyBodyStudy Study = { AnyFolder &Model = .MyModel; //RecruitmentSolver = MinMaxSimplex; Gravity = {0, -9.81, 0}; // Please try out different combinations of gravity and evaluate the reaction force in the AnyStdJoint nStep=10; tEnd=10; AnyFolder SelectedOutput={ //Forces AnyVar Fx= Main.MyModel.stdjoint.Constraints.Reaction.Fout[0]; AnyVar Fy= Main.MyModel.stdjoint.Constraints.Reaction.Fout[1]; AnyVar Fz= Main.MyModel.stdjoint.Constraints.Reaction.Fout[2]; //Moments are measured Mz,My,Mx because default rotation sequence is used for this joint AnyVar Mz= Main.MyModel.stdjoint.Constraints.Reaction.Fout[3]; AnyVar My= Main.MyModel.stdjoint.Constraints.Reaction.Fout[4]; AnyVar Mx= Main.MyModel.stdjoint.Constraints.Reaction.Fout[5]; }; }; }; // Main