gauss_.m

来自「电力系统潮流计算程序」· M 代码 · 共 17 行

M
17
字号
function x=Gauss_(A,b) 
n=length(b); 
for k=1:n-1 %……消去过程…… 
if A(k,k)==0 
disp('错误信息') 
break; 
end 
index = [k+1:n];%用向量比用循环好 
m = -A(index,k)/A(k,k); %提前定义一个较短的变量,相当于你的A(i,k)=A(i,k)/A(k,k); 
A(index,index) = A(index,index) + m*A(k,index);%矩阵A消元 
b(index) = b(index) + m*b(k);%矩阵b消元 
end 
x = zeros(n,1);%提前预置一个变量的位置,以提高运算速度 
x(n) = b(n)/A(n,n);%……回代过程…… 
for i = n-1:-1:1 
x(i) = ( b(i) - A(i,[i+1:n])*x([i+1:n]) )/A(i,i);%还是写在一起吧,比较简捷 
end 

⌨️ 快捷键说明

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