函数在区间上的平均值(举例说明)
发布网友
发布时间:2022-05-01 14:26
我来回答
共1个回答
热心网友
时间:2023-10-18 11:52
如果你用离散方法计算,例如
y=f(x),
区间: x = a 到 b
离散点间隔: dx = (b-a) / n
离散点 x=x0,x1,x2,.,xi,..xn i=0...n
离散点函数值= f(x0), f(x1) ...,f(i),..f(n)
平均值:
[0.5 * f(x0) + f(x1) + f(x2) + ..+ f(i) + f(n-1) + 0.5 * f(xn)} / n
编程很简单:
(1)写一个y=f(x)的函数
double f(x){
double y;
y = ....;
return y;
}
(2)写一个循环语句:
double sum;
double a,b,dx,xi;
int i,n;
给a,b,n初值
dx = (b-a) / n;
sum = 0.5 * (f(a) + f(b));
for (i=1;i<= n-1;i++){
sum = sum + f(dx * i);
}
sum = sum / n
结果在sum里.
==========================
如果你用积分方法求y=f(x)曲线下的面积再除以区间长度b-a,得平均值.可在上面方法基础上,采用加密点数的方法,用迭代法计算,直到加密前后计算结果误差小于允许误差时迭代终止.
热心网友
时间:2023-10-18 11:52
如果你用离散方法计算,例如
y=f(x),
区间: x = a 到 b
离散点间隔: dx = (b-a) / n
离散点 x=x0,x1,x2,.,xi,..xn i=0...n
离散点函数值= f(x0), f(x1) ...,f(i),..f(n)
平均值:
[0.5 * f(x0) + f(x1) + f(x2) + ..+ f(i) + f(n-1) + 0.5 * f(xn)} / n
编程很简单:
(1)写一个y=f(x)的函数
double f(x){
double y;
y = ....;
return y;
}
(2)写一个循环语句:
double sum;
double a,b,dx,xi;
int i,n;
给a,b,n初值
dx = (b-a) / n;
sum = 0.5 * (f(a) + f(b));
for (i=1;i<= n-1;i++){
sum = sum + f(dx * i);
}
sum = sum / n
结果在sum里.
==========================
如果你用积分方法求y=f(x)曲线下的面积再除以区间长度b-a,得平均值.可在上面方法基础上,采用加密点数的方法,用迭代法计算,直到加密前后计算结果误差小于允许误差时迭代终止.
热心网友
时间:2023-10-18 11:52
如果你用离散方法计算,例如
y=f(x),
区间: x = a 到 b
离散点间隔: dx = (b-a) / n
离散点 x=x0,x1,x2,.,xi,..xn i=0...n
离散点函数值= f(x0), f(x1) ...,f(i),..f(n)
平均值:
[0.5 * f(x0) + f(x1) + f(x2) + ..+ f(i) + f(n-1) + 0.5 * f(xn)} / n
编程很简单:
(1)写一个y=f(x)的函数
double f(x){
double y;
y = ....;
return y;
}
(2)写一个循环语句:
double sum;
double a,b,dx,xi;
int i,n;
给a,b,n初值
dx = (b-a) / n;
sum = 0.5 * (f(a) + f(b));
for (i=1;i<= n-1;i++){
sum = sum + f(dx * i);
}
sum = sum / n
结果在sum里.
==========================
如果你用积分方法求y=f(x)曲线下的面积再除以区间长度b-a,得平均值.可在上面方法基础上,采用加密点数的方法,用迭代法计算,直到加密前后计算结果误差小于允许误差时迭代终止.