Sie sind auf Seite 1von 21

FOROS ACADMICOS METAL-MECNICA 2011 CLCULO DIFERENCIAL E INTEGRAL EN MATLAB Instituto Tecnolgico de la Laguna | Juan Manuel Jimnez Israel

Montoya Ricardo Vargas Omar Carrillo 1 Introduccin | FOROS ACADMICOS METAL-MECNICA 2011 Contenido Introduccin ........................................................................................................................................ 4 Interfaz de MATLAB............................................................................................................................. 5 Manejo elemental de MATLAB en ventana de comandos .................................................................. 9 Funciones y operaciones bsicas ...................................................................................................... 10 Operaciones matemticas elementales ........................................................................................ 10 Funciones ms comunes ............................................................................................................... 10 Symbolic Math Toolbox..................................................................................................................... 11 Simplificacin y sustitucin ............................................................................................................... 11 collect(f) .................................................................................................................................... 12 expand(f) .............................................. ..................................................................................... 12 factor(f) ..................................................................................................................................... 13 simplify(f)................................................................................................................................... 14 pretty(f) ..................................................................................................................................... 15 subs(S,new,old) ......................................................................................................................... 15 Calculo Diferencial............................................................................................................................. 17 Lmites ........................................................................................................................................... 17 limit(f,x,a) .................................................................................................................................. 17 Diferenciales .................................................................................................................................. 21 Diff(f,v,n) ................................................................................................................................... 21 Aplicaciones de la derivada ............................................................................................................... 24 Mximos y mnimos ....................... ............................................................................................... 24 fminbnd()................................................................................................................................... 24 Integracin ........................................................................................................................................ 31 Clculo de primitivas ..................................................................................................................... 31 int( ) ........................................................................................................................................... 31 Integrales definidas ....................................................................................................................... 32 Aplicaciones................................................................................................................................... 36 Clculo de reas ........................................................................................................................ 36 Volumen de un cuerpo de revolucin ....................................................................................... 45 Longitud de

arcos de curvas ...................................................................................................... 47 Otros comandos ................................................................................................................................ 49 Calculo Diferencial e Integral con MATLAB| Introduccin 2 vpa( ) .......................................................................................................................................... 49 Calculo Diferencial e Integral con MATLAB| Introduccin 3 Introduccin En la actualidad, el manejo de los distintos programas computacionales para la solucin de problemas de ingeniera ha pasado de ser un lujo a una necesidad. El trabajo presentado a continuacin constituye una gua de aprendizaje de MATLAB bsico con aplicaciones de clculo diferencial e integral, y se pretende sirva como apoyo a los alumnos de Ingeniera mecatrnica en el Instituto Tecnolgico de la Laguna. MATLAB, es un software ampliamente difundido en el campo de la docencia y la investigacin ya que es un lenguaje de alto nivel para clculo cientfico con gran potencial y fcil de manejar, ya que cuenta con distintos paquetes toolbox, las cuales le permiten al usuario resolver problemas utilizando algoritmos especficos predefinidos, de los cuales, para este curso, se tratara bsicamente el paquete Symbolic Matlab Toolbox. Este paquete nos permite realizar clculos de manera simblica, es decir, sin necesidad de asignar un nmero a una variable y tratarla como una constante genrica, lo cual, nos permite realizar operaciones de integracin simblica, derivacin, calculo de reas, volmenes, etc. Adems, en este curso se tratan temas bsicos acerca de graficacin en dos y tres dimensiones, los cuales servirn de apoyo para la comprensin de los resultados obtenidos. Con este curso, se pretende que el alumno adquiera los conocimientos bsicos ne cesarios para resolver problemas de clculo diferencial e integral, adems de sus aplicaciones, dndole la oportunidad de comprender de una manera ms clara las aplicaciones de sta extensa rea, adems de las facilidades que nos brinda MATLAB para realizar este tipo de procedimientos. Calculo Diferencial e Integral con MATLAB| Introduccin 4 Interfaz de MATLAB El primer paso antes de comenzar a trabajar con MATLAB, consiste en conocer la ventana principal y sus componentes, los cuales se muestran a continuacin: Figura 1.-Ventana principal de MATLAB, en ella se sealan algunos de los campos mas importantes como son: a)Current folder (Izquierda), b)Command Window (centro), c)Workspace (derecha superior), d)Command History (derecha inferior). Current folder: Este campo nos muestra el directorio en el cual MATLAB busca los archivos M-files y los archivos de Workspace (.mat) los cuales pueden ser guardados para cargarse en otra sesin. La importancia de esta carpeta radica en que en ella deben de encontrarse todos los archivos que requerimos al momento de realizar cualquier proyecto, es por eso que se recomienda tener una carpeta para cada proyecto en la cual se encuentren los archivos que usaremos, y esta carpeta, debe estar activa al trabajar con este proyecto. Calculo Diferencial e Integral con MATLAB| Interfaz de MATLAB

5 Para cambiar la carpeta seleccionada, podemos escribir o buscar utilizando la barra de direccin en la parte superior o haciendo clic en el lado aun lado de sta, como se muestra en la Figura 2. Figura 2.- Barra de direcc in para seleccionar la carpeta actual (Current Folder). Command Window: Las expresiones y declaraciones de MATLAB son evaluadas conforme se van tecleando en la Command Window o ventana de comandos, y los resultados, son mostrados en la misma seccin. Figura 3.- En este ejemplo, se muestra como en la ventana de comandos se ingresa a la variable t el valor de 5, para despus evaluar la funcin y=sin(t) para dicho valor. Como podemos apreciar, el resultado se muestra inmediatamente debajo de la instruccin tecleada por el usuario. Workspace Window: La ventana de trabajo, Workspace Window muestra todas las variables asignadas durante una sesin de MATLAB. Existen muchos tipos de datos o clases fundamentales en MATLAB y, cada uno de estos est formado por un arreglo multidimensional. Calculo Diferencial e Integral con MATLAB| Interfaz de MATLAB 6 Figura 4.- En el Workspace, podemos apreciar las variables almacenadas durante una sesin, las cuales pueden tener distintos valores o ser de distintas clases. En esta imagen se pueden apreciar 4 variables de distintos tipos: a) Variable a: Esta variable contiene el arreglo tipo double [1,2,3,4]. b) Variable t: Esta variable contiene almacenado un nmero tipo double. c) Variable x: esta variable se defini como un arreglo de 1x1 tipo simblico. d) Variable y: Contiene un nmero decimal tipo double. Al escribir el comando whos en el Command Window, como resultado obtendremos una lista de todas las variables guardadas en el Workspace, permitindonos visualizar claramente el tamao del arreglo de cada vari able, adems de su clase o tipo y su peso en Bytes. Figura 5.- Uso del comando whos para visualizar un anlisis detallado de las variables almacenadas en el Workspace. Calculo Diferencial e Integral con MATLAB| Interfaz de MATLAB 7 Command History: El historial de comandos, nos permite visualizar todos los comandos utilizados recientemente, los cuales son almacenados para facilitarle al usuario el uso de comandos repetidamente, adems de poder visualizar todos los procedimientos realizados. Estos comandos, conforme pasa el tiempo, se van ordenando por fecha y hora de ejecucin, lo cual nos permite verificar los comandos usados en casi cualquier momento en el pasado.

