Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function x = Gausspivot(A,b)
- n=size(A,1);
- A(:,n+1)=b(:);
- index=1:n
- for k=1:n
- max=abs(A(k,k))
- for i=k:n
- for j=k:n
- if abs(A(i,j))>max
- max=abs(A(i,j))
- p=i;
- m=j;
- end
- end
- end
- if p~=k
- aux=A(k,:);
- A(k,:)=A(p,:);
- A(p,:)=aux;
- end
- if m~=k
- aux=A(:,m);
- A(:,m)=A(:,k);
- A(:,k)=aux
- aui=index(m);
- index(m)=index(k);
- index(k)=aui;
- end
- for l=k+1;n
- A(l,:)=A(l,:)-A(l,k)/A(k,k)*A(k,:);
- end
- end
- xmod=SubstDesc(A(:,1:n),A(:,n+1))
- display('xmod=')
- disp(xmod)
- display('indice mod.')
- disp(index)
- for i=1:n
- x(i)=xmod(index(i));
- end
- end
- function x = SubstDesc(A,b)
- n=size(A,1);
- x(n)=b(n)/A(n,n);
- for k=n-1:-1:1
- s=0
- for j=k+1:n
- s=s+A(k,j)*x(j);
- end
- x(k)=(b(k)-s)/A(k,k);
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement