From: nicolás r. <ant...@gm...> - 2009-09-26 23:00:32
|
> > 4. Re: Problema anidando llamadas a funciones (o comandos) > (Juan Pablo Romero Bernal) > Message: 4 > Date: Mon, 17 Aug 2009 16:58:26 -0500 > From: Juan Pablo Romero Bernal <jro...@gm...> > Subject: Re: [Maxima-lang-es] Problema anidando llamadas a funciones > (o comandos) > To: grupo maxima <max...@li...> > Message-ID: > <afa...@ma...> > Content-Type: text/plain; charset=ISO-8859-1 > > Saludos, > > > hola gente, la verdad que no sabía como titular la pregunta (espero > llamar > > la atención adecuadamente). Mi problema es el siguiente: > > Me encontré con lo siguiente: si utilizo el comando evaluar (ev) anidadno > > llamadas a denom y lhs anda mal... muestro con ejemplo: > > ej: ------------------------------- > > (%i1) ecuacion:((x+1)*(x-3))/((x-1)*(x-2))=0; //defino una > > ecuación y la llamo ecuación > > (%o1) ((x-3)*(x+1))/((x-2)*(x-1))=0 > > (%i2) ev(denom(lhs(ecuacion)),x=3); //pretendo > evaluar > > el denominador de la misma si x=3 > > (%o2) 1 > > //MAL!!!!!!!!! > > (%i3) denom(lhs(ecuacion)); //obtengo > el > > denominador del priemr miembro de la ecuación > > (%o3) (x-2)*(x-1) > > (%i4) ev(%,x=3); > > //realizo la evaluación (pero de otro modo!) > > (%o4) 2 > > //ahora funciona bien! > > fin ej--------------------------------------------------------- > > Cuando utilizas la función ev, esta evalua la expresión que se pasa > como argumento con base en las condiciones que se establecen. En tu > caso, cuando ejecutas: > > (%i72) ev((denom(lhs(ecuacion))),x=3); > (%o72) 1 > > obtienes 1, debido a que ev realiza la sustitución de x=3 en > ecuacion, no en el resultado de la evaluación de denom y lhs, así: > > (%i73) ecuacion,x=3; > (%o73) 0 = 0 > (%i74) lhs(%); > (%o74) 0 > (%i75) denom(%); > (%o75) 1 > > Para que ev aplique la evaluación después, puedes hacer lo siguiente: > > (%i77) ev('(denom(lhs(ecuacion))),x=3,eval); > (%o77) 2 > > el parámetro eval se usa para realizar una post-evaluación. Revisa la > documentación de la función ev en [1] > > Espero haya sido de ayuda. > > Si super claro... muchas gracias nicolas |