您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > matlab开卷试题
三、编程题33、编写一个函数,使其产生如下分段函数:xxxxxxf65.06225.05.125.0)(并调用该函数,绘制]2,0[x范围的)(xf曲线。1、x=linspace(0,8,100);y=[];forx0=xifx0=6y=[y,0.5];elseifx02y=[y,1.5-0.25*x0];elsey=[y,0.5*x0]endendplot(x,y)axis([0202])title('分段函数曲线');xlabel('VariableX');ylabel('VariableY');2、函数程序:fuction[y]=fenduan(x)x=linspace(0,8,100);y=[];forx0=xifx0=6y=[y,0.5];elseifx02y=[y,1.5-0.25*x0];elsey=[y,0.5*x0]endend调用函数并绘图:plot(x,y)axis([0203])title('分段函数0=x=2曲线');xlabel('VariableX');ylabel('VariableY');34、向量],,[,21naaaA,编写一段程序,找出A中的最小元素。程序:1、],,[,21naaaA;Amin=min(A)2、函数程序:function[min]=fmin(A)[m,n]=size(A);g=m*n;a=A(1);fork=2:gifa=A(k)k=k+1;elsea=A(k);k=k+1;endendmin=a;disp(min);输入指令:fmin(A)35、已知函数2)20)(1.0()40)(5(20)(sssssssG,试编程求G(s)及其极点、零点、增益系数和Bode图。clearf1=[1,5,0];g1=[1,40];A=conv(f1,g1);A=20*Aroots(A)%零点f2=[1,0.1,0];g2=[1,40,400];B=conv(f2,g2)roots(B)%极点K=20*5*40/0.1/20/20%增益系数nun=A;den=B;w=logspace(-2,3,100);bode(nun,den,w)%Bode图36、已知函数)14()16.0(50)(2ssssG,试编程求G(s)及其极点、零点、增益和Nyquist图。clearf1=[0.6,1];A=f1;A=50*Aroots(A)%求零点f2=[1,0,0];g2=[4,1];B=conv(f2,g2)roots(B)%求极点K=50%增益系数nun=A;den=B;[re,im]=nyquist(nun,den);plot(re,im);grid%画Nyquist图38、在同一图上分别用红色实线和绿色虚线绘制y1=sin(x)和y2=cos(x)在区间[0,4*pi]的曲线,并用星号*标出两条曲线的交点以及建立图例。程序:clfx=0:pi/200:4*pi;y1=sin(x);y2=cos(x);zz=x(find(abs(y1-y2)0.005))z=min(zz)plot(x,y1,'r-',x,y2,'g-')holdonplot(zz,sin(zz),'*')legend('sin','cos')39、编程求下列方程组的解和系数矩阵的秩。81025695832475412743wzyxwzxwzyxwzyx1、解的程序:A=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];b=[4,-3,9,-8];x=A/b2、秩的程序:A=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];r=rank(A)一、计算题(70分)要求:写出M函数(如果需要的话)、MATLAB指令和计算结果。1.解线性方程组14235231543421431321xxxxxxxxxxx并求系数矩阵的行列式。指令行:A=[51–10;103–1;-1–105;0024];b=[1;2;3;-1];x=A\b,d=det(A)结果:x1=1.4,x2=-5.9,x3=0.1,x4=-0.3.行列式=70.2.设f(x,y)=4sin(x3y),求3,22yxyxf。指令行:symsxy;f=diff(4*sin(x^3*y),x);f=diff(f,y);f=subs(f,x,2);f=subs(f,y,3)结果:1063.63.求方程3x4+4x3-20x+5=0的所有解。指令行:roots([340–205])结果:-1.5003-1.5470i,-1.5003+1.5470i,1.4134,0.25394.使用两种方法求积分dxex210221的近似值。方法一:指令行:symsx;s=int(1/sqrt(2*pi)*exp(-x^2/2),0,1);vpa(s,5)结果:0.34135方法二:指令行:x=0:0.01:1;y=1/sqrt(2*pi)*exp(-x.^2/2);trapz(x,y)结果:0.3413方法三:M函数ex4fun.mfunctionf=ex4fun(x)f=1/sqrt(2*pi)*exp(-x.^2/2);指令行:s=quadl(@ex4fun,0,1)结果:0.34135.求函数f(x,y)=3x2+10y2+3xy-3x+2y在原点附近的一个极小值点和极小值。指令行:fun=inline(’3*x(1)^2+10*x(2)^2+3*x(1)*x(2)-3*x(1)+2*x(2)’);x=fminsearch(fun,[0,0]),f=eval(fun)结果:x=0.5946,y=-0.1892,f=-1.08116.求解下列微分方程5112)1('.xyyxy(只要求写出x=1.5时y的值)指令行:ex6fun=@(x,y)x+y;[x,y]=ode45(ex6fun,[11.5],2);[x,y]结果:x=1.5000时,y=4.09497.求.)2)(1(11nnnn指令行:clear;symsn;symsum(1/n/(n+1)/(n+2),1,inf)结果:1/4二、作图题(10分)(要求:写出M函数(如果需要的话)、MATLAB命令,并画草图。求解描述振荡器的经典的VerderPol微分方程,并画出解函数的图形..7,0)0(',1)0(,0)1(222yyydtdyydtyd解答:令,,121dtdxxyx则.)1(,1221221xxxdtdxxdtdx先编写函数文件verderpol.m:functionxprime=verderpol(t,x)globalmu;xprime=[x(2);mu*(1-x(1)^2)*x(2)-x(1)];再编写命令文件vdp1.m:globalmu;mu=7;y0=[1;0][t,x]=ode45('verderpol',[0,40],y0);x1=x(:,1);x2=x(:,2);plot(t,x1)三、编程题(10分):编写用向后差商公式hhafafaf)()()(,h0求函数在某一点导数达到指定精度的算法程序,并用此程序求f(x)=excos(x2)在x=1.2的导数,使精度达到10-4。要求:写出M函数文件、MATLAB指令和计算结果。M函数derivl.mfunctiond=derivl(fname,a,h0,e)h=h0;d=(feval(fname,a)-feval(fname,a-h))/h;d=d+2*e;whileabs(d-d0)ed0=d;h0=h;h=h0/2d=(feval(fname,a)-feval(fname,a-h))/h;end指令行:fun=inline('exp(x)*cos(x^2)','x');derivl(fun,1.2,0.1,1e-4)结果:-7.4672第四题、建模题(每题10分,共1题)(要求:写出数学模型、M函数(如果需要的话)、MATLAB命令和计算结果煤炭、电力和钢材组成一个理想经济模型,它们之间形成收支平衡,见下表。如电力40%供应煤炭,50%供应钢材,10%供应本身。表的各列的和均为1。求在一段时间内,它们的价格各为多少元?供应分配支出煤炭电力钢材煤炭.0.4.6电力.6.1.2钢材.4.5.2分析:设煤炭、电力和钢材的价格分别为pC,pE和pS,于是有EMBEDEquation.3,EMBEDEquation.3。??|}。Matlab命令:clear;A=[1-0.4-0.6;-0.60.9-0.2;-0.4-0.50.8];
本文标题:matlab开卷试题
链接地址:https://www.777doc.com/doc-4991821 .html