MATLAB中如何在M文件中mysql 调用自定义函数数

下次自动登录
现在的位置:
& 综合 & 正文
MATLAB的M文件调用另一个M文件的函数
原以为是多复杂的事情,原来只要把两个文件放在同一目录下,在一个M文件中直接使用另一个文件的函数就行了。
&&&&推荐文章:
【上篇】【下篇】Matlab自定义函数;1、函数文件+调用命令文件:需单独定义一个自定义;2、函数文件+子函数:定义一个具有多个自定义函数;3、Inline:无需M文件,直接定义;;4、Syms+subs:无需M文件,直接定义;;5、字符串+subs:无需M文件,直接定义.;6、匿名函数7、直接通过@符号定义.;1、函数文件+调用函数文件:定义多个M文件:;%调用函数文件:
Matlab 自定义函数
1、函数文件+调用命令文件:需单独定义一个自定义函数的M文件;
2、函数文件+子函数:定义一个具有多个自定义函数的M文件;
3、Inline:无需M文件,直接定义;
4、Syms+subs: 无需M文件,直接定义;
5、字符串+subs:无需M文件,直接定义.
6、匿名函数
7、直接通过@符号定义.
1、函数文件+调用函数文件:定义多个M文件:
% 调用函数文件:myfile.m
for t=1:10
y=mylfg(t);% 调用函数时要注意实参与形参的匹配!
fprintf(‘%4d^(1/3)=%6.4f\n’,t,y);
%自定义函数文件: mylfg.m
function y=mylfg(x) %注意:函数名(mylfg)必须与文件名(mylfg.m)一致
Y=x^(1/3);
注:这种方法要求自定义函数必须单独写一个M文件,不能与调用的命令文件写在同一个M文件中。
2、函数文件+子函数:定义一个具有多个子函数的M文件
%函数文件:funtry2.m
function []=funtry2()%可以无自变量()或无因变量[]
for t=1:10
y=lfg2(t);
fprintf('%4d^(1/3) = %6.4f\n',t,y);
function y=lfg2(x)
y=x^(1/3);
%注:自定义函数文件funtry2.m中可以定义多个子函数function。子函数lfg2只能被主函数和主函数中的其他子函数调用。
3、Inline:无需M文件,直接定义;
%inline命令用来定义一个内联函数:f=inline(‘函数表达式’, ‘变量1’,’变量2’,……)。 调用方式:y=f(数值列表) %注意:代入的数值列表顺序应与inline()定义的变量名顺序一致。 例如:
f=inline(‘x^2+y’,’x’,’y’);
注:这种函数定义方式是将它作为一个内部函数调用。特点是,它是基于Matlab的数值运算内核的,所以它的运算速度较快,程序效率更高。缺点是,该方法只能对数值进行代入,不支持符号代入,且对定义后的函数不能进行求导等符号运算。
内联函数定义方式是将 f 作为一个内部函数调用。其特点是:调用方式最接近于我们平时对函数的定义,使程序更具可读性。同时由于它是基于 Matlab 的数值计算内核的,所以它的运算速度较快,程序更有效率。
这种定义方式的缺点:
定义一个内联函数用去的内存空间比相同条件下其他的方法要大得多。
该方法只能对数值进行代入,不支持符号代入,并且对于定义后的函数不能进行求导等符号运算。 例:通过命令clear 清除工作空间的所有变量后,执行如下指令
f=’x^2’;
h=inline(‘x^2’,’x’);
4、Syms+subs: 无需M文件,直接定义;
用syms定义一个符号表达式,用subs调用:
Syms f x %定义符号
f=1/(1+x^2); %定义符号表达式也是符号
subs(f, ‘x’, 代替x的数值或符号)
注:对于在syms中已经定义过的符号变量,在subs中进行替代时,单引号可以省略。但是,如果在syms后又被重新定义为其他类型,则必须加单引号,否则不可替换。
这种函数定义方法的特点是,可以用符号进行替换
f=1/(1+x^2);
subs(f, ‘x’,’y^2’)
1/(1+(y^2)^2)
注:该方法的缺点是,由于使用符号运算内核,运算速度会大大降低。
5、字符串+subs:无需M文件,直接定义.
直接定义一个字符串,用subs命令调用。
f=’1/(1+x^2)’ %定义字符串
z=subs(f,’x’,2)
g=subs(f,’x’,’y^2’)
注:此处 x 的单引号不可省略。本函数方式可以代入字符,但字符不能参与运算,否则将自行转化成该字符的 ASCII 码运算,这与我们想要的结果可能会大相径庭。
优点是,占用内存最少,定义格式方面自由。
缺点是,无法对字符进行符号转化。
subs 命令的一种比较方便的调用方法当所要替代的符号在调用前都已经有了数值定义,则可以直接调用:subs(f).例如:
f=’x^2*y’;
6. 匿名函数
使用matlab函数句柄操作符@,可以定义指向matlab内置函数和用户自定义函数的函数句柄,函数句柄也可以像函数一样的使用。例如:
&&x=-pi:0.1:
&& fh={@cos,@sin};
&&plot(fh{2}(x))
7、直接通过@符号定义.
示例如下:
&& f=@(x,y)(x.^2-sin(y))
@(x,y)(x.^2-sin(y))
函数计算的几种方式
? 函数名(自变量值表)
? eval(‘字符串‘);%字符串可以是命令,表达式,语句,M文件名
? feval(‘@函数名‘,自变量值表); %这种形式比用:函数名(自变量值表)的方式好
? 泛函的调用:泛函名(@函数名,参数列),
泛函是以函数为自变量的函数,如求根函数fsolve,求最小值函数fminunc等都是泛函.
这里@函数名是一种数据类型,称为函数句柄
? N=datenum( []) %北京奥运会开幕日的序号,按公元1年1月1日0时序号为367开始计算,由于没有公元0年,故计算公元前x年,要按1-x年输入
? N=datenum([,20,0,0])%北京奥运会开幕日20 时0分0秒的日序号(有小数) ? N=feval(@datenum,[])
? D3=dec2base(100,3)%100的3进制表示
? [g,x,y]=gcd(3,5)%输出中g是3和5的最大公因子,整数x,y满足方程3x+5y=g
求根函数fzero要求被求根的函数myfun是单变量的,但myfun是带有参数a的,不符合条件,可采用如下函数嵌套的方法来解决:
function y = findzero(a, x0)
options = optimset('Display', 'off');
y = fzero(@myfun, x0, options);
function y = myfun(x)
y = x^3 + x +
? 在嵌套函数中要用end表示函数定义的结束
? 不用嵌套函数的另一种解决的方法是用匿名函数
? 设有一个M函数文件
function y = humps(x)
y = 1./((x - 0.3).^2 + 0.01) + 1./((x - 0.9).^2 + 0.04) - 6;
要计算这函数在x=2的值,可执行命令:
(也可写在脚本文件中)
单变量求根函数fzero要求函数是单变量的,如一个函数myfun的输入变量为(x,a), a是参数,为了能对myfun求根,方法如下
a = 2; % 先给定参数值
Fh= @(x) myfun(x,a); %创建单变量的匿名函数的函数句柄Fh
x = fzero(Fh,0.1),%求根
三亿文库包含各类专业文献、文学作品欣赏、高等教育、应用写作文书、行业资料、外语学习资料、幼儿教育、小学教育、matlab中的自定义函数与调用30等内容。 
 matlab函数定义和调用问题_数学_自然科学_专业资料。matlab函数定义和调用问题 ...x^(1/3); %注:自定义函数文件 funtry2.m 中可以定义多个子函数 function...  函数名(mylfg)必须与文件名(mylfg.m)一致 Y=x^(1/3); 注:这种方法要求自定义函数必须单独写一个 M 文件,不能与调用的命令文件 写在同一个 M 文件中。...  Matlab自定义函数的五种方法_电脑基础知识_IT/计算机_专业资料。n 1、函数文件...定义函数必须单独写一个 M 文件,不能与调用的命令文件写在同一个 M 文件中...  simulink调用自定义函数_IT/计算机_专业资料。1,在 simulink 中使用 s-function 模块,打开模块后进行编辑,s-function 是一个在 matlab 中 有模版的 m 文件,需要...  也在逼迫着自己不断的去应用新的公式并开发新的算法,这就牵涉 到了如何在 MATLAB 中自定义函数的问题,随之而来自然就是所有编程语言所面 临的问题, 函数调用、...  许多时候希望将特定的代码(算法)书写成函数的形式,提高代码的可封装性与重复性,简化代码设计, 提高执行效率!下面简单介绍一下 matlab 中的函数定义与使用。 方法/...  %子函数 1 x1=sort(x); r=x1(n); function r=mysubfun2(x) %子函数 2 x1=sort(x); r=x1(1); Matlab 自定义函数的五种方法 1、函数文件+调用...  C#调用matlab自定义函数_计算机软件及应用_IT/计算机_专业资料。利用C#调用matlab里自定义函数,实现矩阵的计算 如何使用 C#调用 matlab 里的函数??? 我用的是 VS...  允许用户自定义函数,即允许用户将自己的新函数加到已存在的 matlab 函数库中,...5.函数的最值 调用求函数最小值命令 fmin 时,可得出函数的最小值点,为求最...Matlab如何调用其他m文件中的函数_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Matlab如何调用其他m文件中的函数
