Skip to main content
IBM Quantum Platform
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

PotentialBase

class PotentialBase(molecule)

GitHub

Bases: qiskit.chemistry.algorithms.pes_samplers.potentials.potential_base.EnergySurfaceBase, qiskit.chemistry.algorithms.pes_samplers.potentials.potential_base.VibronicStructureBase

Class to hold prescribed 1D potentials (e.g. Morse/Harmonic) over a degree of freedom.


Methods

dissociation_energy

abstract PotentialBase.dissociation_energy(scaling=1.0)

Returns the dissociation energy (scaled by ‘scaling’)

Return type

float

eval

abstract PotentialBase.eval(x)

After fitting the data to the fit function, predict the energy at a point x.

Parameters

x (float) – value to evaluate surface in

Return type

float

Returns

value of surface in point x

fit

abstract PotentialBase.fit(xdata, ydata, initial_vals=None, bounds_list=None)

Fits surface to data

Parameters

  • xdata (List[float]) – x data to be fitted
  • ydata (List[float]) – y data to be fitted
  • initial_vals (Optional[List[float]]) – Initial values for fit parameters. None for default. Order of parameters is d_e, alpha, r_0 and m_shift (see fit_function implementation)
  • bounds_list (Optional[Tuple[List[float], List[float]]]) – Bounds for the fit parameters. None for default. Order of parameters is d_e, alpha, r_0 and m_shift (see fit_function implementation)

Return type

None

get_equilibrium_geometry

abstract PotentialBase.get_equilibrium_geometry(scaling=1.0)

Get the equilibrium energy.

Returns the geometry for the minimal energy (scaled by ‘scaling’) Default units (scaling=1.0) are Angstroms. Scale by 1E-10 to get meters.

Parameters

scaling (float) – scaling factor

Return type

float

Returns

equilibrium geometry

get_maximum_trusted_level

PotentialBase.get_maximum_trusted_level(n=0)

Returns the maximum energy level for which the particular implementation still provides a good approximation of reality. Default value of 100. Redefined where needed (see e.g. Morse).

Parameters

n (int) – vibronic mode

Return type

float

Returns

maximum_trusted_level setted

get_minimal_energy

abstract PotentialBase.get_minimal_energy(scaling=1.0)

Get the minimal energy.

Returns the value of the minimal energy (scaled by ‘scaling’) Default units (scaling=1.0) are J/mol. Scale appropriately for Hartrees.

Parameters

scaling (float) – scaling factor

Return type

float

Returns

minimum energy

get_num_modes

PotentialBase.get_num_modes()

This (1D) potential represents a single vibrational mode

Return type

int

get_trust_region

PotentialBase.get_trust_region()

The potential will usually be well-defined (even if not useful) for arbitrary x so we return a fairly large interval here. Redefine in derived classes if needed.

Return type

Tuple[float, float]

update_molecule

PotentialBase.update_molecule(molecule)

Wipe state if molecule changes, and check validity of molecule for potential.

Parameters

molecule (Molecule) – chemistry molecule

Return type

Molecule

Returns

molecule used

vibrational_energy_level

abstract PotentialBase.vibrational_energy_level(n)

Returns the n-th vibrational energy level for a given mode.

Parameters

n (int) – number of vibrational mode

Return type

float

Returns

n-th vibrational energy level for a given mode

Was this page helpful?
Report a bug or request content on GitHub.