ipyvasp 1.0.7__tar.gz → 1.0.9__tar.gz

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.
Files changed (30) hide show
  1. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/PKG-INFO +1 -1
  2. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/_lattice.py +4 -4
  3. ipyvasp-1.0.9/ipyvasp/_version.py +1 -0
  4. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/bsdos.py +2 -2
  5. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/core/parser.py +3 -14
  6. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/core/plot_toolkit.py +1 -1
  7. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/evals_dataframe.py +1 -1
  8. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/widgets.py +6 -8
  9. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp.egg-info/PKG-INFO +1 -1
  10. ipyvasp-1.0.7/ipyvasp/_version.py +0 -1
  11. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/LICENSE +0 -0
  12. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/README.md +0 -0
  13. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/__init__.py +0 -0
  14. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/__main__.py +0 -0
  15. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/_enplots.py +0 -0
  16. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/cli.py +0 -0
  17. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/core/__init__.py +0 -0
  18. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/core/serializer.py +0 -0
  19. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/core/spatial_toolkit.py +0 -0
  20. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/lattice.py +0 -0
  21. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/misc.py +0 -0
  22. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/potential.py +0 -0
  23. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp/utils.py +0 -0
  24. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp.egg-info/SOURCES.txt +0 -0
  25. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp.egg-info/dependency_links.txt +0 -0
  26. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp.egg-info/entry_points.txt +0 -0
  27. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp.egg-info/requires.txt +0 -0
  28. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/ipyvasp.egg-info/top_level.txt +0 -0
  29. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/setup.cfg +0 -0
  30. {ipyvasp-1.0.7 → ipyvasp-1.0.9}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ipyvasp
