FerroelectricMaker

class atomate2.vasp.flows.ferroelectric.FerroelectricMaker(name='ferroelectric', nimages=8, relax_maker=<factory>, lcalcpol_maker=<factory>)[source]

Bases: Maker

Maker to calculate polarization of a polar material.

Parameters:
  • name (str) – Name of the flows produced by this maker.

  • nimages (int) – Number of interpolated structures calculated from polar to nonpolar structures

  • relax_maker (BaseVaspMaker or None or tuple) – None to avoid relaxation of both polar and nonpolar structures BaseVaspMaker to relax both structures (default) tuple of BaseVaspMaker and None to control relaxation for each structure

  • lcalcpol_maker (BaseVaspMaker) – Vasp maker to compute the polarization of each structure

make(polar_structure, nonpolar_structure, prev_vasp_dir=None)[source]

Make flow to calculate the polarization.

Parameters:
  • polar_structure (.Structure) – A pymatgen structure of the polar phase.

  • nonpolar_structure (.Structure) – A pymatgen structure of the nonpolar phase.

  • prev_vasp_dir (str or Path or None) – A previous vasp calculation directory to use for copying outputs.

Return type:

Flow