24小时热门版块排行榜    

查看: 1514  |  回复: 7

苒叶枫

铁杆木虫 (正式写手)

[求助] 求助:关于matlab中sym syms limit问题。

看了一些ppt 发现sym syms都可以定义符号变量。但定义符号函数都是用sym 是不是说syms不能定义符号函数呢。比如:sym('a*x^2+b*x+c')是可以的 而syms a*x^2+b*x+c 这样怎么不行呢。
另外就是用limit求极限的时候不能得到最后结果。例如:
syms x
f=sym('log10(1+2*x)/sin(3*x)')
y=limit(f,0)
得到的结果是: y=limit(log10(1+2*x)/sin(3*x),x=0)而把log10改成ln就可以直接得出结果2/3。为什么呢? 刚刚学习matlab 还望大家指点一二 谢谢了。

[ Last edited by 苒叶枫 on 2013-5-11 at 15:38 ]
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

一生一代一双人。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

苒叶枫

铁杆木虫 (正式写手)

呃 为什么没人呢?
一生一代一双人。
2楼2013-05-12 07:02:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

苒叶枫

铁杆木虫 (正式写手)

来人啊。- -

[ 发自手机版 http://muchong.com/3g ]
一生一代一双人。
3楼2013-05-14 12:01:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kaichang

木虫 (著名写手)

【答案】应助回帖

★ ★
1592203609: 金币+2, 应助指数+1, 谢谢参与交流 2013-05-14 16:33:18
syms可以定义符号变量,但一般是定义多个符号变量的,一个也是可以的。
syms a*x^2+b*x+c 这个变量下面的代码可以。
>> syms a b c x
>> f=a*x^2+b*x+c
下面的limit函数下面可以用
>> syms x
>> limit(log10(1+2*x)/sin(3*x))
我也是刚开始学,请 多指教!
做自己想做的,而且是马上去做
4楼2013-05-14 15:39:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

苒叶枫

铁杆木虫 (正式写手)

引用回帖:
4楼: Originally posted by kaichang at 2013-05-14 15:39:24
syms可以定义符号变量,但一般是定义多个符号变量的,一个也是可以的。
syms a*x^2+b*x+c 这个变量下面的代码可以。
>> syms a b c x
>> f=a*x^2+b*x+c
下面的limit函数下面可以用
>> syms x ...

很感谢友友的指点。
还想问一下:f=a*x^2+b*x+c f='a*x^2+b*x+c' f=sym('a*x^2+b*x+c')这三个有什么区别啊。第一个定义的符号函数吗。还有就是:
syms x
limit(log10(1+2*x)/sin(3*x))
这个和我上面写的那个有什么区别呢。这里默认的是x趋近于0吗?
另外劳烦友友能否帮忙解释一下为什么我上面写的是错误的 问题出在什么地方。既然可以直接定义f=a*x^2+b*x+c为什么看视频的时候老师要多此一举的用sym()来定义呢。这两种方法有本质上的区别吗。
买的书本不在身边 看的是以前下载的视频教程 里面以matlab6为例讲解。
希望友友不吝赐教 再次表示感谢。

[ 发自手机版 http://muchong.com/3g ]
一生一代一双人。
5楼2013-05-15 08:04:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kaichang

木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
[rate]
苒叶枫: 金币+10, ★★★★★最佳答案, 很感谢 还是咱小木虫有爱。 2013-05-15 11:22:57
xiegangmai: 金币+2, 谢谢参与! 2013-05-15 11:52:38
引用回帖:
5楼: Originally posted by 苒叶枫 at 2013-05-15 08:04:38
很感谢友友的指点。
还想问一下:f=a*x^2+b*x+c f='a*x^2+b*x+c' f=sym('a*x^2+b*x+c')这三个有什么区别啊。第一个定义的符号函数吗。还有就是:
syms x
limit(log10(1+2*x)/sin(3*x))
这个和我上面写的那个有 ...

第一个肯定不是符号函数,因为这里面有变量,而定义符号变量是一定需要sym或者syms来定义的。第二个也不是符号变量,而是字符串函数。第三个就是符号变量了。
第二个问题。正确的代码是如下:sym x
f=sym('log(1+2*x)/sin(3*x)')
y=limit(f,x,0)
你的问题一个是格式问题,
limit(expression,x,a) %计算符号表达式当x趋近于a时,F的极限值
limit(expression) %计算符号函数F的极限值,变量为findsym确定的默认变量;未指定目标值时,默认变量趋近于0。

另一个是log10,好像可以直接用log。


最后一个问题,直接定义f=a*x^2+b*x+c
其实我不是直接定义,而是先定义符号变量a b c x。然后再用函数定义变量f
做自己想做的,而且是马上去做
6楼2013-05-15 09:25:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

苒叶枫

铁杆木虫 (正式写手)

送红花一朵
引用回帖:
6楼: Originally posted by kaichang at 2013-05-15 09:25:45
第一个肯定不是符号函数,因为这里面有变量,而定义符号变量是一定需要sym或者syms来定义的。第二个也不是符号变量,而是字符串函数。第三个就是符号变量了。
第二个问题。正确的代码是如下:sym x
f=sym('log(1 ...

非常感谢。
我查了一下 log=ln  log10=以10为低
底的对数。你上面写的是正确的,但如果把它改为:
syms x
f=sym('log10(1+2*x)/sin(3*x)')
y=limit(f,x,0)
则就算不出最后结果了。
如果方便的话 你可以运行一下看看。得到的就是主题帖里面的一长串儿了。
求解???

[ 发自手机版 http://muchong.com/3g ]
一生一代一双人。
7楼2013-05-15 11:20:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

kaichang

木虫 (著名写手)

★ ★
xiegangmai: 金币+2, 谢谢参与! 2013-05-17 20:36:38
引用回帖:
7楼: Originally posted by 苒叶枫 at 2013-05-15 11:20:40
非常感谢。
我查了一下 log=ln  log10=以10为低
底的对数。你上面写的是正确的,但如果把它改为:
syms x
f=sym('log10(1+2*x)/sin(3*x)')
y=limit(f,x,0)
则就算不出最后结果了。
如果方便的话 你可以运行 ...

试下下面的。
syms x
f=sym('log10(1+2*x)/sin(3*x)')
y=limit(log10(2*x + 1)/sin(3*x), x,0)
limit(expression),这个里面估计是需要一个函数。为什么。我就不清楚了。见谅!
做自己想做的,而且是马上去做
8楼2013-05-15 15:31:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 catduolieg 的主题更新
信息提示
请填处理意见