Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In
| Download
Views: 1137
from sympy import * from sympy import N as Num # pie is better than pi pie = 2*pi # SI units: m = Symbol("m", positive=True) s = Symbol("s", positive=True) kg = Symbol("kg", positive=True) print("\n--- User input -----------------------") half = S(1)/2 # Derived units: N = kg*m/s/s FA = 6 *N FC = FA FB = 2 *N FD = 5 *N a = 3 *m b = (4 + half) *m c = 2 *m # pie = 2 pi # pie/6 = 60 deg # pie/8 = 45 deg # pie/12 = 30 deg alpha = pie/6 beta = pie/8 gamma = pie/12 print("\n--- a: -------------------------------") cb = cos(beta) sb = sin(beta) cg = cos(gamma) sg = sin(gamma) Rx = FD * cb Ry = -FD * sb - FB Rx = Rx.simplify() Ry = Ry.simplify() R = Matrix(2,1, [Rx, Ry]) R_round=Num(R,3) pprint(R_round/N) print("\n--- b: -------------------------------") # Using scalars: MCz = a*FA + b*FB - c*FD*sb MCz = Num(MCz/N/m,3) pprint(MCz) # unit vectors: ex = Matrix(3, 1, [1, 0, 0]) eA = Matrix(3, 1, [-cg, -sg, 0]) ea = Matrix(3, 1, [-sg, cg, 0]) eB = Matrix(3, 1, [0, -1, 0]) eD = Matrix(3, 1, [cb, -sb, 0]) rA = a * ea rB = -b * ex rD = c * ex MA = rA.cross(FA*eA) MB = rB.cross(FB*eB) MD = rD.cross(FD*eD) M = MA + MB + MD # pick z-component: MC = M[2].simplify() MC = Num(MC/N/m,3) pprint(MC)
--- User input ----------------------- --- a: ------------------------------- [3.54 ] [ ] [-5.54] --- b: ------------------------------- 19.9 19.9