Matlab输入公式绘图的问题为什么输入这个公式来绘图是一个恒定值?公式如下:d=(300000/(70*q*q)).*((z*q+(q-1).*(sqrt(2*q*z+1)-1))/((z+1).*(z+1)));我想输入的公式是:这里的c是10^3ms^-1单位,H0是70(反正都是

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 05:45:28
Matlab输入公式绘图的问题为什么输入这个公式来绘图是一个恒定值?公式如下:d=(300000/(70*q*q)).*((z*q+(q-1).*(sqrt(2*q*z+1)-1))/((z+1).*(z+1)));我想输入的公式是:这里的c是10^3ms^-1单位,H0是70(反正都是

Matlab输入公式绘图的问题为什么输入这个公式来绘图是一个恒定值?公式如下:d=(300000/(70*q*q)).*((z*q+(q-1).*(sqrt(2*q*z+1)-1))/((z+1).*(z+1)));我想输入的公式是:这里的c是10^3ms^-1单位,H0是70(反正都是
Matlab输入公式绘图的问题
为什么输入这个公式来绘图是一个恒定值?
公式如下:d=(300000/(70*q*q)).*((z*q+(q-1).*(sqrt(2*q*z+1)-1))/((z+1).*(z+1)));


我想输入的公式是:

这里的c是10^3ms^-1单位,H0是70(反正都是常数,单位什么的不重要)

按理而言,上面这个公式画出来大致是长这种样子的:(q取0.4的话)

但结果画出来的是一个常数函数,郁闷啊,是我输入公式的时候哪里没注意啊?

Matlab输入公式绘图的问题为什么输入这个公式来绘图是一个恒定值?公式如下:d=(300000/(70*q*q)).*((z*q+(q-1).*(sqrt(2*q*z+1)-1))/((z+1).*(z+1)));我想输入的公式是:这里的c是10^3ms^-1单位,H0是70(反正都是
主要你的表达式书写没有处理好,而造成错误.应该这样处理:
>> syms z,q=0.4;ezplot((300000/(70*q*q)).*(z*q+(q-1).*(sqrt(2*q*z+1)-1))./(z+1).^2,[0 10]),grid on

q=0.4;
z=0:0.1:20;

d=(300000/(70*q*q)).*((q*z+(q-1).*(sqrt(2*q*z+1)-1))./((z+1).^2));

 plot(z,d)

望采纳