Modelo para los ejercicios de la práctica 1 y 2

En este documento se recogen alguna de las soluciones de los ejercicios propuestos para las sesiones I y II. Puede utilizarse como apoyo y éste es su fin.

Recuerda no obstante que hay que ser cuidados con las definiciones, los paréntesis, no utilizar nada que no haya sido declarada, etc.

Desde un punto de vista práctico, resulta a menudo mucho más útil empaquetar las instrucciones en un fichero script. Así es más fácil editar para corregir errores o adaptar lo escrito a problemas similares.

La salida que devuelve Matlab está en gris claro.

Comandos utilizados en esta práctica factor, simple, syms, disp, pretty, limit, symsum, sum, plot

Contents

Eleccción: ans o disp

Si molesta el "|ans|" se puede utilizar disp para mostrar los resultados más concisos.

cos(pi-sin(0.5))+atan(exp(0.4))
ans =

   0.093008672856389

disp(cos(pi-sin(0.5))+atan(exp(0.4)))
   0.093008672856389

o bien

res=cos(pi-sin(0.5))+atan(exp(0.4)); % la variable "res" con el resultado
disp(res)
   0.093008672856389

Ejercicio 1.4 Qué es mayor e^pi o pi^e?

definimos e con el número e=2.718182....

e=exp(1);

comprobamos su valor

exp(pi), pi^e
ans =

  23.140692632779267


ans =

  22.459157718361052

exp(pi)-pi^e
ans =

   0.681534914418215

Si se quiere más precisción utilizar format long. En cualquier caso concluimos que

Ejercicio 1.7 Factorizaciones

Factoriza

Simplemente

syms x % definimos x como variable simbólica
factor(x^2-4*x+3)
 
ans =
 
(x-1)*(x-3)
 
 
factor(x^4-10*x^2+9)
 
ans =
 
(x-1)*(x+3)*(x-3)*(x+1)
 
 

Ejercicio 1.11 Simplificaciones

Simplifica

syms x % definimos x simbólica (no es necesario si ya lo es)
simp=simple((x^4+2*x^3-25*x^2-2*x+24)/(x^4+13*x^3+46*x^2+12*x-72))
 
simp =
 
(x+1)*(x-4)/(x+6)/(x+2)
 
 
pretty(simp) % lo muestra algo más elegante
 
                                (x + 1) (x - 4)
                                ---------------
                                (x + 6) (x + 2)
simp2= simple(sin(4*x)/(cos(2*x)^2-sin(2*x)^2)); % no queremos la salida
simp2
 
simp2 =
 
sin(4*x)/cos(4*x)
 
 

Observa que Matlab no se da cuenta que aún se puede simplificar más. Aplicamos una vez más simple

simple(simp2)
 
simplify:
 
sin(4*x)/cos(4*x)
 
 
radsimp:
 
sin(4*x)/cos(4*x)
 
 
combine(trig):
 
sin(4*x)/cos(4*x)
 
 
factor:
 
sin(4*x)/cos(4*x)
 
 
expand:
 
8/(8*cos(x)^4-8*cos(x)^2+1)*sin(x)*cos(x)^3-4/(8*cos(x)^4-8*cos(x)^2+1)*sin(x)*cos(x)
 
 
combine:
 
sin(4*x)/cos(4*x)
 
 
convert(exp):
 
-1/2*i*(exp(4*i*x)-1/exp(4*i*x))/(1/2*exp(4*i*x)+1/2/exp(4*i*x))
 
 
convert(sincos):
 
sin(4*x)/cos(4*x)
 
 
convert(tan):
 
tan(4*x)
 
 
collect(x):
 
sin(4*x)/cos(4*x)
 
 
mwcos2sin:
 
sin(4*x)/cos(4*x)
 
 
ans =
 
tan(4*x)
 
 

Ahora sí es satisfactorio

Ejercicio 1.13 Comprobar que son polinomios

syms x
p=cos(2*acos(x));
simple(p)
 
simplify:
 
cos(2*acos(x))
 
 
radsimp:
 
