Module Expr Str ImportFrom alias ImportFrom alias alias alias alias ImportFrom alias alias alias ImportFrom alias alias ImportFrom alias alias alias ImportFrom alias alias Assign TupleStore NameStore NameStore NameStore NameStore NameStore NameStore Call NameLoad Str Assign TupleStore NameStore NameStore NameStore NameStore Call NameLoad Str Assign TupleStore NameStore NameStore NameStore Call NameLoad Str Assign TupleStore NameStore NameStore NameStore Call NameLoad Str keyword Num Assign TupleStore NameStore NameStore NameStore Call NameLoad Str Assign NameStore Call NameLoad Str Assign NameStore Call AttributeLoad NameLoad attr Str Str ListLoad BinOpMult NameLoad NameLoad AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str Str ListLoad NameLoad AttributeLoad NameLoad attr Assign NameStore Call NameLoad Str Expr Call AttributeLoad NameLoad attr NameLoad Num Expr Call AttributeLoad NameLoad attr NameLoad Num Assign NameStore Call AttributeLoad NameLoad attr Str BinOpAdd BinOpMult NameLoad AttributeLoad NameLoad attr BinOpMult NameLoad AttributeLoad NameLoad attr Assign NameStore Call AttributeLoad NameLoad attr Str BinOpMult NameLoad AttributeLoad NameLoad attr Expr Call AttributeLoad NameLoad attr NameLoad Num Expr Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad Call AttributeLoad NameLoad attr NameLoad attr NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad Num Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Expr Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad Assign NameStore ListLoad Call NameLoad Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr Call NameLoad Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr NameLoad Assign NameStore ListLoad NameLoad NameLoad NameLoad Assign NameStore BinOpSub BinOpAdd BinOpMult NameLoad AttributeLoad NameLoad attr BinOpMult NameLoad AttributeLoad NameLoad attr BinOpMult BinOpMult NameLoad NameLoad AttributeLoad NameLoad attr Assign NameStore BinOpSub BinOpSub BinOpAdd BinOpMult NameLoad AttributeLoad NameLoad attr BinOpMult NameLoad AttributeLoad NameLoad attr BinOpMult NameLoad AttributeLoad NameLoad attr BinOpMult BinOpMult NameLoad NameLoad AttributeLoad NameLoad attr Assign NameStore ListLoad NameLoad NameLoad Assign NameStore ListLoad TupleLoad NameLoad NameLoad TupleLoad NameLoad NameLoad Assign NameStore ListLoad Call NameLoad Str NameLoad NameLoad Call NameLoad Str NameLoad NameLoad Assign NameStore ListComp SubscriptLoad NameLoad Index Num comprehension NameStore NameLoad Assign NameStore ListComp BinOpSub NameLoad NameLoad comprehension TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign NameStore Call NameLoad NameLoad ListLoad NameLoad NameLoad NameLoad For TupleStore NameStore NameStore Call AttributeLoad NameLoad attr body Assign SubscriptStore NameLoad Index Call AttributeLoad NameLoad attr NameLoad Call AttributeLoad NameLoad attr NameLoad Assign NameStore Call NameLoad NameLoad ListLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad Assign NameStore ListLoad Call NameLoad Call AttributeLoad NameLoad attr NameLoad AttributeLoad NameLoad attr Assign NameStore Call NameLoad Call NameLoad NameLoad NameLoad ListLoad NameLoad Assign NameStore Call NameLoad NameLoad ListLoad NameLoad NameLoad NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad Assign TupleStore NameStore NameStore Call NameLoad NameLoad NameLoad NameLoad NameLoad Print Call AttributeLoad Str attr Call NameLoad NameLoad Print Str For TupleStore NameStore NameStore Call NameLoad NameLoad Num body Print Call AttributeLoad Str attr NameLoad Call NameLoad Call NameLoad NameLoad Print Str For TupleStore NameStore NameStore Call NameLoad NameLoad Num body Print Call AttributeLoad Str attr NameLoad Call NameLoad Call NameLoad NameLoad Print Str For TupleStore NameStore NameStore Call NameLoad NameLoad Num body Print Call AttributeLoad Str attr NameLoad Call NameLoad Call NameLoad NameLoad Print Str For TupleStore NameStore NameStore Call NameLoad NameLoad Num body Print Call AttributeLoad Str attr NameLoad Call NameLoad Call NameLoad NameLoad Print Str Assign TupleStore NameStore NameStore Call NameLoad Lambda arguments args NameParam defaults Call NameLoad SubscriptLoad NameLoad Index NameLoad NameLoad ListLoad NameLoad NameLoad Print Call AttributeLoad Str attr Call NameLoad Call NameLoad BinOpAdd SubscriptLoad NameLoad Index Num BinOpMult NameLoad SubscriptLoad NameLoad Index Num Print Call AttributeLoad Str attr Call NameLoad Call NameLoad BinOpAdd SubscriptLoad NameLoad Index Num BinOpMult NameLoad SubscriptLoad NameLoad Index Num Print Call AttributeLoad Str attr Call NameLoad Call NameLoad Call AttributeLoad BinOpAdd SubscriptLoad NameLoad Index Num BinOpMult NameLoad SubscriptLoad NameLoad Index Num attr NameLoad Print Call AttributeLoad Str attr Call NameLoad Call NameLoad Call AttributeLoad BinOpAdd SubscriptLoad NameLoad Index Num BinOpMult NameLoad SubscriptLoad NameLoad Index Num attr NameLoad
N/A N/A Exercises 8.2, 8.16 from Kane 1985. __future__ division sympy diff solve simplify symbols sympy.physics.mechanics ReferenceFrame Point Particle sympy.physics.mechanics dot dynamicsymbols util msprint subs partial_velocities util generalized_active_forces generalized_inertia_forces N/A N/A g L m1 m2 omega t N/A symbols g L m1 m2 omega t N/A N/A C X Y Z N/A symbols C X Y Z N/A N/A q1 q2 q3 N/A dynamicsymbols q1:4 N/A N/A q1d q2d q3d N/A dynamicsymbols q1:4 level 1 N/A N/A u1 u2 u3 N/A dynamicsymbols u1:4 N/A A N/A ReferenceFrame A N/A B N/A N/A A orientnew B Axis N/A N/A omega t N/A A y N/A E N/A N/A B orientnew E Axis N/A q3 N/A B z N/A pO N/A Point O N/A N/A N/A pO set_vel A 0 N/A N/A N/A pO set_vel B 0 N/A pP1 N/A N/A pO locatenew P1 N/A N/A q1 N/A B x N/A q2 N/A B y N/A pDs N/A N/A pP1 locatenew D* N/A L N/A E x N/A N/A N/A pP1 set_vel E 0 N/A N/A N/A pP1 set_vel B N/A N/A N/A N/A pP1 pos_from pO diff t B N/A N/A N/A pP1 v1pt_theory pO A B N/A N/A N/A pDs set_vel E 0 N/A N/A N/A pDs v2pt_theory pP1 B E N/A N/A N/A pDs v2pt_theory pP1 A E N/A u_expr N/A N/A dot N/A N/A pP1 vel A N/A E x N/A dot N/A N/A pP1 vel A N/A E y q3d N/A ulist N/A u1 u2 u3 N/A R1 N/A N/A N/A X N/A B z N/A C N/A E x N/A N/A m1 g N/A B y N/A R2 N/A N/A N/A N/A Y N/A E y N/A Z N/A E z N/A C N/A E x N/A N/A m2 g N/A B y N/A resultants N/A R1 R2 N/A forces N/A N/A pP1 R1 N/A pDs R2 N/A point_masses N/A N/A Particle P1 pP1 m1 N/A Particle P2 pDs m2 N/A points N/A N/A f N/A 0 N/A f forces N/A kde N/A N/A u_i u_ex N/A N/A u_i u_ex N/A zip ulist u_expr N/A kde_map N/A solve kde N/A q1d q2d q3d N/A N/A k v N/A N/A kde_map items N/A N/A N/A kde_map N/A N/A N/A k diff t N/A N/A v diff t N/A partials N/A partial_velocities points N/A u1 u2 u3 A kde_map N/A N/A Fr _ N/A generalized_active_forces partials forces N/A N/A Fr_star _ N/A generalized_inertia_forces partials point_masses kde_map N/A vc N/A N/A dot N/A N/A pDs vel B N/A E y N/A vc_map N/A solve N/A subs vc kde_map N/A u3 N/A partials_tilde N/A partial_velocities points N/A u1 u2 A kde_map vc_map N/A N/A Fr_tilde _ N/A generalized_active_forces partials_tilde forces N/A N/A Fr_tilde_star _ N/A generalized_inertia_forces partials_tilde point_masses kde_map vc_map N/A N/A N/A 
For generalized speeds
[u1, u2, u3] = {0} format N/A msprint u_expr N/A 
Generalized active forces: N/A N/A i f N/A enumerate Fr 1 N/A N/A N/A N/A F{0} = {1} format i N/A msprint N/A simplify f N/A 
Generalized inertia forces: N/A N/A i f N/A enumerate Fr_star 1 N/A N/A N/A N/A F{0}* = {1} format i N/A msprint N/A simplify f N/A 
Nonholonomic generalized active forces: N/A N/A i f N/A enumerate Fr_tilde 1 N/A N/A N/A N/A F{0} = {1} format i N/A msprint N/A simplify f N/A 
Nonholonomic generalized inertia forces: N/A N/A i f N/A enumerate Fr_tilde_star 1 N/A N/A N/A N/A F{0}* = {1} format i N/A msprint N/A simplify f N/A 
verify results N/A N/A A31 A32 N/A map N/A N/A N/A x N/A N/A diff N/A vc_map N/A u3 x N/A u1 u2 N/A N/A N/A F1_tilde = {0} format N/A msprint N/A simplify N/A N/A Fr N/A 0 N/A A31 N/A Fr N/A 2 N/A N/A N/A F2_tilde = {0} format N/A msprint N/A simplify N/A N/A Fr N/A 1 N/A A32 N/A Fr N/A 2 N/A N/A N/A F1*_tilde = {0} format N/A msprint N/A simplify N/A N/A N/A N/A Fr_star N/A 0 N/A A31 N/A Fr_star N/A 2 subs vc_map N/A N/A N/A F2*_tilde = {0} format N/A msprint N/A simplify N/A N/A N/A N/A Fr_star N/A 1 N/A A32 N/A Fr_star N/A 2 subs vc_map