How to multiply one array to all elements of a vector with a different size?

1 vue (au cours des 30 derniers jours)
Shekoofeh Abdollahi
Shekoofeh Abdollahi le 27 Jan 2022
Modifié(e) : James Tursa le 27 Jan 2022
Take
a=[1 2; 3 4]
and
b=[4 5 6]
How can I creat a 3D vector,
c(:,:,1)=a*b(1)
c(:,:,2)=a*b(2)
c(:,:,3)=a*b(3)
if I don't want to use a for loop. Is there any code for this multiplication in MATLAB?

Réponses (1)

James Tursa
James Tursa le 27 Jan 2022
Modifié(e) : James Tursa le 27 Jan 2022
You can use implicit expansion with the element-wise multiply operator:
c = a .* reshape(b,1,1,[]);

Catégories

En savoir plus sur Code Generation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by