stargazer 发表于 2009-7-17 22:28

对变量赋值求解方程遇到的问题

要对方程中的变量进行赋值,然后求解并输出,参考了这个帖子的做法http://forum.vibunion.com/thread-53383-1-1.html,很受启发,但还是碰到了问题:对变量的赋值似乎无效,
请看一个简单的例子:

clear
syms u x,y=2*u+1+x,
y=subs(y,u,1.5),            %y=4+x
subs(solve('y=1.5')      %解出ans=1.5 ,说明y=4+x未被代入
subs(solve('y=1.5','x'))   %出错,也说明y=4+x未被代入



请大伙指教!!!感激不尽!!

顺便问下,如何提取所有求得的根中的某一个?比如提取其中的非负实根。

[ 本帖最后由 stargazer 于 2009-7-17 22:57 编辑 ]

波波球 发表于 2009-7-18 07:34

solve('y=1.5')是解得y=1.5这个方程,而不是LZ理解的代入y=4+x中的y求解x

stargazer 发表于 2009-7-18 08:11

原帖由 波波球 于 2009-7-18 07:34 发表 http://www.chinavib.com/forum/images/common/back.gif
solve('y=1.5')是解得y=1.5这个方程,而不是LZ理解的代入y=4+x中的y求解x

这正是我想问的,为何y=subs(y,u,1.5)得到的 y=4+x会在下一步解放程时不起作用

ChaChing 发表于 2009-7-18 14:35

应该使用solve(y-1.5)或solve(y-1.5,x)
注意有无引号意义是不同的!

stargazer 发表于 2009-7-18 18:11

我是新手,有无''的区别不是很清楚,我回去再试试
还有个问题也请解答:比如求得有1+i,1-i,2+3i,2-3i,0.6共5个根,如何提取其中的正实根0.6??

stargazer 发表于 2009-7-18 20:21

ls的问题应该可以用isreal做到
页: [1]
查看完整版本: 对变量赋值求解方程遇到的问题