More efficient "for i in array" loops

6 Ansichten (letzte 30 Tage)
Conrad Brindle
Conrad Brindle am 21 Feb. 2020
Beantwortet: Alex Mcaulley am 21 Feb. 2020
I Have a series of equations that need a range of input values, currently I am using a for loop like so.
Is there a more efficient way than having to write a for loop for each equaiton, but use the values from the array?
In the example cos_theta might be needed in mutliple equations later on. The full script has 10 or so loops that are just a bit messy
x = [1 2 3 4 5 6]
c = 1
for i = x
cos_theta = [cos_theta, (1-((2*i)/c))];
end
for i = cos_theta
theta = [theta, acos(i)];
end

Antworten (1)

Alex Mcaulley
Alex Mcaulley am 21 Feb. 2020
Using your equations directly:
x = [1 2 3 4 5 6];
c = 1;
cos_theta = (1-((2*x)/c));
theta = acos(cos_theta);

Kategorien

Mehr zu Particle & Nuclear Physics finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by