Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Maximum number of iterations taken when calling eigen solver from Arpack #89

Open
remann2 opened this issue Sep 11, 2023 · 2 comments
Open

Comments

@remann2
Copy link

remann2 commented Sep 11, 2023

Thank you for sharing this nice package for mode analysis!

When running the demo https://helgegehring.github.io/femwell/julia/waveguide.html, when running
modes = calculate_modes(model, ε ∘ τ, λ = 1.55, num = 2, order = 1), I encounter the following error.

ERROR: ┌ Error: XYAUPD_Exception: Maximum number of iterations taken. All possible eigenvalues of OP has been found.
│ IPARAM(5) returns the number of wanted converged Ritz values.
│ info = 1
└ @ Arpack ~/.julia/packages/Arpack/FCvNd/src/libarpack.jl:47

To reproduce it is to clone the repo, instantiate it in julia, install the femwell in python, run the Femwell.jl in REPL to compile the module, change line 63 in docs/julia/waveguide.jl from using Femwell.Maxwell.Waveguide to using Main.Femwell.Maxwell.Waveguide, and run waveguide.jl.

@HelgeGehring
Copy link
Owner

Happy to hear that it helps! :)

It seems to me that you somehow managed go around the pinning of Arpack.jl to 0.5.3., 0.5.4 is broken (see JuliaLinearAlgebra/Arpack.jl#147).

Maybe we should add a warning somewhere? Or catch that error and throw a new one until Arpack.jl is fixed?

Why do you need to rename using Femwell.Maxwell.Waveguide to using Main.Femwell.Maxwell.Waveguide ? Is there something we should fix?

@remann2
Copy link
Author

remann2 commented Sep 12, 2023

Aha! I guess when I ran the code manually (shift + enter line by line in code editor to see what really happens) under the doc folder, Julia REPL didn't realize the package layout and spun up the wrong env.

Same reason that I put the Femwell under Main scope, I guess if I just use > include("xxx/xxx.jl") in terminal it should run correctly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants