adding every element of an array with every element of another array?

15 views (last 30 days)
dear all, i want to add array elements to every other element of another element of another array in simulink/matlab

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 30 Nov 2012
Pranav wrote: "...i want to add elemnts of A to be added to every other elemnet of B. ie. 1+[5 6 7 8],2+[5 6 7 8],...so on..."
A = [ 1 2 3 4];
B = [ 5 6 7 8];
C = reshape(bsxfun(@plus,A,B.'),1,[]);

More Answers (3)

Vishal Rane
Vishal Rane on 30 Nov 2012
Edited: Vishal Rane on 30 Nov 2012
Do you need to do this in MATLAB code ?
A = [ 1 2 3 4]
B = [ 5 6 7 8]
C = A + B = [ 6 8 10 12 ]
Comment back if your requirement is different.
  3 Comments
Vishal Rane
Vishal Rane on 30 Nov 2012
arrayfun(@(x)(x+A),B,'Un',0)
will work in that case but output will be a 1x4 cell arrray.

Sign in to comment.


Matt Fig
Matt Fig on 30 Nov 2012
A = 0:4;
B = 10:16;
bsxfun(@plus,A,B')

Brandon
Brandon on 9 May 2016
Edited: Brandon on 11 Dec 2018
I found this conversation while looking for a faster way to accomplish this task. The code below also works but is just slightly slower in my code on my machine.
X=[A' ones(size(A'))];
Y=[ones(size(B)); B];
reshape(X*Y,1,[])

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!