using Plots, ComplexPhasePortrait, ApproxFun gr(); f = z -> exp(1/z) phaseplot(-6..6, -6..6, f) z = 2.0+2im sum([z^k/factorial(-1.0k) for k=-100:0]) - exp(1/z) k=-5; sum(Fun(z -> f(z)/z^(k+1), Circle()))/(2π*im) - 1/factorial(-1.0k) f = z -> exp(1/z) - 1 ζ = Fun(Circle()) -sum(f.(ζ)/(ζ-z))/(2π*im) - f(z) f = z -> exp(1/z) ζ = Fun(Circle()) -sum(f.(ζ)/(ζ-z))/(2π*im) - f(z) f = z -> 1/(z*(z+2)) phaseplot(-3..3, -3..3, f) sum(Fun(f, Circle(3.0))) f = z -> 1/z + 1/(z+2) phaseplot(-3..3, -3..3, f) f₋₁ = 2 res∞ = -f₋₁ sum(Fun(f, Circle(3.0))), -2π*im*res∞ res∞ = -2 res₋₂ = 1 sum(Fun(f, Circle(1.0))), -2π*im*(res∞ + res₋₂) f = z -> exp(1/z)/(z*(z+2)) portrait(-3..3, -3..3, f) sum(Fun(f, Circle(3.0))) sum(Fun(f, Circle(1.0))), -2π*im * exp(-1/2)/(-2) f = z -> (exp(1/z) + exp(z))/(z*(z+2)) Γ = Circle(0.0, 4.0) ∪ Circle(0.0,0.5,false) ∪ Circle(-2.0,0.1,false) phaseplot(-5..5, -5..5, f) plot!(Γ; color=:black, label=:contour, arrow=true, linewidth=1.5) ζ = Fun(Γ) z = 2.0+1.0im sum(f.(ζ)/(ζ - z))/(2π*im) f(z) n = 7 m = 5 p = Fun(Taylor(), randn(n)) q = Fun(Taylor(), randn(m)) λ = complexroots(q) Γ = Circle(0.0, 5.0) for λ in λ Γ = Γ ∪ Circle(λ, 0.1, false) end r = z -> extrapolate(p,z)/extrapolate(q,z) phaseplot(-5..5, -5..5, r) plot!(Γ; color=:black, label=:contour) ζ = Fun(Γ) z = 2.0+2.0im sum(r.(ζ)/(ζ - z))/(2π*im) - r(z) n = 5 m = 5 p = Fun(Taylor(), randn(n)) q = Fun(Taylor(), randn(m)) λ = complexroots(q) r = z -> extrapolate(p,z)/extrapolate(q,z) phaseplot(-7..7, -7..7, r) res = extrapolate.(p,λ)./extrapolate.(q',λ) r∞ = p.coefficients[n]/q.coefficients[m] r̃ = z -> r∞ + sum(res.*(z .- λ).^(-1)) z = 0.1+0.2im r(z) - r̃(z) phaseplot(-7..7, -7..7, r̃)