PiezoelectricTensor

class py4vasp.data.PiezoelectricTensor(raw_data)

Bases: py4vasp.data._base.DataBase

The piezoelectric tensor (second derivatives w.r.t. strain and field)

You can use this class to extract the piezoelectric tensor of a linear response calculation.

Parameters

raw_piezoelectric_tensor (RawPiezoelectricTensor) – Dataclass containing the raw piezoelectric tensor data.

Methods Summary

from_dict(dict_)

Initialize refinement class from data dictionary

from_file([file])

Read the data dictionary from the given file.

print()

Print a string representation of this class to standard output.

read()

Read the ionic and electronic contribution to the piezoelectric tensor into a dictionary.

to_dict()

Read the ionic and electronic contribution to the piezoelectric tensor into a dictionary.

Methods Documentation

classmethod from_dict(dict_)

Initialize refinement class from data dictionary

Parameters

data_dict (dict) – Data dictionary that contains one or more different raw data sources.

classmethod from_file(file=None)

Read the data dictionary from the given file.

You want to use this method if you want to avoid using the Calculation wrapper, for example because you renamed the output of the VASP calculation.

Parameters

file (str or Path or raw.File) – Filename from which the data is extracted. If not present the default filename is used. Alternatively, you can open the file yourself and pass the File object. In that case, you need to take care the file is properly closed again and be aware the generated instance of this class becomes unusable after the file is closed.

Returns

The returned instance handles opening and closing the file for every function called on it, unless a File object in which case this is left to the user.

Return type

DataBase

print()

Print a string representation of this class to standard output.

read()

Read the ionic and electronic contribution to the piezoelectric tensor into a dictionary.

It will combine both terms as the total piezoelectric tensor (relaxed_ion) but also give the pure electronic contribution, so that you can separate the parts.

Returns

The clamped ion and relaxed ion data for the piezoelectric tensor.

Return type

dict

to_dict()

Read the ionic and electronic contribution to the piezoelectric tensor into a dictionary.

It will combine both terms as the total piezoelectric tensor (relaxed_ion) but also give the pure electronic contribution, so that you can separate the parts.

Returns

The clamped ion and relaxed ion data for the piezoelectric tensor.

Return type

dict