def _eval_aseries(self, n, args0, x, logx):
point = args0[0]
# Expansion at oo
if point is S.Infinity:
z = self.args[0]
# expansion of C(x) = C1(x*sqrt(pi/2)), see reference[5] page 1-8
p = [(-1)**k * C.factorial(4*k + 1) /
(2**(2*k + 2) * z**(4*k + 3) * 2**(2*k)*C.factorial(2*k))
for k in xrange(0, n)]
q = [1/(2*z)] + [(-1)**k * C.factorial(4*k - 1) /
(2**(2*k + 1) * z**(4*k + 1) * 2**(2*k - 1)*C.factorial(2*k - 1))
for k in xrange(1, n)]
p = [-sqrt(2/pi)*t for t in p] + [C.Order(1/z**n, x)]
q = [ sqrt(2/pi)*t for t in q] + [C.Order(1/z**n, x)]
return S.Half + (C.cos(z**2)*Add(*p) + C.sin(z**2)*Add(*q)).subs(x, sqrt(2/pi)*x)
# All other points are not handled
return super(fresnelc, self)._eval_aseries(n, args0, x, logx)
###############################################################################
#################### HELPER FUNCTIONS #########################################
###############################################################################
评论列表
文章目录