Traducción final
Utilice el método de eliminación gaussiano para convertir la matriz A en una matriz triangular superior
[m, n] = tamaño (A); las filas y columnas de A se almacenan en M; y N respectivamente.
Eliminación de elementos principales de columna
Para k=1:n-1
[v,u]=max(abs(A(k:n, k))); Seleccione el elemento con el valor absoluto más grande en la k-ésima columna de A y guárdelo en V. U es el número de filas o columnas del registro. Por ejemplo, si hay. m filas y n columnas, n > m, entonces u= n
Calcule estos elementos A(k:n,1:k) en la matriz A
u = u k-1 ;
Debido a que la función devuelve la matriz El elemento más grande en A (k: n, 1: k), necesitamos transformar el valor de la matriz A de la siguiente manera.
p(k)= u; registra el valor de u con p(k).
Intercambiar los datos de la línea k y la línea u
t1 = A(k, k: n); para realizar el intercambio, defina una variable intermedia t1;
A(k,k:n) = A(u,k:n);
A(u,k:n)= t 1;
T2 = b(k); t2 es una variable temporal.
b(k)= b(u);
b(u)= T2
Se utiliza principalmente para transformar A, es decir, antes de la eliminación. Compare el elemento con el valor absoluto más grande en la primera columna de A y luego cambie la fila con el elemento más grande en la primera columna a 1 fila.
Luego, utilice el siguiente método para eliminar elementos de la primera columna que no sean la primera fila a 0 por segunda vez, compare los elementos de la segunda columna de A (en este momento lo hacen las primeras filas; no es necesario participar en la comparación), coloque el elemento más grande en esa fila
Cambie a la segunda fila y cambie la tercera, cuarta, quinta... filas de la segunda columna a 0 y así; adelante, hasta que A se convierta en una matriz triangular superior, razón por la cual el siguiente A(k, k) ~= 0 no es 0 (si hay 0, puede omitir un paso).
Método de eliminación gaussiana
Si A(k, k) ~= 0
Los siguientes son los pasos principales de la eliminación gaussiana, puede consultar los libros relevantes .
Número de filas = k 1: n
A(filas,k)=A(filas,k)/A(k,k);
A (filas, filas)=A(filas, filas)-A(filas,k)*A(k,k);
l(fila, fila)=A(fila, fila);
p>
Fin
Fin
Calcular matriz u
Para k=2: n
A(k, 1: k-1)= 0;
Fin
2. Procedimiento para resolver ecuaciones trigonométricas:
Utilice el método de conversión a una matriz triangular Resuelva para Ax = b
[m, n] = tamaño (A) las filas y columnas de A se almacenan en M y N respectivamente.
x(n)=b(n)/A(n,n); Calcula x(n)
La siguiente solución.
Para i = n: -1: 1
t = 0;
Para j = n: -1: i 1
t = t A(i,j)* x(j);
Fin
x(i) = (b(i)-t)/A(i,I );
Fin
3. Programa principal:
Función example_equation_root
Utilizar el método de eliminación gaussiano para resolver la ecuación lineal Ax=b
a =[1 3 6 8 9 2; i ingreso la matriz ' a '
2 5 3 1 6 3;
3 6 1 2 8 5;
2 6 8 9 3 8;
5 8 9 3 2 3;
3 5 8 1 7 2];
b =[2-3 2 55 16-6]; ingreso ' b '
b = b'; Convertir porcentaje' b '
[A, b] = Gauss(A, b) transforma [A b] en la forma donde A es una matriz triangular superior.
Y devolver la 'b' convertida a b.
b = b '
X= Eqn_Root(A, b) se resuelve utilizando el método de la matriz triangular.
Fin