-
Notifications
You must be signed in to change notification settings - Fork 15
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 vispy plotting of crystal structure to pyspinw #161
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #161 +/- ##
==========================================
+ Coverage 40.48% 40.51% +0.02%
==========================================
Files 240 240
Lines 15979 15981 +2
==========================================
+ Hits 6469 6474 +5
+ Misses 9510 9507 -3 ☔ View full report in Codecov by Sentry. |
Use PyQt5 backend version used in mantid (although allow patch verisons above) and therefore compatible with IDAaaS
a04e7b4
to
13a992f
Compare
Support atoms, exchange type bonds and magnetic moments
2c1d0b6
to
bf14f4a
Compare
Supports DM bonds now - but think I need to get the arrows to terminate before entering the atom marker.
|
Calling sw_atomdata required an API change - passing the matlab caller to the init
Does not support 2D polygons yet
And put hull calculation in seperate function
b68e350
to
50ed59f
Compare
Also added tolerance to _remove_points_outside_extent and increased supercell used to get vertices of polyhedra
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.
Looks good, just one major bug due to the "mutable default arguments" that needs to be changed... The other comments are suggestions!
Use kwarg instead of name-value pairs when calling matlab functions
First step in being able to stop need to copy atoms ove rmany unit cells
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.
Works well and seems to run a bit faster for large supercells.
Thanks. Plotting things as a single mesh seems to have speed up by a factor of 2-3x. Plotting a 5x5x5 supercell of the |
c8b801c
to
c7c0f9c
Compare
Class to plot supercells with atoms, bonds and magnetic structures (in rotating frame representation only - i.e. from
spinw.magstr
) instantiated with aspinw
objectTo Test
Test the following systems with multiple and non-integer unit cells along different direction.
(1) Plot magnetic structure (and rotation plane of moment) of a triangular AFM over multiple unit cells
(2) Plot single-ion anisotropy ellipsoid (example from tutorial 32)
(3) Plot multiple DM bonds (example taken from tutorial 32)
(4) Plot unit cell with no bonds, but different sized atoms (and atoms of same type with different labels)
(5) Add polyhedra to
luvo
example above like so(6) Plot
luvo
with a complicated-ish magnetic structure (and compare to existing MATLAB)(7) Plot 2D polygons in 3D
(8) Any other systems you can think of!
Fixes #150