Buenas bro, excelente video. Una pregunta, podría ser posible que compartas el código por PDF o algo así, tal como hiciste en el video del método de Jacobi?
Undefined function or variable 'metgaussseidel'. Me aparece asi, e hice exactmente lo mismo. Ya controle todo pero igual me salta ese error, como que no encuentra la función que guarde. Ayuda, gracias
function metgaussseidel(A, b, x, tol, m) n=leght(x); for k = 1:m w = x; for i = 1:n s = A(i,1:i-1)*x(1:i-1) + A(i,i+1:n)*x(i+1:n); x(i) = (bp(i) - s)/A(i,i); end if norm(x-w,inf)
en la séptima línea es "x(i) = (b(i) - s)/A(i,i);" en la variable b se fue multiplicada con "p " pero de ahí todo bien también en la linea 2 en vez de leghtx es length(x) pero aun asi no reconoce la función metgaussseidel
En este caso y el de Jacobi cuando pongo los valores me dice que el método no está hecho para trabajar con double (imagino se refiere a tolerancia). Y estoy usando los mismos datos y código del video. Por qué puede ser esto y cómo solucionarlo?
algun consejo para mejorar la logica de progrmacion? se me dificulta entender como abordar el problema y programarlo, alguna lista que tengas de ejercicios? o libro? o recurso?
A todos nos pasa cuando empezamos en el mundo de la programación, pero como tu los dices, nuestra forma lógica de pensar será la que determine un programa computacional óptimo, te recomiendo que empieces por reconocer tus variables de entrada y salida, luego incluir los procedimientos y asignaciones , a mi me funcionó primero realizar diagramas de flujo y sus simulaciones de problemas básicos , te puedo compartir mi otro canal de digramas de flujo y algoritmos: ua-cam.com/channels/slxaABL_5HbHwRerJ0l0YQ.html espero te sirva, saludos ;)
Si te refieres a un sistema de ecuaciones lineales de cuatro ecuaciones y tres incógnitas, no se puede resolver por este método, esto solo funciona para matrices de coeficientes que sean diagonalmente dominantes
Muy buen video, una pregunta, la comilla simple despues de meter la matriz de valores independientes ([5 6 4]') y los valores de x, para que sirve? ya que sin ella el programa me marca error. Saludos y gracias
El vector x es la variable a encontrar, pero para que funcione el método se debe dar a conveniencia un vector inicial, puede ser cualquiera, al azar incluso, solo que la matriz A debe ser diagonalmente dominante
function selgaussseidel(A,b,x,tol,m) n=length(x); for k=1:m w=x; for i=1:n s=A(i,1:i-1)*x(1:i-1)+A(i,i+1:n)*x(i+1:n); x(i)=(b(i)-s)/A(i,i); end if norm(x-w,inf)
Estimados, en este video (ua-cam.com/video/z645Df8BQuQ/v-deo.html) subido por uds la sumatoria es la misma (s=A(i,1:i-1)*w(1:i-1)+A(i,i+1:n)*w(i+1:n); x(i)=(b(i)-s)/A(i,i);) y dice método de Jacobi. Cuál es la diferencia?. Saludos y muy buena explicación.
Hola Carlos, en el metodo de jacobi el parametro w contiene todos los valores a reemplazarse en la nueva iteracion. mientras que en el metodo de Gauss seidel la variable w y x se fusionan en la misma iteracion , quiere decir que los valores calculados en esa iteracion se mezclan con los valores calculados en una iteracion anterior, esto significa que en cada iteracion se actualizan los valores de las variables. espero te sirva. que te vaya bien.
function metgaussseidel(A,b,x,tol,m) n=length(x); for k=1:m w=x; for i=1:n s=A(i,1:i-1)*x(1:i-1)+A(i,i+1:n)*x(i+1:n); x(i)=(b(i)-s)/A(i,i); end if norm(x-w,inf)
Exelente video al principio no me salia pero después ya, me salvaste de hacer una 4x4 con 20 interacciones
Buenas bro, excelente video.
Una pregunta, podría ser posible que compartas el código por PDF o algo así, tal como hiciste en el video del método de Jacobi?
Disculpa cuando quiero correr el programa me marca
Unrecognized function or variable Gausseidel
Que ocurre?
Gracias compartir. Me ha servido mucho.
Saludo,
Undefined function or variable 'metgaussseidel'. Me aparece asi, e hice exactmente lo mismo. Ya controle todo pero igual me salta ese error, como que no encuentra la función que guarde. Ayuda, gracias
sabes a el porque me sale Undefined function or variable, no me deja compilar?
Muchas gracias, me funcionó para la tarea, solo que hay que tenerla guardada y abrirla para que esto funcione
function metgaussseidel(A, b, x, tol, m)
n=leght(x);
for k = 1:m
w = x;
for i = 1:n
s = A(i,1:i-1)*x(1:i-1) + A(i,i+1:n)*x(i+1:n);
x(i) = (bp(i) - s)/A(i,i);
end
if norm(x-w,inf)
alcorrerlo me sale esto por que Unrecognized function or variable 'metgaussseidel'.
@@kevinguzman6658 Prueba con este otro código que hice:
function [T, n, errGS] = GaussSeidl(A, bp, T_ini, errGS, tolGS, itemax, N)
n = 0;
while errGS>tolGS
T_old = T_ini ;
for j = 1:N
T_ini(j) = (bp(j) - sum(A(j,:)'.*T_ini) + A(j,j)*T_ini(j))/A(j,j);
end
errGS = sqrt(sum((T_ini-T_old).^2)/N); % Cacula error de la iteracion
if n == itemax % Finaliza el bucle while si se excede un numero itemax de iteraciones
break
else
n=n+1;
end
end
T = T_ini;
end
en la séptima línea es "x(i) = (b(i) - s)/A(i,i);"
en la variable b se fue multiplicada con "p " pero de ahí todo bien
también en la linea 2 en vez de leghtx es length(x)
pero aun asi no reconoce la función metgaussseidel
En este caso y el de Jacobi cuando pongo los valores me dice que el método no está hecho para trabajar con double (imagino se refiere a tolerancia). Y estoy usando los mismos datos y código del video. Por qué puede ser esto y cómo solucionarlo?
algun consejo para mejorar la logica de progrmacion?
se me dificulta entender como abordar el problema y programarlo, alguna lista que tengas de ejercicios? o libro? o recurso?
A todos nos pasa cuando empezamos en el mundo de la programación, pero como tu los dices, nuestra forma lógica de pensar será la que determine un programa computacional óptimo, te recomiendo que empieces por reconocer tus variables de entrada y salida, luego incluir los procedimientos y asignaciones , a mi me funcionó primero realizar diagramas de flujo y sus simulaciones de problemas básicos , te puedo compartir mi otro canal de digramas de flujo y algoritmos:
ua-cam.com/channels/slxaABL_5HbHwRerJ0l0YQ.html
espero te sirva, saludos ;)
@@NUMERICSMETHODS muchas gracias. Me agobia esta área. Y necesito enfrentarla
Muy buena explicación! Muchas gracias!
como tendría que modificar el código de matalab si quisiera que el calculo de las iteraciones se realice matricialmente?
Cuál es la diferencia con Jacobi?
Excelente, muchas gracias!
No es igual al de Jacobi?
al correrlo me sale esto por que Unrecognized function or variable 'metgaussseidel'.
n=length(x);
me sale error ahi y aunque le cambien al numero que tengo de matrices me sale error igualmente
Tengo una duda si quiero cambiar el valor de la matriz, como le hago?
lo primero que tienes que hacer es ingresar los matrices igual que lo hice en el video, pero segun el problema que tengas.
Hola la programación en octave será igual o cambia alguna variable
Cambia, pero ahora no tengo el código en octave
@@NUMERICSMETHODS Muchas gracias
A mi me funciono igual
Como le hago para poner una ecuacion de 4x3? Ya que la pongo como viene en el video y me dice: index position i exceeds array bounds.
Si te refieres a un sistema de ecuaciones lineales de cuatro ecuaciones y tres incógnitas, no se puede resolver por este método, esto solo funciona para matrices de coeficientes que sean diagonalmente dominantes
Muy buen video, una pregunta, la comilla simple despues de meter la matriz de valores independientes ([5 6 4]') y los valores de x, para que sirve? ya que sin ella el programa me marca error. Saludos y gracias
Hola Adrian, el programa está diseñado para el ingreso de la matriz de términos independientes en un vector columna, y el apostrope le da ese efecto.
te transpone la matriz
podrias hacer un video con gauss-seidel relajacion
se puede para una matriz 4x4
Se puede para sistemas de cualquier tamaño cuadrado
Como puedo obtener una grafica de este método?
Muy bueno!!!
@CODIGOS METODOS NUMERICOS que alguien me ayude, no sé cómo ingresar los valores,? cómo esse chico?
Hola, una pregunta como es que pegas los valores en el programa?
PD. buen video bro :)
lo primero que tienes que hacer es ingresar los matrices en la ventana de comandos igual que lo hice en el video, pero segun el problema que tengas.
como puedo solucionar cuando me sale error 'metgaussseidel' en el comando.
Hola Sally, mándame el mensaje de error
@@NUMERICSMETHODS En el comando me aparece esto :Undefined function or variable 'metgaussseidel'.
@@saly5788 el problema es que no lo guardaste bien, recuerda que lo tienes que guardar con el nombremetgaussseidel.m
@@NUMERICSMETHODS Muchas gracias, ya me salio. Buen video gracias.
gracias!
Falto el método SOR :c, igual gracias por la enseñansa
Muchas gracias, excelente explicacion
Disculpa, ¿tienes tu archivo de matlab? :(
Como obtienes el vector x?
El vector x es la variable a encontrar, pero para que funcione el método se debe dar a conveniencia un vector inicial, puede ser cualquiera, al azar incluso, solo que la matriz A debe ser diagonalmente dominante
ME SALE ESTE ERROR??!!
Error in metgaussseidel (line 2)
n=lenght(x);
Unrecognized function or variable 'lenght'.
Error in metgaussseidel (line 2)
n=lenght(x);
Quiere decir que no reconoce al vector x, posiblemente no lo ingresaste.
@@NUMERICSMETHODS ya lo solucione, gracias
@@itzdeserthacksypvp7300 cómo lo solucionaste?? Me sale el mismo error
@@lizglez3867 no recuerdo fue hace tiempo xd
Muchísima gracia
gracias
como puedo graficaar
No le veo diferencia con Jacobi :/
me puede pasar el codigo
gracias
¿Alguien tiene su archivo? el mío no sirve :c
function selgaussseidel(A,b,x,tol,m)
n=length(x);
for k=1:m
w=x;
for i=1:n
s=A(i,1:i-1)*x(1:i-1)+A(i,i+1:n)*x(i+1:n);
x(i)=(b(i)-s)/A(i,i);
end
if norm(x-w,inf)
@@NUMERICSMETHODS No puedo usarlo :( me aparece "the function might be unused"
Alguien en el reto contenedores de vida????
Estimados, en este video (ua-cam.com/video/z645Df8BQuQ/v-deo.html) subido por uds la sumatoria es la misma (s=A(i,1:i-1)*w(1:i-1)+A(i,i+1:n)*w(i+1:n);
x(i)=(b(i)-s)/A(i,i);) y dice método de Jacobi. Cuál es la diferencia?. Saludos y muy buena explicación.
Hola Carlos, en el metodo de jacobi el parametro w contiene todos los valores a reemplazarse en la nueva iteracion.
mientras que en el metodo de Gauss seidel la variable w y x se fusionan en la misma iteracion , quiere decir que los valores calculados en esa iteracion se mezclan con los valores calculados en una iteracion anterior, esto significa que en cada iteracion se actualizan los valores de las variables.
espero te sirva.
que te vaya bien.
@@NUMERICSMETHODS , muchas gracias, entendí el concepto.
Pudieras pasarme el codigo por favor??
function metgaussseidel(A,b,x,tol,m)
n=length(x);
for k=1:m
w=x;
for i=1:n
s=A(i,1:i-1)*x(1:i-1)+A(i,i+1:n)*x(i+1:n);
x(i)=(b(i)-s)/A(i,i);
end
if norm(x-w,inf)
Ayudaaaaaaaaaaaaa
sabes a el porque me sale Undefined function or variable, no me deja compilar? me pasa esto me podrias ayudar que pena
Hola Erwin, lo que pasa es que no guardaste bien el código, te sugiero lo vuelvas a guardar