ipyvasp 0.9.90__py2.py3-none-any.whl → 0.9.91__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ipyvasp/_version.py +1 -1
- ipyvasp/widgets.py +20 -4
- {ipyvasp-0.9.90.dist-info → ipyvasp-0.9.91.dist-info}/METADATA +2 -2
- {ipyvasp-0.9.90.dist-info → ipyvasp-0.9.91.dist-info}/RECORD +8 -8
- {ipyvasp-0.9.90.dist-info → ipyvasp-0.9.91.dist-info}/LICENSE +0 -0
- {ipyvasp-0.9.90.dist-info → ipyvasp-0.9.91.dist-info}/WHEEL +0 -0
- {ipyvasp-0.9.90.dist-info → ipyvasp-0.9.91.dist-info}/entry_points.txt +0 -0
- {ipyvasp-0.9.90.dist-info → ipyvasp-0.9.91.dist-info}/top_level.txt +0 -0
ipyvasp/_version.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "0.9.
|
|
1
|
+
__version__ = "0.9.91"
|
ipyvasp/widgets.py
CHANGED
|
@@ -100,6 +100,7 @@ def fix_signature(cls):
|
|
|
100
100
|
cls.__signature__ = inspect.signature(cls.__init__)
|
|
101
101
|
return cls
|
|
102
102
|
|
|
103
|
+
@fix_signature
|
|
103
104
|
class Files:
|
|
104
105
|
"""Creates a Batch of files in a directory recursively based on glob pattern or given list of files.
|
|
105
106
|
This is a boilerplate abstraction to do analysis in multiple calculations simultaneously.
|
|
@@ -675,8 +676,9 @@ class BandsWidget(VBox):
|
|
|
675
676
|
description="Style", options=["plotly_white", "plotly_dark"]
|
|
676
677
|
)
|
|
677
678
|
self._click = Dropdown(description="Click", options=["None", "vbm", "cbm"])
|
|
678
|
-
self._ktcicks = Text(description="kticks")
|
|
679
|
+
self._ktcicks = Text(description="kticks", tooltip="0 index maps to minimum value of kpoints slider.")
|
|
679
680
|
self._brange = ipw.IntRangeSlider(description="bands",min=1, max=1) # number, not index
|
|
681
|
+
self._krange = ipw.IntRangeSlider(description="kpoints",min=0, max=1,value=[0,1], tooltip="Includes non-zero weight kpoints")
|
|
680
682
|
self._ppicks = PropsPicker(
|
|
681
683
|
on_button_click=self._update_graph, on_selection_changed=self._warn_update
|
|
682
684
|
)
|
|
@@ -690,6 +692,7 @@ class BandsWidget(VBox):
|
|
|
690
692
|
free_widgets=[
|
|
691
693
|
self._tsd,
|
|
692
694
|
self._brange,
|
|
695
|
+
self._krange,
|
|
693
696
|
self._ktcicks,
|
|
694
697
|
ipw.HTML("<hr/>"),
|
|
695
698
|
self._ppicks,
|
|
@@ -702,6 +705,7 @@ class BandsWidget(VBox):
|
|
|
702
705
|
self._tsd.observe(self._change_theme, "value")
|
|
703
706
|
self._click.observe(self._click_save_data, "value")
|
|
704
707
|
self._ktcicks.observe(self._warn_update, "value")
|
|
708
|
+
self._krange.observe(self._set_krange, "value")
|
|
705
709
|
self._brange.observe(self._warn_update, "value")
|
|
706
710
|
|
|
707
711
|
@property
|
|
@@ -722,9 +726,17 @@ class BandsWidget(VBox):
|
|
|
722
726
|
vp.Vasprun(path) if path.parts[-1].endswith('xml') else vp.Vaspout(path)
|
|
723
727
|
).bands
|
|
724
728
|
self._ppicks.update(self.bands.source.summary)
|
|
725
|
-
|
|
729
|
+
|
|
730
|
+
self._krange.max = self.bands.source.summary.NKPTS - 1
|
|
731
|
+
self._krange.tooltip = f"Includes {self.bands.source.get_skipk()} non-zero weight kpoints"
|
|
732
|
+
self.bands.source.set_skipk(0) # full range to view for slider flexibility after fix above
|
|
733
|
+
|
|
734
|
+
self._kwargs['kpairs'] = [self._krange.value,]
|
|
735
|
+
if (ticks := ", ".join(
|
|
726
736
|
f"{k}:{v}" for k, v in self.bands.get_kticks()
|
|
727
|
-
)
|
|
737
|
+
)): # Do not overwrite if empty
|
|
738
|
+
self._ktcicks.value = ticks
|
|
739
|
+
|
|
728
740
|
self._brange.max = self.bands.source.summary.NBANDS
|
|
729
741
|
if self.bands.source.summary.LSORBIT:
|
|
730
742
|
self._click.options = ["None", "vbm", "cbm", "so_max", "so_min"]
|
|
@@ -781,7 +793,7 @@ class BandsWidget(VBox):
|
|
|
781
793
|
for vs in self._ktcicks.value.split(",")
|
|
782
794
|
]
|
|
783
795
|
kticks = [(int(vs[0]), vs[1]) for vs in hsk if len(vs) == 2] or None
|
|
784
|
-
self._kwargs = {"kticks": kticks, # below numbers instead of index and full shown range
|
|
796
|
+
self._kwargs = {**self._kwargs, "kticks": kticks, # below numbers instead of index and full shown range
|
|
785
797
|
"bands": range(self._brange.value[0] - 1, self._brange.value[1]) if self._brange.value else None}
|
|
786
798
|
|
|
787
799
|
if self._ppicks.projections:
|
|
@@ -814,6 +826,10 @@ class BandsWidget(VBox):
|
|
|
814
826
|
def _change_theme(self, change):
|
|
815
827
|
self._fig.layout.template = self._tsd.value
|
|
816
828
|
|
|
829
|
+
def _set_krange(self, change):
|
|
830
|
+
self._kwargs["kpairs"] = [self._krange.value,]
|
|
831
|
+
self._warn_update(None) # Update warning
|
|
832
|
+
|
|
817
833
|
def _click_save_data(self, change=None):
|
|
818
834
|
def _show_and_save(data_dict):
|
|
819
835
|
self._interact.output_widget.clear_output(wait=True) # Why need again?
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: ipyvasp
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.91
|
|
4
4
|
Summary: A processing tool for VASP DFT input/output processing in Jupyter Notebook.
|
|
5
5
|
Home-page: https://github.com/massgh/ipyvasp
|
|
6
6
|
Author: Abdul Saboor
|
|
@@ -20,7 +20,7 @@ Requires-Dist: scipy ==1.9.1
|
|
|
20
20
|
Requires-Dist: ipywidgets >=8.0.4
|
|
21
21
|
Requires-Dist: pillow >=9.3.0
|
|
22
22
|
Requires-Dist: pandas ==1.4.4
|
|
23
|
-
Requires-Dist: plotly ==
|
|
23
|
+
Requires-Dist: plotly ==6.0.1
|
|
24
24
|
Requires-Dist: requests ==2.28.1
|
|
25
25
|
Requires-Dist: typer ==0.9.0
|
|
26
26
|
Provides-Extra: extra
|
|
@@ -2,7 +2,7 @@ ipyvasp/__init__.py,sha256=5kXMrPVov-R2ljnMgmUSkvIGUx1jf-tSyq64DVh-eXM,1422
|
|
|
2
2
|
ipyvasp/__main__.py,sha256=eJV1TZSiT8mC_VqAeksNnBI2I8mKMiPkEIlwikbtOjI,216
|
|
3
3
|
ipyvasp/_enplots.py,sha256=D38paN8zqZgluNAwmCwcocd7-_h_T0HTGolI1eBkDes,37484
|
|
4
4
|
ipyvasp/_lattice.py,sha256=kOseNCIWt-VCnkhFQZEcsXhyNYobjfqNfAl3seXHiVU,105584
|
|
5
|
-
ipyvasp/_version.py,sha256
|
|
5
|
+
ipyvasp/_version.py,sha256=UDaEZasuen4In5EhCaJLf6DzeM_GV9fv3tICx6s5Yuk,24
|
|
6
6
|
ipyvasp/bsdos.py,sha256=m7hVs4xfDZeRO1wBniOUHCP1MiPI1X09gvuDfKGUBt8,32143
|
|
7
7
|
ipyvasp/cli.py,sha256=aWFEVhNmnW8eSOp5uh95JaDwLQ9K9nlCQcbnOSuhWgw,6844
|
|
8
8
|
ipyvasp/evals_dataframe.py,sha256=KWbkvQJSyXeTSG6LJGcZKs0s5-tor5uPee2P8FJd7vs,20759
|
|
@@ -11,15 +11,15 @@ ipyvasp/misc.py,sha256=ItSsG_aWiQZNRXM2F23atmNVdedyXFYtoShflYRvzOU,2645
|
|
|
11
11
|
ipyvasp/potential.py,sha256=tzA73c5lkp6ahLSJchMrU043-QWaOV0nIOUA7VMmfKQ,11408
|
|
12
12
|
ipyvasp/surface.py,sha256=MjE5oB0wW6Pca_C-xu8rN6OMH7lUEeNPNyM7Kz_Im-8,23766
|
|
13
13
|
ipyvasp/utils.py,sha256=joImNDyjpe4T3lrw738X3I3qA1-RysyYotJwlN9_z0w,17510
|
|
14
|
-
ipyvasp/widgets.py,sha256=
|
|
14
|
+
ipyvasp/widgets.py,sha256=RUp9K6GOA7lOCJYJkpuUmje5e9bL5Z-nNG_XpqxsAq0,50083
|
|
15
15
|
ipyvasp/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
16
16
|
ipyvasp/core/parser.py,sha256=0EySeY5tIqJr-aBK_tJn4GfybV_-3OTBchXBj_cv7-k,39811
|
|
17
17
|
ipyvasp/core/plot_toolkit.py,sha256=V-IQo7MrOhmNCGpWHIMtV04TmmubgFvGgH_yd4YmoX4,36158
|
|
18
18
|
ipyvasp/core/serializer.py,sha256=v0ma4htirybtQo_wFhIEjkRoZMQk9ETDz85iloaq3YY,38427
|
|
19
19
|
ipyvasp/core/spatial_toolkit.py,sha256=dXowREhiFzBvvr5f_bApzFhf8IzjH2E2Ix90oCBUetY,14885
|
|
20
|
-
ipyvasp-0.9.
|
|
21
|
-
ipyvasp-0.9.
|
|
22
|
-
ipyvasp-0.9.
|
|
23
|
-
ipyvasp-0.9.
|
|
24
|
-
ipyvasp-0.9.
|
|
25
|
-
ipyvasp-0.9.
|
|
20
|
+
ipyvasp-0.9.91.dist-info/LICENSE,sha256=F3SO5RiAZOMfmMGf1KOuk2g_c4ObvuBJhd9iBLDgXoQ,1263
|
|
21
|
+
ipyvasp-0.9.91.dist-info/METADATA,sha256=fHckxNKxE3zz13QQtPgxbfxJ8v2jZ7T30ZRMkhJP4OU,2420
|
|
22
|
+
ipyvasp-0.9.91.dist-info/WHEEL,sha256=iYlv5fX357PQyRT2o6tw1bN-YcKFFHKqB_LwHO5wP-g,110
|
|
23
|
+
ipyvasp-0.9.91.dist-info/entry_points.txt,sha256=C7m0Sjmr14wFjflCkWXLzr5N6-cQj8uJC9n82mUtzt8,44
|
|
24
|
+
ipyvasp-0.9.91.dist-info/top_level.txt,sha256=ftziWlMWu_1VpDP1sRTFrkfBnWxAi393HYDVu4wRhUk,8
|
|
25
|
+
ipyvasp-0.9.91.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|