Una muy til opcin que nos brinda la Command Window de Matlab, es que, al presionar las teclas de las flechas, podemos ir desplazndonos a travs de los comandos del Command History, lo cual nos absuelve de tener que escribir los mismos comandos repetidas veces. Figura 6.- Vista de comandos archivados en el Command History, para insertarlos en la ventana de comandos, basta con hacer doble clic sobre el en el Command History o navegar a travs de ellos con las flechas del teclado. Calculo Diferencial e Integral con MATLAB| Interfaz de MATLAB 8 Manejo elemental de MATLAB en ventana de comandos En MATLAB, los comandos deben introducirse uno a uno enseguida del prompt (>>), que aparece en la ventana de comandos. Para familiarizarnos con el manejo de la ventana de comandos de MATLAB, comenzaremos realizando algunas operaciones matemticas bsicas que nos permitan entender el funcionamiento de la consola o ventana de comandos. Para sumar dos nmeros, es necesario introducir lo siguiente en la ventana de comandos: >>3+2 Ans = 5 En el ejemplo, se presentan los comandos ingresados por el usuario en un fondo color naranja, mientras que el resultado obtenido al presionar la tecla ENTER se muestra remaraca con un fondo en color verde. Como podemos apreciar, en el resultado se guardo automticamente en una variable llamada Ans, de la forma Ans=4. Esto sucede ya que, siempre que realicemos una operacin sin asignarla a una variable, esta por default se guardara en la variable ANS, sobrescribiendo el resultado anterior. Pero, Qu pasara si queremos conservar los valores de distintas operaciones?, en este caso es necesario asignar la operacin a una variable como se muestra en el ejemplo siguiente: >>x=3*5 Ans = 15 Una vez realizadas las operacin de suma y multiplicacin anteriores, nuestro Workspace debe lucir de la siguiente manera: Figura 7.- Apariencia del Workspace despus de realizar las operaciones anteriores. Se pueden apreciar en el los valores resultantes de dichas operaciones. Calculo Diferencial e Integral con MATLAB| Manejo elemental de MATLAB en ventana de comandos 9 De esta manera, MATLAB nos permite realizar en la operacin matemtica tan sencilla como los ejemplos hasta ahora mostrados, y a su vez, realizar clculos matemticos con niveles de complejidad increblemente elevados, convirtindose en una poderosa herramienta en ingeniera. En los siguientes captulos, trataremos acerca de distintos temas, principal mente enfocados al manejo de MATLAB para resolver problemas de clculo diferencial e integral, tanto de forma simblica como numrica, y se busca ir pasando de problemas sencillos hasta problemas con un nivel de complejidad un poco mas elevado, siempre buscando que el alumno entienda el funcionamiento y la aplicacin de MATLAB para resolver problemas que, como estudiantes de ingeniera, se convertirn en parte de la vida diaria. Funciones y operaciones bsicas A continuacin, se presentan algunos tablas informticas con los operadores matemticos,

comandos funciones que sern utilizadas durante el curso. Operaciones matemticas elementales Suma Resta Divisin Exponenciacin Multiplicacin Raz cuadrada + / ^ * Sqrt() Funciones ms comunes sin( ) cos( ) tan( ) sinh( ) cosh( ) tanh( ) asin( ) acos( ) atan( ) exp( ) log( ) log10( ) abs( ) Seno Coseno Tangente Seno hiperblico Coseno hiperblico Tangente hiperblico Arcoseno Arcocoseno Arcotangente Exponencial Logaritmo neperiano Logaritmo decimal Valor absoluto Calculo Diferencial e Integral con MATLAB| Funciones y operaciones bsicas 10 Symbolic Math Toolbox Con Symbolic Math Toolbox, el usuario cuenta con una serie de comandos que le permitirn realizar clculos simblicos. Este toolbox, nos brinda las herramientas necesarias para resolver y manipular expresiones matemticas simblicas generando resultados aritmticos de gran precisin. Se cuenta con cientos de funciones simblicas que nos permitirn realizar tareas como: Diferenciar Integrar Operaciones algebraicas lineales Simplifi cacin Transformacin Aritmtica de precisin variable Solucin de ecuaciones Simplificacin y sustitucin Algunas de los comandos bsicos que nos sern de gran ayuda al resolver problemas de matemticas simblicas, y uno de los problemas con los que nos encontramos, es con la necesidad de expresar una misma ecuacin de distintas maneras, en el ejemplo siguiente, podemos apreciar la misma ecuacin expresada de tres formas distintas. En el ejemplo siguiente, podemos apreciar la primera instruccin llamada syms seguida por la letra x, lo cual nos indica que estamos asignando x como una variable simblica en el Workspace, lo cual nos permitir trabajar con ella utilizando funciones del Symbolic Math Toolbox. Otra dato importante es que, en la consola de MATLAB, podemos agregar comentarios, los cuales son ignorados al ejecutar las instrucciones, es decir, solo tienen funcin informativa para el usuario. En este ejemplo, podemos apreciar que al escribir el signo %, automticamente el texto que lo sigue aparece en color verde, lo cual quiere decir que es un comentario, y que ser ignorado al momento de realizar las operaciones. >> syms x %Declara x como una variable simblica >> f = x^3 - 6*x^2 + 11*x - 6; %Guarda en f, g y h la misma funcin >> g = (x - 1)*(x - 2)*(x - 3); %Expresada de distinta forma >> h = -6 + (11 + (-6 + x)*x)*x; Una vez ingresadas estas funciones a la consola de MATLAB, podemos apreciar que las variables f,g y h, aparecern en el Workspace, lo que quiere decir que las funciones han sido guardadas correctamente y que podemos realizar con ellas una gran cantidad de operaciones, sin tener que volver a escribirlas cada vez que las necesitamos. Calculo Diferencial e Integral con MATLAB| Symbolic Math Toolbox 11 Figura 8.- Apariencia del Workspace despus de insertar las funciones f, g y h del ejemplo anterior. Existen algunos comandos que dentro del Symbolic Math Toolbox que nos permiten visualizar una de distintas formas. En el ejemplo anterior, vimos un ejemplo de tres ecuaciones iguales expresadas en un modo distinto, pero, al fin de cuentas, no son ms que la misma