上传于|0|0|暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢matlab中函数定义(m文件的生成)及调用实用教程
时间:日来源:百度
1、打开matlab2012b,点击【new script】,进入m文件编辑区。
2、也可以先点击【New】,再在下拉选项中选择【script】。
3、进入m文件编辑区,文件默认名为:Untitled,即:未命名的。
4、在编辑区窗口定义要创建的函数。在这里我们定义一个生余弦函数:
function y=raicos(t)
y=1/2*(1+cos(pi*t)).*(t&-1&t&1);
5、保存创建的函数。按照下图所标的顺序,依次选择【save】、保存位置、保存的名称、保存确认键。下次就可以直接调用函数了。
6、在编制程序的过程中,若需用到y=raicos(t)函数,可直接调用。调用实例如下:
t=-2:0.01:2;
x=raicos(t);
7、保存m文件。方法步骤如上。也可以依次选择【save as】、保存位置、保存的名称、保存确认键。
8、点击【run】。即&运行&。
9、运行结果如下,在图形窗口中绘出了函数图形,即为所要的输出结果。
Matlab是一款最专业最活跃的科学仿真计算软件,其最大的强项就是拥有强大的矩阵计算以及仿真能力,可用于概念设计,算法开发,建…
页面地址:/xiazai/Matlab.html
看过这篇文章的人还看过君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
matlab 如何建立、调用自定义函数?
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口

我要回帖

更多关于 matlab调用自定义函数 的文章

 

随机推荐