您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > MATLAB实验指导书全文(简化)
1江苏科技大学《MATLAB实践》实验指导书吴陈计算机科学与工程学院2015.3.152目录实验一MATLAB的基本使用方法…………………………1实验二MATLAB的数值计算………………………………2实验三MATLAB的符号计算………………………………4实验四MATLAB的程序设计………………………………5实验五MATLAB计算结果的可视化…………………………7附:基础知识………………………………………………123实验一MATLAB的基本使用方法实验目的和要求:通过完成实验一,掌握MATLAB的基本使用方法。实验内容:(一)练习数据和符号输入法,将前面的命令在命令窗口中执行通过。1)52)x=[1234]3)g=[1234];h=[4321]s1=g+h,s2=g.*h,s3=g.^hS1=5555S2=4664S3=1894(二)输入A=[715;256;315],B=[111;222;333],在命令窗口中执行下列表达式,掌握其含义。源程序:A=[715;256;315];B=[111;222;333];A(2,3)A(:,2)A(:,1:2:3)%A数组中第一列和第三列A(3,:)%A数组中第三行A(:,3).*B(:,2)%A中第三列和B中第二列相乘A(:,3)*B(2,:)%A中第三列和B中第二行相乘竖着排,形成3*3矩阵A*B%A与B数组相乘A.*BA^2A.^2%A中所有数平方B/A%B矩阵除以A矩阵B./A%B中数除以A中对应位置数(三)输入C=.1:2:20,则C(i)表示什么?其中i=1,2,3…10;源程序:c=1:2:20;c(1)c(10)4实验二MATLAB的数值计算实验目的和要求:通过完成实验二,掌握MATLAB的数值计算。实验内容:(一)用二分法计算多项式方程X^3-2X-5=0在[0,3]内的一个根。a=0;fa=-inf;b=3;fb=inf;whileb-aeps*bx=(a+b)/2;fx=x^3-2*x-5;ifsign(fx)==sign(fa)a=x;fa=fxelseb=x;fb=fxendendx运行结果:x=2.0945515148154233(二)矩形的创建,加减运算A=[1,1,1;1,2,3;1,3,6]B=[8,1,6;3,5,7;4,9,2]A+B=A+BA-B=A-B在Matlab命令窗口建入的文件,则结果显示A+B=92747105128A-B=-70-5-2-3-4-3-64(三)混合积eg.计算向量a=(1,2,3),b=(4,5,6)和c=(-3,6,-3)的混合积a.(b*c)在MATLAB编辑器中建立M文件a=[123];b=[456];c=[-36-3]x=dot(a,cross(b,c))(四)符号矩阵的四则运算eg.A=sym(‘[1/x,1/(x+1);1/(x+2),1/(x+3)]’)B=sym(‘[x,1;x+2,0]’);5C=B-AD=A\B则显示C=x-1/x1-1/(x+1)x+2-1/(x+2)-1/(x+3)D=-6*x-2*x^3-7*x^21/2*x^3+x+3/2*x^26+2*x^3+10*x^2+14*x-2*x^2-3/2*x-1/2*x^3(五)向量组的最大无关组Eg.a1=(1,-2,2,3),a2=(-2,4,-1,3),a3=(-1,2,0,-3),a4=(0,6,2,3),a5=(2,6,3,4)的一个最大无关组在MATLAB编辑器中建立M文件a1=[1-223]’;a2=[-24-13]’;a3=[-1203]’;a4=[0623]’;a5=[2-634]’;A=[a1a2a3a4a5]formatrat%以有理数格式输出B=rref(A)%求A的行最简形运行后的结果为A=1-2-102-2426-6-2-102333334B=101/3016/9012/30-1/90001-1/300000从中可以得到;向量a1a2a4为其中最大无关组6实验三MATLAB的符号计算实验目的和要求:通过完成实验三,掌握MATLAB的符号计算。实验内容:(一)使用sym函数定义符号变量和符号表达式使用sym函数定义符号表达式ax^2+bx+ca=sym(‘a’)b=sym(‘b’)c=sym(‘c’)x=sym(‘x’)f=a*x^2+b*x+cf=a*x^2+b*x+c(二)findsym函数用于寻找符号变量symsaalphabx1yfindsym(alpha+a+b)ans=a,alpha,bfindsym(cos(a’pha)*b*x1+14*y,2)ans=x’,yfindsym(y*(4+3*i)+b*j)ans=y(三)符号表达式的四则运算例:symsxyabfun1=sin(x)+cos(y)fun1=sin(x)+cos(y)fun=a+bfun=a+bfun1+fun2ans=sin(x)+cos(y)+a+bfun1*fun2ans=(sin(x)+cos(y)*(a+b)(四)由数值矩阵转换为符号矩阵例:u=[19124;6178;92163;34320]u=19124761789216334320s=sym(u)s=[19,1,2,4][6,1,7,8][9,2,16,3][3,43,2,0](五)jacobian函数的使用例:symsxyza=[x^2+x*y;sin(x)*cos(y)]a=[x^2+x*y][sin(x)+cos(y)]jacobian(a,[x,y])[2*x+y,x][cos(x)*cos(y),-sin(x)*sin(y)]实验四MATLAB的程序设计实验目的和要求:通过完成实验四,掌握MATLAB的程序设计。实验内容:(一)函数例:functionisleapyear(year)sign=0;ifrem(year,4)==0sign=sign+1;endifrem(year,100)==0sign=sign-1;endifrem(year,400)==0sign=sign+1;endifsign=1fprintf(‘%4dyearisaleapyear.\n’,year)elsefprintf(‘%4dyearisnotaleapyear.\n’,year)endy1=1000;y2=2000;8y3=1996;y4=3000;isleapyear(y1)1000yearisnotaleapyearisleapyear(y2)2000yearisaleapyearisleapyear(y3)1996yearisaleapyearisleapyear(y4)3000yearisnotaleapyear(二)将百分数的分数转化为五级制分数90~100:优80~90:良70~79:中60~69:及格59以下为不及格functionf=change(score)a=floor(score/10)switchacase{10,9}f=’该成绩为优’case8f=’该成绩为良’case7f=’该成绩为中’case6f=’该成绩为及格’otherwisef=’该成绩为不及格’end运行结果:b=88b=88change(b)a=8f=该成绩为良(三)编写三个子函数和一个主函数,实现下列函数在点x=0.5,2.5,6.5处的计算functionr=zhs(x)66,6)tan(532,1)(cos)sin(32,32)(322xxxxxxxxxxf9ifx=2/3r=zihanshu1(x)elseif2/3x&x=6r=zihanshu2(x)elser=zihanshu3(x)endfunctionr1=zihanshu1(x)r1=2*x-3functionr2=zihanshu2(x)r2=(sin(x)+cos(x)^2)/(1+x^2)functionr3=zihanshu3(x)r3=(x^3+52/(tan(x)+6)运行结果:zhs(0.5)r1=-2r=-2ans=-2zhs(2.5)r2=0.1711r=0.1711ans=0.1711zhs(6.5)r3=44.9538r=44.9538ans=44.9538实验五MATLAB计算结果的可视化实验目的和要求:通过完成实验一,掌握MATLAB的基本绘图方法。实验内容:一、绘制二维进线图例:x=0:0.11:10;y1=sin(x);y2=cos(x-2.5);y3=tan(x+1.5)plot(x,y1,x,y2,x,y3)10二、文本标注和交互式文本标注例:x=linspace(-3,5,100);y=cos(x);z=sin(x);plot(x,y,x,z);title('一条正弦曲线和一条余弦曲线’)xlabel('x的取值范围’)ylabel('y和z的值’)11三、条形图和面积图例y=[12345678910]yy=12345678910bar(y)12345678910012345678910四、给图形添加标题x=0:.1:2;y1=sin(x);y2=sin(x-0.25);y3=sin(x-0.5);plot(x,y1,'-.b',x,y2,'--r*',x,y3,'-.gh')12五、view函数的使用[x,y]=meshgrid([-5:0.2:5]);z=exp(0.5*(x.^2-y.^2));surf(x,y,z)〉〉view(30,60)13六、编写三个子函数和一个主函数,实现下列函数在点x=0.5,2.5,6.5处的计算解:functionr=mf(x)ifx=2/3r=zihanshu1(x)elseif2/3x&x=6r=zihanshu2(x)elser=zihanshu3(x)endfunctionr1=zihanshu1(x)r1=2*x-366,6)tan(532,1)(cos)sin(32,32)(322xxxxxxxxxxf14functionr2=zihanshu2(x)r2=(sin(x)+cos(x)^2)/(1+x^2)functionr3=zihanshu3(x)r3=(x^3+5)/(tan(x)+6)mf(0.5)ans=-2mf(2.5)ans=0.1711mf(6.5)ans=44.9538附:基础知识1.1常见数学函数函数名数学计算功能函数名数学计算功能abs(x)实数的绝对值或复数的幅值floor(x)对x朝-∞方向取整acos(x)反余弦arcsinxgcd(m,n)求正整数m和n的最大公约数acosh(x)反双曲余弦arccoshximag(x)求复数x的虚部angle(x)在四象限内求复数x的相角lcm(m,n)求正整数m和n的最小公倍数asin(x)反正弦arcsinxlog(x)自然对数(以e为底数)asinh(x)反双曲正弦arcsinhxlog10(x)常用对数(以10为底数)atan(x)反正切arctanxreal(x)求复数x的实部atan2(x,y)在四象限内求反正切rem(m,n)求正整数m和n的m/n之余数atanh(x)反双曲正切arctanhxround(x)对x四舍五入到最接近的整数ceil(x)对x朝+∞方向取整sign(x)符号函数:求出x的符号conj(x)求复数x的共轭复数sin(x)正弦sinxcos(x)余弦cosxsinh(x)反双曲正弦sinhxcosh(x)双曲余弦coshxsqrt(x)求实数x的平方根:xexp(x)指数函数xetan(x)正切tanxfix(x)对x朝原点方向
本文标题:MATLAB实验指导书全文(简化)
链接地址:https://www.777doc.com/doc-2887417 .html