⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 matrix1.m

📁 用matlab实现高斯—若当算法求逆矩阵
💻 M
字号:
function t=matrix1(x);
s=size(x);%取出给定矩阵的行列数
n=s(1,1);%取出给定矩阵的行数
a=eye(n);
x=[x a];%增广矩阵,原矩阵并入一个原列数的单位阵

for i=1:n%
	max1=x(i,i);
	for j=i:n  %获取当前列数的最大值及该最大值所在的行数
		if(max1<x(j,i))
			max1=x(j,i);
			line=j;
		end
	end 

	%交换当前行与最大值所在行
	temp=x(i,:);
	x(i,:)=x(line,:);   
	x(line,:)=temp;

	temp2=x(i,i);%取出最大值所在行的第一个元素的值暂存
	for j=1:n %将该行以外的其它行的元素进行相应变换
		if(j~=i)%
			temp3=x(j,i);
			for k=i:2*n
				if(x(i,i)~=0)
				x(j,k)=x(j,k)-x(i,k)*temp3/temp2;
				end
			end   
		end
	end

	for j=1:n%将最大值所在行元素进行变换
		if(j==i)
			for k=i:2*n
				if(x(i,i)~= 0 )
				x(j,k)=x(j,k)/temp2;
				end
			end       
		end
	end
end
t=x(:,(n+1):2*n);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -