资源描述:
《数学软件应用复习》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数学软件应用期末复习1、R软件基础知识1)用c()函数建立向量x<-c(10.4,5.6,3.1,6.4,21.4),用重复函数rep()建立由一些基本元素重复而成的向量w=rep(c(1,2,3),c(4,3,2));w#将1,2,3分别重复4,3,2次2)用m:n建立从m到n的自然序列(向量)a:b表示从a开始,逐项加1(或减1),直到b为止。a=1:5;a,用seq()建立等差数列(向量)seq(from=value1,to=value2,by=value3)即从value1开始,到value2结束,间隔为value3。seq(-5,5
2、,by=.2)->s1;s13)用array()>X<-array(data=1:20,dim=c(4,5));1~20,四行五列或matrix()A<-matrix(1:15,nrow=3,ncol=5,byrow=TRUE)•建立矩阵、访问数组元素:用A[i,j](A[,j]、A[i,])略写某一维的下标,则表示该维全选;a[,,]或a[]都表示整个数组。;用t()转置矩阵,用rbind()纵向连接矩阵cbind(A,B)把其自变量横向拼接;用det()计算行列式。4)求A的逆矩阵用solve(A);求方程组Ax=b可用x=solve(A
3、,b)或x=qr.solve(A,b)5)求对称矩阵A的特征值、特征向量:可用ev=eigen(A);ev$values;ev$vectors完成6)建立数据框对象:用data.frame(),也可用read.table()、read.csv()读取外部文件数据建立数据框。7)用R进行回归分析的几个配套指令2、Matlab基本操作1)MatLab的向量、矩阵多种定义方式c=[4;7;1;0;5]用空格和逗号分隔生成行向量,用分号分隔生成列向量。x=a:步长:b课件22)MatLab常用的数组操作:点运算,查找、最大最小、求和等3、MatLab
4、的常用线性代数运算:1)行列式a=det(A),逆矩阵inv(A),秩rank(A),矩阵乘A*B,矩阵除A/B,最简阶梯型rrefA=[213;132];formatratrref(A)format2)线性方程组求解(特解、通解p5859、非负解)x=lsqnonneg(A,b)可求出方程组Ax=b一个非负最小二乘解(特解);3)特征值和特征向量等[V,D]=eig(A)v是特征值组成的矩阵,E=eig(A)特征向量4、MatLab得常用微积分计算(符号与数值):课件51)导数/偏导数diff,原函数/定积分int,极限limit等2)函数
5、的局部最优值3)MatLab微分方程求解(符号与数值)课件83、MatLab流程控制语句和自定义函数的编写课件34、MatLab基本的曲线曲面绘制1)用plot指令绘制2维曲线图,能对自己定义的函数进行作图2)用meshgrid指令生成曲面网格点的底面投影坐标。用mesh或surf指令绘制3维曲面5、MatLab优化问题1)线性规划2)二次规划3)非线性规划6、MatLab插值与拟合1)用interp1作线性插值或样条插值曲线2)用lsqcurvefit作曲线拟合模拟练习symsx;f=((x-2)/(x+2))^xlimit(f,x,inf
6、)symsx;int(x^2*log(x))symsx;int(x^2*exp(-x),1,inf),求symsxyz;z=log((x^2+y^2)^0.5)dx=diff(z,x)dxy=diff(dx,y)求二阶微分方程满足定解条件y(0)=2,y'(0)=3/4的特解讲义8并画出解函数的图。y=dsolve('D2y-4*y+3*x=0','y(0)=0,Dy(0)=0.75','x'),求
7、A
8、、r(A)、A-1、特征值、特征向量。将A的第2行与第3列联成一行。设方程组为,求增广矩阵的最简阶梯形,并求全部解对,l编制自定义函数mfu
9、n(x),并用plot(x,y)画出y=mfun(x)的图。求解非线性规划minf=exp(x1x2x3x4x5)s.t.x12+x22+x32+x42+x52=10x2x3-5x4x5=0x13+x23+1>0-2.3<=xi<=2.3,i=1,2-2.3<=xi<=3.2,i=3,4,5。绘制曲面在区域-3<=x<=3,-2<=y<=2上的图形,并用绘图的点来对(-1.2,-0.9),(-.06,0.2),(0.28,0.15),(1.63,1.2)这些点计算样条插值。试用Logistic模型(其中x0=x(0),xm=MAX{x(t)}
10、)拟合美国人口统计数据,估计出r和xm,并由此预报2010年美国人口。美国人口数据如下表:年(公元)1790180018101820183018401850人口(百