![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/520057/image.png)
summation of infinite series
조회 수: 2 (최근 30일)
이전 댓글 표시
How I can impliment this type of infinite series in MATLAB given a function as
where
,
, and
. Here l,γ,R are constant.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/520037/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/520042/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/520047/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/520052/image.png)
댓글 수: 6
Walter Roberson
2021년 2월 16일
Post your code.
In terms of the code I posted earlier, the way forward would be to comment out that line that produces the error message, as I showed in the code how to get outputs without the error; I left the call to double() in to demonstrate that double() itself could not be used for the situation.
답변 (2개)
Walter Roberson
2021년 2월 17일
You did not give a value or range for R. My suspicion is that if R is not -1 or less, that the sum is infinite when the upper bound is infinite.
The code you were using required evaluation at over 1500 digits of precision to stableize the output when using 200 terms. However once I looked more closely at the code, I realized that some of it was being evaluated in pure double precision, so the answers it was getting were effectively numeric nonsense.
Unfortunately, the revised version is very slow.
I had to completely invent a value of R for testing purpose. As I had no guidance as to a proper value, I used 7 in the code.
With 200 terms, and using 5000 decimal places, the result is over 10^3000 . As the number of terms goes up, the result goes up quickly.
If you use fewer DIGITS, and the answer you get out for ev is in scientific notation, starting with a digit followed by a period, then you need to increase the DIGITS: whatever result you got out has been compromised. If the result you get out is negative, then you need to increase the DIGITS. If you do get out an actual number without scientific notation, then you might still need to increase the DIGITS
댓글 수: 3
Walter Roberson
2021년 2월 17일
Note: going beyond 500 terms for the upper limit will make the calculation unbearably slow. I do not mean a gradual deterioration, I mean a sharp deterioration. vpa(factorial(sym(1001)),2600) is very very slow, but 1000 instead is fast.
참고 항목
카테고리
Help Center 및 File Exchange에서 Calculus에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!