作业帮 > 综合 > 作业

matlab求函数f=(1+x^2)/(1+x^4)在区间0

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/10/04 01:30:28
matlab求函数f=(1+x^2)/(1+x^4)在区间0
首先,通过解析的办法可以求到精确解.
求f对x的导数,令其等于0,求得x=√(√2-1)或者-1.所以,最大值为(1+√2)/2.
matlab中输入(1+sqrt(2))/2,得到1.2071.
如果非要求解,我的思路是:
a.首先绘图观察函数曲线,如执行如下命令即可画出f在(0,2)区间的图形.
x=0:0.0001:2; plot(x,(1+x.^2)./(1+x.^4));
通过观察可以看出,最大值在0.6到0.8之间,并且在极值两侧都是单调的.
b.通过如下程序计算出极值,请保存成qiujjizhi.m,执行即可.
function [x y]=qiujizhi()
h=0.00001; %%解的精度
x=0.6;
y=(1+x^2)/(1+x^4);
while (1+(x+h)^2)/(1+(x+h)^4) > y
x=x+h;
y=(1+x^2)/(1+x^4);
end
fprintf('极大值时x取值%5.20d,极大值时y=,%5.20d',x,y);