How do I output the values of a function in a vector string to plot a graph?

1 Ansicht (letzte 30 Tage)
A = 1;
df = 100000;
F = df/4;
n = 2^3;
t = [0:n-1]/df;
s = A*sin(2*pi*F*t);
S = reshape(s,4,[]);
Y1 = sum(S(1,:)-S(3,:));
Y2 = sum(S(2,:)-S(4,:));
Y = sqrt(Y1^2+Y2^2);
TT = max(t)/4*df;
Porog = 2*TT*2*A;
As a result, Y will be equal to 4 in this case. I want to plot Y versus n. And in principle any other. Just assigning for n = 2 ^ 3: 2 ^ 4: 2 ^ 5 doesn't work. How to get, depending on n, a set of all variables, including Y in the form of a row vector. And build a graph. Did not understand. Help me please. That is, (Y = 500, n = 5), (Y = 800, n = 10).

Antworten (1)

Mathieu NOE
Mathieu NOE am 13 Okt. 2021
hello
maybe this ? (tested OK on my side)
clc
clearvars
A = 1;
df = 100000;
F = df/4;
% n = 2^3;
n = 2 ^ 3: 2^ 4 : 2 ^ 5;
for ci = 1:numel(n)
t = [0:n(ci)-1]/df;
s = A*sin(2*pi*F*t);
S = reshape(s,4,[]);
Y1 = sum(S(1,:)-S(3,:));
Y2 = sum(S(2,:)-S(4,:));
Y(ci) = sqrt(Y1^2+Y2^2);
TT(ci) = max(t)/4*df;
Porog(ci) = 2*TT(ci)*2*A;
end
plot(n,Y);

Kategorien

Mehr zu Convert Image Type finden Sie in Help Center und File Exchange

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by