声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2210|回复: 7

[编程技巧] 编写一个matlab函数,如何让自变量里含有一个函数?

[复制链接]
发表于 2008-11-10 21:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
问题很简单,就是编写了一个函数,
functin f= fun(x)
f=quad(inline('cos(x)','x'),0,x.^2)

是这样的,这里是对cos积分,那如果我想对别的函数积分,就要在源程序里修改。
如果我想在fun函数的自变量里,就可以输入这个被积函数的话,就不用改了。就好像diff函数一样
diff(cos(x),x,1);
ans =
     -sin(x)
大侠帮帮忙!

[ 本帖最后由 ChaChing 于 2010-3-21 11:00 编辑 ]
回复
分享到:

使用道具 举报

发表于 2008-11-10 21:45 | 显示全部楼层

回复 楼主 beyondhxf 的帖子

将被积函数设为字符串可否?

评分

1

查看全部评分

发表于 2008-11-10 23:16 | 显示全部楼层

回复 楼主 beyondhxf 的帖子

没时间给例子了,提示一下吧,用函数句柄,或者用字符串也可以。
 楼主| 发表于 2008-11-13 21:05 | 显示全部楼层

回复 板凳 sogooda 的帖子

在你有空时候,给个简单的例子,谢谢。再拜!
 楼主| 发表于 2008-11-17 10:03 | 显示全部楼层

回复 楼主 beyondhxf 的帖子

问题已经解决,使用函数句柄,匿名函数(anonymous function)均可解决。

评分

1

查看全部评分

发表于 2010-3-21 09:34 | 显示全部楼层

回复 楼主 beyondhxf 的帖子

您是怎么做的?我也遇到了相同的问题!麻烦您给讲讲!谢谢!
发表于 2010-3-21 11:04 | 显示全部楼层

回复 6楼 flg618730 的帖子

2/3/5F不是有说明?
 楼主| 发表于 2010-3-24 17:39 | 显示全部楼层

回复 6楼 flg618730 的帖子

今天有空,给你一个具体例子吧:
就给一个句柄函数的调用例子:
函数部分(一个极为简单的函数):

  1. function a=test(f)
  2. a=f(1)
复制代码
调用部分:

  1. test(@(x) x^2+x)

  2. ans =

  3. 2
复制代码
如果你的函数是有两个自变量的,那么稍作变动如下:
函数部分

  1. function a=test(f)
  2. a=f(1,2)
复制代码
调用部分:

  1. test(@(x,y) x^2+y)

  2. ans =

  3. 3
复制代码

[ 本帖最后由 beyondhxf 于 2010-3-24 17:43 编辑 ]

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 18:12 , Processed in 0.061409 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表