How do you calculate the average value of a line?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Colin Lynch
am 22 Dez. 2017
Kommentiert: Colin Lynch
am 23 Dez. 2017
I am attempting to calculate the average value of a line using the equation from this website: http://tutorial.math.lamar.edu/Classes/CalcI/AvgFcnValue.aspx
Part of this equation requires getting a definite integral from x0 to x1. I only want the positive values of these lines, and the maximum value of the y coordinate is 1. To accomplish this, I want the lower of limit of x to be where this line crosses the x-axis (x0), and I want the upper limit of x to be where y = 1 (x1). I tried to do this with the following code:
fun = @(x,c) sqrt((-.25 .*(n-(c.*n))./(100-n))./(((n-(c.*n))./(100-n))-1));
x0 = fzero(@(x)fun(x,.5), 1);
x1 = fzero(@(x)fun(x,.5)-1, 1);
q = (1/(x1-x0))*integral(@(x)fun(x,.5),x0, x1)
This code, however, spits out some strange errors that I do not know how to resolve. How can I fix this so that I can find the average value of this line?
2 Kommentare
Ahmed raafat
am 23 Dez. 2017
fun = @(x,c) sqrt((-.25 .*(n-(c.*n))./(100-n))./(((n-(c.*n))./(100-n))-1));
it is fun of n & c not x & c
Akzeptierte Antwort
Walter Roberson
am 23 Dez. 2017
x0 = fzero(@(x)fun(x,.5), [0 66.66666666]);
x1 = fzero(@(x)fun(x,.5)-1, [0 66.66666666]);
fun(x,1/2) has a discontinuity at 200/3 but grows fairly slowly, so it is necessary to get fairly close to 200/3 to satisfy x1
4 Kommentare
Walter Roberson
am 23 Dez. 2017
The discontinuity is at 100/(2 - c) . But you have to make sure you do not use exactly that number or else you will get inf there. So like 100/(2-c) * (1-10*eps)
Weitere Antworten (1)
Ahmed raafat
am 23 Dez. 2017
where is x????
fun = @(x,c) sqrt((-.25 .*(n-(c.*n))./(100-n))./(((n-(c.*n))./(100-n))-1));
1 Kommentar
Siehe auch
Kategorien
Mehr zu Function Handles 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!