residue complex number by matlab
Show older comments
how can I find the residue of (z+1)/(z^3 (z-2)) by using matlab ?
Answers (1)
John D'Errico
on 13 Mar 2015
I can't recall if I ever published this tool. I thought I did.
fun = @(z) (z+1)./(z.^3.*(z-2));
format long g
We know z=2 to be a first order pole.
[res,err] = residueEst(fun,2,'poleorder',1)
res =
0.375
err =
8.8624722305483e-16
And z=0 is a 3rd order pole.
[res,err] = residueEst(fun,0,'poleorder',3)
res =
-0.187500006276744
err =
2.93992309142077e-09
Expect a wee bit less accuracy around higher order poles, but it still did reasonably well.
As I said, I thought it was posted on the File Exchange, but it may not have been. I've written so many neat toys over the years, that sometimes I forget to post them...
As it turns out, I never did post it. I'll update the limest submission to include residueEst, as they are both limit calculators.
8 Comments
adrian zizo
on 13 Mar 2015
John D'Errico
on 13 Mar 2015
I've just posted residueEst as a part of my LIMEST File Exchange submission. It includes demos of use.
John D'Errico
on 13 Mar 2015
I wrote it in 2008, and it has not changed since then. It WILL work. But you need to download it from the file exchange. That tool is not part of MATLAB. You cannot hope it will work unless you get the file.
adrian zizo
on 14 Mar 2015
John D'Errico
on 14 Mar 2015
Ok, so you know how to use .^ and ./ to solve some problems. But is there a reason why you did not use .* also?
fun=@(z) (z)./((z.^2+4)*(z-1)); % your function
fun=@(z) (z)./((z.^2+4).*(z-1)); % my version
See that the error came from mtimes.
Mike Hosea
on 16 Mar 2015
FYI, in case it comes in handy at some point, the INTEGRAL function (and QUADGK) can do contour integrals over piecewise linear paths in the complex plane using the 'Waypoints' option. For example, integrating over square path enclosing z = 2
>> integral(f,1,1,'waypoints',[1-1i,3-1i,3+1i,1+1i])
ans =
0 + 2.35619449019235i
>> ans/(2*pi*1i)
ans =
0.375
John D'Errico
on 16 Mar 2015
That is good to know. Too often these tools contain nice additional abilities that we old-timers never realize were added.
Niklas Kurz
on 15 Jul 2021
Edited: Niklas Kurz
on 15 Jul 2021
what if there is an indetermined variable in the function? (fun = @(z,a)). Can it deal with two parameters?
Categories
Find more on Computational Geometry in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!