У меня есть этот код ниже, и я хотел вычислить и заменить I = Ia + Ib + Ic на Id, Iq или Io после преобразования матрицы.
Из преобразования я ясно вижу Ia + Ib + Ic = sqrt (3) * Io, но программа вернула I = 49413911907318.0 * sqrt (2) * Io
Может кто-нибудь, пожалуйста, дайте мне знать, почему?
import sympy
from sympy import *
theta_c, Iq, Id, Io, Vq, Vd, Vo, Va, Vb, Vc, Ia, Ib, Ic = symbols('theta_c Iq Id Io Vq Vd Vo Va Vb Vc Ia Ib Ic')
Tabc_inv = sqrt(2/3)*Matrix([[cos(theta_c), -sin(theta_c), 1/sqrt(2)],[cos(theta_c-2*pi/3), -sin(theta_c-2*pi/3), 1/sqrt(2)],[cos(theta_c+2*pi/3), -sin(theta_c+2*pi/3), 1/sqrt(2)]])
Iabc = Tabc_inv*Matrix([Id,Iq,Io])
Ia = Iabc[0]
Ib = Iabc[1]
Ic = Iabc[2]
I_expanded = Ia + Ib + Ic
I = simplify(I_expanded)
print('\n I =',I)