哈工大MATLAB选修课小作业2

合集下载

MATLAB作业2参考答案(2018)

MATLAB作业2参考答案(2018)

MATLAB 作业二参考答案1、试求下面线性代数方程的解析解与数值解,并检验解的正确性。

2932114010110503848246303356684953X -----⎡⎤⎡⎤⎢⎥⎢⎥----⎢⎥⎢⎥=⎢⎥⎢⎥---⎢⎥⎢⎥------⎣⎦⎣⎦【求解】求出A , [A;B ] 两个矩阵的秩,可见二者相同,所以方程不是矛盾方程,应该有无穷多解。

>> A=[2,-9,3,-2,-1; 10,-1,10,5,0; 8,-2,-4,-6,3; -5,-6,-6,-8,-4]; B=[-1,-4,0; -3,-8,-4; 0,3,3; 9,-5,3]; [rank(A), rank([A B])] ans =4 4用下面的语句可以求出方程的解析解,并可以验证该解没有误差。

>> x0=null(sym(A));x_analytical=sym(A)\B; syms a; x=a*[x0 x0 x0]+x_analytical x =[ a+967/1535, a-943/1535, a-159/1535] [ -1535/1524*a, -1535/1524*a, -1535/1524*a][ -3659/1524*a-1807/1535,-3659/1524*a-257/1535,-3659/1524*a-141/1535] [ 1321/508*a+759/1535, 1321/508*a-56/1535, 1321/508*a-628/1535] [ -170/127*a-694/307, -170/127*a+719/307, -170/127*a+103/307] >> A*x-B ans =[ 0, 0, 0][ 0, 0, 0][ 0, 0, 0][ 0, 0, 0]用数值解方法也可以求出方程的解,但会存在误差,且与任意常数a 的值有关。

>> x0=null(A); x_numerical=A\B; syms a;x=a*[x0 x0 x0]+x_numerical; vpa(x,10)ans =[ .2474402553*a+.1396556436, .2474402553*a-.6840666849, .2474402553*a-.1418 420333][-.2492262414*a+.4938507789,-.2492262414*a+.7023776988e-1,-.2492262414*a+ .3853511888e-1][ -.5940839201*a, -.5940839201*a, -.5940839201*a][ .6434420813*a-.7805411315, .6434420813*a-.2178190763,.6434420813*a-.50860 89095][-.3312192394*a-1.604263460, -.3312192394*a+2.435364854,-.3312192394*a+.3867176824]>> A*x-Bans =[ 1/18014398509481984*a, 1/18014398509481984*a, 1/18014398509481984*a] [ -5/4503599627370496*a, -5/4503599627370496*a, -5/4503599627370496*a] [ -25/18014398509481984*a, -25/18014398509481984*a,-25/18014398509481984*a][ 13/18014398509481984*a, 13/18014398509481984*a, 13/18014398509481984*a]2、求解下面的联立方程,并检验得出的高精度数值解(准解析解)的精度。

哈尔滨工程大学传热学大作业数值计算matlab程序内容

哈尔滨工程大学传热学大作业数值计算matlab程序内容

