mapping bode plot for Low Pass Filter

7 Ansichten (letzte 30 Tage)
Grant pixley
Grant pixley am 12 Jan. 2024
Beantwortet: AMIT SURYAVANSHI am 13 Jan. 2024
Can someine please tell me what I am doing wrong with my code here
R = 1000;
C = 100*10^(-9);
tau = R*C;
w = 0:100:100000;
x = ((1-((w)*tau)^2)/((w)*tau)^2)+9;
Error using ^
Incorrect dimensions for raising a matrix to a power. Check that the matrix is square and the power is a scalar. To operate on each element of the matrix individually, use POWER (.^) for elementwise power.
G = 1/(sqrt(x));
plot(w,G);

Antworten (2)

Star Strider
Star Strider am 12 Jan. 2024
Bearbeitet: Star Strider am 12 Jan. 2024
You need to do element-wise exponentiation (.^) and division (./) —
R = 1000;
C = 100*10^(-9);
tau = R*C;
w = 0:100:100000;
x = ((1-((w)*tau).^2)./((w)*tau).^2)+9;
G = 1./(sqrt(x));
plot(w,G);
See the documentation section on Array vs. Matrix Operations for details.
figure
semilogx(w,mag2db(G/max(G)))
axis('padded')
EDIT — Added second plot.
.

AMIT SURYAVANSHI
AMIT SURYAVANSHI am 13 Jan. 2024
%so u r dealing with vectors their is a mistake with the x variable and this line
&x = ((1-((w)*tau)^2)/((w)*tau)^2)+9;
%the correc ted code is
R = 1000;
C = 100 * 10^(-9);
tau = R * C;
w = 0:100:100000;
x = ((1 - ((w) * tau).^2) / ((w) * tau).^2) + 9;
G = 1 ./ sqrt(x);
plot(w, G);
%the last third line is corrrected with . operator which is used in the vector element by element %multiplication just be careful while using the vector decide wheather u want to use the normal vector %multiplication or elementwise multiplication

Kategorien

Mehr zu Plot Customization 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