Para un sistema de ecuaciones de cualquier orden, ¿cómo programar usando el lenguaje VB para implementar la descomposición LU y la búsqueda de raíces?
La descomposición LU incluye la descomposición de Doolitle y la descomposición de Croute. El algoritmo de descomposición de Croute se proporciona a continuación:
Supongamos que la ecuación a resolver es Ax=b, un sistema de ecuaciones de orden. n
//Defina matrices para representar varias matrices importantes, hasta el orden 100, por supuesto, puede configurarlas usted mismo
Atenuar a(100, 100) como doble
Atenuar b (100) como doble
Atenuar L(100, 100) como doble
Atenuar U(100, 100) como doble
Ingrese el orden de la ecuación n
Ingrese las matrices a y b, no me diga que usted tampoco lo sabe
//Establezca el elemento diagonal de la matriz U en 1 p>
Para i=0 a n-1
U(i, i)=1
Siguiente i
Para k=0 a n
// A continuación se calcula la matriz L
Para i=k a n-1
L(i,k)=a(i,k)
Para j=0 a k-1
L(i,k)=L(i,k)-L(i,j)*U(j,k)
Siguiente j
Siguiente i
//Calcule la matriz U a continuación
Para j=k+1 a n-1 p>
U(k,j)= a(k,j)
Para i=0 a k-1
U(k,j)=U(k ,j)-L(k,i)*U (i,j)
U(k,j)=U(k,j)/L(k,k)
Siguiente i
siguiente j
siguiente k
//Las matrices L y U anteriores son lo que desea
//Si quieres continuar resolviendo el sistema de ecuaciones, tienes que realizar los siguientes pasos
Calcular y a partir de Ly=b
Calcular x a partir de Ux=y
La implementación específica se omite y se deja como ejercicio, jaja