传热学作业数值计算1 程序内容: 数值计算matlab程序内容:>> tw1=10; % 赋初值赋初值 tw2=20; c=1.5; p2=20; p1=c*p2; L2=40; L1=c*L2; deltaX=L2/p2; a=p2+1; b=p1+1; =ones(a,b)*5; m1=ones(a,b); m1(a,2:b-1)=zeros(1,b-2); m1(2:a,1)=zeros(a-1,1); m1(2:a,b)=zeros(a-1,1); m1(1,:)=ones(1,b)*2; k=0; max1=1.0; tn= ; while(max1>1e-6) max1=0; k=k+1; for i=1:1:a for j=1:1:b m=m1(i,j); n= (i,j); switch m case 0 tn(i,j)=tw1; case 1 tn(i,j)=0.25*(tn(i,j+1)+tn(i,j-1)+tn(i+1,j)+tn(i-1,j)); case 2 tn(i,j)=tw1+tw2*sin(pi*(j-1)/(b-1)); end er=abs(tn(i,j)-n); if er>max1 max1=er; end end end =tn; end k max1 t2=ones(a,b); %求解析温度场求解析温度场for i=a:-1:1 for j=1:1:b y=deltaX*(a-i); x=deltaX*(j-1); t2(i,j)=tw1+tw2*sin(pi*x/L1)*(sinh(pi*y/L1))/(sinh(pi*L2/L1)); end end t2 迭代次数k =706 数值解温度场 数值解每次迭代的最大误差max1 =9.8531e-07 解析温度场 t2 解析温度场取第11行的解析解和数值解的点行的解析解和数值解的点行的解析解的直线,散点为其数值解的点 曲线为第11行的解析解的直线,散点为其数值解的点解析解 第11行的误差=[数值解(11行) –解析解(11行)]/解析解数值温度场图像数值温度场图像 解析温度场图像解析温度场图像数值解与解析解的误差数值解与解析解的误差数值计算matlab 程序内容:程序内容: >> tw1=10; tw2=20; c=1.5; p2=20; p1=c*p2; L2=20; deltaX=L2/p2; L1=c*L2; a=p2+1; b=p1+1; =ones(a,b)*5; m1=ones(a,b); m1(a,2:b-1)=zeros(1,b-2); m1(2:a,1)=zeros(a-1,1); m1(2:a,b)=zeros(a-1,1); m1(1,:)=ones(1,b)*2; k=0; max1=1.0; tn= ; while(max1>1e-6) max1=0; k=k+1; for i=1:1:a for j=1:1:b m=m1(i,j); n= (i,j); switch m case 0 tn(i,j)=tw1; case 1 tn(i,j)=0.25*(tn(i,j+1)+tn(i,j-1)+tn(i+1,j)+tn(i-1,j)); case 2 tn(i,j)=tw2; end er=abs(tn(i,j)-n); if er>max1 max1=er; end end end =tn; end k max1 tx=ones(a,b); for i=1:1:a for j=1:1:b y=(a-i)*deltaX; x=(j-1)*deltaX; m=sym('m'); g=(((-1)^(m+1)+1)/m)*sin(m*pi*x/L1)*sinh(m*pi*y/L1)/sinh(m*pi*L2/L1); h=symsum(g,m,1,100); tx(i,j)=2*h*(tw2-tw1)/pi+tw1; end end tx 迭代次数k = 695 数值解温度场 数值解每次迭代的最大误差max1 =9.8243e-07 解析温度场 tx = 解析温度场行的解析解和数值解的点取第11行的解析解和数值解的点行的解析解的直线,散点为其数值解的点 曲线为第11行的解析解的直线,散点为其数值解的点解析解 第11行的误差=[数值解(11行) –解析解(11行)]/解析解图像: 数值温度场 图像图像 :解析温度场tx图像:数值解与解析解的误差数值解与解析解的误差程序内容: 数值计算matlab程序内容:>> t0=90; =10; L=10; c=0.25; p2=20; p1=p2/c; B=c*L; d=0.5*B; h=10; a=p2+1; b=p1+1; deltaX=B/p2; lambda=160; Bi=h*deltaX/lambda; =ones(a,b)*10; m1=ones(a,b)*3; m1(2:a-1,1)=zeros(a-2,1); m1(a,2:b-1)=ones(1,b-2); m1(1,2:b-1)=ones(1,b-2)*6; m1(2:a-1,b)=ones(a-2,1)*2; m1(1,b)=ones(1,1)*4; m1(a,b)=ones(1,1)*5; m1(1,1)=7; m1(a,1)=8; tn= ; max1=1.0; k=0; while ( max1>1e-6) k=k+1; max1=0; for i=1:1:a for j=1:1:b m=m1(i,j); n=tn(i,j); switch m case 0 tn(i,j)=t0; case 1 tn(i,j)=(2*tn(i-1,j)+tn(i,j-1)+tn(i,j+1)-4* )/(4+2*Bi)+ ; case 2 tn(i,j)=(2*tn(i,j-1)+tn(i-1,j)+tn(i+1,j)-4* )/(4+2*Bi)+ ; case 3 tn(i,j)=0.25*(tn(i,j-1)+tn(i,j+1)+tn(i-1,j)+tn(i+1,j)); case 4 tn(i,j)=(tn(i,j-1)+tn(i+1,j)-2* )/(2*Bi+2)+ ; case 5 tn(i,j)=(tn(i,j-1)+tn(i-1,j)-2* )/(2*Bi+2)+ ; case 6 tn(i,j)=(2*tn(i+1,j)+tn(i,j-1)+tn(i,j+1)-4* )/(4+2*Bi)+ ; case 7 tn(i,j)=t0; case 8 tn(i,j)=t0; end er=abs(tn(i,j)-n); if er>max1 max1=er; end end end =tn; end k ta=ones(a,b); Bi1=h*d/lambda; sbi=sqrt(Bi1); for i=1:1:a for j=1:1:b if i>(a+1)/2 y=-(i-(a+1)/2)*deltaX; else y=((a+1)/2-i)*deltaX; end x=deltaX*(j-1); ta(i,j)=(cosh(sbi*(L-x)/d)+sbi*sinh(sbi*(L-x)/d))*(t0- )/(cosh(sbi*L/d)+sbi*sinh(sbi*L/d))+ ; end end ta 迭代次数k =1461 数值解温度场 解析温度场 ta 解析温度场行的解析解和数值解的点取第11行的解析解和数值解的点曲线为第11行的解析解的直线,散点为其数值解的点行的解析解的直线,散点为其数值解的点解析解 第11行的误差=[数值解(11行) –解析解(11行)]/解析解图像如下图像如下数值温度场图像数值温度场图像 解析温度场图像解析温度场图像数值解与解析解的误差数值解与解析解的误差程序内容:数值计算matlab程序内容:>> tw=10; L2=15; c=0.75; L1=L2/c; p2=24 ; p1=p2/c; deltaX=2*L2/p2; a=p2+1; b=p1+1; lambda=16; qv0=24; =ones(a,b)*5; m1=ones(a,b); m1(1,:)=zeros(1,b); m1(2:a,b)=zeros(a-1,1); m1(2:a,1)=zeros(a-1,1); m1(a,2:b-1)=zeros(1,b-2); tn= ; max1=1.0; k=0; while(max1>1e-6) max1=0; k=k+1; for i=1:1:a for j=1:1:b m=m1(i,j); n=tn(i,j); switch m case 0 tn(i,j)=tw; case 1 tn(i,j)=0.25*(tn(i-1,j)+tn(i+1,j)+tn(i,j-1)+tn(i,j+1)+qv0*(deltaX^2)/lambda); end er=abs(tn(i,j)-n); if er>max1 max1=er; end end end =tn; end k; tx=ones(a,b); for i=1:1:a for j=1:1:b if i>(a+1)/2 y=-(i-(a+1)/2)*deltaX; else y=((a+1)/2-i)*deltaX; end if j>(b+1)/2 x=(j-(b+1)/2)*deltaX; else x=-((b+1)/2-j)*deltaX; end m=sym('m'); xi=(2*m-1)*pi/2; g=((-1)^m)/(xi^3)*(cosh(xi*y/L1)/cosh(xi*L2/L1))*cos(xi*x/L1); h=symsum(g,m,1,100); tx(i,j)=2*qv0*L1^2/lambda*h+qv0*(L1^2-x^2)/(2*lambda)+tw; end end tx 数值温度场 解析温度场tx 取第13行的解析解和数值解的点行的解析解和数值解的点行的解析解的直线,散点为其数值解的点曲线为第13行的解析解的直线,散点为其数值解的点解析解 第13行的误差=[数值解(13行) –解析解(13行)]/解析解数值温度场图像数值温度场图像 解析温度场图像解析温度场图像数值解与解析解的误差数值解与解析解的误差。

