![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数值分析
studyer_domi
学习者
展开
-
2021-01-07 matlab数值分析 常微分方程初边值问题数值解 标准龙格库塔四阶四段公式 欧拉法
matlab数值分析 常微分方程初边值问题数值解标准龙格库塔四阶四段公式欧拉法1、标准龙格库塔四阶四段公式function y=rk4(fun,a,b,y0,n)h=(b-a)/n;y(1)=y0;for k=1:n x=a+(k-1)*h; k1=h*feval(fun,x,y(k)); k2=h*feval(fun,x+h/2,y(k)+k1/2); k3=h*feval(fun,x+h/2,y(k)+k2/2); k4=h*feval(fun,x+h,y(k)+..原创 2021-01-08 09:41:44 · 1385 阅读 · 0 评论 -
2021-01-07 matlab数值分析 矩阵特征值与特征向量的计算 改进乘幂法 反幂法
matlab数值分析 矩阵特征值与特征向量的计算1改进乘幂法function [t,y]=eigIPower(A,v0,ep)[tv,ti]=max(abs(v0));lam0=v0(ti);u0=v0/lam0;err=ep*10; %为第一步循环做准备,此处不考虑0次循环的情况while(err>ep) v1=A*u0; [tv,ti]=max(abs(v1)); lam1=v1(ti); err=abs(lam0-lam1); u.原创 2021-01-07 17:08:12 · 2001 阅读 · 1 评论 -
2021-01-07 matlab数值分析 非线性方程求根 牛顿法
matlab数值分析 非线性方程求根牛顿法%牛顿法求非线性方程的根:% 输入:fun--非线性函数;dfun--非线性函数导数;x0--初始值;tol--精度;% 输出:x--非线性方程数值根function [x,iter]=newton(fun,dfun,x0,tol)format longiter=1;x=x0;while iter<500 x=x-feval(fun,x)/feval(dfun,x); if abs(feval(fun,x))<to.原创 2021-01-07 17:06:21 · 1323 阅读 · 2 评论 -
2021-01-07 matlab数值分析 线性方程组的迭代解法 高斯-赛德尔迭代法
matlab数值分析 线性方程组的迭代解法高斯-赛德尔迭代法Function [x,iter]=gs(A,b,tol)D=diag(diag(A));L=D-tril(A);U=D-triu(A);x=zeros(size(b)); %从x=[0;0…]T开始for iter=1:500 x=(D-L)\(b+U*x); %此句换为x=(D)\(b+L*x+U*x);即为Jacobi迭代 error=norm(b-A*x)/norm(b); ..原创 2021-01-07 17:05:03 · 1019 阅读 · 0 评论 -
2021-01-07 matlab数值分析 数值积分与数值微分 复合梯形公式 复合Simpson公式
matlab数值分析 数值积分与数值微分1 复合梯形公式function I=ftrapz(f,a,b,n)format long %显示15位双精度h=(b-a)/n;x=linspace(a,b,n+1);y=feval(f,x); I=h*(0.5*y(1)+sum(y(2:n))+0.5*y(n+1));函数文件function y=fun1(x)y=exp(-x);调用程序t=ftrapz(@fun1,0,1,10)2 复..原创 2021-01-07 16:54:03 · 3922 阅读 · 1 评论 -
2021-01-07 matlab数值分析 插值法 拉格朗日插值法 牛顿插值法
matlab数值分析插值法1 拉格朗日插值法function yh=lagrange(x,y,xh)n=length(x);m=length(xh);yh=zeros(1,m);for j=1:m; for i=1:n xp=x([1:i-1 i+1:n]); yh(j)=yh(j)+y(i)*prod((xh(j)-xp)./(x(i)-xp)); %注意区分yh和y endend调用程序x=[11,12,13]...原创 2021-01-07 16:51:43 · 1282 阅读 · 2 评论 -
2021-01-07 matlab数值分析 线性代数的直接接法 追赶法
matlab数值分析线性代数的直接接法追赶法求解线性方程组Ax=b,其中A是三对角方阵%追赶法求解线性方程组Ax=b,其中A是三对角方阵function x=tridiagsolver(A,b)[n,n]=size(A);for i=1:n if(i==1) l(i)=A(i,i); y(i)=b(i)/l(i); else i<n l(i)=A(i,i)-A(i,i-1)*u(i-1); ..原创 2021-01-07 16:49:00 · 2887 阅读 · 0 评论