-
Notifications
You must be signed in to change notification settings - Fork 3
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
User interface #7
Comments
A GUI is a good idea. I can mock something up with QtCreator if you like |
@ZedThree that would be great if you have time. I've floated the possibility with @bendudson of trying for an RSE project at Culham to work on some of this stuff... Before actually starting on the GUI, I think we need to define better (and possibly provide methods/functions for) the workflow for creating a new grid. Once we've done that it should be clearer what exactly the GUI can/should do. I don't have a timeline for that - not sure if/when I'll be generating new grid files myself, but maybe you or @bendudson are doing that at the moment anyway? |
I'm about halfway to getting a vaguely usable mockup that essentially just follows the geqdsk example. I currently don't have much time to devote to this, so if getting an RSE from Culham would be great. It would be super lovely to incorporate FreeGS into this as well, to be able to go from specify coil positions and currents, etc., through to grid generation in a single tool. I can think of at least one project where that might be handy... |
I don't plan on making lots of grids in the near future, so it's really a nice to have for me but not essential. Working out the use case would be good, and making key parts of it faster: A GUI would be nice if a user could get quick feedback on any changes, so the grid generation needs to be almost instant (ideally). |
John's suggestion above of using a reduced resolution to do prototyping might be useful there. Getting parallelisation in is also likely essentially |
Thanks @ZedThree! That would be very cool... making the process of importing or generating equilibria, adjusting them, and then generating grids smooth would be good. New grids are not needed all that often, but a basic task which should really just work. Edit: By basic I mean fundamental, not easy... because it definitely isn't! |
It would be nice to have an interface (maybe even graphical?) that makes it easier to prototype/experiment when creating an input file than just passing input file names to a command line script like
hypnotoad2_geqdsk experimental_equilib.g my_grid.yml
.There are already plotting functions which could be used to provide output.
Possible features:
nx
andfinecontour_Nfine
, and possibly some looseratol
s) which would make iterating on the original grid quicker.TokamakEquilibrium.default_options
and provide some sort of browser where the user could see the current and default settings for all options, see help/description, and modify the values. Done in Add basic experimental GUI #17Mesh.geometry()
output for the prototype?)..yml
file with the final settings, and generate a grid-file from it. Done in Add basic experimental GUI #17.xBOUT
to help plotting the final results?.yml
input file, to prototype changes to it interactively. Done in Add basic experimental GUI #17.We could probably achieve quite a bit of this quickly by providing methods/functions that could be called at the Python interactive prompt. Maybe a template Jupyter notebook containing a suggested grid-generation workflow. A hypnotoad1-like gui interface would be the nicest option...GUI added in #17 thanks to @ZedThree! Some extras for the gui that would be nice to have:The text was updated successfully, but these errors were encountered: