-
Notifications
You must be signed in to change notification settings - Fork 85
Functionalities for flux trapping analysis #461
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
base: main
Are you sure you want to change the base?
Conversation
hughcars
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't managed to review the MFEM portion directly yet, but this should be a lot to be going on with. At a high level,
- check running on more than 2 ranks, I was getting errors for 3 or more from geom factors not being initialized etc.
- run with order >= 3, I was getting errors where the computed flux was not matching the target flux, not sure what is causing this directly.
On the interface, broadly think more about how to a) avoid any 3D object allocation within the surface pde solving function and b) pass such objects in as buffers. There are already existing A sized gridfunctions, and even a true sized A buffer that can be used to compute the RHS (The next solution vector has already been allocated, you can use that!)
…julian mesh generators, fix outstanding bugs related to ceed errors when ranks are empty and order=3 accuracy
…yEdgeOrientations to add more robust check for whether all non-edge vertices are on the same side, other some minor changes
…d new mesh to test holes on different metal surfaces that are spatially separate.
|
In light of the recently merged #459, let's not forget to save all |
…s to align with palace's format.
…void re-allocation of gridfunction, (2) usee P-multigrid instead of depth 1 hierachy for 2D solve, (3) reuse fec and fes of available for boundary submesh.
|
@hughcars All your requested changes are addressed. Sorry for the delay. Please have a look and feel free to take over if you feel it is more convenient and efficient that way. |
This PR adds methods to enable flux trapping analysis in magnetostatic simulations. Key additions are:
GetFluxLoopExcitationVectorincurlcurloperator.cppto compute the RHS for flux excitationsurfacecurlsolver.cpp, along with postprocessing function for verificationmagnetostaticsolver.cppto enable 3D solve using flux BCPostprocessTerminalsto enable inductance calculations in flux-only and mix current-flux setups.geodata.cppto find loop boundary edges on submesh and their orientationsconfigfile.cppto look for flux loop terminals for magnetostatics