cos(2*acos(x))
 
 
combine(trig):
 
cos(2*acos(x))
 
 
factor:
 
cos(2*acos(x))
 
 
expand:
 
2*x^2-1
 
 
combine:
 
cos(2*acos(x))
 
 
convert(exp):
 
1/2*(x+i*(1-x^2)^(1/2))^2+1/2/(x+i*(1-x^2)^(1/2))^2
 
 
convert(sincos):
 
cos(2*acos(x))
 
 
convert(tan):
 
(1-tan(acos(x))^2)/(1+tan(acos(x))^2)
 
 
collect(x):
 
cos(2*acos(x))
 
 
mwcos2sin:
 
cos(2*acos(x))
 
 
ans =
 
2*x^2-1
 
 

Ejercicio 1.13 Algunos límites

syms n
limit(((n^2-1)/(n^2+n))^(4*n-3),n,inf)
 
ans =
 
exp(-4)
 
 
limit((n+4)*tan(sin(cos(1/n^2)-1)),n,inf)
 
ans =
 
0
 
 

Sé bien cuidadoso con los paréntesis: cuando uno se abre, otro se cierra. Observa de que el seno se escribe con sin

Ejercicio 1.14 Suma de algunas series

 syms n
 suma=symsum(n*2^(1-n),n,1,inf)
 pretty(suma) %mismo resultado de forma más elegante
 
suma =
 
4
 
 
 
                                       4
 symsum(log((n+2)/n),n,1,inf)
 
ans =
 
Inf
 
 

obtenemos el resultado: infinito

Ejercicio 1.15: dibujo de algunas sucesiones

f=vectorize(inline('(n^2+3*n-1)/((n+1)^3-(n+2)^3)'))
n=1:50; % dibujamos 50 valors
plot(f(n),'r.:')
f =

     Inline function:
     f(n) = (n.^2+3.*n-1)./((n+1).^3-(n+2).^3)

vemos que el límite parece ser -0.333... que es 1/3

g=vectorize(inline('((n^2-1)/(n^2+n))^(4*n-3)'))
n=1:50; % dibujamos 50 valores
plot(g(n),'mo-.')
g =

     Inline function:
     g(n) = ((n.^2-1)./(n.^2+n)).^(4.*n-3)

si queremos las podemos ver juntas. Simplemente hay que "añadir" n en el el comando plot para indicar donde se mueve la variable

plot(n,f(n),'r.:',n,g(n),'mo-.')

Ejercicio 1.16: dibujo de algunas series

f=vectorize(inline('(-1)^n/sqrt(n)','n'))
n=1:100; % dibujamos 100 sumas parciales primera
plot(cumsum(f(n)),'k.:')
f2=vectorize(inline('n^9*3^(-n)','n'))
n=1:100; % dibujamos 100 sumas parciales primeras
plot(cumsum(f2(n)),'k.:')
% Observa que en el último ejemplo la suma es considerable, pero se
% estabiliza pronto ($3^{-n}$ decrece a cero mucho más rápidamente que el
% crecimiento a infinito de $n^9$).
f =

     Inline function:
     f(n) = (-1).^n./sqrt(n)


f2 =

     Inline function:
     f2(n) = n.^9.*3.^(-n)

vemos que el límite parece ser -0.333... que es 1/3

g=vectorize(inline('((n^2-1)/(n^2+n))^(4*n-3)'))
n=1:50; % dibujamos 50 valores
plot(g(n),'mo-.')
%
g =

     Inline function:
     g(n) = ((n.^2-1)./(n.^2+n)).^(4.*n-3)

Ejercicio 1.17 Constante de Euler-Macheroni

Evaluamos $$\sum_{j=1}^n\frac{1}{j}-log(n) $$ para varios valores de $n$

