Страница 1 из 1

Записать матрицу

Добавлено: Пн ноя 12, 2018 8:12 pm
Кли
Здравствуйте, как через цикл for записать матрицу Якоби? Я только знаю таким способом:

Код: Выделить всё

restart;
with(LinearAlgebra):
f[1]:=cos(x-1)+3*y-1.5;
f[2]:=-cos(y)+2*x-4;
M:=Matrix([[diff(f[1],x),diff(f[1],y)],[diff(f[2],x),diff(f[2],y)]]);

Re: Записать матрицу

Добавлено: Пн ноя 12, 2018 8:29 pm
Markiyan Hirnyk
Мэйпл имеет команду

Код: Выделить всё

with(VectorCalculus):
Jacobian([cos(x-1)+3*y-1.5, -cos(y)+2*x-4], [x, y]);
Matrix(2, 2, [[-sin(x-1), 3], [2, sin(y)]])

Указанную команду можно разыскать поиском

Код: Выделить всё

?Jacobian
в рабочем поле . Перевод термина на английский язык можно сделать в Яндексе или Гугле.

Re: Записать матрицу

Добавлено: Пн ноя 12, 2018 8:40 pm
Кли
такую команду я знаю, но мне надо именно циклом for(вы хотите упростить мне работу, я понимаю)

Re: Записать матрицу

Добавлено: Пн ноя 12, 2018 8:42 pm
Markiyan Hirnyk
Это я вам не отвечу.

Re: Записать матрицу

Добавлено: Пн ноя 12, 2018 11:35 pm
Kitonum
Довольно странное требование об обязательном присутствии цикла. С циклом можно сделать так:
restart;
f:=<cos(x-1)+3*y-1.5, -cos(y)+2*x-4>: var:=[x,y]:
for j from 1 to 2 do
f||j:=diff(f,var[j]);
od:
M:=<f1 | f2>;

Re: Записать матрицу

Добавлено: Вт ноя 13, 2018 7:22 am
Кли
спасибо