dedalus
dedalus copied to clipboard
Support multiple non-seperable dimensions and NCC
I'd like to solve a 2D eigenvalue problem with non-constant coefficients, and as far as I can tell, the first step in this direction is to allow multiple non-separable directions. I'm imagining that there could be N-M
separable directions and the last M
are non-separable and process-local. Each Pencil()
would really then be acting on the local M
dimensions. This wouldn't be highly parallelized, and the operators might be denser(?), but I don't particularly mind. I can always offload the actual eigensolve to SLEPc or similar. I don't think there are any fundamental issues here, but I might be wrong.
Yes that's all correct, and indeed we're working on a major rewrite (in the "d3" branch) that supports multiple coupled dimensions, among many other new features. The non-trivial part, though, turns out to be enforcing boundary conditions because of the possibility of corner singularities. We've mostly been focusing on other things at the moment (disks and spheres), but I can update the scripts there with some 2D EVP examples soon and link them back here.
That would be great, thanks!
@kburns do you know if this is working yet? Thanks!
Is there any news on this front? I would also be very interested in using Dedalus for similar purposes (eigenvalue problems in dimension d > 1 with non-constant coefficients). Any pointer (or better example) would be greatly appreciated!
With #185, we have support for EVPs in the spherical shell that depend on both radius and latitude.
With #219, multidimensional NCCs are supported in Cartesian domains, allowing for multidimensional LBVPs, EVPS, and NLBVPs. Additional multidimensional NCC implementations are being tracked in #188.