选修课MATLAB作业

选修课MATLAB作业

选修课MATLAB作业Matlab程序设计作业学院:信息科学与技术学院专业:通信⼯程姓名:刘潇学号:201313070404班级:通信4班教师:徐静⽇期:2014年11⽉9⽇⽂件1%学号:201313070404%姓名:刘潇clear all %清除⼯作空间的所有变量clf %清除图形窗⼝的内容mfilename('fullpath') %返回当前正在运⾏的函数所在⽂件的⽂件名echo on%本m⽂件运⾏后会输出6个图形subplot(2,3,1) %subplot(m,n,p)是将多个图画到⼀个平⾯上的⼯具。

其中,m表⽰是图排成m⾏,n表⽰图排成n列,p表⽰图所在的位置。

t = 0:0.1:10;z = impulse(1, [1 1 1], t);stairs(t(1:5:end),z(1:5:end)) %stairs函数⽤于绘制阶梯状图,在图中为蓝⾊的那根线hold on %hold on 表⽰保留原来的图plot(t,z,'r') %绘图函数,在图中为红⾊的那根连续的线plot([0 t(end)], [0 0], 'k:') %绘图函数,在图中为⽔平虚线,左边对准了0刻度线title('Impulse Response - (STAIRS)') %在图形上⽅添上标题subplot(2,3,2) %此函数表⽰接下来的图形绘制在第⼆个位置theta = 2*pi*(0:74)/75;x = cos(theta);y = sin(theta);z = abs(fft(ones(10,1), 75))';stem3(x, y, z) %stem3函数绘制离散序列数据的三维杆图title('Polar FFT - (STEM3)') %在图形上⽅添上标题subplot(2,3,3) %此函数表⽰接下来的图形绘制在第三个位置[X,Y,Z] = peaks(-2:0.25:2);[U,V] = gradient(Z, 0.25);contour(X,Y,Z,10); %该函数⽤于绘制矩阵的等⾼线hold on %hold on 表⽰保留原来的图quiver(X,Y,U,V); %使⽤箭头绘制⽮量图title('Surface Gradient - (CONTOUR & QUIVER)') %在图形上⽅添上标题theta = 0:0.1:4*pi;[x,y] = pol2cart(theta(1:5:end), theta(1:5:end));subplot(2,3,4) %此函数表⽰接下来的图形绘制在第四个位置polar(theta,theta)axis([-13 13 -12.5 14.5])title('Spiral Plot - (POLAR)') %在图形上⽅添上标题subplot(2,3,5) %此函数表⽰接下来的图形绘制在第五个位置compass(x,y) %在⼀个圆形带⽹格的区域内,使⽤带箭头的线条绘制从原点出发的若⼲向量。

