how to I fill a vector with the results from my loop?

I am very rusty with matlab,
I have written my code and I want to keep all my variables constant except for my xa value and run it from 0 to 20 in steps of 0.1.
I made a loop and I can run it, but I can't remember how to store the values of the output "delta_z" so I can graph them.
Any help would be appreciated.
jamie
%inital set up
%forces
for xa=0:0.1:20
p=12
ql=2
qw=3
b=3
%locations
za=6
xp= 5
xql=7
xqw=10
if xa<xqw
xw = abs(xa-xqw)+b/2;
else
xw = abs(xa-xqw-b/2);
end
if xw > b/2
dist_load = (qw/pi)*(atan(za/((xw-(b/2))))-atan(za/(xw+(b/2)))...
-(b*za*(((xw)^2)-za^2-(b^2/4)))/(((xw)^2+za^2-(b^2/4))^2+b^2*za^2));
else
dist_load = (qw/pi)*(pi+atan(za/((xw-(b/2))))-atan(za/(xw+(b/2)))...
-(b*za*(((xw)^2)-za^2-(b^2/4)))/(((xw)^2+za^2-(b^2/4))^2+b^2*za^2));
end
%Individual Stress Equations
L = sqrt(abs(xa-xp)^2+(za^2));
line_load = (2*ql*za^3)/(pi*((abs(xa-xql)^2)+za^2)^2);
point_load = (3*p*za^3)/(2*pi*(L)^5);
dist_load;
delta_z = line_load + point_load + dist_load;
end

 Respuesta aceptada

%inital set up
%forces
p=12;
ql=2;
qw=3;
b=3;
%locations
za=6;
xp= 5;
xql=7;
xqw=10;
xa_all = 0:0.1:20;
for ii = 1:numel(xa_all)
xa = xa_all(ii);
if xa<xqw
xw = abs(xa-xqw)+b/2;
else
xw = abs(xa-xqw-b/2);
end
if xw > b/2
dist_load = (qw/pi)*(atan(za/((xw-(b/2))))-atan(za/(xw+(b/2)))...
-(b*za*(((xw)^2)-za^2-(b^2/4)))/(((xw)^2+za^2-(b^2/4))^2+b^2*za^2));
else
dist_load = (qw/pi)*(pi+atan(za/((xw-(b/2))))-atan(za/(xw+(b/2)))...
-(b*za*(((xw)^2)-za^2-(b^2/4)))/(((xw)^2+za^2-(b^2/4))^2+b^2*za^2));
end
%Individual Stress Equations
L = sqrt(abs(xa-xp)^2+(za^2));
line_load = (2*ql*za^3)/(pi*((abs(xa-xql)^2)+za^2)^2);
point_load = (3*p*za^3)/(2*pi*(L)^5);
delta_z(ii) = line_load + point_load + dist_load;
end
plot(xa_all,delta_z)
xlabel('xa')
ylabel('\Deltaz')

2 comentarios

thanks!
Voss
Voss el 4 de Nov. de 2022
You're welcome! Any questions, let me know. Otherwise, please "Accept This Answer". Thanks!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 4 de Nov. de 2022

Comentada:

el 4 de Nov. de 2022

Community Treasure Hunt

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

Start Hunting!

Translated by