Aproximation av ln(5) mha. taylorserie
Hej jag har stött på lite problem med denna uppgift i matlab, frågan är följande:
Betrakta taylorserien av ln x kring x = 1:
(x −1) −(x −1)2
2 + (x −1)3
3 −···
Beräkna ett approximativt värde på ln 5 genom sätta x = 1/5 i serien
och addera alla termer vars absolutbelopp är större än 10^-9.
tol=1e-9; s=0; i=0;
term=;
while abs(term) > tol
s=s+term;
i=i+1;
term=...;
end
disp(Approximativt v ̈arde p ̊a ln 5:), disp(-s)
Hur ska jag gå till väga när jag löser denna?
tack på förhand
student på ltu tekniskt design
Ser att ingen har svarat; har du fortfarande problem med denna?
Matsmats skrev:Ser att ingen har svarat; har du fortfarande problem med denna?
Hej, ja tror jag har lyckats lösa den förhand men inte med matlab kod
Hej,
formeln är alltså
ln(x)=x-1+(x-1)22-(x-1)33+(x-1)44-...=∑Nn=1(-1)n-1(x-1)nn
Tycker din pseudokod är nästan rätt. Jag använde dock n istället för i här. Undvik att indexera med just i när du skriver MATLAB eftersom det betecknar den imaginära enheten.
Du behöver börja med att sätta summan till 0, sedan räknar du i while-loopen ut den nya termen och lägger den till summan.
Men du kan sätta term till något som är större än tol för att köra första varvet i loopen så behöver du bara räkna ut term på ett enda ställe.