Skip to main content

The Bond valence site energy calculator

Project description

BVlain_logo

BVlain is the module for bond valence site energy calculations and is about to solve tasks related to ionic conductivity of a tracer ion in a crystal structure.

For more details, see documentation.

Installation

!pip install bvlain

Examples

Percolation barriers
from bvlain import Lain

file = '/Users/artemdembitskiy/Downloads/LiFePO4.cif'
calc = Lain(verbose = False)
st = calc.read_file(file)

params = {'mobile_ion': 'Li1+',    # mobile specie
		  'r_cut': 10.0,           # cutoff for interaction between the mobile species and framework
		  'resolution': 0.2,	   # distance between the grid points
		  'k': 100                 # maximum number of neighbors to be collected for each point
}
_ = calc.bvse_distribution(**params)
energies = calc.percolation_barriers(encut = 5.0)
for key in energies.keys():
    print(f'{key[-2:]} percolation barrier is {round(energies[key], 4)} eV')
1D percolation barrier is 0.4395 eV
2D percolation barrier is 3.3301 eV
3D percolation barrier is 3.3594 eV
Percolation radii
from bvlain import Lain

file = '/Users/artemdembitskiy/Downloads/LiFePO4.cif'
calc = Lain(verbose = False)
st = calc.read_file(file)

params = {'mobile_ion': 'Li1+',    # mobile specie
		  'r_cut': 10.0,           # cutoff for interaction between the mobile species and framework
		  'resolution': 0.2,	   # distance between the grid points
}
_ = calc.void_distribution(**params)
radii = calc.percolation_radii()
for key in radii.keys():
    print(f'{key[-2:]} percolation barrier is {round(radii[key], 4)} angstrom')
1D percolation barrier is 0.3943 angstrom
2D percolation barrier is 0.2957 angstrom
3D percolation barrier is 0.1972 angstrom
Save volumetric data for visualization (.grd or .cube)
from bvlain import Lain

file = '/Users/artemdembitskiy/Downloads/LiFePO4.cif'
calc = Lain(verbose = False)
st = calc.read_file(file)

params = {'mobile_ion': 'Li1+',    # mobile specie
		  'r_cut': 10.0,           # cutoff for interaction between the mobile species and framework
		  'resolution': 0.2,	   # distance between the grid points
		  'k': 100                 # maximum number of neighbors to be collected for each point
}
_ = calc.bvse_distribution(**params)
_ = calc.void_distribution(**params)

calc.write_grd(file + '_bvse', task = 'bvse')  # saves .grd file
calc.write_cube(file + '_void', task = 'void') # save .cube file
Bond valence sum mismatch
from bvlain import Lain

file = '/Users/artemdembitskiy/Downloads/LiFePO4.cif'
calc = Lain(verbose = False)
st = calc.read_file(file)
dataframe = calc.mismatch(r_cut = 3.5)

For more examples, see documentation.

The library is under active development and it is not guaranteed that there are no bugs. If you observe not expected results, errors, please report an issue at github.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bvlain-0.24.1.tar.gz (56.1 kB view hashes)

Uploaded Source

Built Distribution

bvlain-0.24.1-py3-none-any.whl (56.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page