matlab函数编写?matlab怎么编写函数
大家好,今天来为大家分享matlab函数编写的一些知识点,和matlab怎么编写函数的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
matlab函数编写的问题
参考代码:
N=100;K=N;
Ts=10;Tp=10;
E1=@(p)sum(arrayfun(@(i)nchoosek(K-2+i,i)*p^i*(1-p)^(K-1)*(Ts+i*Tp),0:N));
p=0:0.02:1;
plot(p,arrayfun(E1,p))
xlabelp_1;ylabelE_1(t_{su})
说明两点:
1、从感觉上,这种二项形式的公式,p1的指数是i,(1-p1)的指数应该是K-i才比较符合常理。另,既然Tp=Ts,最后一项完全可以写成(1+i)*Ts。当然,这些只是猜测,公式的正确性应该由题主自行保证,我这里只是提醒一下而已。
2、使用nchoosek函数,当结果比较大时会有如下精度警告:
Warning:Resultmaynotbeexact.Coefficientisgreaterthan1.000000e+015andisonlyaccurateto15digits.可以忽略这个警告,一般来说它对结果的影响并不大。也可以使用符号运算来避免这样的警告:
N=100;K=N;
Ts=10;Tp=10;
Cnk=@(n,k)double(sym(sprintf('%i!/%i!/%i!',n,k,n-k)));
E1=@(p)sum(arrayfun(@(i)Cnk(K-2+i,i)*p^i*(1-p)^(K-1)*(Ts+i*Tp),0:N));
plot(p,arrayfun(E1,p))
xlabelp_1;ylabelE_1(t_{su})
matlab中怎样编写矩形函数
可以参考下面的代码:
function SRECT= SRECT(a,b)
switch(nargin)
case 1
SRECT= a*a;
case 2
SRECT= a*b;
otherwise
disp('请输入矩形的长和宽数据!');
end
扩展资料:
Matlab常用函数和命令
plot绘制二维线性图形和两个坐标轴
plot3绘制三维线性图形和两个坐标轴
fplot在制定区间绘制某函数的图像,fplot(‘f’,区域,线型,颜色)
loglog绘制对数图形及两个坐标轴(两个坐标都为对数坐标)semilogx绘制半对数坐标图形
cdedit启动用户菜单、控件回调函数设计工具
cdf2rdf复数特征值对角阵转为实数块对角阵
参考资料来源:百度百科-MATLAB
matlab怎么写函数文件~
首先打开电脑上的“matlab”软件,主界面如下图所示,可以看到命令行窗口,点击箭头处的“新建”,创建一个函数文件。
2、接着点击箭头处的“脚本”按钮,新建一个matlab脚本文件,文件的后缀为.m,也就是m文件。
3、下面来看一下自定义函数的格式,output处填写函数的输出值,input为函数的参数,输入值。fun为函数的名称,函数名称可以自定义。末尾要加上end。
4、接下来以一个简单的函数为例,输入两个参数x和y,计算乘积xy,输出结果保存在f中,具体代码如下图所示,点击箭头处的“运行”。
5、m文件的名称默认和函数名称一致,下面点击箭头处“保存”即可保存m文件。
6、在命令行输入命令,调用fun函数,x和y需要输入具体数值。此处以fun(4,7)和fun(4,5)为例,调用函数即可。
OK,本文到此结束,希望对大家有所帮助。