为什么我用MATLAB算不出无穷级数的结果?>> syms n x ;symsum('(-1)^(n-1)*x^(2*n+1)/(4*n^2-1)',n,1,inf)ans =sum(((-1)^(n - 1)*x^(2*n + 1))/(4*n^2 - 1),n = 1..Inf)
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/25 17:28:58
![为什么我用MATLAB算不出无穷级数的结果?>> syms n x ;symsum('(-1)^(n-1)*x^(2*n+1)/(4*n^2-1)',n,1,inf)ans =sum(((-1)^(n - 1)*x^(2*n + 1))/(4*n^2 - 1),n = 1..Inf)](/uploads/image/z/11387081-65-1.jpg?t=%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E7%94%A8MATLAB%E7%AE%97%E4%B8%8D%E5%87%BA%E6%97%A0%E7%A9%B7%E7%BA%A7%E6%95%B0%E7%9A%84%E7%BB%93%E6%9E%9C%3F%3E%3E+syms+n+x+%3Bsymsum%28%27%28-1%29%5E%28n-1%29%2Ax%5E%282%2An%2B1%29%2F%284%2An%5E2-1%29%27%2Cn%2C1%2Cinf%29ans+%3Dsum%28%28%28-1%29%5E%28n+-+1%29%2Ax%5E%282%2An+%2B+1%29%29%2F%284%2An%5E2+-+1%29%2Cn+%3D+1..Inf%29)
为什么我用MATLAB算不出无穷级数的结果?>> syms n x ;symsum('(-1)^(n-1)*x^(2*n+1)/(4*n^2-1)',n,1,inf)ans =sum(((-1)^(n - 1)*x^(2*n + 1))/(4*n^2 - 1),n = 1..Inf)
为什么我用MATLAB算不出无穷级数的结果?
>> syms n x ;
symsum('(-1)^(n-1)*x^(2*n+1)/(4*n^2-1)',n,1,inf)
ans =
sum(((-1)^(n - 1)*x^(2*n + 1))/(4*n^2 - 1),n = 1..Inf)
为什么我用MATLAB算不出无穷级数的结果?>> syms n x ;symsum('(-1)^(n-1)*x^(2*n+1)/(4*n^2-1)',n,1,inf)ans =sum(((-1)^(n - 1)*x^(2*n + 1))/(4*n^2 - 1),n = 1..Inf)
matlab的符号运算不是什么情况下都能得到理想的答案的.对于这道题就是这样.明明答案很理想,可是它就是做不出来.一般符号表达式越复杂,这中几率就越大.这需要一些技巧和经验.当你得不到理想解的时候,就需要改造你的符号表达式,比如用各种化简命令进行化简.常用的simple,simplify,collect,expand……等等,经过改造的表达往往能使某些不能计算的结果变得可以计算了.
这题,无论怎样simple,都得不到理想的结果.但是这个表达式可以因式分解.
先把(-1)^(n-1)/(4*n^2-1) 因式分解为 s
s = (-1)^n/(2*(2*n + 1))- (-1)^n/(2*(2*n - 1))
令g=x^(2*n+1), 那原式 t = s * g
然后再调用symsum
result = symsum(t,n,1,inf)
result = - x/2 - (x^3*atan((-x^2)^(1/2)*i)*i)/(2*(-x^2)^(1/2)) - (x*atan((-x^2)^(1/2)*i)*i)/(2*(-x^2)^(1/2))
结果还可以进行化简
result = simple(result)