# qiskit.aqua.components.initial_states.VarFormBased¶

class VarFormBased(var_form, params)[source]

The variational form based initial state.

This can been useful, say for example, if you have been doing experiments using a VariationalForm and have parameters for a state of interest of that form. Using this class it can then be turned into an initial state for use elsewhere.

As an example this notebook shows where the variational form’s state, from a VQE run, is then used as an initial state for IQPE by using this class.

Parameters
• var_form (Union[VariationalForm, QuantumCircuit]) – The variational form.

• params (Union[List[float], ndarray, Dict[Parameter, float]]) – Parameters for the variational form.

Raises

ValueError – Invalid input

__init__(var_form, params)[source]
Parameters
• var_form (Union[VariationalForm, QuantumCircuit]) – The variational form.

• params (Union[List[float], ndarray, Dict[Parameter, float]]) – Parameters for the variational form.

Raises

ValueError – Invalid input

Methods

 __init__(var_form, params) type var_form Union[VariationalForm, QuantumCircuit] construct_circuit([mode, register]) Construct the statevector of desired initial state.
construct_circuit(mode='circuit', register=None)[source]

Construct the statevector of desired initial state.

Parameters
• mode (string) – vector or circuit. The vector mode produces the vector. While the circuit constructs the quantum circuit corresponding that vector.

• register (QuantumRegister) – qubits for circuit construction.

Returns

statevector.

Return type

QuantumCircuit or numpy.ndarray

Raises
• RuntimeError – invalid input for mode

• AquaError – when mode is not ‘vector’ or ‘circuit’.