MATLAB求分段函数,怎么写代码呀

如题所述

怎样用matlab来定义分段函数,首先要根据分段函数建立自定义函数,然后在命令窗口调用或其他程序里调用。

现举例说明:

1、建立自定义函数文件,piecewise1.m

function y=piecewise1(t)

%分段函数

n=length(t);  %计算所输入t的个数

for i=1:n

if t(i)>=2   %如果t>=2时,y=1

y(i)=1;

elseif t(i)>=-2 & t(i)<2 %如果t[-2,2)时,y=t²

y(i)=t(i).^2;

else  y(i)=-1;   %如果t<-2时,y=-1

end

end

2、在命令窗口中调用

>>t=0:0.5:10;

>>y=piecewise1(t)

3、运行结果

其他类似的分段函数,可以参考上述来写代码。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-30

function y=myfun1(x)
y=x.*(x>=0 & x<1)+2*x.*(x>=1 & x<=2);
end

>> x=0:0.001:2;
>> y=myfun1(x);
>> plot(x,y)    

MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。

MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。

MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。

本回答被网友采纳
第2个回答  2014-05-06
x=linspace(0,10,100);
if x>0&x<=2;
y=0.5*x;
else if x>2&x<6;
y=1.5-0.25*x;
else
y=0.5;
end本回答被网友采纳
第3个回答  推荐于2018-02-22
x=0:.1:10;
y=[0.5.*[0:.1:2] 1.5-0.25.*[2:.1:6] 0.5.*[6:.1:10]];
plot([0:.1:2 2:.1:6 6:.1:10],y)
以下是函数形式f.m文件:
function y= f(x) %输入0~10之间的数,返回y
if x<=2
y=0.5*x;
elseif x<6
y=1.5-0.25*x;
else
y=0.5*x;
end
调用时在命令窗口输入f(3),返回0.75.本回答被网友采纳
相似回答