f=vectorize(inline('1/n','n'));
format long % vemos todos los dígitos posibles
n=10; gamma10=sum(f(1:n))-log(n);
disp('Aprox para n=100')
disp(gamma10)
n=1000; gamma10000=sum(f(1:n))-log(n);
disp('Aprox para n=1000')
disp(gamma10000)
n=100000; gamma100000=sum(f(1:n))-log(n);
disp('Aprox para n=10000')
disp(gamma100000)
%
% Podemos dibujar una gráfica con esos valores
%
% Definimos la funcion
f2=vectorize(inline('cumsum(1/n)-log(n)','n'));
n=1:150;
plot(f2(n),'o')
% vemos en la gráfica claramente que la diferencia entre suma parcial
% y logaritmo tiende a un número fijo que es aprox 0.57721566490153...
Aprox para n=100
   0.626383160974208

Aprox para n=1000
   0.577715581568206

Aprox para n=10000
   0.577220664893106

Ejercicio 1.18 calculamos la serie de forma numérica

s1=vectorize(inline('(101/100)^n'));
n=1:50; % tomamos 5 términos
sum(s1(n)) % los sumamos
ans =

  65.107814006232090

Parece que es infinito. Nos aseguramos

n=1:200;    % 200 terminos
sum(s1(n))  % los sumamos
ans =

    6.379178030348247e+002

Si queremos podemos ver la suma acumulativa, es decir, la sucesción de sus sumas parciales

cumsum(s1(n))
ans =

  1.0e+002 *

  Columns 1 through 5

   0.010100000000000   0.020301000000000   0.030604010000000   0.041010050100000   0.051520150601000

  Columns 6 through 10

   0.062135352107010   0.072856705628080   0.083685272684361   0.094622125411205   0.105668346665317

  Columns 11 through 15

   0.116825030131970   0.128093280433289   0.139474213237622   0.150968955369999   0.162578644923699

  Columns 16 through 20

   0.174304431372936   0.186147475686665   0.198108950443532   0.210190039947967   0.222391940347447

  Columns 21 through 25

   0.234715859750921   0.247163018348430   0.259734648531915   0.272431995017234   0.285256314967406

  Columns 26 through 30

   0.298208878117080   0.311290966898251   0.324503876567233   0.337848915332906   0.351327404486235

  Columns 31 through 35

   0.364940678531097   0.378690085316408   0.392576986169572   0.406602756031268   0.420768783591581

  Columns 36 through 40

   0.435076471427496   0.449527236141771   0.464122508503189   0.478863733588221   0.493752370924103

  Columns 41 through 45

   0.508789894633344   0.523977793579678   0.539317571515474   0.554810747230629   0.570458854702935

  Columns 46 through 50

   0.586263443249965   0.602226077682465   0.618348338459289   0.634631821843882   0.651078140062321

  Columns 51 through 55

   0.667688921462944   0.684465810677574   0.701410468784349   0.718524573472193   0.735809819206915

  Columns 56 through 60

   0.753267917398984   0.770900596572974   0.788709602538703   0.806696698564091   0.824863665549731

  Columns 61 through 65

   0.843212302205229   0.861744425227281   0.880461869479554   0.899366488174349   0.918460153056093

  Columns 66 through 70

   0.937744754586654   0.957222202132520   0.976894424153846   0.996763368395384   1.016831002079338

  Columns 71 through 75

   1.037099312100131   1.057570305221133   1.078246008273344   1.099128468356077   1.120219753039638

  Columns 76 through 80

   1.141521950570035   1.163037170075735   1.184767541776492   1.206715217194257   1.228882369366200

  Columns 81 through 85

   1.251271193059862   1.273883904990460   1.296722744040365   1.319789971480769   1.343087871195577

  Columns 86 through 90

   1.366618749907532   1.390384937406608   1.414388786780674   1.438632674648480   1.463119001394965

  Columns 91 through 95

   1.487850191408915   1.512828693323004   1.538056980256234   1.563537550058796   1.589272925559384

  Columns 96 through 100

   1.615265654814978   1.641518311363128   1.668033494476759   1.694813829421527   1.721861967715742

  Columns 101 through 105

   1.749180587392899   1.776772393266829   1.804640117199497   1.832786518371492   1.861214383555207

  Columns 106 through 110

   1.889926527390759   1.918925792664666   1.948215050591313   1.977797201097226   2.007675173108199

  Columns 111 through 115

   2.037851924839281   2.068330444087673   2.099113748528550   2.130204886013836   2.161606934873974

  Columns 116 through 120

   2.193323004222714   2.225356234264941   2.257709796607590   2.290386894573666   2.323390763519403

  Columns 121 through 125

   2.356724671154597   2.390391917866143   2.424395837044805   2.458739795415253   2.493427193369405

  Columns 126 through 130

   2.528461465303099   2.563846079956131   2.599584540755692   2.635680386163249   2.672137190024881

  Columns 131 through 135

   2.708958561925130   2.746148147544381   2.783709629019825   2.821646725310024   2.859963192563123

  Columns 136 through 140

   2.898662824488755   2.937749452733643   2.977226947260979   3.017099216733589   3.057370208900925

  Columns 141 through 145

   3.098043910989934   3.139124350099833   3.180615593600832   3.222521749536840   3.264846967032208

  Columns 146 through 150

   3.307595436702530   3.350771391069556   3.394379104980251   3.438422896030054   3.482907124990355

  Columns 151 through 155

   3.527836196240259   3.573214558202661   3.619046703784688   3.665337170822535   3.712090542530760

  Columns 156 through 160

   3.759311447956068   3.807004562435628   3.855174608059985   3.903826354140584   3.952964617681991

  Columns 161 through 165

   4.002594263858811   4.052720206497399   4.103347408562373   4.154480882647997   4.206125691474476

  Columns 166 through 170

   4.258286948389221   4.310969817873113   4.364179516051845   4.417921311212363   4.472200524324487

  Columns 171 through 175

   4.527022529567732   4.582392754863409   4.638316682412042   4.694799849236163   4.751847847728524

  Columns 176 through 180

   4.809466326205810   4.867660989467868   4.926437599362546   4.985801975356171   5.045759995109734

  Columns 181 through 185

   5.106317595060831   5.167480771011440   5.229255578721554   5.291648134508770   5.354664615853858

  Columns 186 through 190

   5.418311262012396   5.482594374632519   5.547520318378845   5.613095521562633   5.679326476778259

  Columns 191 through 195

   5.746219741546042   5.813781938961503   5.882019758351118   5.950939955934628   6.020549355493976

  Columns 196 through 200

   6.090854849048916   6.161863397539405   6.233582031514799   6.306017851829947   6.379178030348247

