Calculaing the table of values for function defined as an infinie series
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
Chuzymatics Chuzymatics
el 19 de Jul. de 2014
Comentada: Chuzymatics Chuzymatics
el 21 de Jul. de 2014
I need this code below to caluate the sum of the first 50 terms of the series :t to the power n for t value. That is, a kind of table of values for the series for t=1:10 It gives the error message: ??? Error using ==> power Matrix dimensions must agree. Please someone help % Calculating the sum of an infinite series
t =1:10;
n=0:50;
E(1,:)= sum(t.^n)
0 comentarios
Respuesta aceptada
Jos
el 19 de Jul. de 2014
Editada: Jos
el 19 de Jul. de 2014
you can use a for loop to do this
t = 1:10;
n = 0:50;
for i=1:length(t)
E(1,i)=sum(t(i).^n);
end
Cheers
Joe
4 comentarios
Jos
el 20 de Jul. de 2014
Both the method above and the one below by Roger (a lot more elegant by the way) produce exactly what you would expect
E:
51
2.25e+15
1.08e+24
1.69e+30
1.11e+35
9.70e+38
2.10e+42
1.63e+45
5.80e+47
1.11e+50
plotting E in the way you try to do will basically only show the last point as it is a lot bigger than the other points, try plotting the y axis on a logarithmic scale using semilogy(t,E), you'll get this graph
Más respuestas (1)
Roger Stafford
el 19 de Jul. de 2014
Also you can use this:
E = sum(bsxfun(@power,1:10,(0:50)'),1);
4 comentarios
Roger Stafford
el 20 de Jul. de 2014
Editada: Roger Stafford
el 20 de Jul. de 2014
A Side Note: The value of your E(10) would be 1111...11, a string of fifty-one 1's in decimal, if it were computed exactly. This reminds me of one of the Fifty-Eighth Putnam Exam questions which posed the intriguing problem: "Let N be the positive integer with 1998 decimal digits, all of them 1; that is, N = 1111...11. Find the thousandth digit after the decimal point of the square root of N." (Surprisingly, it is solvable without using a computer.)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!