ecuacin. A continuacin se menciona una breve descripcin y ejemplo sobre el uso de algunos comandos para simplificar una ecuacin. collect(f) El comando collect(f) muestra junta todos los coeficientes con la misma potencia de la variable simblica, por ejemplo x. Un segundo argumento puede indicar la variable que se quiere afectar, en el caso de tener varias variables. Ejemplo: >> syms x >> f = (x-1)*(x-2)*(x-3); >> collect(f) Ans = x^3-6*x^2+11*x-7 %Declaramos x como variable simblica %ingresamos la funcin f %Aplicamos el comando collect Podemos observar en el resultado, que se efectuaron todas las multiplicaciones y los trminos se agruparon de mayor a menor grado. expand(f) El comando expand(f) tiene la funcin de distribuir los productos de una ecuacin y aplicar las identidades correspondientes generndonos ecuaciones de sumas, como se muestra en el ejemplo. Calculo Diferencial e Integral con MATLAB| Simplificacin y sustitucin 12 Ejemplo1: >> syms a x y >> f = a*(x+y); >> expand(f) Ans = a*x+a*y %De claramos a,x,y como variables simblicas %ingresamos la funcin f %Aplicamos el comando expand( ) En este ejemplo, podemos apreciar que al aplicar el comando expand( ) a la funcin f, obtuvimos como resultado que esta se expanda en trminos suma. Ejemplo 2: >> syms a b >> f = exp(a+b); >> expand(f) Ans = exp(a)*exp(b) %Declaramos a,x,y como variables simblicas %ingresamos la funcin f %Aplicamos el comando collect En este ejemplo podemos apreciar que al aplicar el comando expand a la funcin f, el resultado consiste en evaluar la funcin conociendo la identidad que nos dice que . Es decir, se aplico la identidad correspondiente a la ecuacin. Ejemplo 3: >> syms x y >> f = cos(x+y); >> expand(f) Ans = Cos(x)*cos(y)-sin(x)*sin(y) %Declaramos a,x,y como variables simblicas %ingresamos la funcin f %Aplicamos el comando expand En el tercer y ltimo ejemplo de la funcin expand, tambin podemos apreciar la aplicacin de una identidad trigonomtrica, la cual nos dice que . Con lo cual, comprobamos el funcionamiento de el comando expand para distintos casos. factor(f) Siendo f un polinomio con coeficientes racionales, el comando factor(f) expresa la funcin f como un producto de polinomios de menor grado con coeficientes racionales. En

caso de que el polinomio f no pueda ser factorizado, el resultado ser el mismo polinomio f en su forma original. Calculo Diferencial e Integral con MATLAB| Simplificacin y sustitucin 13 Ejemplo: >> syms x >> f = x^3-6*x^2+11*x-6; >> factor(f) ans = (x-3)*(x-1)*(x-2) %Declaramos x como variables simblicas %ingresamos la funcin f %Aplicamos el comando factor Podemos apreciar que el resultado al ejecutar el comando factor nos entrega la ecuacin factorizada, contrario a la funcin expand. simplify(f) La funcin simplify(f) es un poderoso comando de propsito general el cual aplica a una ecuacin identidades algebraicas, potencias, races cuadradas, potencias fraccionales, as como una gran cantidad de identidades trigonomtricas, exponenciales, logartmicas, entre otras, generndonos excelentes resultados. Para dejar en claro el funcionamiento del comando simplify(f) se presentan los siguientes ejemplos: Ejemplo 1: >> syms x >> f = (1-x^2)/(1-x); >> simplify(f) ans = x+1 En este ejemplo podemos apreciar como el comando simplify nos llev de una funcin compleja a una expresin notablemente ms sencilla. Ejemplo 2: >> syms x y >> f = exp(x)*exp(y); >> simplify(f) ans = exp(x+y) Calculo Diferencial e Integral con MATLAB| Simplificacin y sustitucin 14 En este ejemplo el comando simplify nos genero una ecuacin mas sencilla utilizando la identidad que nos dice que Ejemplo 3: >> syms x >> f = cos(x)^2+sin(x)^2 >> simplify(f) ans = 1 pretty(f) El comando pretty(f) muestra la funcin f en un formato similar a la escritura natural matemtica. Ejemplo 1: >> syms x >> f = 3*x^2-6*x^2+11*x-6; >> pretty(f) ans = 3 2 x - 6 x + 11 x - 6 Ejemplo 2: >> syms x >> pretty([x^3,x^2,x; 1,2,3]) ans = +-+ | 3 2 | | x , x , x | | | | 1, 2, 3 | +-+ subs(S,new,old) El comando subs(), reemplaza en la funcin S, la variable old por el valor de n ew, que puede ser una variable, una funcin o un nmero. Existen distintas variantes en los parmetros que se asignan al comando, mas sin embargo, para este curso bsico solo usaremos la forma ms genrica del mismo.

