Rincón Matemático

Disciplinas relacionadas y temas generales => Computación e Informática => Mensaje iniciado por: xamo en 28 Noviembre, 2012, 04:39 pm

Título: Programar el método de eliminación gaussiana en Mathematica
Publicado por: xamo en 28 Noviembre, 2012, 04:39 pm
Buenas, me requieren varios apartados. El primero es:

1- Programar una función llamada solGaussSimple que resuelva un sistema de ecuaciones mediante el método de Gauss sin algoritmo de pivoteo. Esta función tomará dos parámetros: la matriz del sistema y el vector segundo miembro y devolverá un vector que represente la solución, x, del sistema de ecuaciones Ax = b.


El código que he escrito es:

solGaussSimple[A_, b_] :=
 Module[{m = 0, i, k, n = Length[A] },
  For[k = 1, k = n - 1, k++,
   For[i = k + 1, i = n, i++,
     m = -A[[i, k]]/A[[k, k]]
        A[] = A[] + m*A[[k]]
          b[] = b[] + m*A[[k]]
     ];
   ];
  Print[MatrixForm[A], MatrixForm[,b]];
  LinearSolve[A, b]]


sin embargo, no me hace las transformaciones necesarias. A ver si me podéis ayudar pronto, por favor.

PD: La coma en rojo es para que no salga un pedazo de texto en negrita.
Título: Re: Programar el método de eliminación gaussiana en Mathematica
Publicado por: xamo en 28 Noviembre, 2012, 08:10 pm
Ya lo resolví. Gracias a todo el que se hubiera dignado en ayudar.  :D