Оптимизация кода Matlab "Решить систему алгебраических уравнений"
У меня есть следующая проблема. Я пытаюсь решить 2 алгебраических уравнений с помощью решения ФКТ.
syms A B %solA ==> Xir... solB ==> Rir
R=Opit(1:end,1);
X=Opit(1:end,2);
solA=zeros(length(Opit),1);
solB=zeros(length(Opit),1);
ii=1;
%%
while ii < length(Opit);
F=2*A^2*B*(A^2+B^2)/(B^2-A^2)^2-R(ii);
G=2*A*B^2*(A^2+B^2)/(B^2-A^2)^2-X(ii);
[solA(ii),solB(ii)] = solve(F == 1, G == 1);
%%
C = solA*2*pi*1000;
Rwl=solB*15;
Требуется вечность, чтобы решить это, я подозреваю, что мой код не является оптимальным, для вашей информации length(Opit) = 3165
, Я не выделил память для F and G
потому что я думаю, что они перезаписываются каждый раз, когда начинается цикл. Также может помочь, я пытался использовать for ii=1:length(Opit)
но он показал мне "Неправильное назначение с прямоугольной пустой матрицей", после 26 итераций. Я перепрыгнул, но после 34 ...