Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download
293 views
from sympy import * from sympy import N as Num from sympy import mpmath from mpmath import radians as rad def rot(v,phi_rad): """ actively rotate vector V by phi_deg degrees """ c = cos(phi_rad) s = sin(phi_rad) # rotation matrix Q: Q = Matrix([[c, -s],[s, c]]) return Q*v u = Matrix([5, 0]) # set V parallel to u: V = Matrix([3, 0]) # rotate V by phi_deg: pie=2*pi # pc = piece of pie: pc = pie/12 for phi in [pc * x for x in [1,2,3,4]]: v = rot(V,phi) pprint("\n\nv:") pprint(v) vu = v.norm()*cos(phi) dotp = u.dot(v) # precision: p=2 pprint("\nvu:") pprint(vu) pprint(Num(vu,p)) pprint("\nu.v:") pprint(dotp) pprint(Num(dotp,p))
v: [ ___] [3*\/ 3 ] [-------] [ 2 ] [ ] [ 3/2 ] vu: ___ 3*\/ 3 ------- 2 2.6 u.v: ___ 15*\/ 3 -------- 2 13. v: [ 3/2 ] [ ] [ ___] [3*\/ 3 ] [-------] [ 2 ] vu: 3/2 1.5 u.v: 15/2 7.5 v: [0] [ ] [3] vu: 0 0 u.v: 0 0 v: [ -3/2 ] [ ] [ ___] [3*\/ 3 ] [-------] [ 2 ] vu: -3/2 -1.5 u.v: -15/2 -7.5