Firstly, I am quite inexperienced with matlab. This is the code:
for w = 1:1:7
for t = 0:0.1:2
WN = (diagonalk(w,w)/diagonalm(w,w))^0.5;
ZETA = (0.6/(2*WN))+((0.002*WN)/2);
Yuafd = uadecay(t, WN, ZETA);
Impulse_response = unitstep(t, WN, ZETA);
q = (Yuafd.*F)+Impulse_response;
disp(q)
end
end
z=U*q
j1=1;
figure
for i1=[4 7]
subplot(1,2,j1);
plot(t,z(i1,:)*1000, '*');
xlabel('Time secs');ylabel('Displacement')
j1=j1+1;
end
subplot(1,2,1);title('Displacement at wing centre (mm)')
subplot(1,2,2);title('Displacement at wing tip (mm)')
It won;t let me multiply Yuafd by F. F = [0 0 0 0 0 0 -10000]
Also, i changed F to a single number just to plot it, and it plots all the points vertically at t = 2.
How do I correct these points?

1 Kommentar

Unrecognized function or variable 'diagonalk'.
>>
Can't try to simulate the problem; we don't know what things are...

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Cris LaPierre
Cris LaPierre am 2 Nov. 2020

0 Stimmen

Usually spreading points out means reducing the range of values on the X-Axis. Look into the xlim function.

Kategorien

Mehr zu 2-D and 3-D Plots finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 1 Nov. 2020

Beantwortet:

am 2 Nov. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by