matlab中有关 solve()函数的,问题如下示 15

solve('a*x^2+b*x+c',0),但solve的用法中根本没有如前边命令所示的形式,但为什么还依然能够得出表达式等于0时候的解而不会提示错误呢?话句话说,从效... solve('a*x^2+b*x+c',0),但solve的用法中根本没有如前边命令所示的形式,但为什么还依然能够得出表达式等于0时候的解而不会提示错误呢?
话句话说,从效果上看,solve('a*x^2+b*x+c',0)等价于solve('a*x^2+b*x+c'),但前者的语法现象在doc solve 中是不存在的,但为什么不会提示错误呢
多谢您的关注与解答,让我们一起找答案,共同提高
展开
 我来答
lijinfeng042
2012-02-24 · TA获得超过679个赞
知道小有建树答主
回答量:725
采纳率:0%
帮助的人:597万
展开全部
看看这个solve对于方程的处理 你就知道了 最好单步运行一下 内部直接把你的这个0丢掉了~
function [eqns,vars] = getEqns(varargin)
eqns = [];
vars = [];
for k = 1:nargin
v = varargin{k};
vc = char(v);
if ~isempty(eqns) && all(isstrprop(vc,'alphanum') ...
| vc == '_' | vc == ',' | vc == ' ')
if isa(v,'sym') && any(strcmp(vc,{'beta','gamma','psi','theta','zeta','D','E','O','Ei','Si','Ci','I'}))
vc = [vc 'MLVar']; %#ok<AGROW>
end
vc(vc == ' ') = [];
vars = [vars ',' vc]; %#ok<AGROW>
elseif isa(v,'sym')
eqns = [eqns v(:).']; %#ok<AGROW>
else
[t,stat] = mupadmex(vc,0);
if stat
error('symbolic:solve:errmsg1', ...
''' %s '' is not a valid expression or equation.',v)
end
if ~isempty(t)
% use a set syntax to preserve the list items without
% causing the string to be parsed as MATLAB arrays [a b]
t = sym(['{' vc '}']);
eqns = [eqns t(:).']; %#ok<AGROW>
end
end
end
vars = ['[' vars ']'];
if vars(2)==','
vars(2)=' ';
end
百度网友d580670
2012-02-23 · TA获得超过1983个赞
知道大有可为答主
回答量:2054
采纳率:82%
帮助的人:704万
展开全部
印象中solve是可以求解方程组的根的
solve('x+y-1','x-y-3')
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式