Module Expr Str ImportFrom alias ImportFrom alias alias alias alias ImportFrom alias alias ImportFrom alias ImportFrom alias alias Assign TupleStore NameStore NameStore Call NameLoad Str Assign TupleStore NameStore NameStore Call NameLoad Str keyword Num Assign TupleStore NameStore NameStore Call NameLoad Str Assign TupleStore NameStore NameStore NameStore NameStore NameStore Call NameLoad Str Assign TupleStore NameStore NameStore Call NameLoad Str Assign NameStore Call NameLoad Str Assign NameStore Call AttributeLoad NameLoad attr Str Str ListLoad BinOpDiv UnaryOpUSub BinOpSub NameLoad NameLoad BinOpMult Num NameLoad AttributeLoad NameLoad attr Assign NameStore Call NameLoad Str Expr Call AttributeLoad NameLoad attr NameLoad Num Assign NameStore Call AttributeLoad NameLoad attr Str BinOpMult BinOpDiv UnaryOpUSub BinOpAdd NameLoad NameLoad Num AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str BinOpSub BinOpMult UnaryOpUSub NameLoad AttributeLoad NameLoad attr BinOpMult NameLoad AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str BinOpAdd BinOpMult UnaryOpUSub NameLoad AttributeLoad NameLoad attr BinOpMult NameLoad AttributeLoad NameLoad attr For NameStore ListLoad NameLoad NameLoad NameLoad body Expr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr NameLoad NameLoad Assign NameStore ListLoad BinOpSub NameLoad NameLoad BinOpSub NameLoad NameLoad Assign NameStore Call NameLoad NameLoad ListLoad NameLoad NameLoad Assign NameStore Lambda arguments args NameParam NameParam defaults BinOpMult BinOpDiv BinOpMult BinOpMult Num NameLoad NameLoad BinOpPow NameLoad Num BinOpSub BinOpDiv BinOpMult BinOpDiv NameLoad Num BinOpSub NameLoad NameLoad BinOpMult Num NameLoad BinOpDiv NameLoad Num Assign NameStore Lambda arguments args NameParam NameParam defaults BinOpMult BinOpDiv BinOpMult BinOpMult Num NameLoad NameLoad BinOpPow NameLoad Num BinOpSub NameLoad BinOpDiv BinOpMult BinOpDiv NameLoad Num BinOpSub NameLoad NameLoad BinOpMult Num NameLoad Assign NameStore ListLoad TupleLoad NameLoad BinOpMult Call NameLoad NameLoad NameLoad AttributeLoad NameLoad attr TupleLoad NameLoad BinOpMult BinOpMult UnaryOpUSub NameLoad NameLoad AttributeLoad NameLoad attr TupleLoad NameLoad BinOpMult Call NameLoad NameLoad NameLoad AttributeLoad NameLoad attr Assign NameStore ListLoad TupleLoad NameLoad BinOpMult BinOpSub Call NameLoad NameLoad NameLoad Call NameLoad NameLoad NameLoad AttributeLoad NameLoad attr Assign NameStore Call NameLoad ListLoad NameLoad NameLoad NameLoad NameLoad ListLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad BinOpAdd NameLoad NameLoad Print Str For TupleStore NameStore NameStore Call NameLoad NameLoad Num body Assign NameStore BinOpDiv BinOpMult BinOpMult Num NameLoad NameLoad BinOpPow NameLoad Num Assign NameStore BinOpDiv Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Assign NameStore BinOpDiv Call NameLoad Call NameLoad NameLoad NameLoad NameLoad Assign NameStore Call NameLoad BinOpSub NameLoad BinOpMult NameLoad BinOpAdd BinOpMult NameLoad NameLoad BinOpMult NameLoad NameLoad Print Call AttributeLoad Str attr NameLoad NameLoad NameLoad NameLoad NameLoad
N/A N/A Exercise 8.8 from Kane 1985. __future__ division sympy diff solve simplify symbols sympy.physics.mechanics ReferenceFrame Point sympy.physics.mechanics dynamicsymbols util partial_velocities generalized_active_forces N/A N/A q1 q2 N/A dynamicsymbols q1 q2 N/A N/A q1d q2d N/A dynamicsymbols q1 q2 level 1 N/A N/A u1 u2 N/A dynamicsymbols u1 u2 N/A N/A b g m L t N/A symbols b g m L t N/A N/A E I N/A symbols E I N/A N N/A ReferenceFrame N N/A B N/A N/A N orientnew B Axis N/A N/A N/A N/A q2 q1 N/A 2 b N/A N y N/A pO N/A Point O N/A N/A N/A pO set_vel N 0 N/A pB_star N/A N/A pO locatenew B* N/A N/A N/A N/A q1 q2 2 N/A N x N/A pP1 N/A N/A pO locatenew P1 N/A N/A N/A q1 N/A N x N/A b N/A N z N/A pP2 N/A N/A pO locatenew P2 N/A N/A N/A q2 N/A N x N/A b N/A N z N/A p N/A pB_star pP1 pP2 N/A N/A N/A N/A p set_vel N N/A N/A N/A N/A p pos_from pO diff t N N/A kde N/A N/A u1 q1d N/A u2 q2d N/A kde_map N/A solve kde N/A q1d q2d N/A M N/A N/A N/A qi qj N/A N/A N/A N/A N/A 12 E I N/A L 2 N/A N/A N/A N/A L 3 N/A qj qi N/A 2 b N/A qi 2 N/A V N/A N/A N/A qi qj N/A N/A N/A N/A N/A 12 E I N/A L 3 N/A qi N/A N/A N/A L 2 N/A qj qi N/A 2 b N/A forces N/A N/A pP1 N/A N/A V q1 q2 N/A N x N/A pB_star N/A N/A N/A m g N/A N x N/A pP2 N/A N/A V q2 q1 N/A N x N/A torques N/A N/A B N/A N/A N/A M q1 q2 N/A M q2 q1 N/A N y N/A partials N/A partial_velocities N/A pP1 pP2 pB_star B N/A u1 u2 N kde_map N/A N/A Fr _ N/A generalized_active_forces partials N/A forces torques N/A Generalized active forces: N/A N/A i f N/A enumerate Fr 1 N/A N/A alpha N/A N/A N/A 12 E I N/A L 3 N/A k_q1 N/A N/A simplify N/A diff f q1 alpha N/A k_q2 N/A N/A simplify N/A diff f q2 alpha N/A k_f N/A simplify N/A f N/A alpha N/A N/A k_q1 q1 N/A k_q2 q2 N/A N/A N/A F{0} = {1} * (({2})*q1 + ({3})*q2) + {4} format i alpha k_q1 k_q2 k_f