-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathderivadas-app-estudio-func-thebelab.html
331 lines (272 loc) · 16.7 KB
/
derivadas-app-estudio-func-thebelab.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta name="generator" content="pandoc" />
<title>Aplicaciones de la derivada - Estudio funciones</title>
<style type="text/css">code{white-space: pre;}</style>
<link rel="stylesheet" href="otro-thebelab.css" type="text/css" />
<link rel="stylesheet" href="status_button.css" type="text/css" />
<script src='https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML'></script>
<!--<script src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script>-->
<link rel="stylesheet" type="text/css" href="https://jsxgraph.uni-bayreuth.de/distrib/jsxgraph.css" />
<script type="text/javascript" src="https://jsxgraph.uni-bayreuth.de/distrib/jsxgraphcore.js"></script>
<!--<link rel="stylesheet" type="text/css" href="css/jsxgraph.css" />
<script type="text/javascript" src="js/jsxgraphcore.js"></script>-->
<script>
MathJax.Hub.Config({
tex2jax:
{
preview: "none"
}
});
</script>
<!-- Thebe configuration !-->
<script type="text/x-thebe-config">
{
bootstrap: true,
binderOptions: {
repo: "sagemath/sage-binder-env",
},
stripPrompts: {
inPrompt: 'sage: ',
continuationPrompt: '....: ',
selector: '.sage-input',
},
kernelOptions: {
name: "sagemath",
}
}
</script>
<!-- Load the Thebe library !-->
<script type="text/javascript" src="https://unpkg.com/thebelab@^0.1.0" ></script>
<script src="https://code.jquery.com/jquery-3.2.1.min.js" type="text/javascript"></script>
<!--<script type="text/javascript" src="status_button.js"></script>-->
<script type="text/javascript">
window.onload = function() {
thebelab.on("status", function(evt, data) {
console.log("Status changed:", data.status, data.message);
$(".thebe-status-button")
.attr("class", "thebe-status-button thebe-status-" + data.status)
.text(data.status);
});
$(".thebe-status-button")
.attr("class", "thebe-status-button thebe-status-" + "not-connected")
.text("Sin conexión");
};
</script>
<!-- or to use a local build: -->
<!-- <script type="text/javascript" src="../lib/index.js"></script> !-->
</head>
<body>
<div id="header">
<h1 class="title">Aplicaciones de la derivada</h1>
</div>
<section>
<header>
<h1 id="estudio-de-una-función">Estudio de una función</h1>
</header>
<p>En este documento ilustramos cómo hacer el estudio de una función usando algún paquete de cálculo simbólico auxiliar. Para ello vamos a utilizar <a href="https://github.com/minrk/thebelab">Thebelab</a> con un núcleo de <a href="http://www.sagemath.org/">SageMath</a>. Las celdas que aparecen en esta página se deben ejecutar en el orden en el que aparecen, para que las variables que se definen se puedan usar en las siguientes. La primera evaluación lleva algún tiempo, pues necesita que <a href="https://mybinder.org">binder</a> arranque el servidor correspondiente.
</p>
<span>Estado del núcleo: <span class="thebe-status-button"></span></span>
<h2 id="crecimiento-y-decrecimiento">Crecimiento y decrecimiento</h2>
<p>Si <span class="math">\(f\)</span> es una función derivable definida en un intervalo, entonces</p>
<ul>
<li><p><span class="math">\(f\)</span> es creciente si, y sólo si, la derivada es mayor o igual que cero;</p></li>
<li><p><span class="math">\(f\)</span> es decreciente si, y sólo si, la derivada es menor o igual que cero; y</p></li>
<li><p><span class="math">\(f\)</span> es constante si, y sólo si, la derivada es cero.</p></li>
</ul>
<p>Para estudiar el crecimiento de la función <span class="math">\(f(x)=2x^3-3x^2-12x+1\)</span>, estudiamos el signo de la derivada. Primero vemos dónde se anula.
<pre class="sage-input" data-language="python">
sage: f= 2*x^3-3*x^2-12*x+1
sage: df = diff(f,x)
sage: df
sage: solve(df,x)
</pre>
<span class="math">\[f'(x)=6x^2-6x-12=0 \text{ sí y sólo sí } x\in\{-1,2\}.\]</span> Como sabemos donde se anula la derivada, también sabemos donde <em>no</em> se anula. Esto es, la función es monótona en <span class="math">\(]-\infty,-1]\)</span>, en <span class="math">\([-1,2]\)</span> y en <span class="math">\([2,+\infty[\)</span>. Evaluando la derivada en un punto de cada intervalo, terminamos:</p>
<ul>
<li><p><span class="math">\(f'(-3)=60>0\)</span>, y por tanto <span class="math">\(f\)</span> es creciente <span class="math">\(]-\infty,-1]\)</span>;</p></li>
<li><p><span class="math">\(f'(0)=-12<0\)</span>, en consecuencia <span class="math">\(f\)</span> es decreciente <span class="math">\([-1,2]\)</span>; y,</p></li>
<li><p><span class="math">\(f'(8)=324>0\)</span>, por lo que <span class="math">\(f\)</span> es creciente <span class="math">\([2,+\infty[\)</span>.</p></li>
</ul>
<pre class="sage-input" data-language="python">
sage: solve(df>0,x)
</pre>
<p>¿Sabrías decir algo sobre los máximos y mínimos relativos de esta función?</p>
<h2 id="extremos-relativos">Extremos relativos</h2>
<p>El cálculo de los máximos y mínimos relativos de una función <span class="math">\(f\)</span> se suele hacer en dos pasos.</p>
<ol>
<li><p>En primer lugar se calculan los puntos críticos, es decir, resolvemos la ecuación <span class="math">\(f'(x)=0\)</span>.</p></li>
<li><p>Evaluamos la segunda derivada en los puntos críticos:</p>
<ul>
<li><p>si <span class="math">\(f'(a)=0\)</span>, y además <span class="math">\(f''(a)>0\)</span>, entonces <span class="math">\(f\)</span> tiene un mínimo relativo en <span class="math">\(a\)</span>;</p></li>
<li><p>si <span class="math">\(f'(a)=0\)</span>, y además <span class="math">\(f''(a)<0\)</span>, entonces <span class="math">\(f\)</span> tiene un máximo relativo en <span class="math">\(a\)</span>.</p></li>
</ul></li>
</ol>
<p>Si analizamos el signo de la derivada segunda de la función del ejemplo anterior en los puntos críticos que habíamos obtenido, concluimos cuál es mínimo y cuál es máximo.</p>
<pre class="sage-input" data-language="python">
sage: ddf=diff(df,x)
sage: ddf
sage: [ddf.subs({x:-1}), ddf.subs({x:2})]
</pre>
<p> Como <span class="math">\(f''(x)= 12x-6\)</span>, tenemos:</p>
<ul>
<li><p><span class="math">\(f''(-1)=-18<0\)</span>, por tanto en <span class="math">\(x=-1\)</span> tenemos un máximo relativo;</p></li>
<li><p><span class="math">\(f''(2)=18>0\)</span>, por tanto en <span class="math">\(x=2\)</span> tenemos un mínimo relativo.</p></li>
</ul>
<p>¿Concuerdan estas conclusiones con las que has obtenido estudiando el cambio de monotonía en torno a ambos puntos?</p>
<h2 id="concavidad-y-convexidad">Concavidad y convexidad</h2>
<p>Si <span class="math">\(f\)</span> es una función dos veces derivable,</p>
<ul>
<li><p>si <span class="math">\(f''\)</span> es positiva, entonces <span class="math">\(f\)</span> es convexa; y</p></li>
<li><p>si <span class="math">\(f''\)</span> es negativa, entonces <span class="math">\(f\)</span> es cóncava.</p></li>
</ul>
<pre class="sage-input" data-language="python">
sage: solve(ddf>0,x)
</pre>
<h2 id="puntos-de-inflexión">Puntos de inflexión</h2>
<p>Si <span class="math">\(f''(a)=0\)</span> y <span class="math">\(f'''(a)\neq 0\)</span>, decimos que <span class="math">\(f\)</span> tiene un punto de inflexión en <span class="math">\(a\)</span>. Esto quiere decir que en dicho punto la función pasa de ser cóncava a convexa o al revés.</p>
<p>Seguimos con la función del ejemplo 2.</p>
<pre class="sage-input" data-language="python">
sage: solve(ddf,x)
sage: diff(ddf,x)
</pre>
<p>Como <span class="math">\(f''(x)=12x-6\)</span> tenemos que \(12x-6=0\), o lo que es lo mismo, \(x=1/2\). Ya tenemos nuestro candidato a punto de inflexión. Ahora calculamos la derivada tercera: <span class="math">\(f'''(x)=12\)</span>, con lo que <span class="math">\(f'''(1/2)=12>0\)</span>. Por tanto, tenemos un punto de inflexión en <span class="math">\(x=1/2\)</span>. Vamos a calcular ahora si pasa de cóncava a convexa, o viceversa. Para ello, evaluamos <span class="math">\(f''\)</span> en puntos a ambos lados de <span class="math">\(x=1/2\)</span>:</p>
<ul>
<li><p><span class="math">\(f''(0)=-6<0\)</span>, por lo que la función antes de <span class="math">\(1/2\)</span> es cóncava.</p></li>
<li><p><span class="math">\(f''(1)=6>0\)</span>, por lo que la función después de <span class="math">\(1/2\)</span> es convexa.</p></li>
</ul>
<p>Con todo esto ya tenemos una idea de cómo es la función. Dibujémosla.</p>
<pre class="sage-input" data-language="python">
sage: plot(f, (-5,5), ymax=20, ymin=-20)
</pre>
<h4 id="ejemplo">Ejemplo</h4>
<p>Vamos a aplicar todos los apartados anteriores para hacer el estudio completo de la función <span class="math">\(f \colon \mathbb{R}\rightarrow \mathbb{R}\)</span> definida como <span class="math">\(f(x)=x^{3}+3x^{2}-9x\)</span>.</p>
<dl>
<dt>Crecimiento y decrecimiento</dt>
<dd><p>Calculamos los puntos donde se anula la derivada para averiguar el signo del resto.</p>
<pre class="sage-input" data-language="python">
sage: f= x^3+3*x^2-9*x
sage: df = diff(f,x)
sage: df
sage: solve(df,x)
</pre>
<p> <span class="math">\[f'(x)=3x^2+6x-9 =0,\ x\in\{-3,1\}.\]</span> Miramos el signo de la derivada en algunos puntos intermedios: por ejemplo, <span class="math">\(f'(-10)>0\)</span>, <span class="math">\(f'(0)<0\)</span> y <span class="math">\(f'(5)>0\)</span>. </p>
<pre class="sage-input" data-language="python">
sage: solve(df>0,x)
</pre>
<p>Por tanto,</p>
<ul>
<li><p><span class="math">\(f\)</span> es creciente en <span class="math">\(]-\infty , -3]\)</span>,</p></li>
<li><p><span class="math">\(f\)</span> es decreciente en <span class="math">\([-3,1]\)</span> y</p></li>
<li><p><span class="math">\(f\)</span> es creciente en <span class="math">\([1,+\infty[\)</span>.</p></li>
</ul>
</dd>
<dt>Extremos relativos</dt>
<dd><p>Ya que sabemos los puntos críticos, evaluamos la segunda derivada:</p>
<pre class="sage-input" data-language="python">
sage: ddf=diff(df,x)
sage: ddf
sage: [ddf.subs({x:-3}), ddf.subs({x:1})]
</pre>
<p><span class="math">\[f''(x)=6x+6, \quad f''(-3)=-12, \quad \text{y} \quad f''(1)=12.\]</span> Por tanto,</p>
<ul>
<li><p><span class="math">\(f\)</span> tiene un máximo relativo en <span class="math">\(-3\)</span> y</p></li>
<li><p><span class="math">\(f\)</span> tiene un mínimo relativo en <span class="math">\(1\)</span>.</p></li>
</ul>
</dd>
<dt>Convexidad y concavidad</dt>
<dd><p>Para estudiar la concavidad y convexidad de una función, miramos el signo de la segunda derivada:</p>
<pre class="sage-input" data-language="python">
sage: solve(ddf>0,x)
</pre>
<p><span class="math">\[f''(x)=6x+6=0,\ x= -1.\]</span> Por tanto,</p>
<ul>
<li><p><span class="math">\(f''(x)\)</span> es positiva en <span class="math">\(]-\infty,-1]\)</span> (función convexa)</p></li>
<li><p><span class="math">\(f''(x)\)</span> es negativa en <span class="math">\([-1,+\infty[\)</span> (función cóncava)</p></li>
</ul>
</dd>
<dt>Puntos de inflexión</dt>
<dd><p>En <span class="math">\(-1\)</span> la función tiene un punto de inflexión: la segunda derivada se anula y la tercera en dicho punto es positiva o, si lo prefieres, la función cambia de de convexa a cóncava.</p>
</dd>
</dl>
<pre class="sage-input" data-language="python">
sage: plot(f,(-10,10), ymax=30, ymin=-20)
</pre>
<article>
<header>
<h3>Ejercicio</h3>
</header>
<ol>
<li><p>Estudia la función <span class="math">\(f \colon \mathbb{R} \rightarrow \mathbb{R}\)</span> definida como <span class="math">\(f(x)=3\,{x}^{4}-4\,{x}^{3}-6\,{x}^{2}+12\,x\)</span>.</p></li>
<li>Esboza la gráfica de una función <span class="math">\(f\)</span> definida en <span class="math">\([0,2]\)</span> que verifique que <span class="math">\(f(0)=f(2)=0\)</span>, <span class="math">\(f'(0)=2\)</span> y <span class="math">\(f'(2)=-2\)</span>.
<button id="e3-2" class="button" onclick="show2('e3-2');">Solución</button>
<div id="sol-e3-2" style="display:none;">
<p>Al darnos estos datos, nos están mostrando cómo son las tangentes a la gráfica en \(0\) y en \(2\): <span style='color:orange'>\(y=2x\)</span> e <span style='color:red'>\(y=-2(x-2)\)</span>, respectivamente.</p>
<div id='ebox32' class='jxgbox' style='width:400px; height:400px;display:inline-block;text-align: center;'> </div>
<p>Como nos dan cuatro condiciones, podemos probar con un polinomio de grado \(3\) (que tiene cuatro coeficientes). Supongamos que dicho polinomio es \(p(x)= ax^3+bx^2+cx+d\). La condición \(p(0)=0\) implica que \(d=0\), y la condición \(p'(0)=2\) lleva a \(c=2\). Por tanto, nuestro polinomio es \( p(x)=ax^3+bx^2+2x\), al que tenemos que imponer también que \(p(2)=0=8a+4b+4\) y \(p'(2)=-2=12a+4b+2\).
<br>Resolviendo ese sistema de dos ecuaciones con dos incógnitas, obtenemos \(a=0\), \(b=-1\). Así <span style='color:blue'>\(p(x)=-x^2+2x\)</span>.</p>
<script type="text/javascript">
function pintae32(){
var f=t => -t*t+2*t;
var t1 = t => 2*t;
var t2 = t => -2*(t-2);
var board = JXG.JSXGraph.initBoard('ebox32', {boundingbox: [-1, 3, 3, -1], axis:true, showCopyright:false, showNavigation:false});
var curve = board.create('functiongraph',
[f, -5,5],{frozen:true});
board.create('functiongraph',[t1,-5,5],{dash:1,strokeColor:"orange"})
board.create('functiongraph',[t2,-5,5],{dash:1,strokeColor:"red"})
}
pintae32();
</script>
</div>
</li>
<li><p>Considera la función <span class="math">\(f \colon \mathbb{R} \to \mathbb{R}\)</span> definida como <span class="math">\(f(x)=\displaystyle e^{\frac{2x}{x^2+1}}\)</span>.</p>
<ol>
<li><p>Calcula las asíntotas de la gráfica de <span class="math">\(f\)</span>.</p></li>
<li><p>Determina los intervalos de monotonía (crecimiento y decrecimiento).</p></li>
<li><p>Determina lso extremos relativos de <span class="math">\(f\)</span>.</p></li>
<li><p>Esboza la gráfica de <span class="math">\(f\)</span>.</p></li>
</ol>
</li>
<li><p>Haz un estudio completo de la función <span class="math">\(f(x)=\frac{x^2+1}{x}\)</span> y representa su gráfica.</p></li>
<li><p>Haz un estudio completo de la función <span class="math">\(f(x)=\frac{x}{x^2-1}\)</span> y representa su gráfica.</p></li>
<li><p>A partir de la gráfica de <span class="math">\(f(x)=\cos(x)\)</span>, dibuja la gráfica de las funciones siguientes:</p>
<ol>
<li><p><span class="math">\( f(x)=\cos(x+1)\)</span>,</p></li>
<li><p><span class="math">\(f(x)=\cos(x-1)\)</span>,</p></li>
<li><p><span class="math">\(f(x)=\cos(2x)\)</span>,</p></li>
<li><p><span class="math">\(f(x)=\cos(x)-1\)</span>,</p></li>
<li><p><span class="math">\(f(x)=\cos(x)+1\)</span>,</p></li>
<li><p><span class="math">\(f(x)=\lvert\cos(x)\rvert\)</span>.</p></li>
</ol>
</li>
</ol>
</article>
</section>
<hr>
<p style="font-size: 10pt">Esta página está basada en las transparencias de Jerónimo Alaminos Prats, José Extremera Lizana y Pilar Muñoz Rivas para el Curso Cero de la ETSIIT de la Universidad de Granada. Las representaciones gráficas se han realizado con <a href="http://jsxgraph.uni-bayreuth.de">JSXGraph</a>. Las animaciones en JSXGraph y el maquetado de la página han sido realizados por Pedro A. García Sánchez.</p>
<script type="text/javascript" language="javascript">
function show(str, obj){
document.getElementById(obj).innerHTML = str;
MathJax.Hub.Typeset();
//MathJax.Hub.Queue(["Typeset",MathJax.Hub,obj]);
}
function show2(divID) {
var sol = document.getElementById("sol-"+divID);
var div = document.getElementById(divID);
if(sol.style.display == "none"){
sol.style.display = "block";
}else{
sol.style.display = "none";
}
if(div.innerHTML == "Solución"){
div.innerHTML = "Oculta solución";
}else{
div.innerHTML = "Solución";
}
}
</script>
</body>
</html>