Доступ к подматрицам в символьной записи (matlab)

#matlab #matrix #indexing #symbolic-computation

#matlab #матрица #индексирование #символьное вычисление

Вопрос:

Рассмотрение определения матрицы с использованием Symbolic Toolbox :

    syms X Y
   f(X,Y)=[1 X X^2; 1 Y Y^2];
 

мы получаем:

    >> f(X,Y)

   ans =

   [ 1, X, X^2]
   [ 1, Y, Y^2]
 

Как мы можем извлечь только вторую строку этой матрицы? Отличается ли схема индексации в этом случае ( f(X,Y)(2,:) )?

Ответ №1:

Вы определили (скалярный 1×1) символ, возвращающий матрицу, индексация непосредственно в этом символе отсутствует. Сначала извлеките символический термин:

 %convert symfun to sym
f=f(X,Y)
%now you can use indices
f=f(1:2,3)
%convert back to symfun
f(X,Y)=f