lunes, 27 de febrero de 2017

CÁLCULO DE EXTREMOS DE FUNCIONES DE TRES VARIABLES CON MAXIMA

CÁLCULO DE EXTREMOS DE FUNCIONES DE TRES VARIABLES CON MAXIMA
Ing. Luis Manfredo Reyes
Introducción:
Maxima es un sistema de cálculo simbólico, que fue desarrollado inicialmente   en el lenguaje de programación  Lisp. 
Maxima es un software que se derivó del sistema original Macsyma, desarrollado en el MIT (Massachusetts Institute of Technology) entre los años 1968 y 1982 como parte de un proyecto de investigación en computación simbólica  llamado “MAC”. 
En un gesto digno de agradecimiento, el MIT otorgó  una copia del código fuente original del software  al DOE (Department of Energy) en 1982, en una versión conocida como DOE-Macsyma. 
Una de estas copias fue custodiada por el Profesor William F. Schelter de la Universidad de Texas desde el año 1982 hasta su fallecimiento en 2001. 
En 1998 gracias a las gestiones y perseverancia de Schelter, se  logró obtener el permiso del Departamento de Energía para distribuir el programa bajo la llamada licencia GNU-GPL, iniciando en el año 2000 el proyecto Maxima en SourceForge con el fin de mantener y seguir desarrollando DOE-Macsyma, ahora con el nombre de Maxima. 


El Software puede descargarse, instalarse, utilizarse en forma gratuita, siempre que no se use con fines comerciales, ni se cobre por su uso. El sitio es: 
http://sourceforge.net/projects/maxima/files/latest/download?source=files

Maxima posee un  amplio conjunto de funciones para hacer manipulación simbólica depolinomios, matrices, funciones racionales, integración, derivación, manejo de gráficos en 2D y 3D, manejo de números de punto flotante y grandes, expansión en series de potencias y de Fourier, entre otras funcionalidades.
EXISTE UNA VERSIÓN DE MAXIMA PARA ANDROID E IOS, tanto para tabletas como para teléfonos inteligentes.
Se asume que el lector tiene conocimientos del uso básico del programa
Sintaxis:
En Maxima, una derivada  se representa usando la siguiente forma: diff(y,x)

ejemplo:   y´+2xy=x, en Maxima se codifica diff(y,x)+2*x*y=x
Si se trata de derivadas de orden superior, se indica así: 
diff(y,x,n)  
donde n es el grado (2=segunda, 3=tercera, etc)
En máxima los datos ingresados son identificados con la simbología %i1, %12, etc
Las salidas de resultados son identificados como %o1, %o2, etc
TODOS LOS COMANDOS QUE SE ESCRIBEN EN MAXIMA DEBEN TERMINAR EN PUNTO Y COMA


El cálculo de extremos de funciones de tres variables, implica un algoritmo donde se realizan las siguientes operaciones:
1.     Calcular las derivadas parciales, respecto a x , y z
2.     Igualar a cero las derivadas parciales y resolver el sistema de ecuaciones, con lo cual se obtienen los valores críticos
3.     Calcular las nueve segundas derivadas parciales (fxx, fxy, fxz,fyx,fyy,fyz,fzx,fzy,fzz)
4.     Valuar las segundas derivadas parciales en cada uno de los puntos críticos
5.     Calcular los tres  Hessianos:
Calculando la determinantes de las matrices formadas así:
La primera : [fxx]
La segunda  [fxx   fxy]
                     [fyx   fyy]
La tercera: 
                   | fxx   fxy   fxz |
                   | fyx   fyy   fyz |
                   | fzx   fzy    fzz |
6.     Aplicar la regla de decisión: 
d    Si todos los determinantes son positivos, es un mínimo local
      Si hay alternancia de signos: negativo-positivo-negativo, es un máximo local
      En cualquier otro caso, no hay información concluyente


EJEMPLO
Dada la función:


Determine puntos críticos y evalué su naturaleza

1.    Definir la función
f(x,y,z):=-x^3+3*x+2*y^2+4*y*z+3*y+8*z^2; 
2.    Calcular primeras derivadas parciales
     Teclado                                             resultado
define(fx(x,yz),diff(f(x,y,z),x)); …..fx(x,yz)=-3x2+3
define(fy(x,yz),diff(f(x,y,z),y));   …..fy(x,y,z)=4y+4z+3
define(fz(x,y,z),diff(f(x,y,z),z)); ……fz(x,y,z)=4y+16z

3.    Resolver el sistema de ecuaciones 
algsys([fx(x,y,z)=0,fy(x,y,z)=0,fz(x,y,z)=0],[x,y,z]);
Respuesta:
[[x = 1, y = (-1), z = 1 / 4], [x = (-1), y = (-1), z = 1 / 4]]
Hay dos puntos críticos

4.    Calcular segundas derivadas parciales:
define(fxx(x,y,z),diff(fx(x,y,z),x));…..-6x
define(fxy(x,y,z),diff(fx(x,y,z),y));……0
define(fxz(x,y,z),diff(fx(x,y,z),z));……0
define(fyx(x,y,z),diff(fy(x,y,z),x));……0
define(fyy(x,y,z),diff(fy(x,y,z),y));…..4
define(fyz(x,y,z),diff(fy(x,y,z),z));……4
define(fzx(x,y,z),diff(fz(x,y,z),x));……0
define(fzy(x,y,z),diff(fz(x,y,z),y));……4
define(fzz(x,y,z),diff(fz(x,y,z),z));……16

5.    Valuar las segundas derivadas parciales en cada punto si es necesario. Solamente se debe valuar la fxx
Cuando x=1……ev(fxx(x,y,z),[x=1,y=1,z=-1,1/4]);….-6
Cuando x=-1… ev(fxx(x,y,z), [x=(-1,y=-1,z=1/4]);…..6

6.    Análisis para el punto (1,-1,1/4)
Hessiano de xx:  [-6] Su determinante es -6
Hessiano de xy: determinant(matrix([-6,0],[0,4]));..-24
Hessiano xyz: determinant(matrix([-6,0,0],[0,4,4],[0,4,16]));..-288
CONCLUSION: No se sabe si es máximo o mínimo (no es concluyente)
7.    Análisis para el punto (-1,-1,1/4)
Hessiano de xx:  [6] Su determinante es 6
Hessiano de xy: determinant(matrix([6,0],[0,4]));..24
Hessiano xyz: determinant(matrix([6,0,0],[0,4,4],[0,4,16]));..288
CONCLUSION: es un mínimo!!!!






No hay comentarios:

Publicar un comentario