class QPanda::ChemiQ

Overview

ChemiQ Algorithm class. More...

Detailed Documentation

ChemiQ Algorithm class.

Methods

Initialize the quantum chemistry calculation.

Parameters:

std::string The dir of the psi4 chemistry calculation package

Finalize the quantum chemistry calculation.

Set the molecular model to calculate separated by commas('

') between atoms.

Parameters:

std::string molecule model

Setup molecular models, separated by semicolons(';') and separated by commas(',') between atoms.

Parameters:

std::string molecule model

Set the molecular model to calculate.

Parameters:

vector_s molecule model

See also:

vector_s

Set the multiplicity of the molecular model.

Parameters:

int multiplicity

Set the charge of the molecular model.

Parameters:

int charge

Set the calculation basis.

Parameters:

std::string basis

set Eq Tolerance

Parameters:

double the val of Tolerance

Set the transform type from Fermion operator to Pauli operator.

Parameters:

TransFormType transform type

See also:

TransFormType

Set the ucc type to contruct the Fermion operator.

Parameters:

UccType ucc type

See also:

UccType

Set the optimizer type.

Parameters:

OptimizerType optimizer type

See also:

OptimizerType

Set the optimizer iteration number.

Parameters:

size_t iteration number

Set the optimizer function callback number.

Parameters:

size_t function callback number

Set the optimizer xatol.It is the Absolute error in xopt between iterations that is acceptable for convergence.

Parameters:

double absolute error between iterations

Set the optimizer fatol.It is the Absolute error in func(xopt) between iterations that is acceptable for convergence.

Parameters:

double absolute error between func(xopt)

Whether to print the optimized log to the terminal.

Parameters:

bool enable

Set the learing rate when using Gradient optimizer.

Parameters:

double learing rate

Set the evolution time when doing hamiltonian simulation.

Parameters:

double evolution time

Set the hamiltonian simulation slices (e^iAt/n*e^iBt/n)^n, n is the slices.

Parameters:

double hamiltonian simulation slices

Set the directory to save the calculated data. If it's a not exist dir data will not be saved.

Parameters:

std::string dir

Set the quantum machine type.

Parameters:

QMachineType quantum machine type

See also:

QMachineType

Set random default optimizer paramter.

Parameters:

bool enable

Set the default optimizer paramter by the given paramter.

Parameters:

vecotr_d default paramter

See also:

vector_d

Set to get hamiltonian from file.

Parameters:

bool enable

Set hamiltonian generation only.

Parameters:

bool enable

get qubits num with the above config.

Returns:

int -1:means failed.

exec molecule calculate.

Returns:

bool true:success; false:failed

get last error.

Returns:

std::string last error

get calculated energies of the molecules.

Returns:

vector_d energies