matlab 中有未知数如何行化简

如题所述

可以sym命令来完成,只是不知道楼主具体是要做什么用

例如:有未知量x,y,a (a可以看为已知的系数)

有方程
a*x+y=10
8x-a*y^2=100

则x,y一定可以表达为a的多项式..

以下为m文件:
eq1=sym('a*x+y=10')
eq2=sym('8*x-a*y^2=100')
[x,y]=solve(eq1,eq2)

电脑得出适合的解:
x =

[ 1/2/a^3*(20*a^2+8+4*(20*a^2+4-25*a^3)^(1/2))]
[ 1/2/a^3*(20*a^2+8-4*(20*a^2+4-25*a^3)^(1/2))]

y =

[ -1/2/a^2*(20*a^2+8+4*(20*a^2+4-25*a^3)^(1/2))+10]
[ -1/2/a^2*(20*a^2+8-4*(20*a^2+4-25*a^3)^(1/2))+10]
温馨提示:内容为网友见解,仅供参考
第1个回答  2016-05-31
n = 10; % 输入 n i = 1:n; x = rand(1,n) % 输入 x x1 = sum((i-1).*x)/sum(x); f = @(N0) sum(1./(N0-i+1)) - n/(N0-x1); x0 = 10; % Make a starting guess at the solution [N0,fval] = fsolve(f,x0) % Call solver
相似回答