### Ec calor con extremos aislados

En clase resolvimos el caso con dato inicial f(x)=  [sin(%pi*x)]^2

f(x):=(1-cos(2*%pi*x))/2;

u(t,x):=(1-exp(-4*(%pi)^2*t)*cos(2*%pi*x))/2;

wxplot2d([u(0,x),u(0.02,x),u(0.04,x)], [x,0,1],[legend, "t=0", "t=0.02", "t=0.04"])$

with_slider(t,makelist(i,i,0.001,.1,.004),[u(t,x),0.5],[x,0,1],[y,0,1]);

¿Cuándo será |u(t,x)-1/2|<0.001?

ratprint:false;

solve(exp(-4*(%pi)^2*t)=0.001),numer;

wxplot3d(u(t,x), [t,0,0.1], [x,0,1])$

plot3d(u(t,x), [t,0,0.05], [x,0,1],[elevation,0],[colorbox,true],
[palette, get_plot_option(palette,3)])$

### Calor varilla extremos nulos

aquí tomamos f(x)=1, y dibujamos sólo un trozo de la serie u(t,x)
que conforma la solución...

u(t,x):= sum(4*exp(-(2*k-1)^2*%pi^2*t)/(%pi*(2*k-1))*sin(%pi*(2*k-1)*x),k,1,10);

wxplot2d([u(0,x),u(0.02,x),u(0.06,x),u(.2,x)], [x,0,1],
[legend, "t=0", "t=0.02", "t=0.04","t=0.2"])$

with_slider(t,makelist(i,i,0,.5,.02),[u(t,x)],[x,0,1],[y,0,1.2]);

se observa que la varilla se va enfriando. 
También se observa que en t=0 no se reproduce la función original f=1, sino
una aproximación trigonomética...

log(250*%pi)/%pi^2,numer;

wxplot3d(u(t,x), [t,0.001,0.4], [x,0,1])$

plot3d(u(t,x), [t,0.001,0.4], [x,0,1],[elevation,0],[colorbox,true])$

### Ec calor con extremos NO homogeneos 

Ahora tomo f(x)=0, con condiciones contorno
 u(t,0)=u(t,1)=20 (ver ejerc 4c)

u(t,x):= 20-sum(80*exp(-(2*k-1)^2*%pi^2*t)/(%pi*(2*k-1))*sin(%pi*(2*k-1)*x),k,1,10);

wxplot2d([u(0,x),u(0.02,x),u(0.06,x),u(.2,x)], [x,0,1],
[legend, "t=0", "t=0.02", "t=0.04","t=0.2"])$

wxplot3d(u(t,x), [t,0.001,0.4], [x,0,1])$

plot3d(u(t,x), [t,0.001,0.4], [x,0,1],[elevation,0],[colorbox,true],
[palette, get_plot_option(palette,3)])$

Observamos cómo la varilla se va calentando hasta alcanzar la temperatura 
ambiente fijada en los extremos.

Mismo ejemplo pero tomando como condiciones de contorno
 u(t,0)=20,   u(t,1)=0 (ver ejerc 4c)

Primero calculo los coeficientes b_n...
Para ello tendré que integrar la siguiente función

g(x):= (sin(%pi*n*x))*20*(x-1);

2*integrate(g(x), x, 0, 1);

sin(pi n) = 0, porque n es entero, asi que tengo

b[n]:=-40/(%pi*n);

u(t,x):= 20*(1-x) + 
sum(b[n]*exp(-n^2*%pi^2*t)*sin(%pi*n*x),n,1,20);

wxplot2d([u(0,x),u(0.005,x),u(0.02,x),u(0.06,x),u(.2,x)], [x,0,1],
[legend, "t=0","t=0.005", "t=0.02", "t=0.04","t=0.2"])$

with_slider(t,makelist(i,i,0,.2,.005),[u(t,x)],[x,0,1],[y,-5,20]);

wxplot3d(u(t,x), [t,0.001,0.2], [x,0,1])$

plot3d(u(t,x), [t,0.001,0.2], [x,0,1],[elevation,0],[colorbox,true],
[palette, get_plot_option(palette,3)])$

Observamos cómo la varilla se va propagando hasta alcanzar la temperatura 
estacionaria lineal, fijada por los extremos.