northwolves 发表于 2019-3-18 22:25:46

初学Matlab解方程组报错

用网上解方程组的例子,直接输入方程报错,用变量反而能出结果

>> =solve('4+1/(k-u)^2-9/(4-k)^2-1=0','((17^2+u^2)-u^2)*(k-u)^2-u^2=0','u','k')
错误使用 solve>getEqns (line 418)
List of equations must not be empty.

出错 solve (line 226)
= getEqns(varargin{:});

>> syms k u
nw=2;
ng=1;
d=17;
x1=4;
z1=3;
h=1;
=solve(nw^2/(ng^2)+h^2/ng^2*(k-u)^2-(z1^2/(x1-k)^2)-1,(ng^2*(d^2+u^2)-u^2)*(k-u)^2-(h*u)^2)

k =

(18*root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 1))/17
(18*root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 2))/17
(18*root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 3))/17
(18*root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 4))/17
(16*root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 1))/17
(16*root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 2))/17
(16*root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 3))/17
(16*root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 4))/17


u =

root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 1)
root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 2)
root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 3)
root(z^4 - (68*z^3)/9 + (71383*z^2)/81 - (19652*z)/3 + 1085773/108, z, 4)
root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 1)
root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 2)
root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 3)
root(z^4 - (17*z^3)/2 + (14161*z^2)/16 - (14739*z)/2 + 3257319/256, z, 4)

wayne 发表于 2019-3-18 22:37:45

很久很久没用MATLAB了,能提供下载链接么,最好是最新版本的,Linux的,:lol

northwolves 发表于 2019-3-18 22:44:00

15个G,我下了16个小时

northwolves 发表于 2019-3-18 22:46:28

链接: https://pan.baidu.com/s/1idgVVisquz0TPMTFid33nw 提取码: pz74 windows32+64,Matlab2018a

lhmhz 发表于 2020-2-16 19:22:45

k=vpa(k) 可以得到数值解
页: [1]
查看完整版本: 初学Matlab解方程组报错