matlab符号解问题

我们在解不定方程的时候,怎么用指定的变量来表示其他变量的解?比如symsabcd;最后解的结果默认为abc都用d表示的,怎么改为b,c,d用a来表示啊?... 我们在解不定方程的时候,怎么用指定的变量来表示其他变量的解?比如syms a b c d;
最后解的结果默认为a b c都用d表示的,怎么改为b,c,d用a来表示啊?
展开
 我来答
tianxiawulang
推荐于2017-11-26 · TA获得超过2.7万个赞
知道大有可为答主
回答量:4732
采纳率:89%
帮助的人:2636万
展开全部

你说的其实就是指定对哪个变量求解的问题,例如

>> solve('a+b+c+d') 
ans = 
-a-b-c

不指定求解的变量时,默认按照字母顺序最靠近x的那个变量来求解,比如abcd就会对d求解。

 

如果希望对a求解,那么,直接指定即可:

>> solve('a+b+c+d','a') 
ans = 
-b-c-d

但是,你所说的b、c、d都用a来表示不行,因为对于一个方程要求解多个变量,方程为不定的(前面的例子中,尽管从人的角度来说,也是不定方程,但提交给程序,除了人为指定或者系统默认指定的变量外,其它均视为常量):

>> s=solve('a+b+c+d','a','b','c')
Warning: 1 equations in 3 variables.
> In D:\MATLAB6p5\toolbox\symbolic\solve.m at line 110
s =
    a: [1x1 sym]
    b: [1x1 sym]
    c: [1x1 sym]
>> s.a, s.b, s.c 
ans = 
-b-c-d 
ans = 

ans = 
c

要想b、c、d都用a来表示,相当于有三个变量,需要有三个方程才行,如:

>> s=solve('a+b+c+d','a-b-c+d','a+b-c-d','b','c','d')
s =
    b: [1x1 sym]
    c: [1x1 sym]
    d: [1x1 sym]
>> s.b, s.c, s.d 
ans = 
-a  
ans = 

ans = 
-a
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式