Computing Cauchy Integrals in Sage Math

I am relatively new to complex analysis and I am trying to write down the following integral in Sage Math:

Cauchy Integral Image Link

If S(m,n), a formal power series, = (1-t^2)^m / (1-t)^n then the Cauchy integral is:

I(k) = 1/2ipi * int_o(S(m,n)t^(k+1) dt)

This is from a paper that can be found at: http://magali.bardet.free.fr/Publis/ltx43BF.pdf The contour is a circle around the origin with a radius less than 1.

The Cauchy Integral will produce the k-th coefficient of $S(n)$. I tried doing the following:

def deg_reg_Cauchy(k, n, m):
    R.<t> = PowerSeriesRing(CC, 't')
    constant_term = 1/(2*I*pi)
    s = (1-t**2)**m / (t**(k+1)*(1-t)**n)
    s1 = constant_term * s.integral()
    return s1

I realize this is probably very wrong. Does anyone have any tips on how to go about this, please?

ArithmeticError: The integral of is not a Laurent series since t^-1 has a nonzero coefficient.

Thank you!

Upvotes: 2

Views: 717

Answers (1)

kcrisman
kcrisman

Reputation: 4402

You're probably going to have to parametrize your integration domain (circle, here). Or use a Cauchy residue type theorem, as here.

Here is an interesting Sage cell instance by Jason Grout and Ben Woodruff that might help you get started on how to calculate some of them; unfortunately, sometimes these integrals are very tricky to do exactly. See this sage-support thread for an easier example, though I don't think in the end it fully worked because of a Maxima bug.

Relevant code:

f(x,y)=9-x^2-y^2
r(t)=(2*cos(t), 3*sin(t))
trange=(t,0,2*pi)

ds=r.diff(t).norm()
dA=f(*r(t))*ds(t)

def line_integral(integrand):
    return RR(numerical_integral(integrand, trange[1], trange[2])[0])

A = line_integral(dA)
integrate(dA, trange)

The last two lines do a numerical and exact (if possible) result, respectively.

Upvotes: 1

Related Questions