MATLAB 一元分段函数求解
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/18 10:02:02
MATLAB 一元分段函数求解
程序如下:
function F=Piecewise_x(x)
F=(2/3-4*x^2+4*x^3).*(x<=0.5)+(4/3-4*x+4*x.^2-4/3*x^3).*(x>0.5&x<=1)+0.*(x>1);
end
x=linspace(0,1);
F=Piecewise_x(x);
plot(x,F);
hold on;
总是出错,不知道哪里错了.
有几个x的几次方,忘记加点.
修改如下:
function F=Piecewise_x(x)
F=(2/3-4*x.^2+4*x.^3).*(x0.5&x1);
end
再问: 运行之后不对啊 图形有误 在x=1处不为0 啊
再答: 在1处的值为 Piecewise_x(1) ans = -2.2204e-016 非常小了。应该是4/3属于无理数,精度导致的。 可以把等号放在最后,x>=1处 F=(2/3-4*x.^2+4*x.^3).*(x0.5&x=1);
修改如下:
function F=Piecewise_x(x)
F=(2/3-4*x.^2+4*x.^3).*(x0.5&x1);
end
再问: 运行之后不对啊 图形有误 在x=1处不为0 啊
再答: 在1处的值为 Piecewise_x(1) ans = -2.2204e-016 非常小了。应该是4/3属于无理数,精度导致的。 可以把等号放在最后,x>=1处 F=(2/3-4*x.^2+4*x.^3).*(x0.5&x=1);