ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

METODOS NUMERICOS (SOLUCION DE MATRICES CON LU Y PIVOTEO PARCIAL)


Enviado por   •  22 de Agosto de 2019  •  Trabajos  •  970 Palabras (4 Páginas)  •  124 Visitas

Página 1 de 4

ELIMINACION HACIA ADELANTE

function resultado=eliminacionHaciaAdelante(matriz)

 

  dimensionMatriz = size(matriz)

 

  cantidadFilas = dimensionMatriz (1)

  cantidadColumnas = dimensionMatriz (2)

 

  for k = 1:cantidadFilas-1

    for i = (k + 1): cantidadFilas

     

      factor = matriz (i, k) / matriz (k, k)

     

      for j = k: cantidadColumnas

        matriz (i,j) = matriz (i,j) - factor * matriz (k, j)

       endfor

     endfor

    endfor

      resultado = matriz

endfunction

SUSTITUCION HACIA ATRAS

function resultado=sustitucionHaciaAtras(matriz)

  dimensionMatriz = size(matriz)

 

  cantidadFilas = dimensionMatriz (1)

  cantidadColumnas = dimensionMatriz (2)

 

  x = zeros (cantidadFilas, 1)

 

  x(cantidadFilas) = matriz(cantidadFilas, cantidadColumnas)/ matriz(cantidadFilas, cantidadColumnas-1)

 

  for i =  (cantidadFilas -1):-1:1

   

    suma= matriz(i, cantidadColumnas)

   

    for j = (i + 1): cantidadFilas

      suma = suma - matriz(i, j) * x(j)

       

  endfor  

 

  x(i) = suma / matriz (i, i)

  endfor

 

  resultado= x

 

endfunction

GAUSS SIMPLE

function resultado=gaussSimple(matriz)

 

  matriz = eliminacionHaciaAdelante(matriz)

  resultado = sustitucionHaciaAtras(matriz)

 

  disp(resultado)

 

 

endfunction

PIVOTEO PARCIAL

function resultado=pivoteoParcial(matriz)

 

  dimensionMatriz = size(matriz)

 

  cantidadFilas = dimensionMatriz (1)

  cantidadColumnas = dimensionMatriz (2)

 

  p = k = 1

 

  big = abs(matriz (k, k))

 

  for ii= (k + 1): cantidadFilas

   

    dummy = abs(matriz (ii , k ))

   

    if (dummy > big)

      big = dummy

      p = ii

     

      endif

    endfor

   

    if (p != k )

     

      for jj= k: cantidadColumnas

        dummy= matriz (p, jj)

        matriz (p,jj) = matriz (k, jj)

        matriz(k, jj) = dummy

       endfor

     

    endif

    resultado = matriz

endfunction

GAUSS SIMPLE CON PIVOTEO PARCIAL

function resultado=gaussSimplePivoteoParcial(matriz)

 

  resultadopivoteoParcial = pivoteoParcial(matriz)

 

  matriz = eliminacionHaciaAdelante(resultadopivoteoParcial)

  resultado = sustitucionHaciaAtras(matriz)

 

  disp(resultado)

 

 

endfunction

DESCOMPOSICION

function resultado = descomposicion (A)

...

Descargar como (para miembros actualizados)  txt (4.8 Kb)   pdf (56 Kb)   docx (11.2 Kb)  
Leer 3 páginas más »
Disponible sólo en Clubensayos.com