Я использую символы октавы c и пытаюсь решить некоторые уравнения, но когда я пытаюсь составить матрицу из моих уравнений для функции решения, я получаю эту ошибку
error: Python exception: OverflowError: Python int too large to convert to C long
occurred at line 29 of the Python code block:
d = sp.solve(eqs, *symbols, dict=True)
error: called from
python_cmd at line 179 column 7
solve at line 174 column 9
tuneL at line 21 column 3
и вот код, вызывающий проблему
syms b c d v;
syms E u L z real;
u=1.60217662 * 10^-18;
L=5/10^9;
z = 12799215218530416738
k=z*(E*u)^(1/2);
q=z*(E*u-u)^(1/2);
r1 = 1 + b - c - d == 0;
r2 = k - k*b - q*c + q*d == 0;
r3 = c*exp(i*q*L) + d*exp(-i*q*L) - v*exp(i*k*L) == 0;
r4 = q*c*exp(i*q*L)-q*d*exp(-i*q*L)-k*v*exp(i*k*L) == 0;
equ = [r1, r2, r3, r4];
zmi = [b, c, d, v];
s = solve(equ,zmi);
T = abs(s.v)^2;
есть ли способ обойти или мне просто нужно его отбросить? (Я не могу реально ценить другие, потому что они являются физическими константами)