Professional Documents
Culture Documents
Matlab Program For Gauss Elimination Method With Partial Pivoting
Matlab Program For Gauss Elimination Method With Partial Pivoting
Matlab Program For Gauss Elimination Method With Partial Pivoting
Program
%MATLAB PROGRAM
%PROBLEM:-1 BY GAUSS ELEIMNINATION METHOD WITH PARTIAL PIVOTING
%Three equations of some structural engineering problem
%4F2 - 0.9F3 = 110 .......eq(1)
%0.8F2 - 0.9F3 = 0 .......eq(2)
%0.7F1 + 0.65F2 - F3 = 20 .......eq(3)
%Let, x= matrix [F1; F2; F3]
clc
clear all
%Input matrix C
C = [0 4 -0.9;0 0.8 -0.9; 0.7 0.65 -1]
%Input matrix b as we know Cx = b
b= [20 0 110]'
A = [C b]; %Augmented Matrix
n= size(A,1); %number of equations/variables
[row, col] = size(C);
if row~=col,
error('Matrix C must be square');
end
x = zeros(n,1); %variable matrix [x1 x2 ... xn] coulmn
for i=1:n-1
%Partial pivoting
[big,k] =max(abs(A(i:n,i)));
kpr=k+i-1;
if kpr~=i
A([i,kpr],:)=A([kpr,i],:);
end
for j=i+1:n
m = A(j,i)/A(i,i)
A(j,:) = A(j,:) - m*A(i,:)
end
end
x(n) = A(n,n+1)/A(n,n)
for i=n-1:-1:1
summ = 0
for j=i+1:n
summ = summ + A(i,j)*x(j,:)
x(i,:) = (A(i,n+1) - summ)/A(i,i)
end
end
OUTPUT:-
%MATLAB PROGRAM
%PROBLEM:-2 BY GAUSS ELEIMNINATION METHOD WITH PARTIAL PIVOTING
%Three equations of some structural engineering problem
%32F2 - 42.42F3 = 3000 .......eq(1)
%0.6F2 - 0.707F3 = 0 .......eq(2)
%0.8F1 - F2 + 0.707F3 = 100 .......eq(3)
%Let, x= matrix [F1; F2; F3]
clc
clear all
%Input matrix C
C = [0 32 -42.42;0 0.6 -0.707; 0.8 -1 0.707]
%Input matrix b as we know Cx = b
b= [3000 0 100]'
A = [C b]; %Augmented Matrix
n= size(A,1); %number of equations/variables
[row, col] = size(C);
if row~=col,
error('Matrix C must be square');
end
x = zeros(n,1); %variable matrix [x1 x2 ... xn] coulmn
for i=1:n-1
%Partial pivoting
[big,k] =max(abs(A(i:n,i)));
kpr=k+i-1;
if kpr~=i
A([i,kpr],:)=A([kpr,i],:);
end
for j=i+1:n
m = A(j,i)/A(i,i)
A(j,:) = A(j,:) - m*A(i,:)
end
end
x(n) = A(n,n+1)/A(n,n)
for i=n-1:-1:1
summ = 0
for j=i+1:n
summ = summ + A(i,j)*x(j,:)
x(i,:) = (A(i,n+1) - summ)/A(i,i)
end
end
OUTPUT:-
%MATLAB PROGRAM
%PROBLEM:-3 BY GAUSS ELEIMNINATION METHOD WITH PARTIAL PIVOTING
%Two equations of continous beam where it is need to find Rb and Rc
%72Rb + 180Rc = 4765 .......eq(1)
%180Rb + 576Rc = 12740 .......eq(2)
%Let, x= matrix [Rb; Rc]
clc
clear all
%Input matrix C
C = [72 180 ; 180 576 ]
%Input matrix b as we know Cx = b
b= [4765 12740]'
A = [C b]; %Augmented Matrix
n= size(A,1); %number of equations/variables
[row, col] = size(C);
if row~=col,
error('Matrix C must be square');
end
x = zeros(n,1); %variable matrix [x1 x2 ... xn] coulmn
for i=1:n-1
%Partial pivoting
[big,k] =max(abs(A(i:n,i)));
kpr=k+i-1;
if kpr~=i
A([i,kpr],:)=A([kpr,i],:);
end
for j=i+1:n
m = A(j,i)/A(i,i)
A(j,:) = A(j,:) - m*A(i,:)
end
end
x(n) = A(n,n+1)/A(n,n)
for i=n-1:-1:1
summ = 0
for j=i+1:n
summ = summ + A(i,j)*x(j,:)
x(i,:) = (A(i,n+1) - summ)/A(i,i)
end
end
OUTPUT:-
%MATLAB PROGRAM
%PROBLEM:-4 BY GAUSS ELEIMNINATION METHOD WITH PARTIAL PIVOTING
%Two equations of continous beam where it is need to find Rb and Rc
%333.33Rb + 833.33Rc = 40000 .......eq(1)
%833.33Rb + 2666.67Rc = -117500 .......eq(2)
%Let, x= matrix [Rb; Rc]
clc
clear all
%Input matrix C
C = [333.33 833.33 ; 833.33 2666.67 ]
%Input matrix b as we know Cx = b
b= [40000 -117500]'
A = [C b]; %Augmented Matrix
n= size(A,1); %number of equations/variables
[row, col] = size(C);
if row~=col,
error('Matrix C must be square');
end
x = zeros(n,1); %variable matrix [x1 x2 ... xn] coulmn
for i=1:n-1
%Partial pivoting
[big,k] =max(abs(A(i:n,i)));
kpr=k+i-1;
if kpr~=i
A([i,kpr],:)=A([kpr,i],:);
end
for j=i+1:n
m = A(j,i)/A(i,i)
A(j,:) = A(j,:) - m*A(i,:)
end
end
x(n) = A(n,n+1)/A(n,n)
for i=n-1:-1:1
summ = 0
for j=i+1:n
summ = summ + A(i,j)*x(j,:)
x(i,:) = (A(i,n+1) - summ)/A(i,i)
end
end
OUTPUT:-
%MATLAB PROGRAM
%PROBLEM:-5 BY GAUSS ELEIMNINATION METHOD WITH PARTIAL PIVOTING
%Three equations of portal where it is need to find Rd,Hd and Md
%101.33Rd + 34Hd - 28Md = -233.33 .......eq(1)
%34Rd + 56.67Hd - 19Md = -55 .......eq(2)
%-28Rd - 19Hd + 12Md = 60 .......eq(3)
%Let, x= matrix [Rd; Hd; Md]
clc
clear all
%Input matrix C
C = [101.33 34 -28; 34 56.67 -19; -28 -19 12]
%Input matrix b as we know Cx = b
b= [-233.33 -55 60]'
A = [C b]; %Augmented Matrix
n= size(A,1); %number of equations/variables
[row, col] = size(C);
if row~=col,
error('Matrix C must be square');
end
x = zeros(n,1); %variable matrix [x1 x2 ... xn] coulmn
for i=1:n-1
%Partial pivoting
[big,k] =max(abs(A(i:n,i)));
kpr=k+i-1;
if kpr~=i
A([i,kpr],:)=A([kpr,i],:);
end
for j=i+1:n
m = A(j,i)/A(i,i)
A(j,:) = A(j,:) - m*A(i,:)
end
end
x(n) = A(n,n+1)/A(n,n)
for i=n-1:-1:1
summ = 0
for j=i+1:n
summ = summ + A(i,j)*x(j,:)
x(i,:) = (A(i,n+1) - summ)/A(i,i)
end
end
OUTPUT:-