Векторизованная функция в numjac MatLab

Я пытаюсь решить большую систему DAE в сочетании с уравнениями для расчета чувствительности переменных к параметру. Моя проблема - якобиан всей системы, его вычисления довольно медленные, и я хотел бы ускорить его.

я использую numjacв таком виде:

[Jx,FAC,G] = numjac(@(t,y)MODEL(t,y,X),tt,yy,dydt,jac_tol,FAC,0,JPat,G);

Я хочу векторизовать код, но не могу понять, что это значит. Насколько я понял, мой код уже векторизован! t,y,X иди и я получаю вектор столбца dy(i)/dt, или же F(t,y(i)), Но если я скажу, что моя функция векторизована, я получу ошибку:

Matrix dimensions must agree.
Error in numjac (line 192)
Fdiff = Fdel - Fty(:,ones(1,ng));

Как я могу правильно векторизовать это?

0 ответов

Другие вопросы по тегам