Skip to content

Repository files navigation

IPyVASP

DOI Binder PyPI Downloads

An VASP-based DFT pre and post processing tool.

Install

Currently the package is being built and not stable. If you want to use development version, install this way:(recommended to install in a virtual environment)

git clone https://github.com/massgh/ipyvasp.git
cd ipyvasp
pip install -e .

Documentataion

Showcase Examples

Plot 2D BZ layer on top of 3D!

import ipyvasp as ipv
pos =  ipv.POSCAR('FCC POSACR FILE').set_zdir([1,1,1])
ax = pos.splot_bz(vectors = None,color='skyblue',lw=0.2,alpha=0.2,fill=True)

kpts = [[0,-1/2,0],[0,0,0]]
pos.splot_kpath(kpts,labels=[str(k) for k in kpts],zorder=-1) # At 3D BZ

pos2 = pos.transform(lambda a,b,c: (a-c, b-c, a+b+c)) # 111 plane
pos2.splot_bz('xy',ax=ax,zoffset=0.15,vectors=None,color='navy')

kp2 = pos.bz.map_kpoints(pos2.bz, kpts)
pos2.splot_kpath(kp2,labels=[str(k) for k in kp2.round(1).tolist()],color='navy',fmt_label=lambda lab: (lab+'\n', dict(va='center',color='navy')),zorder=3) 

ax.set_axis_off()

BZ

Interactively select bandstructure path by clicking on high symmetry points on plot!

KP

Apply operations on POSCAR and simultaneously view using plotly's FigureWidget in Jupyterlab side by side.

snip

BandsWidget More coming soon! You can test these examples on Binder.

About

See latest documentation below:

Topics

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages