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

Add VTK Export #98

Merged
merged 6 commits into from
Jul 20, 2023
Merged

Add VTK Export #98

merged 6 commits into from
Jul 20, 2023

Conversation

Lazersmoke
Copy link
Contributor

This enables users to export histograms and Systems (as dipoles + S(Q) intensity histograms) to a ParaView-compatible format.

This is about as far as I'm planning on pushing the integration here, since ParaView is a bit clunky for our use case, and absolutely does not handle 4D whatsoever. Mainly the volumetric viewing (& slicing, not demo'd here) are quite nice.

@kbarros
Copy link
Member

kbarros commented Jul 20, 2023

Thanks, this looks well put together.

Is the main purpose of this to do volumetric rendering? If so, I wonder whether GLMakie could serve a similar purpose? It provides a few different rendering algorithms: https://docs.makie.org/stable/examples/plotting_functions/volume/
An advantage of having it ourselves in Sunny is that we can then draw the 1st BZ using Brillouin.jl, and add more features later.

Another consideration is space requirements for the images used in the docs. Most of them are ~20k, which is great. The Paraview render is ~300k, which starts to get large enough maybe we should think carefully. I bring this up because (I think) once this gets committed, the images will always need be downloaded on git clone, even if we later remove the feature. (Is that correct?)

@Lazersmoke
Copy link
Contributor Author

I've switched it out for a smaller .jpg. If we squash when we merge, the larger file will not be in the commit history of the main repo.

Re: BZ plotting and more, it's actually pretty straightforward to add extra structures/data like that to the exported file (few LOC each feature, supposing Brillouin.jl can export a list of vertices for example). And once it's in the ParaView universe, all possible features of ParaView [there are many] can be unleashed without us writing any code (i.e. it's useful for people who already have their tooling in place to get their hands on Sunny data in a standard format)

Certainly, GLMakie can still be used, and is closer to interactive, it's just less established/featureful

@kbarros
Copy link
Member

kbarros commented Jul 20, 2023

Looks good to me. Merge whenever you think it's ready.

@Lazersmoke Lazersmoke merged commit ede0041 into SunnySuite:main Jul 20, 2023
2 checks passed
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

Successfully merging this pull request may close these issues.

2 participants