Matlab - Gauss Jordan en matlab

 
Vista:
sin imagen de perfil

Gauss Jordan en matlab

Publicado por maría (11 intervenciones) el 17/04/2015 03:17:25
Hola expertos deseo realizar el método de gauss Jordan con procedimiento para que cuando meta una matriz y sus coeficientes me dé una respuesta o cuando quiera hallar linversa me la de pero no sé como hacerlo pueden ayudarme
tengo el código así :
A=input('matriz 1 '); %% entrada de
B=input('matriz 2 '); % datos %%
N=size(A)
M=size(B)
r=N(1)
while r>0
A(r,1)=1
end
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JESUS
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Gauss Jordan en matlab

Publicado por JESUS (1818 intervenciones) el 17/04/2015 03:23:58
Hola yo lo tengo explicado , aquí te lo adjunto ,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
%método de Gauss-Jordan(con procedimiento) 
%en el siguiente programa se puede determinar la solución de una matriz nxn 
%si en la matriz 2 se especifican los coeficientes o se puede determinar la
%inversa de una matriz si a la matriz 2 se le asigna el valor de la matriz
%identidad  . La idea de este programa es ir realizando el procedimiento 
%paso a paso para  finalmente llegar a la respuesta 
%ejemplo1: A=[1 2 3; 4 5 6; 7 8 9] y B=[3 4 5]'
%ejemplo2: A=[1 2 3; 4 5 6; 7 8 9] y B=eye(3) 
%para solo llegar a la respuesta en el ejemplo 1 se puede ingresar A\B y
%para el ejemplo 2 se ingresa inv(A)
A=input('ingrese la matriz 1 '); %% entrada de
B=input('ingrese la matriz 2 '); %  datos     %%
C=[A B]; %%unión de los datos en una solo matriz
for i=1:length(C(:,1)) %%para i desde la primera fila  hasta el número de filas existentes 
if C(i,i)~=1 %%si el elemento i,i de la diagonal es diferente de 1 
    C(i,:)= C(i,:)./C(i,i);  %entonces se convierte a 1  dividiendo toda la fila por dicho elemento
    disp(C)   %salida de datos
end
%además el resto de elementos de la columna deben convertirse a 0 :  
%es decir si  n es diferente de i ya que si i y n son iguales entonces el
%elemento se encuentra en la diagonal 
    for n=1:length(C(:,1)) %para n desde la primera fila hasta el número de filas existentes
      if n~=i % si n en la columna i no está en la diagonal es decir si i no es igual a n
          C(n,:)=-C(n,i).*C(i,:)+C(n,:); %entonces se convierte a 0 
           disp(C) 
      end              
    end     
end

éxitos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
3
Comentar
sin imagen de perfil

Gauss Jordan en matlab

Publicado por Beily Xavier (1 intervención) el 26/03/2017 21:02:05
MUY BUENO EL CÓDIGO
lo modifique un poco y me da la inversa y la solución de sistema de ecuaciones
Estuvo muy bien para aprenderlo
Bien hecho
Una consulta si tuvieses alguna idea de como resolver un sistema de ecuaciones no lineales por el metodo de newton desearia saber si podrías ayudarme
gracias de antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Gauss Jordan en matlab

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 26/03/2017 23:58:50
para resolver un sistema de ecuaciones no lineales debes tener claro lo que es el determinante jacobiano, y la solución sería por regla de Cramer utilizada en álgebra lineal, recuerda que el método de Newton aplica serie de Taylor, si tus ecuaciones son complejas debes encontrar la forma de aproximar este determinante.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gauss Jordan en matlab

Publicado por Kimberly Yrazoqui (1 intervención) el 03/10/2017 00:11:48
Y si en la diagonal tienes "0" ... qué procede? , (tomando en cuenta que la matriz es invertible)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Gauss Jordan en matlab

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 03/10/2017 21:44:56
si en la diagonal tienes 0 entonces puedes cambiarla filas , sin embargo verifica que si pueda ser reducible tu matriz con el siguiente comando :
rref(matriz)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Arata
Val: 7
Ha aumentado su posición en 9 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

Gauss Jordan en matlab

Publicado por Arata (1 intervención) el 22/04/2019 03:18:24
Solo tengo una duda en cuestio de como encuentra el valor para multiplicar por otra fila asi poder dividir sumar o restar la fila para que el valor necesario se convierta en cero, creo que se encuentra en este ciclo si alguien me pudiera ayudar se le agradeceria


1
2
3
4
5
6
for n=1:length(C(:,1)) %para n desde la primera fila hasta el número de filas existentes
  if n~=i % si n en la columna i no está en la diagonal es decir si i no es igual a n
      C(n,:)=-C(n,i).*C(i,:)+C(n,:); %entonces se convierte a 0 
       disp(C)
  end
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Gauss Jordan en matlab

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 22/04/2019 05:02:19
sí, justamente en esa línea es, si te fijas el valor negativo de lo que se encuentra -C(n,i). hace que se anule
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gauss Jordan en matlab

Publicado por erick (1 intervención) el 13/05/2021 05:28:38
que puedo agregar al codigo para que se muestren los ceros en los resultados de la matriz y que me diga si tiene infinidad de soluciones o que no tiene solución, espero me puedan ayudar
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar