-
Notifications
You must be signed in to change notification settings - Fork 7
Home
Patrick Crumley edited this page Oct 11, 2017
·
10 revisions
Welcome to the Iseult wiki!
Iseult is a GUI for interacting with 2D Tristan-MP simulations. It's written in python using TkInter for the GUI and matplotlib for plotting. To change a subplot settings, right click directly on the subplot. We need to re-write it for 2.0
- Migrate to python 3 & Numba with parallelized vectorization.
- Re-write in QT5
- No longer lay out canvas with matplotlib, use QT to allocate the grid to allow for non-matplotlib plots (mayavi? OpenGL, etc). Add ability to drag subplots.
- Abstract out the simulation to a class that is passed to the subpanels. Allows for multiple sims in the same window or even same plot (in case of spectra).
- Differentiate between an interactive mode that is slow to load but allows for exploration of the data, and a static mode that either loads a cached, static image, or a subsampled array.
- Add a render button that renders all the timesteps in the static mode. Dragging the playback bar after pressing render should achieve frame rates > 20 fps.
Below are longer term improvements that I may make to Iseult, with ideas on how to implement them:
- Dam: "...dock the dialogue windows? they pop up as separated by the main window, and sometimes are far away, sometimes they get hidden."-> Main idea is to have a panel on the left that the popups go into. Unsure how to implement in TKinter.
- directly save movies -> Either using matplotlib's built in saver or writing a bash script to create it using imagemagick.
- change the way that subplot settings are opened to a way that is more discoverable and that doesn't interfere with the right-click functions of matplotlib toolbar. -> One idea, add a button to the interactive toolbar that you have to click first then you click the subplot. (downside, more clicking.) Other idea, ctrl+click? Downside, not discoverable, but could add a thing to the plot explaining it.
- figure out a way to re-grid the particle histograms when zooming. -> This isn't really the best idea, so I'm going to scrap it. I think 2d histograms are problematic anyway... The best way to really make these phase plots would be through some sort of kernel density estimation of the density. Downside: computationally expensive, not the easiest to implement.
- more plot types-> not sure exactly what all of the use cases of Tristan are. Hopefully people will feel comfortable in adding their own in the future.