PyInterface

Fortran module PyInterface:Containing the methods to start the MPS simulations.

Authors

    1. Jaschke

      1. Wall

Details

The following subroutines / functions are defined for the convergence parameters.

PyInterface_f90.runmps()[source]

fortran-subroutine - August 2017 (dj, update) Run a MPS simulation for a single parameter set.

Arguments

infileCHARACTER(132), OPTIONAL, in

name for the file *Main.nml containing the settings for the simulation. If not given, the first argument from the command line will be taken as filename fo *Main.nlm.

qtidINTEGER, OPTIONAL, in

id for sampling over different realization of the same simulation, e.g. for quantum trajectories. If infile is present, qtid must be present. If infile is read as command line argument, qtid is read as command line argument.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.simulation_mpo()[source]

fortran-subroutine - August 2017 (dj, updated) Run a simulation with the corresponding type of MPO, i.e., mpo.

Arguments

llINTEGER, in

number of sites in the system

neINTEGER, in

number of excited states which should be found during the algorithm.

wait4stateLOGICAL, in

Is set to True for dynamics if several simulations start with the same initial state and those should not be calculated multiple times.

qsINTEGER(*), inout

The quantum numbers for all symmetries.

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

case_staticsINTEGER, in

The following cases are considered: 0 for variational statics, 1 for finite T evolutions, 2 for reading states.

case_dynamicsINTEGER, in

No dynamics corresponds to 0, closed system dynamics to 1, closed system dynamics with QT to 2, LPTN to 3, MPDO to 4.

statics_initialCHARACTER(132), in

Filename for initial guess for statics (ground state). Can replace random guess without symmetry or symmetric guess with quantum numbers.

timeevo_mps_initialCHARACTER(132), in

Filename for initial states represented as MPS.

timeevo_mpdo_initialCHARACTER(132), in

Filename for initial states represented as MPDO.

Details

Fortran checks if a ground state with equivalent settings is already present. The equivalent settings include all parameters which affect the ground state (system size, convergence parameter, Hamiltonian, …), but not the measurements. The measurements are not carried out in the cases where a saved state is found. This is meant primarly to speed-up real-time evolutions from the same initial state.

Source Code

show / hide f90 code
PyInterface_f90.simulation_mpoc()[source]

fortran-subroutine - August 2017 (dj, updated) Run a simulation with the corresponding type of MPO, i.e., mpoc.

Arguments

llINTEGER, in

number of sites in the system

neINTEGER, in

number of excited states which should be found during the algorithm.

wait4stateLOGICAL, in

Is set to True for dynamics if several simulations start with the same initial state and those should not be calculated multiple times.

qsINTEGER(*), inout

The quantum numbers for all symmetries.

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

case_staticsINTEGER, in

The following cases are considered: 0 for variational statics, 1 for finite T evolutions, 2 for reading states.

case_dynamicsINTEGER, in

No dynamics corresponds to 0, closed system dynamics to 1, closed system dynamics with QT to 2, LPTN to 3, MPDO to 4.

statics_initialCHARACTER(132), in

Filename for initial guess for statics (ground state). Can replace random guess without symmetry or symmetric guess with quantum numbers.

timeevo_mps_initialCHARACTER(132), in

Filename for initial states represented as MPS.

timeevo_mpdo_initialCHARACTER(132), in

Filename for initial states represented as MPDO.

Details

Fortran checks if a ground state with equivalent settings is already present. The equivalent settings include all parameters which affect the ground state (system size, convergence parameter, Hamiltonian, …), but not the measurements. The measurements are not carried out in the cases where a saved state is found. This is meant primarly to speed-up real-time evolutions from the same initial state.

Source Code

show / hide f90 code
PyInterface_f90.simulation_qmpo()[source]

fortran-subroutine - August 2017 (dj, updated) Run a simulation with the corresponding type of MPO, i.e., qmpo.

Arguments

llINTEGER, in

number of sites in the system

neINTEGER, in

number of excited states which should be found during the algorithm.

wait4stateLOGICAL, in

Is set to True for dynamics if several simulations start with the same initial state and those should not be calculated multiple times.

qsINTEGER(*), inout

The quantum numbers for all symmetries.

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

case_staticsINTEGER, in

The following cases are considered: 0 for variational statics, 1 for finite T evolutions, 2 for reading states.

case_dynamicsINTEGER, in

No dynamics corresponds to 0, closed system dynamics to 1, closed system dynamics with QT to 2, LPTN to 3, MPDO to 4.

statics_initialCHARACTER(132), in

Filename for initial guess for statics (ground state). Can replace random guess without symmetry or symmetric guess with quantum numbers.

timeevo_mps_initialCHARACTER(132), in

Filename for initial states represented as MPS.

timeevo_mpdo_initialCHARACTER(132), in

Filename for initial states represented as MPDO.

Details

Fortran checks if a ground state with equivalent settings is already present. The equivalent settings include all parameters which affect the ground state (system size, convergence parameter, Hamiltonian, …), but not the measurements. The measurements are not carried out in the cases where a saved state is found. This is meant primarly to speed-up real-time evolutions from the same initial state.

Source Code

show / hide f90 code
PyInterface_f90.simulation_qmpoc()[source]

fortran-subroutine - August 2017 (dj, updated) Run a simulation with the corresponding type of MPO, i.e., qmpoc.

Arguments

llINTEGER, in

number of sites in the system

neINTEGER, in

number of excited states which should be found during the algorithm.

wait4stateLOGICAL, in

