! ¡urgente! Algoritmo serial y código de algoritmo paralelo para resolver ecuaciones lineales usando el método de eliminación de Gauss-Jordan
Etiqueta: Chat Categoría: Tecnología Java
El código principal es el siguiente, en el que todos los elementos de la estrategia numRows*numColumns se almacenan en la matriz de elementos dobles [], donde El elemento de matriz a[i] [j] corresponde a los elementos elementos[i*numColumns j].
public double computeDetGauss() {
int is = 0, js = 0 //La fila de la matriz 'el elemento con el valor absoluto más grande' en la esquina inferior derecha; de la fila I; número de columna
int l, u, v; //Matriz //Los subíndices de los elementos a[i][j] después de numRows*numColumns están organizados en filas.
Temperatura doble; //Variable temporal
//Valor inicial
Double f = 1.0; //Al resolver el determinante, cambia una fila o columna ( Para cada disposición, el determinante cambia de signo una vez)
double det = 1.0; //El valor del determinante a devolver
//Eliminación
for(int k = 0; k lt= numColumns-2; K ) {//La k-ésima columna (a partir de 0, hasta la columna-2)
Double q = 0.0//La K-ésima fila y la K-ésima columna en el matriz El valor del 'elemento con el valor absoluto más grande' en la esquina inferior derecha.
for(int I = k;i lt= num columnas-1;I) {//De la fila I (I>=k), a
for(int j = k; j lt= num columnas-1; J ) {//Columna
l = I * num columnas j; //Subíndice del elemento de la fila I y la columna J
temp = math . ABS(elementos[l]); //Elemento a[i][j]
if(temp gt;Q) {//Elemento d=a[i][j ] más grande.
q = temperatura; //Actualizar "Max"
is = I; //El número de fila del "elemento con el valor absoluto más grande" de la matriz en la parte inferior derecha esquina.
js = j; //El número de columna del "elemento con el valor absoluto más grande" de la matriz en la esquina inferior derecha.
}
}
}
If (q == 0.0) {//La esquina inferior derecha de la fila K y la columna K ¡La matriz es toda 0! ! !
det = 0.0
Retorno (det); //Determinante = 0
}