摘要: 众所周知,MATLAB有进行LU分解的函数lu,下面就是lu函数的厂商代码,相信这段程序,对大家编写线性方程组直接解法的诸多算法都有启发作用。%%%%%%%%%%%%%%%function [L,U,x]=lux(A,b)%LU 分解法解线性方程组(列主元LU分解)[n,n]=size(A);p=eye(n);%p记录了选择主元时候所进行的行变换for k=1:n-1 [r,m]=max(... 阅读全文
posted @ 2008-12-16 09:23 秋波渡 阅读(6085) 评论(1) 推荐(1) 编辑
摘要: 预估—校正的改进Euler方法非常经典,下面计算一个例题。y'=x+yy(0)=1 代码如下:%%%%%%%%%%%%%%%%%%%%euler2_2h=0.1;d=1;n=d/h;f=inline('x+y','x','y');x=[0:h:1]';y=zeros(n+1,1);y(1)=1;for i=1:n yp=y(i)+h*f(x(i),y(i)); yq=y(i)+h*f(... 阅读全文
posted @ 2008-12-16 09:10 秋波渡 阅读(1975) 评论(0) 推荐(0) 编辑
摘要: 非常类似前面的三弯矩法,这里的sanzhj函数和intersanzhj作用相当于前面的sanwanj和intersanwj,追赶法程序通用,代码如下。%%%%%%%%%%%%%%%%%%%function [newu,w,newv,d]=sanzhj(x,y,x0,y0,y1a,y1b)% 三转角样条插值% 将插值点分两次输入,x0 y0 单独输入% 边值条件a的一阶导数 y1a 和b的一阶导数... 阅读全文
posted @ 2008-12-16 08:46 秋波渡 阅读(3996) 评论(0) 推荐(0) 编辑
摘要: 首先说这个程序并不完善,为了实现通用(1,2,…,n)格式解题,以及为调用追赶法程序,没有针对节点数在三个以下的情况进行分类讨论。希望能有朋友给出更好的方法。首先,通过函数 sanwanj得到方程的系数矩阵,即追赶法方程的四个向量参数,接下来调用追赶法(在intersanwj函数中),得到三次样条分段函数系数因子,然后进行多项式合并得到分段函数的解析式,程序最后部分通过判断输入值的区间自动选择对应... 阅读全文
posted @ 2008-12-16 08:20 秋波渡 阅读(6816) 评论(0) 推荐(1) 编辑