Calculo Diferencial e Integral con MATLAB| Simplificacin y sustitucin 15 Ejemplo 1: >> syms x y >> f=x^3+3*x+2; >> g=y; >> subs(f,g,x) ans = y^3 + 3*y + 2 %guardamos una funcin en la variable f %guardamos otra funcin en la variable g %Sustituimos en la funcin f el valor de la funcin g, %en lugar de la variable x Teniendo la funcin f=x^3+3*x+2 se pretende sustituir todas las letras x de la ecuacin por la funcin almacenada en g (es decir, y). Una vez efectuado el comando pretty(), podemos apreciar que el resultado es la ecuacin f, pero, todas las x fueron sustituidas por y. Ejemplo 2: >> syms x y >> f=1/x^2; >> subs(f,1/y,x) ans = y^2 En este ejemplo, podemos apreciar como sustituir en una funcin f, otra funcin (1/y) escrita directamente como parmetro de la funcin subs(), es decir, sin tener que asignarlo antes a una variable, como se hiso en el ejemplo 1, logrando as que todas las x se sustituyan por 1/y, simplificndose y dando como resultado y^2. Calculo Diferencial e Integral con MATLAB| Simplificacin y sustitucin 16 Calculo Diferencial Hasta el momento, solo se han tratado temas acerca del uso y los comandos bsicos de MATLAB, los cuales han servido para familiarizarse con el manejo de esta poderosa herramienta de clculo y anlisis matemtico. A partir de este momento se comenzaran a trabajar temas ms a fondo acerca de las herramientas que MATLAB nos brinda para la solucin de problemas de clculo diferencial e integral. Se abordan temas que van desde los conceptos bsicos del clculo y como se desarrollan en MATLAB hasta la resolucin de problemas aplicados. Lmites Un lmite describe la tendencia de una funcin conforme va acercndose a determinado valor. Esto quiere decir que, para el caso de una sucesin los trminos se van aproximando a un nico nmero o punto especfico, en caso de que este exista. Dentro de los cientos de comandos del Symbolic Math Toolbox, de MATLAB, se cuenta con el comando limit(f,x,a), y su funcionamiento se describe a continuacin: limit(f,x,a) Esta funcin, permite calcular el lmite de la funcin f, cuando la variable x tiende a a. Si es una funcin de una sola variable (x) no es necesario especificarla, pudiendo teclear simplemente limit(f,a), lo cual obtendr el lmite de la funcin f, cuando la nica variable (por ejemplo, x) tiende a a. Ejemplo 1: Calcular: >> syms x >> f=(1+1/x)^x; >> limit(f,x,inf) ans = exp(1) El resultado que nos arroja el comando limit() es ans=exp(1). Lo cual nos indica que al evaluar la funcin para valores crecientes que tienden a infinito, el resultado que esta ecuacin nos arroje estar cada vez ms cerca de el valor numrico de exp(1), es decir, 2.7183. Para comprobar ste resultado, y dejar en claro el concepto del lmite matemtico, a continuacin graficaremos la funcin para observar ms claramente el comportamiento de la funcin que estamos analizando. Calculo Diferencial e Integral con M

ATLAB| Calculo Diferencial 17 Por el momento, no se explicara a fondo el funcionamiento de los comandos utilizados, pero sern analizados en captulos posteriores. Repetiremos el procedimiento anterior, desglosado paso a paso para lograr la comprensin del procedimiento realizado. 1. Declaramos x como variable simblica >> syms x 2. Guardamos en f la funcin que queremos analizar >> f=(1+1/x)^x; 3. Obtenemos el lmite de f cuando x tiende a infinito >> limit(f,x,inf) 4. El resultado obtenido al presionar la tecla enter debe ser el siguiente: ans = exp(1) 5. Podemos visualizar el valor numrico de exp(1), escribiendo en la consola lo siguiente >> exp(1) 6. El resultado obtenido debe ser: ans = 2.7183 Una vez conocido el valor numrico al que tiende nuestra funcin, la graficaremos utilizando el comando ezplot(f,[min, max]), el cual nos mostrara la grfica de la funcin f, desde min hasta max. 7. Escribimos el comando ezplot(f,[min,max]) para graficar la funcin, primeramente de cero a 10. >> ezplot(f,[0, 10]) Calculo Diferencial e Integral con MATLAB| Calculo Diferencial 18 Una vez ejecutado este comando, obtendremos la siguiente grfica, la cual, obviamente, corresponde a una exponencial y tiende a alcanzar el valor de 2.7183. Figura 9.- Grfica de la funcin (1+1/x)^x evaluada desde 0 hasta 10 usando el comando ezplot() Esto lo podemos comprobar visualizar ms fcilmente volviendo a graficar nuestra funcin pero ahora desde 0 hasta 100 la siguiente lnea: >> ezplot(f,[0,100]); Lo cual generara la siguiente grfica: Figura 10.- Grfica de la funcin comando ezplot() valuada desde 0 hasta 100 utilizando el Calculo Diferencial e Integral con MATLAB| Calculo Diferencial 19 Como podemos apreciar, al comparar ambas graficas, por mas que aumente el valor de x, siempre tiende a llegar a 2.71, lo cual comprueba que el resultado de la funcin lim(f,x,inf) es correcto.

