[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Patch to residue.m
From: |
Ben Abbott |
Subject: |
Re: Patch to residue.m |
Date: |
Mon, 31 Dec 2007 18:29:56 +0800 |
1) Corrected xtra space in "group of pole multiplicity,"
2) Changed "max(p_group)" to "p_group(end)"
- for ng = 1:max(p_group)
+ for ng = 1:p_group(end)
3) Related the variable, "small", the eps
- small = max ([small, 1]) * 1e-12 * (1 + numel (p))^2;
+ small = max ([small, 1]) * eps*1e4 * (1 + numel (p))^2;
4) Moved the check for zero, real, and imaginary valued poles to after
the multiplicity has been handled.
Using the mean of each multiplicity group to determine the pole's
value for the entire group remains. The reason is because this
approach has been tested and shown to dramatically improves the error
in determining the poles (typically by 10 orders of magnitude).
Evidence to the contrary is welcomed.
A tolerance of 0.001 is still used to determine multiplicity.
Suggestions for a more mathematically proper way of determining the
tolerance are welcome.
I've attached an updated patch to be applied to the version in the
cvs, as well as the ChangeLog.
For those who don't want to bother with patching, I've attached the
modified residue.m as well.
Ben
residue.patch
Description: Binary data
ChangeLog
Description: Binary data
residue.m
Description: Binary data