2013-07-03 4 views
0

Предположим, у меня есть матрица 3 * 3, как получить матрицу b (2 * 2) без строк 2 и col 2? Я пытаюсь написать сценарий для генерации матрицы кофакторов в matlab.Матрица конкатенации в matlab

Спасибо!

function b = cofactormatrix(a) 
for i = 1:3 
    for j = 1:3 
     concatenated = a 
     concatenated(i,:) = [] 
     concatenated(:,j) = [] 
     b(i,j) = (-1^(i+j))*det(concatenated) 
    end 
end 
+3

Ь = а ([1 3], [1 3]) – bla

ответ

0

, если Х представляет собой матрицу 3х3, чтобы удалить второй столбец сделать:

X(:,2) = []

Затем, чтобы удалить оставшуюся вторую строку сделать:

X(2,:) = []

это должно Покажи фокус. надеюсь, что это помогает, Скотт

+0

функция Ь = cofactormatrix (а) для я = 1: 3 при = 1: 3 конкатенации = а каскадного (i, :) = [] конкатенированный (:, j) = [] b (i, j) = (-1^(i + j)) * det (конкатенированный) конец конец – Ra1nWarden

+0

concatenated = a дает ошибка недостаточных аргументов. Пожалуйста помоги. Спасибо – Ra1nWarden

+0

Спасибо, проблема решена. – Ra1nWarden

Смежные вопросы