Matlab - Dudas sobre polinomio no lineal de varias variables

 
Vista:

Dudas sobre polinomio no lineal de varias variables

Publicado por Catalina (2 intervenciones) el 17/03/2013 04:14:04
Hola
Estoy aprendiendo a manejar Matlab y debo realizar un algoritmo para resolver el Método de Gauss Seidel para ecuaciones no lineales, de orden 3. Conozco bien el método y se que debo hacer pero mi problema es que no se bien como ingresar los datos iniciales, ya que al intentar hacer un ciclo el programa me indica varios errores. Debo ingresar las tres ecuaciones sin despejar y emplear el algoritmo para despejar las tres variables.
Les adjunto lo que estoy tratando de resolver para ver si me pueden explicar que estoy haciendo mal

%ingreso de las ecuaciones
for i=1:3
fprintf('Digite la función p%d(x,y,z)= ',i);
p(i)=input('\')%Pp(i) va a recibir las 3 funciones
if i==1
G(i)=solve(p(i),'x');% en este paso pretendo despejar la variable x
elseif i==2
G(i)=solve(p(i),'y');
else
G(i)=solve(p(i),'z');
end
end

Los errores que el programa me muestra son que 'p' cambia su tamaño en cada ciclo y lo mismo para G.
Agradezco la ayuda que me puedan
Saludos
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 JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Dudas sobre polinomio no lineal de varias variables

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 17/03/2013 16:51:43
Como tu mismo dices, que conoces muy bien el método de Gauss Sidel para polinomios no lineales.
Entonces la idea es aplicar ese método, pero Tu no estas haciendo eso, lo que estas haciendo es querer resolver tu sistema de ecuaciones con la función solve() de matlab. Primero tienes que hacer tu algoritmo del Método de Gauss Sidel par sistemas no lineale, luego pasar ese algoritmo a matlab. No tienes porque usar la función solve(), lo que tienes que usar el jacobiano que en matlab es jacobian(), la función syms, la función input, el bucle for, una condición inicial, ya que el método de Gauss Sidel es un método iterativo y usas mas comandos de matlab.
Bueno te estoy dando una idea general que lo tienes que hacer.
Además el sistema que vas a probar tiene que estar resuelto por otro método como por ejemplo el método de Newton para sistema no lineales, para que puedas ver los resultados, ya que un programa hecho en matlab te va arrojar un resultado, pero eso no indica que ese resultado sea la correcta, es decir tienes que contrastar con problemas resueltos por otros métodos.

Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
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

Dudas sobre polinomio no lineal de varias variables

Publicado por Catalina (2 intervenciones) el 17/03/2013 19:31:50
Hola Jose
Muchas gracias por tu respuesta. Ye resolví el algoritmo, en realidad solo había copiado aquí la parte en la que tenia dudas pero yo ya había establecido el ingreso de la condición inicial y el bucle para la iteración. Te aclaro que no estaba utilizando el solve para resolver cada ecuación sino para despejar, por eso lo ingresé como solve(p(i), 'x'), donde me arroja la variable x despejada. Aún no conozco muchas funciones de matlab, pero se que la función que me indicaste jacobian me presenta la derivada. Esta función la utilice para otro algoritmo empleando el método de Jacobi. Comparé los resultados con el de Newton (que de hecho ya tenia el algoritmo) e incluso con la gráfica y todo salio muy bien.
Quería saber si me puedes brindar servicio de asesoría en algunos temas básicos de Matlab y si me puedes indicar cuanto cobras por ello. ¿Me podrías mandar la información al correo por favor?

De nuevo gracias
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 JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Dudas sobre polinomio no lineal de varias variables

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 18/03/2013 02:43:45
Bueno Catalina.
Me escribes a mi correo, en que temas te gustaría que te brinde mis servicios de programación en matlab.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesorías en Matlab
programador en matlab
Servicios de programación matlab
[email protected]

http://matlabcaballero.blogspot.com
http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
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