Ejemplo 2: En este ejemplo, se pretende obtener el lmite de la funcin f=1/x^2 cuando x tiende a 0. 1. Declaramos x como variable simblica >> syms x 2. Guardamos en f la funcin que queremos analizar. >> f=1/x^2; 3. Obtenemos el lmite de f cuando x tiende a cero. >> limit(f,x,0) 4. El resultado obtenido al presionar la tecla enter debe ser el siguiente: ans = Inf 5. Escribimos el comando ezplot(f) para graficar la funcin. Para este caso, no vamos a indicar el rango a graficar, dejaremos el que aparece por default. >> ezplot(f) Una vez ejecutado este comando, obtendremos la siguiente grfica: Calculo Diferencial e Integral con MATLAB| Calculo Diferencial 20 Figura 11.- Grfica de la funcin f=1/x^2 obtenida mediante el comando ezplot(). Como podemos apreciar la grfica va tendiendo a infinito conforme se acerca al cero. Diferenciales Entre los cientos de comandos incluidos en el Symboic Math Toolbox, uno de los ms importantes en este curso es el comando diff(), el cual nos permite calcular la derivada de una expresin algebraica simblica. Este comando tiene muchas ventajas, ya que no solo nos permite derivar una funcin, sino que es posible aplicarla a matrices, entregndonos la matriz de las derivadas de cada trmino. Diff(f,v,n) En MATLAB es relativamente sencillo obtener la derivada simblica de una funcin utilizando el comando Diff(f,x,n) dnde: f=funcin v=variable k=orden Para visualizarlo de manera ms clara, tenemos el siguiente ejemplo: Ejemplo 1: Encontrar: 1. Definimos x como variable >> Syms x 2. Definimos la funcin f Calculo Diferencial e Integral con MATLAB| Calculo Diferencial 21 >> f=sin(x); 3. Obtenemos la primera derivada de f, con respecto a x, >> diff(f,x,1) 4. El resultado obtenido ser: ans = cos(x) Ejemplo 2: Encontrar: a) 1. Definimos x como variable simblica. >> syms x b) 2. Definimos la funcin f >> f=x^3+2*x^2-3*x+5; 3. Derivamos la funcin f >> diff(f) 4. Como podemos apreciar abajo, el resultado obtenido con el comando diff(f), nos gener como resultado la primera derivada de la funcin f. ans = 3*x^2 + 4*x 3 5. Ahora procederemos a obtener la tercera derivada de f, para lo cual si tendremos que

expresar el parmetro que indique el orden de la derivada. >> diff(f,3) 6. El resultado obtenido nos muestra que la tercera derivada de ste sistema resulta ser una constante. Calculo Diferencial e Integral con MATLAB| Calculo Diferencial 22 ans = 6 Ejemplo 3: a) Obtener: b) Obtener: c) Obtener: d) Obtener: .... 1. Primeramente, declaramos como variables simblicas a, b, c y x y definimos la funcin f >> syms a b c x >> f=a*x^2+b*x+c; 2. Para este caso, es necesario indicar con respecto a qu variable queremos derivar, para el inciso a, vamos a deriv ar con respecto a x, de la siguiente manera: >> diff(f,x) ans = b + 2*a*x 3. Para el inciso b, vamos a derivar con respecto a a, de la siguiente manera: >> diff(f,a) ans = x^2 4. As sucesivamente, obtendremos las derivadas con respecto a b y c, lo cual nos generara los siguientes resultados: >> diff(f,b) ans = x >> diff(f,c) ans = 1 Calculo Diferencial e Integral con MATLAB| Calculo Diferencial 23 Aplicaciones de la derivada Mximos y mnimos En este captulo, trataremos diferentes formas de obtener los mximos y mnimos de una funcin. fminbnd() Existen distintos mtodos para calcular los mximos y mnimos de una funcin en un intervalo definido. Uno de los ms sencillos consiste en utilizar la funcin fminbnd(funcion,min.max). Donde los valors min y max definen el intervalo en el que queremos obtener el valor mnimo. Para obtener el valor mximo se utiliza el mismo comando pero multiplicando la funcin por -1. Para entender mejor el manejo de este comando a continuacin veremos algunos ejemplos: Ejemplo 1: Obtener el valor mnimo y el mximo de la funcin 1. Declaramos la variable simblica x y definimos la funcin f >> syms x >> y=sin(x/(1+x)); en el intervalo [-2,2]. 2. Graficamos la funcin desde -2 hasta 2 y activamos la cuadricula >> ezplot(y,[-2,2]); >> grid on %Activando la cuadricula 3. La grfica generada debe siguiente:

Calculo Diferencial e Integral con MATLAB| 24 Figura 12.- Grfica de la funcin evaluada desde -2 hasta 2 cuadricula activa. 4. Calculamos el valor de x donde el valor de y es el mnimo en el rango de -2 a 2; >> xmin=fminbnd('sin(x/(1+x))',-2,2) 5. El resultado obtenido, nos muestra que el valor mnimo lo encontramos cuando x=-0.6110 xmin = -0.6110 6. Para obtener el valor mnimo de la funcin debemos evaluarla cuando x=xmin=-0.6110, para lo cual, utilizamos la siguiente instruccin: >> min=subs(f,x,xmin) 7. El resultado arrojado por esta instruccin, nos dice el valor de y mnimo (ymin) de nuestra funcin, el cual se obtiene cuando x=0.6110 min = -1.0000 8. Para comprobar que el valor mnimo es uno, vamos a graficar la constante y=-1. Para lo cual utilizaremos un artificio, ya que el comando ezplot tiene que estar en funcin de una variable, multiplicaremos el valor mnimo por (lo cual, es igual a 1, por lo tanto, no altera el 25 Calculo Diferencial e Integral con MATLAB| Aplicaciones de la derivada resultado). Adems utilizaremos el comando hold on para que no se borre la grfica ya dibujada, sino que grafique sobre ella. >> hold on >>ezplot(min*x/x,[-2,2]); 9. La grafica resultante debe Indicarnos una lnea constante y=-1. La cual nos indica que nuestra funcin entra en contacto con ella aproximadamente cuando x=-0.6110. Figura 13.- Una vez introducidos el comando hold on y graficada la constante y=ymin=1podemos apreciar que nuestra grfica llega al menos uno. 10. Para visualizar mas a detalle nuestra grfica utilizaremos el icono ubicado en la barra de herramientas de la grfica y haciendo clic en el punto donde se cruza la lnea recta y nuestra funcin (entre -1 y -0.5). Despus de varios clics podremos apreciar lo siguiente: Calculo Diferencial e Integral con MATLAB| Aplicaciones de la derivada 26 Figura 14.- Despus de varios clics podremos ir apreciando mas a detalle la seccin en donde los clculos nos indicaron que se encuentra el valor mnimo, y como podemos apreciar, al

