¿Cómo aprender álgebra linear usando Python?

5399 단어
Esta semana tuve mi primer parcial de Algebra en la universidad. Muchos ejercicios, y muchas 행렬. 시대에 뒤떨어지지 않는 복잡한 실험이 있기 때문에 quisiera requería varios cálculos, por lo tanto con varios errores evitables.

Pero los seres humanos no somos calculadoras. Pensamos y reflexionamos las propiedades de los vectores, sus espacios, sus bases. La calve es estar seguros que nuestro racionamiento es correcto o wrongo, sin dudar de comernos un signo o no haber sumado una componente.

Aprender a programar nos da el poder de comprobar nuestras hipótesis sin dudar de nuestros números.

컴퓨터 과학



"Numpy es el paquetefundamental para la computación científica en Python". En español, es una caja de herramientas para hacer todo tipo de cálculos.

Python, te recomiendoéste artículo에 설치해야 합니다.

그러나 배열에 관심이 없기 때문에 벡터와 유사하게 사용할 수 있습니다. Numpy los dota de operaciones cómo la suma, el producto escalar, y producto vectorial (definido sólo para

R3\mathbb{R}^3 R3

)

Para muestra, un problema



Intentemos hallar, si existe, la intersección entre las siguientes rectas.

L1=λ(2,2,1)+(2,1,−3)L2=λ(1,−1,1)+(0,2,3)
\시작{정렬*}
&\mathbb{L}_1 =\lambda(2,2,1) + (2,1,-3)\\
&\mathbb{L}_2 =\lambda(1,-1,1) + (0,2,3)
\end{정렬*}
L1 =λ(2,2,1)+(2,1,−3)L2 =λ(1,−1,1)+(0,2,3)

프리메로 플란테모스 라 이구알다드

L1=L2\mathbb{L}_1 =\mathbb{L}_2 L1 =L2

, 포르 로 탄토

α(2,2,1)+(2,1,−3)=β(1,−1,1)+(0,2,3)⟺{2α+2=β2α+1=−β+2α− 3=β+3⟺{2α−β=−22α+β=1α−β=6
\시작{정렬*}
&\alpha(2,2,1) + (2,1,-3) =\beta(1,-1,1) + (0,2,3)\\
&\긴왼쪽오른쪽화살표
\begin{케이스}
2\알파 + 2 =\베타\\
2\알파 + 1 = -\베타 + 2\\
\알파 - 3 =\베타 + 3
\end{사례}\\
&\긴왼쪽오른쪽화살표
\begin{케이스}
2\알파 -\베타 = -2\\
2\알파 +\베타 = 1\\
\알파 -\베타 = 6
\end{사례}\\
\end{정렬*}
α(2,2,1)+(2,1,−3)=β(1,−1,1)+(0,2,3)⟺⎩⎨⎧ 2α+2=β2α+1=− β+2α−3=β+3 ⟺⎩⎨⎧ 2α−β=−22α+β=1α−β=6

A partir de este sistema de ecuaciones, que además es homogéneo, podemos construir una matriz de coeficientes para buscar los valores de

α\alphaα

와이

β\betaβ



(2−1−22111−16)
\왼쪽(
\begin{배열}{cc|c}
2 & -1 & -2\\
2 & 1 & 1\\
1 & -1 & 6\\
\end{배열}
\오른쪽)
⎝⎛ 221 −11−1 −216 ⎠⎞

헤치조스 데 마기아




import numpy as np

Para resolver la matriz, debemos aplicar el método de Gauss-Jordan, y para ello vamos a definir tres "vectores"(배열), que expressen cada fila de la matriz

F1 = np.array([2,-1,-2])
F2 = np.array([2,1,1])
F3 = np.array([1,-1,6])

Luego, procedemos cómo cualquier triangulación. cada vector lo podemos multiplicar por un escalar. Voy a empezar restando a la primer y segunda fila el doble de la tercera

F2 = F2 - 2*F3
F1 = F1 - 2*F3

Quedándonos con la siguiente matriz

[  0   1 -14]
[  0   3 -11]
[  1  -1   6]

새로운 절차는 삼각 측량을 마무리하고 삼중으로 프라이머 필라 라 세군다를 마무리합니다.

F1 = 3*F1 - F2



[[  0   0 -31]
 [  0   3 -11]
 [  1  -1   6]]

Hemos llegado a un absurdo. Recordemos que nuestra matriz, en este caso, expressa un sistema de ecuaciones, dónde la primer columna는 la 변수를 나타냅니다.

α\alphaα

y la segunda a

β\betaβ

.





좋은 웹페이지 즐겨찾기