Why trapz is giving me negative area?
14 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Azarang
am 31 Jan. 2025
Kommentiert: Azarang
am 31 Jan. 2025
Hey all,
I have two vectors, frequency and power. I'm trying to get the area under the curve of the power plot but it ends up giving me a negative value. When I do trapz(power) alone, it's a positive value. diff(freq) is also positive. I'm attaching the data for your reference. Thanks!
1 Kommentar
Matt J
am 31 Jan. 2025
Bearbeitet: Matt J
am 31 Jan. 2025
You should get into the habit of demonstrating the issue you are posting about with code, as I have done below. As you can see, if I just guess the code you used, I don't reproduce what you say you are seeing.
P=load('power').power;
F=load('frequency').freq;
plot(F,P)
trapz(F,P)
Akzeptierte Antwort
Walter Roberson
am 31 Jan. 2025
The syntax of trapz() is trapz(X, Y) -- so independent variable followed by dependent variable.
If you trapz(freq, power) then you get a positive value.
Weitere Antworten (1)
Les Beckham
am 31 Jan. 2025
Bearbeitet: Les Beckham
am 31 Jan. 2025
I get a positive value for the area.
load power.mat
load frequency.mat
plot(freq, power)
grid on
area = trapz(freq, power)
Maybe you switched the X and Y arguments to trapz. See the doc for trapz. When there are two arguments X comes first.
trapz(power, freq)
0 Kommentare
Siehe auch
Kategorien
Mehr zu Numerical Integration and Differentiation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