ampliar el zoom, efectivamente nuestro valor mnimo se encuentra alrededor de -0.61. Para volver al zoom original, presionar el icono hasta llegar al zoom inicial. 11. Una vez comprobado el mnimo de la funcin, procederemos a obtener el valor mximo, para lo cual, utilizaremos el mismo comando pero multiplicando la funcin por -1, como se muestra a continuacin: >>xmax=fminbnd('-sin(x/(1+x))',-2,2) 12. El resultado obtenido nos muestra el valor de x para el cual tenemos la ymax. xmax = 1.9999 13. Para obtener el valor mximo debemos sustituir en nuestra funcin original la x por nuestra xmax, lo cual nos dar el valor de ymax. >> max=subs(f,x,xmax) Calculo Diferencial e Integral con MATLAB| Aplicaciones de la derivada 27 14. Podemos apreciar que el valor mximo de nuestra funcin es max=0.6184. max = 0.6184 15. Si observamos la grfica a detalle, el mximo que nos marca el resultado no es en realidad en mximo, esto se debe, a que el algoritmo del comando fminbnd( ) nos entrega el primer lugar donde la pendiente es cero de izquierda a derecha, para este cas, donde es ms cercano a dicha pendiente. Para solucionar este problema y encontrar el valor mximo real, es necesario reducir el intervalo a [-2,0] como se muestra a continuacin. >> xmax=fminbnd(char(-y),-2, 0) xmax = -0.8250 >> max=subs(y,x,ans) max = 1.0000 Como podemos apreciar, al momento de obtener el valor de x donde se encuentra el valor mximo de y, utilizamos el comando char(-y), el cual tiene la funcin de convertir una ecuacin en una cadena de texto, lo cual es necesario porque el comando fminbnd() solo admite una funcin en tipo como cadena de texto. Haciendo esto, nos evitamos tener que reescribir la funcin como sin(x/(1+x)). Calculo Diferencial e Integral con MATLAB| Aplicaciones de la derivada 28 Ejemplo 2: Obtener el valor mnimo y el valor mximo de la funcin [0,5]. >> syms x >>y=((6x)^(1/3))*x^(2/3); >>ezplot(y,[0,5]); >>grid on %Ver Figura 15 >>xmin=fminbnd('((6x)^(1/3))*x^(2/3)',0,5) xmin = 4.4695e-005 en el intervalo >> min=subs(y,x,xmin) min = 0.0023 >> hold on >> ezplot(min*x/x) xmax = 4.00 %Ver Figura 16

>> xmax=fminbnd('-((6-x)^(1/3))*x^(2/3)',0,5) >>max=subs(y,x,xmax) max = 3.1748 >> ezplot(f*x/x) %Ver Figura 17 NOTA: Para entender que hace cada instruccin, ver ejemplo anterior. Figura 15.- Grfica de la funcin con cuadricula. 29 Calculo Diferencial e Integral con MATLAB| Aplicaciones de la derivada Figura 16.- Grfica de la funcin y su valor mnimo. Figura 16.- Grfica de la funcin y sus valores mnimo y mximo. Calculo Diferencial e Integral con MATLAB| Aplicaciones de la derivada 30 Integracin Clculo de primitivas Para el clculo de primitivas en MATLAB utilizaremos un comando del Symbolic Math Toolbox el cual nos permitir realizar esta tarea de una forma muy sencilla utilizando el comando int(f,v). int( ) El comando int(f, v ) genera la integral integral indefinida de la funcin f con respecto a la variable v. En caso de no definir la variable v, es decir, escribir simplemente int(f), se integrar con respecto a la variable por default de MATLAB x. Una nota importante, es que MATLAB no nos indica la constante de integracin C. Para comprender mejor el funcionamiento de este comando, se presentan los siguientes ejemplos: Ejemplo 1: Calcular . 1. Definimos nuestra variable simblica x y nuestra funcin y >>syms x >>y=sin(x); 2. Integramos nuestra funcin y con respecto a x. >>int(y,x) ans = -cos(x) 3. Otra forma de obtener el resultado, para ste caso, es simplemente teclear int(y), ya que MATLAB tomar por default que se integrar con respecto a x, como se muestra a continuacin. >>int(y) ans = -cos(x) Calculo Diferencial e Integral con MATLAB|

31 Ejemplo 2: Calcular 1. Definimos nuestra variable simblica x y nuestra funcin y >>syms x >>y=sqrt(1-4*x^2) 2. Integramos nuestra funcin y con respecto a x. >>int(y,x) ans = asin(2*x)/4 + x*(1/4 - x^2)^(1/2) 3. Otra forma de obtener el resultado, para ste caso, es simplemente teclear int(y), ya que MATLAB tomar por default que se integrar con respecto a x, como se muestra a continuacin. >>int(y) ans = asin(2*x)/4 + x*(1/4 - x^2)^(1/2) Ejemplo 3: Calcular: >>syms a b c x >>y=a*x^2+b*x+c; >>int(y,x) ans = (a*x^3)/3 + (b*x^2)/2 + c*x Integrales definidas Las integrales definidas, tambin conocidas como integrales propias se deben eval uar en un intervalo cerrado, finito y acotado, y cuyos extremos son los lmites de la integral. Para calcular una integral definida, utilizaremos la siguiente variacin del comando int(). Calculo Diferencial e Integral con MATLAB| Integracin 32 =Int(f,a,b) donde f es nuestra funcin, donde a es el lmite inferior y b el lmite superior. Tambin se puede integrar con respecto a una variable diferente de x utilizando la siguiente sintaxis int(funcin, variable, liminf, limsup). Ejemplo 1: Calcular: 1. Definimos x como variable simblica, guardamos nuestra funcin y, graficamos la funcin y visualizamos la cuadricula: >>syms x >>y=sqrt(2*x); >>ezplot(y,[0,2]); >>grid on 2. La grfica generada debe ser igual a la siguiente Figura: Figura 17.- Grfica de la funcin con cuadricula visible. 3. Para calcular el rea debajo de la curva desde 0 hasta 2, utilizamos el comando int() como se muestra a continuacin: >> int(y,x,0,2) 4. El rea obtenida debajo de la curva es la siguiente: Calculo Diferencial e Integral con MATLAB| Integracin 33 ans = 8/3 Ejemplo 2: Calcular: 1. Definimos x como variable simblica, guardamos nuestra funcin y, graficamos en el intervalo de 0 a pi y visualizamos la cuadricula: >>syms x >>y=sin(x); >>ezplot(y,[0,pi]); >>grid on 2. La grfica generada debe ser igual a la siguiente Figura: Figura 18.- Grfica de la funcin

