- 博客(5)
- 收藏
- 关注
原创 计算矩阵的特征值
初衷是发现MATLAB自带的eig函数有一点点bug,如下图简单来说就是计算结果会无限逼近于某一个数,很讨厌。也不知道是什么问题。所以就干脆自己写了个函数。%此代码用于计算一个矩阵A的特征值function lam=MyEig(A)I=eye(size(A));syms lamlam=solve(det(A-lam*I)==0,lam);...
2020-05-25 18:28:08 535
原创 数学建模:Malthus人口模型
clear all clcdsolve('Dx=r*x','x(0)=x0');%指数增长模型,也称为Malthus人口模型%得到 x(t)=x0*exp(r*t)%美国人口数据t=0:1:21;x=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6,50.2,62.9,76.0,92.0,105.7,122.8,131.7,150.7,179.3,203.2,226.5,248.7,281.4];%方法一,直接用人口数据和最小二乘法y=log(x);x
2020-05-20 22:18:51 4957 1
原创 朴素的LU分解
%此为朴素的LU分解代码function [L,U]=MyLU(A)n=size(A,1);if n~=size(A,2); error('A不是n阶方阵');endL=zeros(size(A));for i=1:1:n L(i,i)=1;end%消去A的下三角for j = 1:n if abs(A(j,j)) < eps; error('zero pivot encountered');end for i = j+1:n %消去元素a(i
2020-05-20 22:17:08 169
原创 列主元的高斯消元法
%此为列主元的高斯消元法function [x] = MyGauss2(A,b)n=size(A,1);if n~=size(A,2); error('A不是n阶方阵');endif n~=size(b);error('向量b的个数与A的行数不同');end%消去A的下三角for j = 1:n-1 max=abs(A(j,j)); p=j; for i = j+1:n %选最大主元 for p=i:n if a
2020-05-20 22:16:15 1044 1
原创 朴素的高斯消元法
%此为朴素的高斯消元法function [x] = MyGauss(A,b)nb=length(b);[m,n]=size(A);if m~=n; error('A不是n阶方阵');endif n~=nb;error('b的长度不等于A的阶数');end%消去A的下三角for j = 1:n-1 if abs(A(j,j)) < eps; error('zero pivot encountered');end for i = j+1:n %消去元素a(
2020-05-20 22:15:12 438
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人