资源描述:
《MATLAB作业1参考答案.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、个人收集整理勿做商业用途MATLAB作业1参考答案1、在你的机器上安装MATLAB语言环境,并键入demo命令,由给出的菜单系统和对话框原型演示程序,领略MATLAB语言在求解数学问题方面的能力与方法.【求解】略.2、启动MATLAB环境,并给出语句tic,A=rand(500);B=inv(A);norm(A*B—eye(500)),toc,试运行该语句,观察得出的结果,并利用help命令对你不熟悉的语句进行帮助信息查询,逐条给出上述程序段与结果的解释。【求解】在MATLAB环境中感触如下语句,则可以看出,求解随机矩阵的逆,并求出得出的逆矩阵与原矩阵的乘积,得出和单位矩阵的差
2、,得出范数。一般来说,这样得出的逆矩阵精度可以达到。〉〉tic,A=rand(500);B=inv(A);norm(A*B-eye(500)),tocans=1。2333e—012Elapsedtimeis1。301000seconds.3、试用符号元素工具箱支持的方式表达多项式,并令,将f(x)替换成s的函数。【求解】可以先定义出f函数,则由subs()函数将x替换成s的函数>>symssx;f=x^5+3*x^4+4*x^3+2*x^2+3*x+6;F=subs(f,x,(s-1)/(s+1))F=(s—1)^5/(s+1)^5+3*(s—1)^4/(s+1)^4+4*(s
3、—1)^3/(s+1)^3+2*(s-1)^2/(s+1)^2+3*(s-1)/(s+1)+6symsxsx=(s—1)。/(s+1);y=x。^5+3*x。^4+4*x。^3+2*x。^2+3*x+6;ysimple(y)y=19-(72*s^4+120*s^3+136*s^2+72*s+16)/(s+1)^54、用MATLAB语句输入矩阵A和B个人收集整理勿做商业用途前面给出的是4×4矩阵,如果给出A(5;6)=5命令将得出什么结果?【求解】用课程介绍的方法可以直接输入这两个矩阵〉〉A=[1234;4321;2341;3241]A=1234432123413241若给出A(
4、5,6)=5命令,虽然这时的行和列数均大于B矩阵当前的维数,但仍然可以执行该语句,得出>>A(5,6)=5A=123400432100234100324100000005复数矩阵也可以用直观的语句输入〉〉B=[1+4i2+3i3+2i4+1i;4+1i3+2i2+3i1+4i;2+3i3+2i4+1i1+4i;3+2i2+3i4+1i1+4i];B=1。0000+4。0000i2.0000+3.0000i3。0000+2.0000i4.0000+1。0000i4.0000+1.0000i3。0000+2。0000i2.0000+3.0000i1.0000+4。0000i2.00
5、00+3.0000i3。0000+2.0000i4.0000+1。0000i1.0000+4.0000i3.0000+2.0000i2.0000+3。0000i4.0000+1.0000i1.0000+4。0000i5、假设已知矩阵A,试给出相应的MATLAB命令,将其全部偶数行提取出来,赋给B矩阵,用A=magic(8)命令生成A矩阵,用上述的命令检验一下结果是不是正确。【求解】魔方矩阵可以采用magic()生成,子矩阵也可以提取出来〉〉A=magic(8),B=A(2:2:end,:)A=6423616067579555412135150161747462021434224
6、4026273736303133323435292838392541232244451918484915145253111056858595462631B=95554121351501640262737363031334123224445191848858595462631个人收集整理勿做商业用途6、用MATLAB语言实现下面的分段函数.【求解】两种方法,其一,巧用比较表达式解决>>y=h*(x〉D)+h/D*x。*(abs(x)<=D)-h*(x<—D);另外一种方法,用循环语句和条件转移语句〉〉fori=1:length(x)ifx(i)〉D,y(i)=h;elseifab
7、s(x(i))〈=D,y(i)=h/D*x(i);else,y(i)=-h;endend其中,前者语句结构简单,但适用范围更广,允许使用矩阵型x,后者只能使用向量型的x,但不能处理矩阵问题。7、用数值方法可以求出,试不采用循环的形式求出和式的数值解。由于数值方法采用double形式进行计算的,难以保证有效位数字,所以结果不一定精确。试采用符号运算的方法求该和式的精确值。【求解】用符号运算的方式可以采用下面语句〉〉sum(sym(2).^[1:63])ans=18446744073709551