Borrar filtros
Borrar filtros

Matrix multiplication between 2d matrix and slice of 3d array

4 visualizaciones (últimos 30 días)
I have two matrices A (3,3,x) and B (3,3) where x is a variable, known value and typically on the order of thousands. I need to compute the matrix multiplication of these two, I know this can be done by
function [ out ] = mat_mult( A,B )
[~,~,np] = size(A);
out = zeros(size(A));
for i=1:np
out(:,:,i) = A(:,:,i)*B;
end
end
but I figure there is a more efficient way to do this than for loops, especially for MATLAB. Unforunately, I am not quite sure how to vectorize this.

Respuesta aceptada

Athul Prakash
Athul Prakash el 1 de En. de 2020
Hey Morten,
You can check out 'MULTIPROD' - from File Exchange (linked below). It covers your requirements exactly,
( Please note that tools available on File Exchange are provided by the community and not created by Mathworks. The Mathworks does not provide any guarantees for such tools.)

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by