matlab里inline定义矩阵,Matlab中的inline函数_matlab中inline函数
发布日期:2021-06-24 16:13:48 浏览次数:4 分类:技术文章

本文共 837 字,大约阅读时间需要 2 分钟。

Matlab中的inline函数

1.有时为了描述某个数学函数的方便,可以用inline()函数来直接编写该函数,形式相当于M-函数,但无编写一个真正的MATLAB文件,就可以描述出某种数学关系。其调用格式为fun=inline(‘函数内容’,自变量列表)

2. 匿名函数是MATLAB 7.0版提出的一种全新的函数描述形式,其基本格式为f=@(变量列表)函数内容,例如,f=@(x,y)sin(x.^2+y.^2)。更重要的,该函数允许直接使用MATLAB工作空间中的变量。

许多Matlab函数(特别是数值计算方面的)可以函数句柄(function handle)或内联对象(inline object)作为参数。我们以quad函数为例,这个函数使用Simpson算法求函数的数值积分。它的一种调用形式是:

quad(fun, a, b)

其中,fun可以是指向被积函数的函数句柄,或者含有被积函数的内联对象;a和b分别是被积区间的上、下限。考虑以下积分:

使用函数句柄的方法:

% 将下面到”% EOF”的代码保存为f.m

function y = f(x)

y = sin(x) ./ x;

% EOF

quad(@f, 1, 2)

ans =

0.6593

使用内联对象的方法:

quad( inline(  ‘sin(x)./x’  )), 1, 2  )

ans =

0.6593

由于使用内联对象不需要另外建立m文件,所以比较方便,建议使用这种方法

再例如,在使用ode45函数的时候,定义函数往往需要编辑一个 .m文件来单独定义,这样不便于管理文件,这里可以使用 inline定义函数,例子如下:

ff=inline(‘[y(2);c2*sin(x*pi*3/4)-y(2)/2-sin(y(1))]’,…

‘x’,’y’,’flag’,’c2′);

[T,Y]=ode45(ff,[0,12],[0.1;0],[],c2);

喜欢 (2)or分享 (0)

转载地址:https://blog.csdn.net/weixin_33744799/article/details/115855259 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:php html标签自定义属性,浅谈JS读取DOM对象(标签)的自定义属性
下一篇:php生成链接列表,根据URL链接和抛文本生成链接<a>标签的PHP函数

发表评论

最新留言

不错!
[***.144.177.141]2024年04月01日 18时46分48秒