/* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ /* [ Created with wxMaxima version 13.04.2 ] */ /* [wxMaxima: title start ] Práctica 9. Extremos de funciones de varias variables. [wxMaxima: title end ] */ /* [wxMaxima: section start ] Derivadas parciales de orden superior. [wxMaxima: section end ] */ /* [wxMaxima: comment start ] Para hallar derivadas de orden superior de una función de varias variables usamos el comando diff con la siguiente sintaxis diff(función, x1, n1, x2, n2,... xm, nm) que deriva la función nm veces respecto a la variable xm, y continúa derivando hasta derivar n2 veces respecto a x2 y n1 veces respecto a x1. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Para ver unos ejemplos, definimos una función de dos variables. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(x,y):=x^2+7*x*y^2; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Hallamos la derivada segunda de f respecto de x (dos veces). [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ diff(f(x,y),x,2); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Hallamos la derivada segunda de f, respecto de x y de y (deriva una vez respecto de y, y una vez respecto de x). [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ diff(f(x,y),x,1,y,1); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Hallamos la derivada segunda de f respecto de y (dos veces). [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ diff(f(x,y),y,2); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Por último vemos una derivada de orden 3, derivamos f respecto de y dos veces, y respecto de x una vez. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ diff(f(x,y),x,1,y,2); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Ej. Halle la derivada quinta de g(x,y)=e^(7*x)*e^y, respecto de x dos veces y respecto de y tres veces. (Sol. 49*%e^(y+7*x) .) [wxMaxima: comment end ] */ /* [wxMaxima: section start ] Matriz hessiana y hessiano. [wxMaxima: section end ] */ /* [wxMaxima: comment start ] Maxima cuenta con un comando que permite hallar la matriz hessiana de una función. La sintaxis es hessian( función, variables ) [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(x,y):=x^2+7*x*y^2; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ hessian(f(x,y),[x,y]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Ej. Halle la matriz hessiana de la función g(x,y)=sen(x*y)+y. (Sol. matrix([-y^2*sin(x*y),cos(x*y)-x*y*sin(x*y)],[cos(x*y)-x*y*sin(x*y),-x^2*sin(x*y)]) .) [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Como en otras ocasiones, para evaluar la matriz hessiana en uno o varios puntos, es conveniente usar el comando define. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ define(h(x,y),hessian(f(x,y),[x,y])); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ h(0,1); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Para hallar el hessiano de una función en un punto, basta hallar el determinante de la matriz hessiana. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ determinant( h(0,1) ); /* [wxMaxima: input end ] */ /* [wxMaxima: section start ] Extremos relativos. [wxMaxima: section end ] */ /* [wxMaxima: comment start ] En esta sección mostramos como hallar los extremos relativos de una función de dos variables. Nos planteamos hallar los extremos relativos de la función f(x,y)=x^2 + y^2-2*log(x)-18*log(y) [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] En primer lugar definimos la función f [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(x,y):=x^2 + y^2-2*log(x)-18*log(y); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] En este caso, la función está definida para valores x>0 y valores y>0. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Para poder determinar los puntos críticos necesitamos el gradiente de la función f. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ jacobian([f(x,y)],[x,y]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Vemos que la parcial de f con respecto a x es 2*x-2/x y que la derivada de f con respecto a y es 2*y-18/y. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Los puntos críticos serán aquellos que hagan que el gradiente valga (0,0), esto es, que las dos parciales valgan cero. Para resolver ese sistema de ecuaciones usamos el comando algsys. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ algsys([2*x-2/x=0,2*y-18/y=0],[x,y]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Observamos de la salida que tenemos 4 puntos críticos, que son [x=1,y=-3] [x=-1,y=-3] [x=1,y=3] [x=-1,y=3] . [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] De todos estos puntos, sólo el [x=1,y=3] está en el dominio de la función, es el único punto crítico de f. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Para determinar si el punto crítico hallado es extremo o no, debemos estudiar el hessiano de la función f. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ define(h(x,y),hessian(f(x,y),[x,y])); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Evaluamos el hessiano en el punto crítico. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ h1:h(1,3); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ determinant(h1); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Como el determinante de la matriz hessiana es 16>0, deducimos que hay extremo relativo en ese punto. Y comoademás el primer elemento de la matriz hessiana es 4>0, deducimos que en x=1, y=3 hay un mínimo relativo. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Ej. Estudie los extremos relativos de la función f(x,y)=e^(x-y)(x^2-2*y^2) . [wxMaxima: comment end ] */ /* [wxMaxima: section start ] Multiplicadores de Lagrange [wxMaxima: section end ] */ /* [wxMaxima: comment start ] Nos planteamos hallar el máximo de la función f(x,y,z)=x*y*z restringido a las condiciones x+y+z=5, x*y+y*z+z*x=8. (Ejercicio 2028 de 'Problemas y ejercicios de Análisis Matemático' por Demidovich et al.) En este ejemplo hallamos el máximo volumen de un paralelepípedo en el que la suma de las dimensiones ancho, alto y profundidad debe ser 5 unidades, y la superficie exterior (suma de las caras) debe ser 16. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] 1- Definimos la función f. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(x,y,z):=x*y*z; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 2- Definimos las funciones g1 y g2, de forma que las restricciones sean g1=0, g2=0. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ g1(x,y,z):=x+y+z-5; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ g2(x,y,z):=x*y+y*z+z*x-8; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 3- Definimos la función lagrangiana, en este caso con dos multiplicadores de Lagrange. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ L(x,y,z,a1,a2):=f(x,y,z)-a1*g1(x,y,z)-a2*g2(x,y,z); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 4- Calculamos las derivadas de la función lagrangiana. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ jacobian([L(x,y,z,a1,a2)],[x,y,z,a1,a2]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 5- Hallamos los puntos críticos de la función lagrangiana (copiamos y pegamos las derivadas) [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ algsys( [-a2*(z+y)+y*z-a1,-a2*(z+x)+x*z-a1,-a2*(y+x)+x*y-a1,-z-y-x+5,-y*z-x*z-x*y+8] ,[x,y,z,a1,a2]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 6- (El gradiente de f no se anula en la restricción) [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Evaluamos en los posibles extremos absolutos. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(1,2,2); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(7/3, 4/3, 4/3); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(2,1,2); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(4/3, 7/3, 4/3); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(4/3, 4/3, 7/3); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(2, 2, 1); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ float( 112/27 ); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Así el máximo volumen es 112/27 para lados 4/3, 4/3, 7/3 y el mínimo volumen es 4 para lados 2, 2, 1 . [wxMaxima: comment end ] */ /* [wxMaxima: section start ] Extremos absolutos [wxMaxima: section end ] */ /* [wxMaxima: comment start ] El teorema de Weierstrass nos asegura la existencia de máximo y mínimo absoluto de una función continua definida en un conjunto compacto. Estos extremos se pueden encontrar en el interior del conjunto o en su frontera. En el siguiente ejemplo hallamos los puntos críticos en el interior usando la condición necesaria de extremos relativos, y los posibles extremos de la frontera usando los multiplicadores de Lagrange. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Nos planteamos hallar los extremos absolutos de la función f(x,y)=x^2-2*y^2 en el círculo K={ (x,y) : x^2+y^2<=4 }. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] En primer lugar hallaremos los puntos críticos de la función f. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Definimos la función f. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(x,y):=x^2-2*y^2; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Hallamos sus parciales, para obtener los puntos críticos. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ jacobian([f(x,y)],[x,y]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Igualamos las parciales a cero y resolvemos el sistema, con lo que obtenemos los puntos críticos. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ algsys([2*x=0,-4*y=0],[x,y]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] El punto hallado está en el interior del dominio. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Hallaremos ahora los extremos de f condicionados a la frontera del dominio en 5 pasos. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] 1- La función f ya está definida. [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] 2- Definimos la función g, que es la restricción que nos da la frontera del compacto. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ g(x,y):=x^2+y^2-4; /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 3- Definimos la función lagrangiana. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ L(x,y,a):=f(x,y)-a*g(x,y); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 4- Calculamos las derivadas de la función lagrangiana. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ jacobian([L(x,y,a)],[x,y,a]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 5- Hallamos los puntos críticos de la función lagrangiana. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ algsys([2*x-2*a*x=0,-2*a*y-4*y=0,-y^2-x^2+4=0],[x,y,a]); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] 6- (El gradiente de f no se anula en la restricción) [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Evaluamos en los posibles extremos absolutos. [wxMaxima: comment end ] */ /* [wxMaxima: input start ] */ f(0,0); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(-2,0); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(2,0); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(0,2); /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ f(0,-2); /* [wxMaxima: input end ] */ /* [wxMaxima: comment start ] Concluimos que el máximo de la función es 4 y se alcanza en los puntos (2,0) y (-2,0). El mínimo de la función es -8 y se alcanza en los puntos (0,2) y (0,-2). [wxMaxima: comment end ] */ /* [wxMaxima: comment start ] Ej. Determinar el máximo y mínimo absoluto z=x^2*y en la región x^2+y^2<=1 (Demidovich, ejercicio 2031). (Dem. máximo absoluto 2/(3*sqrt(3)), mínimo absoluto -2/(3*sqrt(3)) .) [wxMaxima: comment end ] */ /* Maxima can't load/batch files which end with a comment! */ "Created with wxMaxima"$