con cuadricula visible evaluada en el intervalo [0,pi]. 3. Para calcular el rea debajo de la curva desde 0 hasta 2, utilizamos el comando int() como se muestra a continuacin: >> int(y,x,0,pi) Calculo Diferencial e Integral con MATLAB| Integracin 34 4. El rea obtenida debajo de la curva es la siguiente: ans = 2 Ejemplo 3: Calcular: 1. Definimos x como variable simblica, guardamos nuestra funcin y, graficamos en el intervalo de 0 a pi y visualizamos la cuadricula: >>syms x >>y=1/(1+sin(x)^2); >>ezplot(y,[0,pi]); >>grid on 2. La grfica generada debe ser igual a la siguiente Figura: Figura 19.- Grfica de la funcin [0,pi]. con cuadricula visible evaluada en el intervalo 3. Para calcular el rea debajo de la curva desde 0 hasta 2, utilizamos el comando int() como se muestra a continuacin: Calculo Diferencial e Integral con MATLAB| Integracin 35 >> int(y,x,0,pi) 4. El rea obtenida debajo de la curva es la siguiente: ans = (pi*2^(1/2))/2 5. Aplicamos el comando vpa( ) para evaluar el resultado con 6 digitos. >>vpa(ans,6) ans = 2.22144 Aplicaciones Clculo de reas Al calcular el rea de una funcin no negativa en un intervalo [a,b] se interpreta geomtricamente como el rea delimitada por la grfica de la funcin, el eje de las abscisas y los lmites a y b. Para determinar el rea debajo de una curva tenemos que calcular la integral definida de la funcin en el intervalo [a,b]. En este captulo nos enfocaremos en visualizar el rea debajo de la curva en un plot. Adems se tratara un ejemplo para encontrar el rea representada por el cruze de dos funciones diferentes. Ejemplo 1: Calcular y mostrar el rea bajo la curva de la funcin: 1. Para calcular el rea bajo la curva, obtenemos la integ ral definida de la funcin desde 0 hasta 2, como se muestra a continuacin: >> syms x >>y=sqrt(2*x); >>ezplot(y,[0,2]); Calculo Diferencial e Integral con MATLAB|

Integracin 36 >> grid on >>int(y,0,2) ans = 8/3 2. La grfica obtenida es la siguiente: Figura 20.- Grfica de la funcin con cuadricula visible. 3. Para visualizar el rea bajo la curva, damos clic en el men View de Figure 1 y seleccionamos Property Editor como se muestra en la siguiente Figura. Calculo Diferencial e Integral con MATLAB| Integracin 37 Figura 21.- Grfica de la funcin con cuadricula visible. Seleccionar Property Editor. 4. Al abrir el Property Editor aparecer una pantalla en la parte inferior de la ventana, y podremos seleccionar los distintos elementos de la grfica. En esta ocasin, seleccionaremos la lnea azul. Calculo Diferencial e Integral con MATLAB| Integracin 38 Figura 22.- En la parte inferior de puede apreciar el Property Editor, y su apariencia al seleccionar la grfica. 5. En el Combo box llamado Plot Type podemos ver seleccionada la opcin Line, damos clic, y seleccionamos Area. Calculo Diferencial e Integral con MATLAB| Integracin 39 Figura 23.- Vista de el rea debajo de la curva al cambiar el Plot Type a tipo Area 6. Podemos apreciar que una vez cambiado el tipo de grfica, podremos apreciar claramente el rea bajo la curva que calculamos con la integral definida. Calculo Diferencial e Integral con MATLAB| Integracin 40 Ejemplo 2: Determinar el rea formada por la interseccin de la parbola . y la recta Figura 24.- Encontrar el rea formada por la interseccin de las funciones mostradas.

I. Anlisis matemtico inicial: 1. Primeramente, hay que obtener los puntos en los cuales se intersectan la recta y la parbola. Para lo cual igualaremos ambas ecuaciones como se muestra a continuacin. Despejamos la de la ecuacin de la parbola para poder igualar las ecuaciones Tenemos que las dos ecuaciones son iguales a y, por lo cual podemos igualarlas. Eliminamos la raz elevando toda la ecuacin al cuadrado. Despejamos para obtener una ecuacin homognea Calculo Diferencial e Integral con MATLAB| Integracin 41 Obtenemos las races de la ecuacin y Figura 25.- Races de la ecuacin que nos indican los puntos de interseccin las funciones analizadas. 2. Una vez realizado el anlisis anterior, podemos apreciar que el rea que deseamos obtener est formada por dos regiones, una en el intervalo [0,0.5] y la otra en [0.5,2]. Figura 26.- Representacin de las dos regiones que definen el rea que queremos determinar Una vez identificadas las distintas regiones que conforman el rea que queremos determinar, podemos definir la ecuacin del rea total. Calculo Diferencial e Integral con MATLAB| Integracin 42 II. Solucin en MATLAB 1. Definimos x como variable simblica, g1 como la primera ecuacin auxiliar de la parbola y graficamos de 0 a 4 visualizando la cuadricula. >> syms x >> g1=sqrt(2*x); >> ezplot(g1,[0,4]); >> grid on %Ver Figura 27 a) 2. Definimos la funcin auxiliar g2, tecleamos hold on para mantener ambas grficas y graficamos. >> g2=-sqrt(2*x); >> hold on >> ezplot(g2,[0,4]); %Ver Figura 27 b) 3. Definimos la funcin de la recta, aplicamos el comando hold on nuevamente y graficamos. >> y=2*x-2; >> hold on >> ezplot(y,[0,4]); %Ver Figura 27 c)