Is set to True for dynamics if several simulations start with the same initial state and those should not be calculated multiple times.

qsINTEGER(*), inout

The quantum numbers for all symmetries.

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

case_staticsINTEGER, in

The following cases are considered: 0 for variational statics, 1 for finite T evolutions, 2 for reading states.

case_dynamicsINTEGER, in

No dynamics corresponds to 0, closed system dynamics to 1, closed system dynamics with QT to 2, LPTN to 3, MPDO to 4.

statics_initialCHARACTER(132), in

Filename for initial guess for statics (ground state). Can replace random guess without symmetry or symmetric guess with quantum numbers.

timeevo_mps_initialCHARACTER(132), in

Filename for initial states represented as MPS.

timeevo_mpdo_initialCHARACTER(132), in

Filename for initial states represented as MPDO.

Details

Fortran checks if a ground state with equivalent settings is already present. The equivalent settings include all parameters which affect the ground state (system size, convergence parameter, Hamiltonian, …), but not the measurements. The measurements are not carried out in the cases where a saved state is found. This is meant primarly to speed-up real-time evolutions from the same initial state.

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mps_mpo()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mps_mpoc()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mps_qmpo()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mps_qmpoc()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mpdo_mpo()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mpdo_mpoc()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mpdo_qmpo()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.static_simulation_mpdo_qmpoc()[source]

fortran-subroutine - May 2016 (updated, dj) Find ground and excited states in MPS representation.

Arguments

IOObjTYPE(IOObject), in

Taking care of filename during the simulation.

statics_initialCHARACTER(132), in

If not empty, the initial guess to be load into the ground state search.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mps_mpo()[source]

fortran-subroutine - May 2016 (updated, dj) Evolve a MPS in time according to the Schroedinger equation (closed system or quantum trajectories).

Arguments

qtidINTEGER, OPTIONAL, in

If present, instead of the Schrodinger equation the quantum trajectories are used.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mps_mpoc()[source]

fortran-subroutine - May 2016 (updated, dj) Evolve a MPS in time according to the Schroedinger equation (closed system or quantum trajectories).

Arguments

qtidINTEGER, OPTIONAL, in

If present, instead of the Schrodinger equation the quantum trajectories are used.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mps_qmpo()[source]

fortran-subroutine - May 2016 (updated, dj) Evolve a MPS in time according to the Schroedinger equation (closed system or quantum trajectories).

Arguments

qtidINTEGER, OPTIONAL, in

If present, instead of the Schrodinger equation the quantum trajectories are used.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mps_qmpoc()[source]

fortran-subroutine - May 2016 (updated, dj) Evolve a MPS in time according to the Schroedinger equation (closed system or quantum trajectories).

Arguments

qtidINTEGER, OPTIONAL, in

If present, instead of the Schrodinger equation the quantum trajectories are used.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mpdo_mpo()[source]

fortran-subroutine - September 2017 (updated, dj) Evolve a MPDO in time according to the Lindblad equation.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mpdo_mpoc()[source]

fortran-subroutine - September 2017 (updated, dj) Evolve a MPDO in time according to the Lindblad equation.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mpdo_qmpo()[source]

fortran-subroutine - September 2017 (updated, dj) Evolve a MPDO in time according to the Lindblad equation.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_mpdo_qmpoc()[source]

fortran-subroutine - September 2017 (updated, dj) Evolve a MPDO in time according to the Lindblad equation.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Details

(template defined in PyInterface_include.f90)

Source Code

show / hide f90 code
PyInterface_f90.dynamics_lptn_mpo()[source]

fortran-subroutine - 2018 (dj) Evolve an LPTN in time according to the Lindblad master equation.

Arguments

RhoTYPE(lptnc), inout

Density matrix for time evolution represented as an LPTN.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.dynamics_lptn_mpoc()[source]

fortran-subroutine - 2018 (dj) Evolve an LPTN in time according to the Lindblad master equation.

Arguments

RhoTYPE(lptnc), inout

Density matrix for time evolution represented as an LPTN.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.dynamics_lptn_qmpo()[source]

fortran-subroutine - 2018 (dj) Evolve an LPTN in time according to the Lindblad master equation.

Arguments

RhoTYPE(qlptnc), inout

Density matrix for time evolution represented as an LPTN.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.dynamics_lptn_qmpoc()[source]

fortran-subroutine - 2018 (dj) Evolve an LPTN in time according to the Lindblad master equation.

Arguments

RhoTYPE(qlptnc), inout

Density matrix for time evolution represented as an LPTN.

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_lptn_mpo()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_lptnc_mpoc()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_qlptn_qmpo()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_qlptnc_qmpoc()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_mpdo_mpo()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_mpdoc_mpoc()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_qmpdo_qmpo()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.finiteT_qmpdoc_qmpoc()[source]

fortran-subroutine - Evolve an LPTN in imaginary time representing a cooling process according to the Gibbs distribution.

Arguments

use_h5logical, in

When .true. and HDF5 available, use this format. For false, HDF5 is not used even if available.

Source Code

show / hide f90 code
PyInterface_f90.infinitesimulation_mpo()[source]

fortran-subroutine - June 2018 (dj, updated) Run an infinite simulation.

Arguments

qqINTEGER, in

Size of the unit cell for iMPS

Source Code

show / hide f90 code
PyInterface_f90.infinitesimulation_mpoc()[source]

fortran-subroutine - June 2018 (dj, updated) Run an infinite simulation.

Arguments

qqINTEGER, in

Size of the unit cell for iMPS

Source Code

show / hide f90 code