Mejor si lo dibujamos

plot(cumsum(s1(n)),'k.')

Puedes hacer zooms para observar la figura más de cerca. Para el segundo ejemplo procedemos igual

s2=vectorize(inline('log(n)/n^2'));
n=1:200; % tomamos 200 t?rminos
sum(s2(n)) % los sumamos
ans =

   0.906122796485680

Observamos la sucesión de sus sumas parciales

cumsum(s2(n))
ans =

  Columns 1 through 5

                   0   0.173286795139986   0.295354827214221   0.381998224784214   0.446375741281578

  Columns 6 through 10

   0.496146837649024   0.535859289670561   0.568350563759308   0.595476793109138   0.618502644039079

  Columns 11 through 15

   0.638319960343197   0.655576256522281   0.670753471655189   0.684218049867512   0.696253828539077

  Columns 16 through 20

   0.707084253235326   0.716887759616144   0.725808660103478   0.733965000765989   0.741454331449874

  Columns 21 through 25

   0.748358010446979   0.754744461796893   0.760671672034944   0.766189126601520   0.771339327921310

  Columns 26 through 30

   0.776158997356253   0.780680035581224   0.784930296436040   0.788934215377759   0.792713323579606

  Columns 31 through 35

   0.796286671347021   0.799671179064598   0.802881929809747   0.805932414692633   0.808834739640787

  Columns 36 through 40

   0.811599800550090   0.814237432334344   0.816756536323074   0.819165189607841   0.821470739266662

  Columns 41 through 45

   0.823679883863155   0.825798744190980   0.827832924891734   0.829787568297683   0.831667401625965

  Columns 46 through 50

   0.833476778467406   0.835219715362702   0.836899924134798   0.838520840543840   0.840085649746011

  Columns 51 through 55

   0.841597308966590   0.843058567738254   0.844471986005806   0.845839950356480   0.847164688599532

  Columns 56 through 60

   0.848448282888669   0.849692681555285   0.850899709798610   0.852071079360203   0.853208397294154

  Columns 61 through 65

   0.854313173930588   0.855386830118165   0.856430703820960   0.857446056136233   0.858434076791830

  Columns 66 through 70

   0.859395889175215   0.860332554940283   0.861245078232925   0.862134409571845   0.863001449417161

  Columns 71 through 75

   0.863847051455852   0.864672025630045   0.865477140931443   0.866263127982795   0.867030681425201

  Columns 76 through 80

   0.867780462128159   0.868513099237597   0.869229192075646   0.869929311904594   0.870614003566262

  Columns 81 through 85

   0.871283787006998   0.871939158697549   0.872580592956193   0.873208543182787   0.873823443010674

  Columns 86 through 90

   0.874425707382802   0.875015733557812   0.875593902051417   0.876160577517865   0.876716109575931

  Columns 91 through 95

   0.877260833583480   0.877795071364322   0.878319131890759   0.878833311924968   0.879337896622098

  Columns 96 through 100

   0.879833160097735   0.880319365962174   0.880796767823760   0.881265609763371   0.881726126781970

  Columns 101 through 105

   0.882178545222990   0.882623083171210   0.883059950829635   0.883489350875783   0.883911478798700

  Columns 106 through 110

   0.884326523217898   0.884734666185359   0.885136083471636   0.885530944837028   0.885919414288746

  Columns 111 through 115

   0.886301650324889   0.886677806166032   0.887048029975156   0.887412465066600   0.887771250104661

  Columns 116 through 120

   0.888124519292466   0.888472402551638   0.888815025693297   0.889152510580884   0.889484975285244

  Columns 121 through 125

   0.889812534232419   0.890135298344535   0.890453375174158   0.890766869032483   0.891075881111671

  Columns 126 through 130

   0.891380509601652   0.891680849801693   0.891976994226981   0.892269032710508   0.892557052500475

  Columns 131 through 135

   0.892841138353468   0.893121372623589   0.893397835347780   0.893670604327506   0.893939755206981

  Columns 136 through 140

   0.894205361548121   0.894467494902367   0.894726224879533   0.894981619213839   0.895233743827238

  Columns 141 through 145

   0.895482662890181   0.895728438879945   0.895971132636621   0.896210803416886   0.896447508945657

  Columns 146 through 150

   0.896681305465723   0.896912247785440   0.897140389324600   0.897365782158524   0.897588477060484

  Columns 151 through 155

   0.897808523542516   0.898025969894700   0.898240863222966   0.898453249485507   0.898663173527835

  Columns 156 through 160

   0.898870679116561   0.899075808971945   0.899278604799257   0.899479107319024   0.899677356296181

  Columns 161 through 165

   0.899873390568199   0.900067248072209   0.900258965871178   0.900448580179173   0.900636126385744

  Columns 166 through 170

   0.900821639079472   0.901005152070702   0.901186698413510   0.901366310426917   0.901544019715396

  Columns 171 through 175

   0.901719857188687   0.901893853080953   0.902066036969306   0.902236437791714   0.902405083864331

  Columns 176 through 180

   0.902572002898262   0.902737222015776   0.902900767766006   0.903062666140146   0.903222942586161

  Columns 181 through 185

   0.903381622023030   0.903538728854545   0.903694286982672   0.903848319820503   0.904000850304800

  Columns 186 through 190

   0.904151900908156   0.904301493650781   0.904449650111930   0.904596391440982   0.904741738368188

  Columns 191 through 195

   0.904885711215096   0.905028329904659   0.905169613971047   0.905309582569173   0.905448254483928

  Columns 196 through 200

   0.905585648139156   0.905721781606360   0.905856672613163   0.905990338551516   0.906122796485680

Y nuevamente, es mejor si lo dibujamos

plot(cumsum(s2(n)),'b*')