MATLAB实验课课后作业(2)

MATLAB实验课课后作业(2)

实验目的:1、 掌握Matlab 的基本操作和基本运算。

2、 理解常见数学模型的概念、算法。

3、 理解遗传算法的基本算子的实现和改进。

一、基本编程要求:写出完成下列运算的程序,并给出计算结果。

(#表示第一位同学学号的最后一位)1随机给出一个10*6的矩阵,矩阵的元素在区间(-20+#,20+#)内,并找出该矩阵中最小的元素。

2生成一个15*1#任意0-1矩阵,使得1的个数出现的概率为0.3. 并统计矩阵中元素1的个数。

3画出函数21+sin()2x y x=+在[-1#,1#]的图像。

4. 定义一个函数,功能是实现反馈一个矩阵的对角线上元素的平方和,以及最小的元素所在的行x,列y (如果有重复的,要求全部反馈)。

5. 以(1,1),(5,-6),(7,9)为中心,分别随机产生50个服从N (0,1),N (0,5),N (0,10)的正态分布的随机数据,用K-均值聚类方法,将上述数据分为两类、三类和四类,并画图。

二、110警车配置方案110警车在街道上巡弋,既能够对违法犯罪分子起到震慑作用,降低犯罪率,又能够增加市民的安全感,同时也加快了接处警(接受报警并赶往现场处理事件)时间,提高了反应时效,为社会和谐提供了有力的保障。

考虑某城市内一区域,为简化问题,假定所有事发现场均在下图的道路叉口上。

(见下图,蓝色部分为水域,道路数据见附件,相邻两个交叉路口之间的道路近似认为是直线)。

某城市拟增加一批配备有GPS 卫星定位系统及先进通讯设备的110警车,布置在各交通路口。

设110警车接警后的平均行驶速度为40km/h 。

求警车的最优配置。

请完成以下问题:1、用Matlab 软件画出图形。

2、求点1##到2##的最短距离与路径。

3、若警车有1#辆,(#表示第一位同学学号的后一位)用贪婪算法求最优配置,并明确给出结果和在接警后三分钟内赶到现场的比例。

4、若警车有1#辆,(#表示第一位同学学号的后一位)用遗传算法求最优配置,并明确给出结果和在接警后三分钟内赶到现场的比例。

matelab作业2参考答案

matelab作业2参考答案

matelab作业2参考答案Matlab作业2参考答案Matlab作业2是一项综合性的任务,要求学生运用Matlab编程语言解决一系列数学问题。

本文将为大家提供一份参考答案,帮助学生更好地理解和完成这项作业。

首先,我们将讨论作业的第一个问题,即给定一个矩阵A,求解其特征值和特征向量。

在Matlab中,可以使用eig函数来实现这一功能。

例如,假设我们有一个3×3的矩阵A,可以按照以下方式计算其特征值和特征向量:```A = [1 2 3; 4 5 6; 7 8 9];[eigenvectors, eigenvalues] = eig(A);```在上述代码中,变量eigenvectors将存储A的特征向量,而变量eigenvalues 将存储A的特征值。

通过打印这两个变量的值,我们可以得到矩阵A的特征值和特征向量。

接下来,我们将探讨作业的第二个问题,即求解线性方程组。

假设我们有一个3×3的系数矩阵A和一个3×1的常数向量b,我们需要求解方程组Ax=b。

在Matlab中,可以使用backslash运算符来求解线性方程组。

例如,假设我们有以下方程组:```A = [1 2 3; 4 5 6; 7 8 9];b = [10; 20; 30];x = A \ b;```在上述代码中,变量x将存储方程组的解。

通过打印变量x的值,我们可以得到方程组的解。

此外,作业的第三个问题要求学生使用Matlab绘制函数图像。

在Matlab中,可以使用plot函数来实现这一功能。

例如,假设我们要绘制函数y=sin(x),其中x的取值范围为0到2π,可以按照以下方式绘制函数图像:```x = 0:0.1:2*pi;y = sin(x);plot(x, y);```在上述代码中,变量x将存储x的取值范围,变量y将存储对应的函数值。

通过调用plot函数,我们可以将函数y=sin(x)的图像绘制出来。

MATLAB课程作业

MATLAB课程作业

注意:11月15日是交作业的最后期限。

(交word和MATLAB程序清单,word以“班级-学号-姓名”命名,每个MATLAB程序以”zuoye_题号”命名后,放在一个文件夹下(文件夹命名为“作业程序”),如zuoye_1_1.m),将word和“作业程序”文件夹放在一个文件夹(文件夹以“班级-学号-姓名”)交到班长处,班长统一交到教学办公室。

第一部分程序设计1.1、用MA TLAB可以识别的格式输入下面两个矩阵:(1) 矩阵A的维数;(2) 矩阵A中的元素a41的值;(3) 修改矩阵A的元素,使a41 =3.0;(4) 矩阵A中最后2行和最后3列交汇形成的子矩阵的值。

(5)求出A和B的乘积矩阵C,并将C矩阵的右下角2X 3子矩阵赋给D矩阵。

1.2、已知111121111,131,111214A B⎡⎤⎡⎤⎢⎥⎢⎥=-=-⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求(1)AB-2A,(2)A*B,(3)A﹒*B,(4) AB-BA 1.3、解线性方程:1.4、解方程组:1.5、用MA TLAB语言实现下面的分段函数:1.6、已知x=[1 2 3 ],y=[4 5 6 ],试计算z=x.*y 、x.\y 和x./y.1.7、分别用for 和while 循环语句编写程序,求出1.8、 已知在平面坐标中两点(x 1, y 1)和(x 2, y 2)之间的距离计算公式为 ()()222121y y x x L -+-=(1) 利用命令文件的形式,编写求解该距离的M 文件dis1.m ;(2) 利用函数文件的形式,编写求解该距离的M 文件dis2.m ;(3) 给定两点坐标的值(2,3)和(8, -5),试分别调用命令文件dis1.m 和函数文件dis2.m 求解该两点间距离的值。

1.9、求解方程x 5+6x 3一3x 2=10的5个根,并将其位置用五角星符号标记在复平面上,要求横纵坐标袖的刻度等长,注明虚轴和实轴,在title 位置上写㈩方程。

matlab小作业

matlab小作业

matlab小作业当提到 MATLAB(MATrix LABoratory)的小作业时,通常涉及到基于矩阵和数值计算的任务。

以下是一个简单的MATLAB 小作业示例:小作业题目:向量运算和图形绘制向量运算:创建两个列向量 A 和 B,分别包含 5 个随机整数。

计算它们的点积、叉积和对应元素相乘的结果。

矩阵操作:创建一个 3x3 的矩阵 C,其中的元素可以是任意整数。

计算该矩阵的转置、逆矩阵以及行列式。

图形绘制:使用 plot 函数绘制函数 y = sin(x) 在区间 [-2π, 2π] 上的图像。

使用不同的线型、颜色和标签来区分不同的图线。

子图:创建一个包含两个子图的图形,分别绘制y = cos(x) 和 y = tan(x) 在相同的区间上。

调整轴标签、标题和图例以提高图形可读性。

保存图形:将整个图形保存为一个图像文件(比如 PNG 或 JPEG 格式)。

MATLAB 代码示例:% 向量运算A = randi([1, 10], 5, 1);B = randi([1, 10], 5, 1);dot_product = dot(A, B);cross_product = cross(A, B);elementwise_product = A .* B;% 矩阵操作C = randi([1, 10], 3, 3);transpose_C = transpose(C);inverse_C = inv(C);determinant_C = det(C);% 图形绘制x = linspace(-2*pi, 2*pi, 100);y_sin = sin(x);figure;plot(x, y_sin, '-r', 'LineWidth', 2, 'DisplayName', 'y = sin(x)');ylabel('y');title('Graph of y = sin(x)');legend('show');% 子图y_cos = cos(x);y_tan = tan(x);figure;subplot(2, 1, 1);plot(x, y_cos, '-b', 'LineWidth', 2, 'DisplayName', 'y = cos(x)');xlabel('x');ylabel('y');title('Graph of y = cos(x)');legend('show');subplot(2, 1, 2);plot(x, y_tan, '-g', 'LineWidth', 2, 'DisplayName', 'y = tan(x)');xlabel('x');title('Graph of y = tan(x)');legend('show');% 保存图形saveas(gcf, 'my_plot.png');以上 MATLAB 代码包含了基本的向量和矩阵操作,以及图形的绘制和保存。

matlab选修课 答案详解 实验指导书Matlab软件应用与开发

matlab选修课 答案详解  实验指导书Matlab软件应用与开发

《Matlab软件应用与开发》实验指导书实验1 Matlab 操作基础及矩阵运算(一)、实验类型:验证型(二)、实验类别:基础实验(三)、每组人数:1(四)、实验要求:选修(五)、实验学时:3个学时(六)、实验目的:(1)熟悉MATLAB软件中关于矩阵运算的各种命令;(2)学会运用MATLAB软件自定义函数,并求出函数值;(3)学会在MATLAB环境下编写函数。

(七)、预备知识:线性代数中的矩阵运算;高等数学中微积分知识。

本实验所用MATLAB命令●矩阵输入格式:A=[a11 a12;a21 a22];b=初始值:步长:终值●求A的转置:A’●求A加B:A+B●求A减B:A-B●求A乘B:A*B●求A的行列式:det(A)●求A的逆:inv(A)●求A的秩: rank(A)●求函数的极限limit(.)● 求函数的导数diff(.) ● 求函数的积分 int(.) ● 求代数方程的解 solve(.) ● 求微分方程的解 dsolve(.) (八)、内容与要求: 1、 输入矩阵A,B,b;⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=521572215431352134153524852421A ,⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=232556463515148355372182414512B []27252321=b2、 矩阵转置、四则运算。

C1=A ’,C2=A+B,C3=A-B,C4=A*B3、 求行列式。

D1=|A|,D2=|B|4、 求矩阵A 、B 的秩E1,E25、 求极限 11232lim +∞→⎪⎭⎫⎝⎛++x x x x6、 设x xe y =,求)5(y7、 求dx xx ⎰41ln8、求微分方程的通解232++=+'x x y y x9、自定义函数21221221)1()(100),(x x x x x f -+-=,并计算)2,1(f 。

(九)、实验操作1、>> A=[21 24 85 4;2 35 15 34;21 35 31 54;21 72 15 52] A =21 24 85 42 35 15 3421 35 31 5421 72 15 52>> B=[12 45 1 24;18 72 53 35;48 1 15 35;46 56 25 23]B =12 45 1 2418 72 53 3548 1 15 3546 56 25 23>> b=21:2:27b =21 23 25 272、>> C1=A',C2=A+B,C3=A-B,C4=A*BC1 =21 2 21 2124 35 35 7285 15 31 154 34 54 52C2 =33 69 86 2820 107 68 6969 36 46 8967 128 40 75C3 =9 -21 84 -20-16 -37 -38 -1-27 34 16 19-25 16 -10 29C4 =4948 2982 2668 4411 2938 4529 2932 2580 4854 6520 3691 4056 4660 9056 5362 4745 3、>> D1=det(A),D2=det(B)D1 =2181568D2 =-31822764、>> E1=rank(A),E2=rank(B);E1 =4E2 =45、>> syms x; %定义符号变量x>> limit(((2*x+3)/(2*x+1))^(x+1),x,inf) %求函数((2*x+3)/(2*x+1))^(x+1)当x->inf 时的极限 (inf 即英文 infinity “无穷”的缩写) inf表示正无穷大ans =exp(1)6、>> syms y x %定义符号变量>> y=x*exp(x); %定义符号函数>> diff(y,5) %计算符号函数的五阶导数ans =5*exp(x)+x*exp(x)7、>> syms x s %定义符号变量>> s=(log(x))/sqrt(x) %定义符号表达式>> int(s,1,4) %计算符号表达式在区间[1,4]上的定积分ans =8*log(2)-4 8、>> [y]=dsolve('x*Dy+y=x^2+3*x+2','x') %微分或导数的输入是用Dy 、D2y 、D3y 、…来表示y的一阶导数dx dy或y '、二阶导数x d y d 22或y ''、三阶导数x d y d 33或y '''、…。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

(1) 建立函数: function yp=fun2(t,y) %建立相应的函数 yp=-(1.2+sin(10.*t)).*y; end 再在命令窗口输入: [t,y]=ode23('fun2',[0,5],1); [t,y] 得倒最后的结果为: ans = 0 1 1/15 384/425 254/1847 801/1024 265/1323 305/447 176/653 873/1459 675/1913 598/1107 2197/5037 1212/2339 1075/2136 529/1036 363/641 523/1051 1717/2696 643/1381 1086/1571 577/1348 173/232 494/1285 3277/4055 463/1380 921/1054 588/2003 773/806 404/1557 1597/1554 767/3106 649/592 453/1871 8736/7531 902/3787 1205/984 117/511 972/743 83/404 5579/4068 267/1468 1548/1079 197/1243
K2=polyder(P,Q); [p,q]=polyder(P,Q); p=poly2str(p,'x'); q=poly2str(q,'x'); D1=poly2str(K1,'x'); D2=poly2str(K2,'x'); D3=poly2str([p,q],'x') 运行的结果如下:
D1 = 8 x^3 - 9 x^2 + 5 D2 = 12 x^5 + 35 x^4 + 4 x^3 - 57 x^2 + 76 x + 105 D3 = x^82 + x^81 + x^80 + 4 x^79 + x^78 + x x^77 + ^ x^76 + 5 x^75 + x^74 + + x^73 + x^72 + 2 x^71 + 7 x^70 + x^69 + x x^68 + ^ x^67 + 4 x^66 + x^65 + + x^64 + x^63 + 3 x^62 + 4 x^61 + x^60 + x x^59 + ^ x^58 + 3 x^57 + x^56 + - x^55 + x^54+ 7 x^53 + 7 x^52 + x^51 + x x^50 + ^ x^49 + 2 x^48 + x^47 + - x^46 + x^45 + 2 x^44 + 6 x^43 + x^42 + x x^41 + x^40+ - x^39 + x^38 + 2 x^37 + 5 x^36 + x^35 + x^34 + x^33+ x x^32 + ^ x^31 + 4 x^30 + x^29 + + x^28 + x^27 + 1 x^26+ 0 x^25 + x^24 + x x^23 + ^ x^22 + 3 x^21 + x^20 + + x^19 + x^18 + 4 x^17 + 1 x^16 + x^15 + x x^14 + ^ x^13 + 2 x^12+ x^11 + + x^10 + x^9 + 8 x^8 + 0 x^7 + x^6 + x x^5 + x^4 + x^3 + x^2 + 6 x + 4
(2)M文件如下: function q=t(p) x=p(1); y=p(2); z=p(3); q(1)=sin(x)+y^2+log(z)-7; q(2)=3*x+2.^y-z^3+1; q(3)=x+y+z-5; end 再输入: x=fsolve('t',[1,1,1]',optimset('Display','off')) 运行结果如下: x=fsolve('t',[1,1,1]',optimset('Display','off')) x= 1013/1691 1531/639 1999/997
title('最近点法') subplot(1,3,2); y2=interp1(x,y,xx); plot(x,y,'-*',xx,yy,'rx'); title('线性法'); subplot(1,3,3); y3=interp1(x,y,xx,'spline'); plot(x,y,'-*',xx,y3,'xr'); title('3次样条法');
legend('描点显示','五次拟合')
2. 采用最近点法、线性法和3 次样条法插值计算1-100 整数间 平方根
n 1 4 9 16 25 36 49 64 81 100 Sqtr(n)1 2 3 4 5 6 7 8 9 10 解:程序如下:
x=[1,4,9,16,25,36,49,64,81,100];y=x.^0.5; xx=0:100; subplot(1,3,1); y1=interp1(x,y,xx,'nearest'); plot(x,y,'-*',xx,y2,'xr');
Байду номын сангаас
解:分别对应的程序如下: Sin x函数和tan x函数: x1= pi*(0:90)/180; y1 = sin(x1); xx1 = pi*(0:.25:90)/180; x2 = pi*(0:75)/180; y2 = tan(x2); xx2 = pi*(0:.25:75)/180; yy2 = spline(x2,y2,xx2); yy1 = spline(x1,y1,xx1); plot(x1,y1,'mo',xx1,yy1,x2,y2,'ro',xx2,yy2);
6. 求解超定方程组,采用采用左除法、求逆法和最小二乘法
2x-4y+10z=22 6x+5y-4z=32
5x-y+33z=10 x+4y-76z=33
对应的程序如下: A=[2,-4,10;6,5,-4;5,-1,33;1,4,-76]; b=[22;32;10;33]; X1=A\b;%左除法 X2=pinv(A)*b;%求逆法 X3=lsqnonneg(A,b);%最小二乘法 [X1 X2 X3] 运行的结果如下: ans = 5340/851 -333/136 -1103/2144 5340/851 1410/331 -333/136 2035/1129 -1103/2144 0
10403/6935 514/3707 1082/683 239/1951 1253/758 1818/15625 842/489 251/2202 2984/1671 303/2701 864/467 1346/12463 3035/1571 121/1242 848/425 271/3137 1929/937 267/3547 1306/615 505/7671 419/190 147/2530 14989/6590 181/3295 75/32 629/11712 2396/995 253/4783 220/89 180/3523 1553/609 132/2833 1605/614 103/2484 1347/503 71/1965 1604/585 589/18652 1841/653 144/5177 1066/367 241/9332 659/222 213/8422 2535/836 211/8466 1517/490 141/5845 682/215 187/8447 2204/681 269/13622 1789/542 47/2731 3011/895 143/9511 1479/430 83/6274 1671/473 47/3867 6578/1829 58/4873 948/259 151/12873 1672/449 623/54863 4632/1219 127/12180 313/81 63/6772 20291/5165 147/18131 1002/251 136/19201
1. 表1 用三次样条方法插值计算0-90 度内整数点的sin 值和0-75 度内整数点的 正切值,然后用5 次多项式拟合方法计算相同的函数。
a(度) 0 15 30 45 60 75 90 Sin(a) 0 0.2588 0.5000 0.7071 0.8660 0.9659 1.0000 tan(a) 0 0.2679 0.5774 1.0000 1.7320 3.732
程序如下: X1=fzero('x^41+x^3+1',-1); X2=fzero('x-sin(x)./x',0.5); X3=fzero('3*x+sin(x)-exp(x)',1.5); [X1 X2 X3] 结果如下: ans = -441/463 889/1014 1289/682
相关文档
最新文档