首先,s是一个多项式,由符号变量构成。
s=simplify(s);
coeff=sym2poly(s);
得到系数矩阵
然后我通过计算coeff得到了一阶导数零点。
现在的问题是,这个零点无法正常的输出。
比如:
disp(['在',zeropoint,'处取得极值']);
是无法输出zeropoint的。
我知道,可以double(zeropoint),但是得到的并不是数值型的结果。
请问各位MATLAB行家,符号变量如何转化为数值变量?
有点奇怪,你通过sym2poly得到了数值型的系数矩阵coeff,然后又怎么会得到sym类型的零点呢?
如果zeropoint是数值类型,可以改为
disp(['在',mat2str(zeropoint),'处取得极值']);如果zeropoint是符号类型,可以改为
disp(['在',mat2str(double(zeropoint)),'处取得极值']);或者
disp(['在',char(zeropoint),'处取得极值']);如果zeropoint是数值类型,可以改为
disp(['在',mat2str(zeropoint),'处取得极值']);如果zeropoint是符号类型,可以改为
disp(['在',mat2str(double(zeropoint)),'处取得极值']);或者
zeropoint是符号变量,此时它表示某一个确定的数值,但是不是数值型的而是sym型的,请问你的替换是什么意思,怎么用?