- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab匿名函数函数句柄
matlab?匿名函数??函数句柄?(2012-05-11 11:35:05)转载▼标签:?教育分类:?study与matlab一、函数句柄所谓函数句柄,个人认为可以将其理解成一个函数的代号,就像一个人的名字。这样在调用时可以调用函数句柄而不用调用该函数。语法如下:变量名= @ 函数名;@的作用就是将一个函数的函数句柄赋值给等号左边的变量。在调用函数时就可以调用该句柄,可以实现同样的功能。例:首先我们写一个求均值的函数:function y=average(x)y=mymean(x);function a=mymean(v)a=sum(v)/length(v);定义一个数组z:z=[1,2,3,4,5,6,7]; average(z)ans =?????4?handle=@averagehandle =????@average?ave=@averageave =????@average ave(z)ans =?????4?二、匿名函数?????相当于C语言中的函数指针(入口地址),只不过句柄就用一个唯一的常整数来指出匿名函数是函数句柄的一种特殊用法,这里所得到的函数句柄变量不指向特定的函数(即不指向函数M文件中的函数名),而是指向一个函数表达式(具体表达式)。语法如下:变量名=@(输入参数列表)运算表达式;例子:为了说明问题,我们用简单的两个数相加,?sum=@(x,y)x+ysum =????@(x,y)x+y sum(2,3)ans =?????5%%%%%%%%%%%%%%%%%%%比如定义f(x)=x^2,可以写为f=@(x)(x.^2)其中@(x)(x.^2)就是匿名函数,第一个括号里面是自变量,第二个括号里面是表达式,@是函数指针f=@(x)(x.^2)表示将匿名函数@(x)(x.^2)赋值给f,于是f就表示该函数。于是f(2)=2.^2=4;f(1:3)=[1:3].^2=[1 4 9]等等定义匿名函数时也可以调用别的匿名函数,比如f1=@(x,y)(x.^2+y.^2)定义了函数x^2+y^2f2=@(t)(f1(t,2))定义了函数t^2+4f3=@(x)(f1(x(1),x(2)))定义了函数x(1)^2+x(2)^2使用匿名函数时一定要注意函数本身的参数形式,如f1(2,3)表示2^2+3^2f2(3)=3表示3^2+4f3([1,2])表示1^2+2^2?%%%%%%%%%%%%%%%%%%%%%%%%%%%%%?三、内联函数内联函数和普通的函数句柄,准确说跟匿名函数比较类似,可以通过一个函数表达式近而得到该函数。语法格式如下:1 变量名=inline(表达式);2?变量名=inline(函数表达式, 变量名1,变量名2, ... ,变量名n);(推荐)例如:1 a=x+ya =x+y f=inline(a)f =?????Inline function:?????f(x,y) = x+y f(2,3)ans =?????52 f=inline(x+y,x,y)f =?????Inline function:?????f(x,y) = x+y f(2,3)ans =?????5??%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%创建句柄函数?str2func函数才支持生成匿名函数句柄 syms xf = diff(sin(x)*exp(sqrt(x)),2)g =?str2func([@(x) vectorize(char(f))])f1 = quad(g,1,2)/thread-93472-1-1.html?%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%sqr=@(x)x.^2;可以将它传递到其他函数的参数列表中。下面的代码将sqr匿名函数传递给matlab函数quad来计算它从0到1的积分:?[c-sharp]?view plaincopyprint??quad(sqr,0,1)??ans?=??????0.3333??/dfd1r/article/details/6279125?%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%匿名函数在定义过程中可以调用任何Matlab函数(包括用户自定义的函数),也可以使用当时Matlab工作区中存在的任何变量。例如,下例中的匿名函数b_humpsab在定义时就是用了Matlab工作区中的变量a和b:?a?=?-.3;b=-.9;?b_humpsab?=?@?(x)?1./((x+a).^2+0
您可能关注的文档
- 公共卫生知识试题.docx
- 河北狮州中学2017届高三语文下学期周练试题1高补班.doc
- 河南河北山西2015届三高考考前质量监测2文科综合地理.doc
- 海淀二模及答案.doc
- 高中物理新课标版人教版选修3-1教案电阻定律.doc
- 哈尔滨市道里区2014—2015年度理化综合模拟调研试题(二)物理.doc
- 核辐射探测复习知识点.doc
- 黑川雅之专题文案.docx
- 黑龙江省齐齐哈尔市2016年中考化学试卷(带答案).doc
- 湖北省黄冈市区学校2015-2016学年七年级上学期期末检测语文试题带答案.doc
- 沧州泊头市泊控产业发展集团有限公司招聘笔试真题含答案详解(夺分金卷).docx
- 新华保险总部人力资源部(党委组织部)招聘笔试题库带答案详解(完整版).docx
- 陕西延长石油矿业有限公司资料含答案详解(a卷).docx
- 贵州旅游集团招聘面试真题附答案详解(突破训练).docx
- 陕西延长石油炼化公司招聘笔试题库含答案详解(b卷).docx
- 陕西延长石油气田公司招聘笔试题库及答案详解(考点梳理).docx
- 贵州贵州省公路建设养护集团有限公司招聘真题含答案详解(名师推荐).docx
- 湾沚区社区工作者考试题型附答案详解(实用).docx
- 山东济南市章丘区殡仪馆工作人员招考聘用10人上岸笔试历年难、易错点考题附答案详解(黄金题型).docx
- 湘潭市韶山旅游发展集团有限公司招聘笔试真题附答案详解(完整版).docx
最近下载
- 小学信息技术:第一单元 走进信息时代.pdf VIP
- 麻醉科诊疗常规与技术操作规范.pdf VIP
- 小学一年级体育工作计划.docx VIP
- 人美版五年级上册美术教案.pdf VIP
- 重症哮喘诊断与处理中国专家共识中华医学会呼吸病学分会哮喘学组、中国哮喘联盟(发布时间:2017-11).pdf VIP
- 武汉出版社五年级生命安全教育全册教案及计划.docx VIP
- 2025年教科版(2024)小学科学三年级上册(全册)教学设计(附目录P171).docx
- CBZ816-2019 螺旋桨模型敞水试验方法.pdf VIP
- 2025年人口抽样调查培训测试题及答案.doc VIP
- 《矿山隐蔽致灾因素普查规范》(KAT22.3-2024)解读-尾矿库隐蔽致灾因素普查.pdf VIP
文档评论(0)