资源描述:
《暑期实习总结-余帆》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、暑期《软件编程综合实习》总结余帆数学10-1班10072121从7月10号到7月20号这为期十天的暑期实习中,让我学到了很多有用的知识,进一步锻炼了我对matlab编程的运用以及巩固了spss和lingo软件的使用。接下来,我就总结下这十天的收获。提纲:在这十天中,我主要学到了matlab中用inline在线定义函数;求解线性方程组的LU分解法;matlab中的插值函数:interp1,interp2等函数的调用;矩阵特征值与特征向量的简单调用函数:norm,cond,rcond,condeig等;matlab中有
2、关求微分的函数调用,如:diff,gradient等;求积分的函数调用,如:int,quad,bdlquad等,此外还有一些数值积分方法,如梯形法,辛普森法高斯法等;求解非线性方程中fzero和fsolve函数以及黄金分割法等其他程序方法;求解常微分方程组中dsolve函数,solver求解器;求解偏微分方程组中ODE求解方法;概率统计中参数估计和假设检验的matlab实现。此外还学会了利用spss进行方差分析,利用Lingo软件求解线性规划、整数规划等问题。自己讲了matlab中的积分计算,参数估计和假设检验,s
3、pss中的方差分析等。第一部分:总结概述1.在线定义函数inline的调用,如g=@(x)x.^5。2.求解线性方程组的LU分解法函数的调用:[L,U]=lu(A),方程组Ax=b的解x可写为x=U(LBb)。b=[401-2];[L,U]=lu(A);x=U(Lb)输出结果为:x=-0.3721-0.8291-1,53361.4547由计算结果可知,方程组的解为[x1,x2,x3,x4]=[-0.3721,-0.8291,-1,5336,1.4547]。3.Matlab中的插值函数:interp1x=0
4、:2*pi;y=sin(x);xx=0:0.5:2*pi;yy=interp1(x,y,xx);plot(x,y,’s’,xx,yy)输出图形:4.Matlab中cond函数的调用:c=cond(X),norm函数的调用:n=norm(A,1)等。5.Matlab中求微分的函数diff的调用,如df=diff(‘sin(x)’);df=cos(x)df=diff(‘sin(x*y)’,’y’)df=cos(x*y)*x等。6.Matlab中求积分的函数的调用,求不定积分,如:f=int('sin(x)*x'),f=
5、int('sin(x)*y','x')等。求定积分,如q=int('x^3+sin(x)',1,3)等。求二重积分,如symsyq=int('x^3+sin(y)',y,1,3),q=dblquad('sin(x)*sqrt(y)',-1,-1,0,2)等。此外还有几种数值积分方法的程序实现,如:复合梯形公式:function[I,step]=combinetraprl(f,a,b,eps)if(nargin==3)eps=1.0e-4;endn=1;h=(b-a)/2;I1=0;I2=(subs(sym(f),f
6、indsym(sym(f)),a)+subs(sym(f),findsym(sym(f)),b))/h;whileabs(I2-I1)>epsn=n+1;h=(b-a)/n;I1=I2;I2=0;fori=0:n-1x=a+h*i;x1=x+h;I2=I2+(h/2)*(subs(sym(f),findsym(sym(f)),x)+subs(sym(f),findsym(sym(f)),x1));endendI=I2;step=n;调用此函数,[q,s]=combinetraprl('1/(x^2-1)',2,4,
7、1.0e-6),输出q=0.2939,s=15,可知辛普森公式:function[I,step]=IntSimpson(f,a,b,type,eps)%辛普森系列公式求函数f在区间[a,b]上的定积分%函数名:f%积分下限:a%积分上限:b%辛普森公式的类型:type%积分精度:eps%积分值:I%积分划分的子区间个数:stepif(type==3&&nargin==4)disp('缺少参数!');endI=0;switchtypecase1,%辛普森公式I=((b-a)/6)*(subs(sym(f),finds
8、ym(sym(f)),a)+...4*subs(sym(f),findsym(sym(f)),(a+b)/2)+...subs(sym(f),findsym(sym(f)),b));step=1;case2,%辛普森3/8公式I=((b-a)/8)*(subs(sym(f),findsym(sym(f)),a)+...3*subs(sym(f),findsy