Figura 27.- a) Grfica de la funcin b) Grfica de la funcin c) Grfica de las funciones , y 4. Definimos la matriz de coeficientes de la ecuacin que relaciona la parbola con la recta. Si dicha ecuacin es . Tenemos que sus coeficientes son [2 -5 2] y los definimos de la siguiente manera. Calculo Diferencial e Integral con MATLAB| Integracin 43 >> coeficientes=[2 -5 2]; 5. Obtenemos las races de la ecuacin anterior utilizando el comando roots() >> raices=roots(coeficientes) raices = 2.0000 0.5000 6. Cada elemento de la matriz se guarda como races(1), races(2), etc en el mismo orden en que aparecen, por lo tanto, los lmites de nuestra ecuacin quedaran como se muestran en la figura 28 Figura 28.- Ubicacin de las races races(1) y races(2) obtenidas mediante el comando roots( ) 7. Una vez obtenidas las races ingresaremos la funcin obtenida en el anlisis geomtrico del rea a obtener Tomando en cuenta que ya obtuvimos los valores de las races. >> Area=int(2*sqrt(2*x),0,raices(2))+int(sqrt(2*x)-2*x+2,raices(2),raices(1)) Area = 9/4 . Calculo Diferencial e Integral con MATLAB| Integracin 44 Volumen de un cuerpo de revolucin Los slidos de revolucin son cuerpos creados a partir de la rotacin de una funcin bidimensional sobre uno de sus ejes. Por ejemplo, al rotar el co no de la figura 28 a) con respecto al eje x, obtendremos un cono como el de la figura 28 b). Figura 29.- a) Grfica de la funcin , con la cual representamos un tringulo. b) Cono obtenido al rotar la funcin con respecto al eje x. Tomando como referencia que al hacer girar una curva alrededor del eje de las abscisas, se genera un slido de revolucin cuyos cortes al eje OX tienen un rea de . Por lo tanto, el volumen de dicho slido estar dado por la ecuacin: Para graficar un slido de revolucin, utilizaremos el comando ezsurf() el cual tiene la funcin de graficar superficies en 3D, utilizando la siguiente sintaxis: ezsurf(funx,funy,funz,[a,b,1,2]) donde: funx= Funcin en x funy= Funcin en y funz= Funcin en z a= lmite menor b= limite mayor 1= Angulo de inici de rotacin (rad) 2= Angulo de fin de revolucin (rad) Calculo Diferencial e Integral con MATLAB| Integracin 45 El comando ezsurf( ) sirve para graficar cualquier clase de superficie en 3D, pero para esta aplicacin especfica siempre se usara la siguiente sintaxis: ezsurf(x, cos(t)*f(x), sin(t)*f(x),[ 1,2, a, b ]

Lo cual nos generar automticamente el slido de revolucin con respecto al eje x de acuerdo a la funcin f(x). Ejemplo 1: Calcular el volumen del solido generado al hacer girar la funcin grfica de la funcin en el plano X-Y y el slido en el intervalo [0, ]. y . Mostrar la 1. Definimos las variables x y t como simblicas. Ingresamos la funcin graficamos en el plano X-Y en el intervalo [0, >> syms x t >> y=4*x-(1/3)*x^3; >> ezplot(y,[0,2*3^(1/2)]); >> grid o n ]. %Ver figura 30 a) 2. Una vez que hayamos visto la grfica en el plano XY, procederemos a graficar el solido de revolucin generado al girar la funcin sobre el eje x. >> ezsurf(x, y*cos(t),y*sin(t),[0,2*pi,0,2*3^(1/2)]) %Ver figura 30 b) Con esta instruccin estamos generando el slido de revolucin de 0 a 2 (una revolucin completa) para el intervalo [0, ]. 3. En este momento, tenemos en claro la forma que tendr nuestro slido de revolucin, pero el volumen sigue siendo desconocido. Para determinarlo aplicaremos la frmula como se muestra a continuacin. >> a=0; >> b=2*3^(1/2); >> vol=int(pi*y^2,a,b) vol = (1024*pi*3^(1/2))/35 >> vpa(vol,6) ans = 159.2 Calculo Diferencial e Integral con MATLAB| Integracin 46 Figura 30.- a) Grfica de la funcin en el plano XY b) Solido de revolucin generado al girar la fig. 30 a) respecto al eje x Ejemplo 2: Calcular el volumen del solido generado al hacer girar la funcin grfica de la funcin en el plano X-Y y el slido en el intervalo [0, ]. >> syms x t >> f=2*x; >> a=0; >> b=2; >> ezplot(f,[a,b]); >> grid on >> ezsurf(x, f*cos(t),f*sin(t),[0,2*pi,0,2]) >> vol=int(pi*f^2,a,b) vol = (32*pi)/3 . Mostrar la >> vpa(vol,6) ans = 33.5103 Longitud de arcos de curvas Otra de las aplicaciones del clculo integral y diferencial, consiste en determinar la longitud de arco de una curva. Siendo la curva una ecuacin derivable podemos obtener la longitud del arco de la curva en el intervalo [a,b] utilizando la siguiente expresin:

Calculo Diferencial e Integral con MATLAB| Integracin 47 Ejemplo 1: Graficar la funcin f [0,1]. y determinar la longitud de arco de la curva en el intervalo 1. Declarar x como variable simblica, ingresamos la funcin f, a y b y grficamos >> syms x >> f=(1-x^2)^(1/2); >> a=0; >>b=1; >>ezplot(f,[a,b]); >> grid on %Ver figura 31 2. Obtenemos la primera derivada de la funcin: >> der=diff(f) der = -x/(1 - x^2)^(1/2) 3. Simplificar la parte interna de la raz ( >> dentro=simplify(1+der^2) dentro = -1/(x^2 - 1) ) 4. Al simplificar la ecuacin dentro de la raz obtenemos: realizamos la operacin como se muestra a continuacin: >> >> Longitud=int(sqrt(dentro),a,b) Longitud = pi/2 . Por lo cual Calculo Diferencial e Integral con MATLAB| 48 Figura 31.- Grfica de la funcin Otros comandos vpa( ) El comando VPA utiliza aritmtica de precisin variable para calcular cada elemento de la funcin para un nmero de decimales especficos. La sintaxis para este comando es: vpa(A,D) Donde A es la funcin a evaluar y D el nmero total de dgitos deseados. >> pi ans = 3.1416 Como podemos apreciar, por default, MATLAB nos arrojo 4 dgitos, pero suponiendo que quisiramos una mayor precisin, usaramos el comando vpa(A,D), de la siguiente manera: >> vpa(pi,10) ans = 3.141592654 Calculo Diferencial e Integral con MATLAB| 49 Como podemos apreciar, el comando VPA nos muestra nicamente los 10 primeros nmeros significativo, sin importar la posicin del punto decimal. Otro ejemplo sera, si queremos ver 30 dgitos significativos, por ejemplo: >> vpa(pi,10) ans = 3.141592654

Das könnte Ihnen auch gefallen