🎓 Academic Coursehero patulong po

Status
Not open for further replies.
ANSWER and EXPLANATION:

# Importing NumPy Library
import sys
import numpy

# Reading unknowns number
n = int(input('Enter number of unknowns: '))

# Making numpy array of n x n+1 size and initializing
# to zero for storing augmented matrix
arr = numpy.zeros((n,n+1))

# Making numpy array of n size and initializing
# to zero for storing solution vector
ans = numpy.zeros(n)

# Reading augmented matrix
print('Enter Augmented Matrix Coefficients:')
for i in range(n):
for j in range(n+1):
arr[j] = float(input( 'matrix['+str(i)+']['+ str(j)+']='))

# print input matrix
print('INPUT MATRIX')
for i in range(n):
row = [ ele for ele in arr ]
print(row)

# Applying Gauss Elimination
for i in range(n):
if arr == 0.0:
sys.exit('Divide by zero detected!')

for j in range(i+1, n):
ratio = arr[j]/arr

for k in range(n+1):
arr[j][k] = arr[j][k] - ratio * arr[k]

# print final matrix
print('FINAL MATRIX')
for i in range(n):
row = [ ele for ele in arr ]
print(row)


# Back Substitution
ans[n-1] = arr[n-1][n]/arr[n-1][n-1]

for i in range(n-2,-1,-1):
ans = arr[n]

for j in range(i+1,n):
ans = ans - arr[j]*ans[j]

ans = ans/arr

# Displaying solution
print('\nRequired solution is: ')
for i in range(n):
print('X%d = %0.2f' %(i,ans))



OUTPUT:
Enter number of unknowns: 3
Enter Augmented Matrix Coefficients:
matrix[0][0]=1
matrix[0][1]=1
matrix[0][2]=1
matrix[0][3]=9
matrix[1][0]=2
matrix[1][1]=-3
matrix[1][2]=4
matrix[1][3]=13
matrix[2][0]=3
matrix[2][1]=4
matrix[2][2]=5
matrix[2][3]=40
INPUT MATRIX
[1.0, 1.0, 1.0, 9.0]
[2.0, -3.0, 4.0, 13.0]
[3.0, 4.0, 5.0, 40.0]
FINAL MATRIX
[1.0, 1.0, 1.0, 9.0]
[0.0, -5.0, 2.0, -5.0]
[0.0, 0.0, 2.3999999999999999, 12.0]

Required solution is:
X0 = 1.00
X1 = 3.00
X2 = 5.00
 
Status
Not open for further replies.

About this Thread

  • 3
    Replies
  • 231
    Views
  • 2
    Participants
Last reply from:
Starrdust

Online now

Members online
916
Guests online
758
Total visitors
1,674

Forum statistics

Threads
2,275,569
Posts
28,964,139
Members
1,231,867
Latest member
LabaMC
Back
Top