Array Cascade Addition calculation

4 visualizzazioni (ultimi 30 giorni)
Andrew Tubbs
Andrew Tubbs il 22 Gen 2021
Commentato: Steven Lord il 23 Gen 2021
I have several arrays and what I need to do is create a loop that calculates the values of the adition of each value of an array with each value of another array as show below:
Array:
A = [A1 A2 A3] B = [B1 B2 B3] C = [C1 C2 C3]
Needed Values:
D = A1+B1+C1 E = A1+B1+C2 F = A1+B1+C3 G = A1+B2+C1 H = A1+B2+C2 I = A1+B2+C3 .... and so on
On a side note, what is the MATLAB notation for a specific value of an array such as A(1) = A1

Risposta accettata

James Tursa
James Tursa il 22 Gen 2021
Modificato: James Tursa il 22 Gen 2021
One way using implicit array expansion:
D = A(:) + reshape(B,1,[]) + reshape(C,1,1,[]);
Your results are the elements of D.
I'm not sure what you are asking about A(1) vs A1. A(1) is the MATLAB notation for the 1st element of variable A. A1 would be the name of a different variable ... it has no relationship to variable A.
  2 Commenti
Andrew Tubbs
Andrew Tubbs il 23 Gen 2021
What I get with this is jumbles of information, where only the first value is correct. To be more specific each value of each array is an 11 value array itself and I need a loop that automatically that spits out the summation array.
Steven Lord
Steven Lord il 23 Gen 2021
A = [1 2 4];
B = [8 16 32];
C = [64 128 256];
D = reshape(A, 3, 1) + reshape(B, 1, 3) + reshape(C, 1, 1, 3)
D =
D(:,:,1) = 73 81 97 74 82 98 76 84 100 D(:,:,2) = 137 145 161 138 146 162 140 148 164 D(:,:,3) = 265 273 289 266 274 290 268 276 292
[A(2)+B(3)+C(1), D(2, 3, 1)]
ans = 1×2
98 98

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by