3
- Version: 1.0.7
3
+ Version: 1.0.9
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
@@ -645,7 +645,7 @@ def get_kpath(
645
645
  Reciprocal basis 3x3 array to use for calculating uniform points.
646
646
 
647
647
 
648
- If `outfile = None`, KPONITS file content is printed.
648
+ If `outfile = None`, a tuple of header and kpoints array (Nx3) is returned.
649
649
  """
650
650
  if isinstance(kpoints, str):
651
651
  kpoints = _str2kpoints(kpoints)
@@ -769,7 +769,7 @@ def get_kpath(
769
769
  with open(outfile, "w", encoding="utf-8") as f: # allow unicode
770
770
  f.write(out_str)
771
771
  else:
772
- print(out_str)
772
+ return top_str, points # return points as well for any processing by user.
773
773
 
774
774
 
775
775
  # Cell
@@ -804,7 +804,7 @@ def get_kmesh(
804
804
  Default True, include endpoints in mesh at edges away from origin.
805
805
 
806
806
 
807
- If `outfile = None`, KPOINTS file content is printed.
807
+ If `outfile = None`, a tuple of header and kpoints array (Nx3) is returned.
808
808
 
809
809
  """
810
810
  if len(args) not in [1, 3]:
@@ -882,7 +882,7 @@ def get_kmesh(
882
882
  with open(outfile, "w", encoding="utf-8") as f:
883
883
  f.write(out_str)
884
884
  else:
885
- print(out_str)
885
+ return top_str, points # return points as well for any processing by user.
886
886
 
887
887
 
888
888
  # Cell
@@ -0,0 +1 @@
1
+ __version__ = "1.0.9"
@@ -270,7 +270,7 @@ class Bands(_BandsDosBase):
270
270
 
271
271
  Parameters
272
272
  ----------
273
- source : instance of `ipyvasp.DataSource` such as `ipyvasp.Vasprun` or `ipyvasp.Vaspout`.
273
+ source : instance of `ipyvasp.DataSource` such as `ipyvasp.Vasprun` or a user defined subclass.
274
274
  You can define your own class to parse data with same attributes and methods by subclassing `ipyvasp.DataSource`.
275
275
  """
276
276
 
@@ -627,7 +627,7 @@ class DOS(_BandsDosBase):
627
627
 
628
628
  Parameters
629
629
  ----------
630
- source : instance of `ipyvasp.DataSource` such as `ipyvasp.Vasprun` or `ipyvasp.Vaspout`.
630
+ source : instance of `ipyvasp.DataSource` such as `ipyvasp.Vasprun` or a user defined subclass.
631
631
  You can define your own class to parse data with same attributes and methods by subclassing `ipyvasp.DataSource`.
632
632
  """
633
633
 
@@ -1,4 +1,4 @@
1
- __all__ = ["Vasprun", "Vaspout", "minify_vasprun", "xml2dict","read"]
1
+ __all__ = ["Vasprun", "minify_vasprun", "xml2dict","read"]
2
2
 
3
3
  import re
4
4
  from io import StringIO
@@ -14,7 +14,8 @@ from . import serializer
14
14
 
15
15
  class DataSource:
16
16
  """Base class for all data sources. It provides a common interface to access data from different sources.
17
- Subclass it to get data from a source and implement the abstract methods."""
17
+ Subclass it to get data from a source such as recently implemented `vaspout.h5` file and implement the required
18
+ methods with same output as done in Vasprun class."""
18
19
 
19
20
  def __init__(self, path, skipk=None):
20
21
  self._path = Path(path).absolute()
@@ -122,18 +123,6 @@ class DataSource:
122
123
  )
123
124
 
124
125
 
125
- class Vaspout(DataSource):
126
- "Read data from vaspout.h5 file on demand."
127
- # These methods are accessible from parent class, but need here for including in sphinx documentation
128
- get_evals_dataframe = DataSource.get_evals_dataframe
129
- poscar = DataSource.poscar
130
- dos = DataSource.dos
131
- bands = DataSource.bands
132
-
133
- def __init__(self, path, skipk=None):
134
- # super().__init__(path, skipk)
135
- raise NotImplementedError("Vaspout is not implemented yet.")
136
-
137
126
  def read(file, start_match, stop_match=r'\n', nth_match=1, skip_last=False,apply=None):
138
127
  """Reads a part of the file between start_match and stop_match and returns a generator. It is lazy and fast.
139
128
  `start_match` and `stop_match`(default is end of same line) are regular expressions. `nth_match` is the number of occurence of start_match to start reading.
@@ -937,7 +937,7 @@ def plt2text(
937
937
  print(out_str)
938
938
 
939
939
 
940
- def plt2html(plt_fig=None, transparent=True):
940
+ def plt2html(plt_fig=None, transparent=False):
941
941
  """Returns ``ipython.display.HTML(<svg of figure>)``. It clears figure after use. So ``plt.show()`` will not work after this.
942
942
 
943
943
  Parameters
@@ -64,7 +64,7 @@ class EvalsDataFrame(pd.DataFrame):
64
64
  Parameters
65
65
  ----------
66
66
  source : DataSource
67
- Data source to collect data from. Could be ``ipyvasp.Vasprun`` or ``ipyvasp.Vaspout``. Alternatively you can use ``DataSource.get_dataframe`` method to get dataframe directly.
67
+ Data source to collect data from. Could be ``ipyvasp.Vasprun`` or a user defined subclass of ``ipyvasp.DataSource``. Alternatively you can use ``DataSource.get_dataframe`` method to get dataframe directly.
68
68
  spins : list
69
69
  of spin indices [zero based here], In output data frame you will see corresponding spin number based on full data.
70
70
  bands : list
@@ -275,9 +275,9 @@ class Files:
275
275
  "Get KPathWidget instance with these files."
276
276
  return KPathWidget(files = self.with_name('POSCAR'), height = height)
277
277
 
278
- def bands_widget(self, height='450px'):
278
+ def bands_widget(self, height='450px',store_clicks=None):
279
279
  "Get BandsWidget instance with these files."
280
- return BandsWidget(files=self._files, height=height)
280
+ return BandsWidget(files=self._files, height=height, store_clicks=store_clicks)
281
281
 
282
282
  def map(self,func, to_df=False):
283
283
  """Map files to a function that takes path as argument.
@@ -438,7 +438,7 @@ class PropsPicker(VBox): # NOTE: remove New Later
438
438
 
439
439
  Parameters
440
440
  ----------
441
- system_summary : (Vasprun,Vaspout).summary
441
+ system_summary : DataSource.summary such as impelemented in Vasprun.
442
442
  N : int, default is 3, number of projections to pick.
443
443
 
444
444
  You can observe `projections` trait.
@@ -764,9 +764,7 @@ class BandsWidget(_ThemedFigureInteract):
764
764
  @dl.callback('out-data')
765
765
  def _load_data(self, file):
766
766
  if not file: return # First time not available
767
- self._bands = (
768
- vp.Vasprun(file) if file.parts[-1].endswith('xml') else vp.Vaspout(file)
769
- ).bands
767
+ self._bands = vp.Vasprun(file).bands
770
768
  self.params.ppicks.update(self.bands.source.summary)
771
769
  self.params.krange.max = self.bands.source.summary.NKPTS - 1
772
770
  self.params.krange.tooltip = f"Includes {self.bands.source.get_skipk()} non-zero weight kpoints"
@@ -912,7 +910,7 @@ class BandsWidget(_ThemedFigureInteract):
912
910
 
913
911
  @property
914
912
  def source(self):
915
- "Returns data source object such as Vasprun or Vaspout."
913
+ "Returns data source object such as Vasprun or user defined subclass of DataSource."
916
914
  return self.bands.source
917
915
 
918
916
  @property
@@ -962,7 +960,7 @@ class KPathWidget(_ThemedFigureInteract):
962
960
  btns = HBox(children=self.gather('lock','delp', 'theme'), layout=Layout(min_height="24px"))
963
961
  self.set_layout(
964
962
  left_sidebar=['head','file',btns, 'info', 'sm','out-kpt','kpt', 'out-lab', 'lab'],
965
- center=['fig'], footer = ['*out', '!out-lab','!out-kpt'], # all outputs except prefixed with !
963
+ center=['fig'], footer = ['*out!out-(lab|kpt)'], # all outputs except prefixed with !
966
964
  pane_widths=['25em',1,0], pane_heights=[0,1,0], # footer only has uselessoutputs
967
965
  height=height
968
966
  )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ipyvasp
3
- Version: 1.0.7
3
+ Version: 1.0.9
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
@@ -1 +0,0 @@
1
- __version__ = "1.0.7"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes