2014-09-08 4 views
-3

У меня есть матрица размера i * j. Я хочу выполнить операции, чтобы дать новую матрицу. i.e, m11 + 4m21 + m31. m-matrix. m11-1-я строка 1-я колонка m21- 2-я строка 1-я колонка. Значение, указанное выше, равно a11. a- новая матрица a11- 1-я строка 1-я колонка. Мне нужно выполнить эти операции для каждой строки и столбца. Может ли кто-нибудь мне направить.Матричное умножение 2 разных размеров в matlab

ответ

1

Ваш вопрос Вея неясно, но, похоже, вы можете

conv2(m, [1;4;1], 'valid') 

Пример:

>> m = [1 3 4; 5 4 3; 8 3 9; 3 5 0] 
m = 
    1  3  4 
    5  4  3 
    8  3  9 
    3  5  0 

>> conv2(m, [1;4;1], 'valid') 
ans = 
    29 22 25 
    40 21 39 
0

Если A(1,1) = M(1,1) + 4*M(2,1) + M(3,1), то все, что мы можем дать вам то, что A(1,1) = [1 4 1]*M(:,1); Ту же операцию для каждого столбец A(1,1:3) = [1 4 1]*M. Такая же операция для каждой строки, которую я предполагаю, дает тот же ответ. Поэтому, если A(2,1) равно A(1,1)', 'A = [1 4 1;1 4 1;1 4 1]*M. Как предполагает Луис Мендо - не очень четкий вопрос.

+0

Благодарим за отзыв. Приносим извинения за неудобства. Пример: – user3248216

+0

Благодарим за отзыв. Приносим извинения за неудобства. Но я получил ответ на эту проблему. Спасибо, и простите еще раз. – user3248216

+0

Нет проблем, но не забудьте отметить это как ответ .. –

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