本站分享:AI、大数据、数据分析师培训认证考试,包括:Python培训Excel培训Matlab培训SPSS培训SAS培训R语言培训Hadoop培训Amos培训Stata培训Eviews培训

Matlab中的inline函数_matlab中inline函数

matlab培训 cdadata 6048℃

Matlab中的inline函数

关键词:matlab中inline函数matlab的inline函数matlab inline函数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);

转载请注明:数据分析 » Matlab中的inline函数_matlab中inline函数

喜欢 (2)or分享 (0)