Effacer les filtres
Effacer les filtres

Possibilities of using for end loop in code

1 vue (au cours des 30 derniers jours)
Zahra
Zahra le 2 Août 2023
Réponse apportée : Chunru le 2 Août 2023
I want to build an articulated pendulum, let say up to 15 pendulums. Here, I define the first two pendulums as:
x1 = (r1/2)*cos(theta1);
y1 =(r1/2)*sin(theta1);
x2 = (r2/2)*cos(theta2)+ r1*cos(theta1);
y2 = (r2/2)*sin(theta2) + r1*sin(theta1);
y=[x1 0 y1 0 theta1 0 x2 0 y2 0 theta2 0];
but I'm not sure how to write it by using for end loop so that I could build it until 15 pendulums. Also, should there is another way to do it, I would highly appreciated to learn about that. Thanks in advance.
  1 commentaire
Dyuman Joshi
Dyuman Joshi le 2 Août 2023
What are the values of theta1, theta2, .....?
And what is the formula/relation for (xn,yn)?
A better idea will be to put data for each pendulum in a row, so that is easy to access -
out=[x1 0 y1 0 theta1 0;
x2 0 y2 0 theta2 0;
...
xn 0 yn 0 thetan 0];

Connectez-vous pour commenter.

Réponses (1)

Chunru
Chunru le 2 Août 2023
In MATLAB, you can do it without loop (preferred approach):
theta = [0 10 20 30 50]';
r = [9 8 7 6 3]';
y = [(r/2).*cos(theta), (r/2).*sin(theta), zeros(size(theta))]
y = 5×3
4.5000 0 0 -3.3563 -2.1761 0 1.4283 3.1953 0 0.4628 -2.9641 0 1.4474 -0.3936 0

Catégories

En savoir plus sur Programming 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