Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- """
- Created on Fri Apr 4 02:53:30 2014
- @author: user
- """
- from numpy import dot, array
- """
- a1=array(
- [[2.,3.,1.,5.],
- [6.,13.,5.,19.],
- [2.,19.,10.,23.],
- [4.,10.,11.,31.]])
- b1=array([1.,1.,1.,1.])
- a1=array(
- [[2.,-1.,0.],
- [-1.,2.,-1.],
- [0.,-1.,1.]])
- b1=array([1.,0.,0.])
- """
- a1=array(
- [[0.,-1.,1.],
- [-1.,2.,-1.],
- [2.,-1.,0.]])
- b1=array([0.,0., 1.])
- def GaussElimin(a,b):
- n = len(b)
- # Faza eliminacji
- # niejsca "wyzerowane" pozostawiane są bez zmian
- for k in range(0,n-1):
- for i in range(k+1,n):
- if a[i,k] != 0.0:
- alfa = a[i,k]/a[k,k]
- a[i,k+1:n] = a[i,k+1:n] - alfa*a[k,k+1:n]
- b[i] = b[i] - alfa*b[k]
- #Faza podstawianie wsteczne
- for k in range(n-1,-1,-1):
- b[k] = (b[k] - dot(a[k,k+1:n],b[k+1:n]))/a[k,k]
- return b
- print('wynik:',GaussElimin(a1,b1))
- print('tablica a1 po elimonacji:')
- print(a1)
- """
- print('sprawdzenie dla wiersza [2.,-1.,0.]:', dot(array([2.,-1., 0.]),array([1.,1.,1.])))
- print('sprawdzenie dla wiersza [-1.,2.,-1.]:', dot(array([-1.,2.,-1.]),array([1.,1.,1.])))
- print('sprawdzenie dla wiersza [0.,-1.,1.]:', dot(array([0.,-1.,1.]),array([1.,1.,1.])))
- """
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement