MGRocketSledOnInclinedPlaneStatics.html  (MotionGenesis input/output).
   (1) % MotionGenesis file: MGRocketSledOnInclinedPlaneStatics.txt 
   (2) % Copyright (c) 2009 Motion Genesis LLC.  All rights reserved.
   (3) %-------------------------------------------------------------
   (4) NewtonianFrame  N                      % Nx> is directed upward along inclined plane.
   (5) Particle        Q                      % Rocket sled (modeled as a particle).
   (6) %-------------------------------------------------------------
   (7) Variable   FThrust, Ffriction, FNormal
   (8) Constant   theta = 30 degs             % Angle of inclined plane.
   (9) Constant   mu = 0.115 noUnits          % Coefficient of static/kinetic friction.
   (10) Constant   g = 10 m/s^2                % Earth's gravitational acceleration.
   (11) Q.SetMass( m = 100 kg )
   (12) %-------------------------------------------------------------
   (13) %   Relevant forces (gravity, thrust, normal, friction)  
   (14) GravityDirection> = -sin(theta)*Nx> - cos(theta)*Ny>
-> (15) GravityDirection> = -sin(theta)*Nx> - cos(theta)*Ny>

   (16) Q.AddForce(  m*g*GravityDirection>  +  FThrust * Nx>  +  FNormal * Ny>  +  Ffriction * Nx> )
-> (17) Force_Q> = (Ffriction+FThrust-m*g*sin(theta))*Nx> + (FNormal-m*g*cos(
        theta))*Ny>

   (18) %-------------------------------------------------------------
   (19) %   Static equilibrium equations.
   (20) Statics[1] = Dot( Nx>,  Q.GetStatics() )
-> (21) Statics[1] = Ffriction + FThrust - m*g*sin(theta)

   (22) Statics[2] = Dot( Ny>,  Q.GetStatics() )
-> (23) Statics[2] = FNormal - m*g*cos(theta)

   (24) %-------------------------------------------------------------
   (25) %   (a) Find minimum thrust to prevent rocket sled from sliding downhill.
   (26) StaticsA = Evaluate( Statics, Ffriction = mu*FNormal ) 
-> (27) StaticsA = [FThrust + mu*FNormal - m*g*sin(theta);  FNormal - m*g*cos(theta)]

   (28) AResultSymbolic = Solve( StaticsA,  FThrust, FNormal )
-> (29) AResultSymbolic = [m*g*(sin(theta)-mu*cos(theta));  m*g*cos(theta)]

   (30) AResultNumeric  = EvaluateToNumber( AResultSymbolic )
-> (31) AResultNumeric = [400.4071;  866.0254]

   (32) %-------------------------------------------------------------
   (33) %   (b) Find minimum thrust to move rocket sled uphill at constant speed.
   (34) StaticsB = Evaluate( Statics, Ffriction = -mu*FNormal ) 
-> (35) StaticsB = [FThrust - m*g*sin(theta) - mu*FNormal;  FNormal - m*g*cos(theta)]

   (36) BResultSymbolic = Solve( StaticsB,  FThrust, FNormal )
-> (37) BResultSymbolic = [m*g*(sin(theta)+mu*cos(theta));  m*g*cos(theta)]

   (38) BResultNumeric  = EvaluateToNumber( BResultSymbolic )
-> (39) BResultNumeric = [599.5929;  866.0254]

   (40) %-------------------------------------------------------------
Saved by Motion Genesis LLC.   Command names and syntax: Copyright (c) 2009-2019 Motion Genesis LLC. All rights reserved.