# For loop to do 900 subtractions

1 view (last 30 days)

Show older comments

So I have a Double Difference equation in the form of y = (sqrt(BR^2 - B1^2) - sqrt(BB^2 - B1^2)) - (sqrt(BR^2 - B2^2) - sqrt(BB^2 - B2^2)).......

and so on with B(i) being 901 numbers so (n1 - n2 - n3 - n4 - n5 ....... - n901)

How would I even begin to write a loop to do this so I don't have to cut and paste 901 times?

Please be patient with me my brain is so far gone, i've been at this code for about 100 hours now.

B = [X_mat_base, Y_mat_base, Z_mat_base];

BB = [xyz(1), xyz(2), xyz(3)];

BR = zeros(1, 3);

B = [X_mat_base, Y_mat_base, Z_mat_base];

for i = 1:length(BB(:, 1))

yx(i) = (sqrt(BR(1)^2 - B(i, 1).^2) - sqrt(BB(1)^2 - B(i, 1).^2));

end

##### 0 Comments

### Answers (2)

Walter Roberson
on 1 Mar 2022

y = sqrt((BR - B).^2 + (BB - B).^2);

##### 4 Comments

Walter Roberson
on 1 Mar 2022

"and so on with B(i) being 901 numbers so (n1 - n2 - n3 - n4 - n5 ....... - n901)"

That implied to me that you have a single variable named B and that where you wrote B2 in your code you meant B(2) .

If you have individual variables B1, B2, B3, ... B901 then... don't .

David Hill
on 1 Mar 2022

David Hill
on 1 Mar 2022

yx=sqrt(BR^2-B(1)^2)-sum(sqrt(BB^2-B.^2))-sum(sqrt(BR^2-B(2:end).^2));

##### 0 Comments

### See Also

### Categories

### Community Treasure Hunt

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

Start Hunting!