Closed jarlebring closed 5 years ago
The method iar_chebyshev is now fully functional. You are welcome to test it, report bugs and give advices for improving it. Documentation is still needed, I will add it soon.
Nice work. I like that you show how one can form a sum of two NEPs.
I think selecting γ
not equal to one does not work for the SPMF (and also not work for the ComputeY0Cheb_QDEP
). I added two tests. I would suggest we try to write the derivation of the SPMF-formula in the manuscript in a clear way, before we try to include scaling.
@jarlebring thanks for the bug reporting! Now the method iar_chebyshev supports shift and scaling for SPMF format as well (and the test passes). Recall that this cannot be incorporated in the method itself but the problem is explicitly transformed.
However, by reading your comment it feels you want a deeper change, i.e., include the shift and scaling in the method. Is this correct? We had a discussion about that for the general case and I remember it was not easy. Do you think is simpler for the SPMF format?
About the case ComputeY0Cheb_QDEP
, the point is that the the user-provided method compute_y0_method
does not depend on γ
and it is implicitly assumed γ=1
. I can fix this function or change back γ=1
in order to pass this test.
change, i.e., include the shift and scaling in the method. Is this correct? We had a discussion about that for the general case and I remember it was not easy. Do you think is simpler for the SPMF format?
Yes. I don't see why the SPMF-computation formula would not be able to handle shift and scale. As I wrote in my above, I suggest to clean up the derivation and put it into the MS.
I decided to remove the test for ComputeY0Cheb_QDEP
with shift and scale (commit e3d76c1728ec524f97951aa560a283edf410bfdf). I did it because the function compute_y0_method
for the QDEP is a combination of the functions compute_y0_method
for PEP and DEP. Recall that for DEP and PEP we do not have formulas for compute_y0_method
if the shift and scale are not standard (shift=0, scale=1
).
A naive eigenvector extraction in Beyn 4f32fedd3f759e1f5ff4dacc48a84d1b4a5e6c4f
Some documentation for rfi
, newtonqr
, and implicitdet
fixed in, e.g. 01eee8d8b1211465064a1b545643835a355ea0ad, da0f1b3947038a83b78de299f2c8ea467cdf0e86, and ac1d31b611c73e224807554595838e0a9ff15b67.
Last checkbox, short manuscript describing main features: https://arxiv.org/abs/1811.09592
This issue is checklist/wishlist of things we should plan to do before we feel we can start announcing the existance of the packade to colleagues (maybe version 0.1). Feel free to add if you think it should be included.
NoConvergenceException
if it does not find the specified number of eigenvaluesOne version of restartaugnewton
resinv
newton
rfi
quasinewton
newtonqr
implicitdet
mslp
SLEPc versionBasic implementationProper function commentsBy proper function comments I mean:
I have already done "proper function comments" for
newton()
andresinv()
. We should do it using Markdown, i.e., the rules here https://docs.julialang.org/en/stable/manual/documentation/Migrated from https://gitr.sys.kth.se/nep-pack/nep-pack-alpha/issues/26