matlab复杂数学公式输入? 20
想要在matlab中得到公式对应的图,假设f=1,q为0.25时,k为1.2.3.5.8.10时不同曲线的对比,和k为5时,q为0.1,0.2,0.3,0.5,0.8,1...
想要在matlab中得到公式对应的图,假设f=1,q为0.25时,k为1.2.3.5.8.10时不同曲线的对比,和k为5时,q为0.1,0.2,0.3, 0.5,0.8, 1时不同曲线对比,如何输入代码
展开
1个回答
展开全部
如何用matlab输入复杂数学公式,并出图?这个问题可以这样解决:
情况一(q为常数,k为变量):
第一步,对k变量赋值,即
f=1;q=0.25;k=[1,2,3,5,8,10];
第二步,计算M值,即
M=1./sqrt((1+1./k-1./(k*f^2).^2)+q.^2*(f-1./f).^2);
注意,这里需要使用点运算符
第三步,使用plot函数绘制k—M(k)曲线图,即
figure(1)
plot(k,M)
xlabel('k');ylabel('M(k)')
情况二(k为常数,q为变量):
第一步,对k变量赋值,即
f=1;k=5;q=[0.1,0.2,0.3,0.5,0.8,1];
第二步,计算M值,即
M=1./sqrt((1+1./k-1./(k*f^2).^2)+q.^2*(f-1./f).^2);
注意,这里需要使用点运算符
第三步,使用plot函数绘制q—M(q)曲线图,即
figure(2)
plot(q,M)
xlabel('q');ylabel('M(q)')
执行上述代码,可以得到如下结果。
更多追问追答
追答
可以用for循环语句来完成。即
for Q=[0.1,0.2,0.3,0.5,1.2,2,5];
k=5;
f=0.1:0.1:2;
M=1./sqrt((1+1./k-1./(k*f.^2).^2)+Q.^2*(f-1./f).^2);
plot(f,M),hold on
xlabel('fm=fα/fτ');ylabel('M')
end
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询