Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лаб. 11 КП АлГем (Системы лин. уравнений)

.docx
Скачиваний:
3
Добавлен:
30.08.2024
Размер:
47.24 Кб
Скачать

№1

import numpy as np import sympy as sp from sympy import * A=np.array([[1,-2,-1,1],[1,-8,-2,-3],[2,2,-1,7],[1,1,2,1]]) B=np.array([1,-2,7,1]) D=np.column_stack((A,B)) print("D:",D) rkA=np.linalg.matrix_rank(A) rkD=np.linalg.matrix_rank(D) print("rk:",rkA, rkD) RA=Matrix(A).rref() print("A:",A) print("RA:",RA) A=Matrix([[1,-2,-1,1],[1,-8,-2,-3],[2,2,-1,7],[1,1,2,1]]) x1,x2,x3,x4=symbols('x1 x2 C1 C2') X=linsolve((A,B),x1,x2,x3,x4) print("X:",X) M=np.array([[1,-2,-1,1],[1,-8,-2,-3],[2,2,-1,7],[1,1,2,1]]) N=np.array([1,-2,7,1]) X1=np.linalg.solve(M,N) print("X1:",X1) print("Pr") np.dot(M,X1)==N

D: [[ 1 -2 -1 1 1] [ 1 -8 -2 -3 -2] [ 2 2 -1 7 7] [ 1 1 2 1 1]] rk: 4 4 A: [[ 1 -2 -1 1] [ 1 -8 -2 -3] [ 2 2 -1 7] [ 1 1 2 1]] RA: (Matrix([ [1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]), (0, 1, 2, 3)) X: {(-2, -1, 1, 2)} X1: [-2. -1. 1. 2.] Pr

array([False, False, True, False])

import numpy as np import sympy as sp from sympy import * A=np.array([[1,-2,-1,1],[1,-8,-2,-3],[2,2,-1,7],[1,1,2,1]]) B=np.array([1,-2,7,1]) D=np.column_stack((A,B)) print("D:",D) rkA=np.linalg.matrix_rank(A) rkD=np.linalg.matrix_rank(D) print("rk:",rkA, rkD) X1=np.linalg.inv(A).dot(B) print('Ответ:',X1) np.dot(A,X1)==B

D: [[ 1 -2 -1 1 1] [ 1 -8 -2 -3 -2] [ 2 2 -1 7 7] [ 1 1 2 1 1]] rk: 4 4 Ответ: [-2. -1. 1. 2.]

array([False, False, False, False])

import numpy as np import sympy as sp from sympy import * A=np.array([[1,-2,-1,1],[1,-8,-2,-3],[2,2,-1,7],[1,1,2,1]]) B=np.array([1,-2,7,1]) DA=np.linalg.det(A) D1=A.copy() D1[:,0]=B D11=np.linalg.det(D1) D2=A.copy() D2[:,1]=B D22=np.linalg.det(D2) D3=A.copy() D3[:,2]=B D33=np.linalg.det(D3) D4=A.copy() D4[:,3]=B D44=np.linalg.det(D4) X2=[D11/DA,D22/DA,D33/DA,D44/DA] print('Ответ:',X2) np.dot(A,X2)==B

Ответ: [-1.9999999999999984, -1.0000000000000009, 0.9999999999999996, 2.0]

array([False, False, False, True])

№2

import numpy as np import sympy as sp from sympy import * A=np.array([[2,1,3,1],[3,5,5,2],[2,2,-1,7],[-6,-3,-9,-3]]) B=np.array([6,4,7,1]) D=np.column_stack((A,B)) print("D:",D) rkA=np.linalg.matrix_rank(A) rkD=np.linalg.matrix_rank(D) print("rk:",rkA, rkD) RA=Matrix(A).rref() print("A:",A) print("RA:",RA) A=Matrix([[2,1,3,1],[3,5,5,2],[2,2,-1,7],[-6,-3,-9,-3]]) x1,x2,x3,x4=symbols('x1 x2 C1 C2') B=np.array([2,3,1,3]) X=linsolve((A,B),x1,x2,x3,x4) print("X:",X) M=np.array([[2,1,3,1],[3,5,5,2],[2,2,-1,7],[-6,-3,-9,-3]]) N=np.array([6,4,7,1]) X1=np.linalg.solve(M,N) print("X1:",X1) print("Pr") np.dot(M,X1)==N

D: [[ 2 1 3 1 6] [ 3 5 5 2 4] [ 2 2 -1 7 7] [-6 -3 -9 -3 1]] rk: 3 4 A: [[ 2 1 3 1] [ 3 5 5 2] [ 2 2 -1 7] [-6 -3 -9 -3]] RA: (Matrix([ [1, 0, 0, 71/29], [0, 1, 0, 10/29], [0, 0, 1, -41/29], [0, 0, 0, 0]]), (0, 1, 2)) X: EmptySet X1: [nan nan nan nan] Pr

array([False, False, False, False])

import numpy as np import sympy as sp from sympy import * A=np.array([[2,1,3,1],[3,5,5,2],[2,2,-1,7],[-6,-3,-9,-3]]) B=np.array([6,4,7,1]) D=np.column_stack((A,B)) print("D:",D) rkA=np.linalg.matrix_rank(A) rkD=np.linalg.matrix_rank(D) print("rk:",rkA, rkD) X1=np.linalg.inv(A).dot(B) print('Ответ:',X1) np.dot(A,X1)==B

D: [[ 2 1 3 1 6] [ 3 5 5 2 4] [ 2 2 -1 7 7] [-6 -3 -9 -3 1]] rk: 3 4 Ответ: [nan nan nan nan]

array([False, False, False, False])

№3

import numpy as np import sympy as sp from sympy import * A=np.array([[1,2,-1,3],[-3,-6,3,-9],[1,-1,3,1]]) B=np.array([7,-21,-1]) D=np.column_stack((A,B)) print("D:",D) rkA=np.linalg.matrix_rank(A) rkD=np.linalg.matrix_rank(D) print("rk:",rkA, rkD) RA=Matrix(A).rref() print("A:",A) print("RA:",RA) A=Matrix([[1,2,-1,3],[-3,-6,3,-9],[1,-1,3,1]]) x1,x2,x3,x4=symbols('x1 x2 C1 C2') X=linsolve((A,B),x1,x2,x3,x4) print("X:",X)

D: [[ 1 2 -1 3 7] [ -3 -6 3 -9 -21] [ 1 -1 3 1 -1]] rk: 2 2 A: [[ 1 2 -1 3] [-3 -6 3 -9] [ 1 -1 3 1]] RA: (Matrix([ [1, 0, 5/3, 5/3], [0, 1, -4/3, 2/3], [0, 0, 0, 0]]), (0, 1)) X: {(-5*C1/3 - 5*C2/3 + 5/3, 4*C1/3 - 2*C2/3 + 8/3, C1, C2)}

A=Matrix([[1,2,-1,3],[-3,-6,3,-9],[1,-1,3,1]]) EE=A.nullspace() print("EE:",EE) E=A.nullspace()[0] C1,C2,C3=symbols('C1 C2 C3') print(C1*E[0]+C2*E[1]+C3*E[2]) E=A.nullspace()[1] C1,C2,C4=symbols('C1 C2 C4') print(C1*E[0]+C2*E[1]+C4*E[3])

EE: [Matrix([ [-5/3], [ 4/3], [ 1], [ 0]]), Matrix([ [-5/3], [-2/3], [ 0], [ 1]])] -5*C1/3 + 4*C2/3 + C3 -5*C1/3 - 2*C2/3 + C4

№4

A=Matrix([[2,-1,1],[4,-2,2],[6,-3,3]]) EE=A.nullspace() print('Ранг системы=',A.rank()) print("EE:",EE) E=A.nullspace() C1, C2=symbols('C1 C2') print(C1*E[0]+C2*E[1])

Ранг системы= 1 EE: [Matrix([ [1/2], [ 1], [ 0]]), Matrix([ [-1/2], [ 0], [ 1]])] Matrix([[C1/2 - C2/2], [C1], [C2]])

A=Matrix([[2,-1,1],[4,-2,2],[6,-3,3]]) EE=A.nullspace() print("EE:",EE) E=A.nullspace()[0] C1, C2=symbols('C1 C2') print(C1*E[0]+C2*E[1]) E=A.nullspace()[1] C1, C3=symbols('C1 C3') print(C1*E[0]+C3*E[2])

EE: [Matrix([ [1/2], [ 1], [ 0]]), Matrix([ [-1/2], [ 0], [ 1]])] C1/2 + C2 -C1/2 + C3