pybec.analysis

analysis.py Module for manipulating data from QuantumEspresso Output after Parsing

Contains all functions for calculating Born Effective Charges

Functions

apply_chunks(interpolator, grid_x, grid_y, ...)

apply_kriging_chunks(krig_interp, grid_x, ...)

ave_BEC_dict(elements, BECs)

Create a dictionary where the keys are the element symbols and the values are the average Born Effective Charges for that element.

correct_jumps(arr[, x, jump_quantum, ...])

Correct discontinuities in trajectory

correct_jumps_between_arr(arr1, arr2, ...)

Shift the start value of one array to align with the end value of another.

dipole_field(R, p_vec, centroid)

find_jumps(arr[, thresh])

Detect where the trajectory has anomolous values.

find_np_atoms(df_matrix, df_np)

gen_BEC_df(no_efield, clamped_ion, xyz[, ...])

Generate a pandas dataframe containing the Born Effective Charges of the ions in the unit cell

get_BECs(for_0, for_1, e_field, ...)

Calculate the born effective charges for an array of ions.

get_centroid(atoms_dict[, key])

Calculate the centroid of the atoms of a certian element in a unit cell.

get_dipole_field(coords[, dipole_loc, ...])

Returns the electric field from a point dipole.

get_dipole_field_displaced(coords[, ...])

Returns the electric field from a point dipole.

get_dist_to_centroid(atoms_dict, centroid)

Calculate the centroid of the atoms of a certian element in a unit cell.

get_field_along_d(field_dict[, ...])

Calculate the electric field along a specific direction from the FE results.

get_full_pol(directory)

Gets the trajectory of the polarization.

get_spherical_coords_to_centroid(atoms_dict, ...)

Calculate the centroid of the atoms of a certian element in a unit cell.

grid_krig_execute(krig_execute)

infer_e_field(for_0, for_1, z_exp[, ...])

Calculate the born effective charges for an array of ions.

infer_local_field(for_0, for_1, z_exp[, ...])

Calculate the born effective charges for an array of ions.

interp_3d(coord_arr, val_arr[, resolution, ...])

krige_grid_search(BEC_df)

pad_cell(cell_df, lattice[, pad])

point_in_hull(point, hull[, tolerance, inc])

https://stackoverflow.com/questions/16750618/whats-an-efficient-way-to-find-if-a-point-lies-in-the-convex-hull-of-a-point-cl/42165596#42165596

points_in_hull(points, hull[, tolerance, inc])

select_cell_segment(cell_df, lattice, frac_dir)

Select a portion of the unit cell along a given set of directions.

to_Bohr(coords)

Convert a coordinate dictionary from Angstroms to Bohr

volume(lattice)

Calculate the volume of a 3D unit cell.