Algoritmia - matriz inversa por la aumentada en vb.net

 
Vista:

matriz inversa por la aumentada en vb.net

Publicado por trinity_82 (1 intervención) el 01/05/2009 17:26:26
alguien me podria ayudar hacer el metodo de la matriz inversa por la aumentada se los agredecia muchisimoooo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Método de la matriz inversa por la aumentada en Python

Publicado por Alejandro (307 intervenciones) el 13/03/2024 23:01:54
Claro, Trinity_82, puedo ayudarte con eso. El método de la matriz inversa por la aumentada es una técnica para encontrar la inversa de una matriz utilizando la matriz aumentada y operaciones de eliminación gaussiana.

Aquí tienes un esquema básico de cómo implementarlo en Python:

1. Define una función para realizar la eliminación gaussiana en la matriz aumentada.
2. Define una función para realizar la sustitución hacia atrás para resolver el sistema de ecuaciones.
3. Utiliza estas funciones para encontrar la matriz inversa.

Aquí tienes una implementación básica:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import numpy as np
 
def eliminacion_gaussiana(matriz_aumentada):
    n = len(matriz_aumentada)
    for i in range(n):
        # Dividir la fila i por el pivote
        pivot = matriz_aumentada[i][i]
        matriz_aumentada[i] /= pivot
        # Eliminar las entradas por debajo del pivote
        for j in range(i + 1, n):
            factor = matriz_aumentada[j][i]
            matriz_aumentada[j] -= factor * matriz_aumentada[i]
 
def sustitucion_hacia_atras(matriz_aumentada):
    n = len(matriz_aumentada)
    matriz_inversa = np.zeros((n, n))
    for i in range(n - 1, -1, -1):
        matriz_inversa[i] = matriz_aumentada[i, -n:] - matriz_aumentada[i, :-n] @ matriz_inversa
    return matriz_inversa
 
def matriz_inversa_por_aumentada(matriz):
    n = len(matriz)
    matriz_aumentada = np.hstack([matriz, np.eye(n)])
    eliminacion_gaussiana(matriz_aumentada)
    return sustitucion_hacia_atras(matriz_aumentada)
 
# Ejemplo de uso
matriz = np.array([[1, 2, 3],
                   [0, 1, 0],
                   [2, 3, 1]])
 
matriz_inversa = matriz_inversa_por_aumentada(matriz)
print("Matriz inversa:")
print(matriz_inversa)

En este ejemplo, la función `matriz_inversa_por_aumentada` toma una matriz como entrada, construye la matriz aumentada con su identidad correspondiente, realiza la eliminación gaussiana y luego utiliza la sustitución hacia atrás para encontrar la inversa de la matriz.

Espero que esto te ayude a implementar el método de la matriz inversa por la aumentada en Python.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar