早教吧作业答案频道 -->其他-->
怎样用MATLAB求解高次方程%主减速器传动比计算m=input('请输入汽车质量m=');ig=input('请输入变速器各档传动比ig=');et=input('请输入传动效率et=');r=input('请输入车轮半径r=');f=input('请输入滚动阻
题目详情
怎样用MATLAB求解高次方程%主减速器传动比计算 m=input('请输入汽车质量m='); ig=input('请输入变速器各档传动比ig='); et=input('请输入传动效率et='); r=input('请输入车轮半径r='); f=input('请输入滚动阻力系数f='); Cd=input('请输入空气阻力系数Cd='); A=input('请输入迎风面积A='); um=input('请输入最高车速um='); Ff=m*9.8*f; Fw=Cd*A*um^2/21.15; syms i0; ne0=ig*um/(0.377*r)*i0;%最高车速对应的发动机转速 Ttq=c(1)*ne0.^5+c(2)*ne0.^4+c(3)*ne0.^3+c(4)*ne0.^2+c(5)*ne0+c(6);%最高车速对应的发动机转矩(c已经在前面算好了) [i0]=solve('Ttq*ig*et/r*i0-Ff-Fw=0') 上面是我所编写的程序,用于计算汽车主减速比,但我MATLAB不太会用,按照我的理解编好程序后,算不出要求的i0,恳请高手指教,如何完善上面这个程序。
▼优质解答
答案和解析
% 最后一句改为 i0=solve(Ttq*ig*et/r*i0-Ff-Fw); % 因为你前面定义过syms i0,所以solve里不用引号,可以直接把各个参数代入,是一个自变量为i0的sym类型的表达式,不加引号的话也不能加=号,方程两边要挪到一边。 %如果你不定义syms i0,那也可以直接用 i0=solve('Ttq*ig*et/r*i0-Ff-Fw=0' , 'i0') % 此时因为多个未知数,所以必须指定所求的i0,结果用其他参数表示,所以要换成数值,还要加一句 x=subs(i0) %这句的意思就是用现有变量内容替换sym类型里的变量名
看了 怎样用MATLAB求解高次方...的网友还看了以下:
Indexexceedsmatrixdimensions.>>disp('');disp(''); 2020-04-26 …
vf问题,我哪里出了错dowhile.t.store1toc,xinput"任意输入正整数"toa 2020-04-26 …
Matlab绘图,该程序a=input('请输入a的值:');x=-10:0.1:10; y= 2020-05-16 …
matlab的 input函数问题syms x lanmuda n2 n1 n3 H k0H=in 2020-05-16 …
怎样用MATLAB求解高次方程%主减速器传动比计算m=input('请输入汽车质量m=');ig= 2020-05-17 …
高中人教版必修三的知识!程序设计语言,基本算法语句:条件语句!下列程序:INPUT“请输入一个两位 2020-05-23 …
超简单的C++小题,一定是C++!Description输入一个英文句子,将每个单词的第一个字母改 2020-07-26 …
怎样用MATLAB求解高次方程%主减速器传动比计算m=input('请输入汽车质量m=');ig= 2020-08-02 …
x=input(“请输入一个正的两位数x=”);if9<xandx<100thena=x/10;b= 2020-12-05 …
如何在奇偶相除,保留小数点后的小数我的计算器请输入第一个数:+-*/请输入第二个数:计算结果: 2020-12-23 …