LPTNOps¶
Fortran module LPTNOps: September 2017 (dj, updated)
Containing basic operations for local purified tensor networks (LPTN)
Authors
Jaschke
Wall
Details
The error status can be decoded the following way
The following subroutines / functions are defined for the applicable data type
Procedure |
include.f90 |
mpi.f90 |
omp.f90 |
---|---|---|---|
build_kraus_first_order |
X |
||
canonize |
X |
||
canonize_svd |
X |
||
check |
X |
||
copy |
X |
||
corr_init_lptn |
X |
||
corr_init_l_lptn |
X |
||
corr_meas_lptn |
X |
||
corr_meas_l_lptn |
X |
||
create |
X |
||
destroy |
X |
||
fidelity |
X |
||
gaugesite_qr |
X |
||
gaugesite_rq |
X |
||
gaugesite_rsvd |
X |
||
gaugesite_lsvd |
X |
||
maxchi |
X |
||
maxkappa |
X |
||
meas_mpo (dummy) |
X |
||
norm |
X |
||
randomize |
X |
||
rho_kk |
X |
||
rhoij_init_lptn |
X |
||
rhoij_meas_lptn |
X |
||
scale |
X |
||
write |
X |
||
purity |
X |
||
read |
X |
||
X |
|||
orthonormalize |
X |
- LPTNOps_f90.apply_kraus_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Contract a set of Kraus operators with the tensor for a site and compress.
Arguments
- TensTYPE(tensorc), inout
On entry, tensor representing the site in the LPTN, on exit tensor of the site after application of the Kraus operators.
- KrausTYPE(tensorc), inout
Kraus operators represented as rank-3 tensor.
- max_kappaINTEGER, in
The hard-cut off for the kappa bond dimension.
- local_tolREAL, in
Local tolerance for cutting singular values.
- renormCHARACTER, in
Control on renormalization of the singular values.
- cerrREAL, inout
Cumulative error. The error from the splitting inside this subroutine is added.
Source Code
show / hide f90 code
- LPTNOps_f90.apply_kraus_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Contract a set of Kraus operators with the tensor for a site and compress.
Arguments
- TensTYPE(qtensorc), inout
On entry, tensor representing the site in the LPTN, on exit tensor of the site after application of the Kraus operators.
- KrausTYPE(qtensorc), inout
Kraus operators represented as rank-3 tensor.
- max_kappaINTEGER, in
The hard-cut off for the kappa bond dimension.
- local_tolREAL, in
Local tolerance for cutting singular values.
- renormCHARACTER, in
Control on renormalization of the singular values.
- cerrREAL, inout
Cumulative error. The error from the splitting inside this subroutine is added.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_lptn()[source]¶
fortran-subroutine - June 2017 (dj, updated) Canonize the LPTN with gauged matrices.
Arguments
- RhoTYPE(lptn), inout
Bring this LPTN into a canonical form using QR decompositions.
- k0INTEGER, in
This is the new orthogonality center for the LPTN.
- klINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the left side of the LPTN. If not given, the maximum of the 1 and the present orthogonality center is choosen.
- krINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the right side of the LPTN. If not given, the minimum of the system size and the present orthogonality center is choosen.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the QR decomposition - the fastest method - but it is not rank revealing and so inappropriate for compression. Additionally, the Schmidt coefficients are not returned and so entropies cannot be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_svd_lptn()[source]¶
fortran-subroutine - June 2017 (dj, updated) Put the LPTN into a canonical form using SVD.
Arguments
- RhoTYPE(lptn), inout
LPTN to be canonized with SVDs. Updated on exit.
- k0INTEGER, in
The new orthogonality center on exit is at the site k0. All matrices to the left and right are gauged accordingly.
- klINTEGER, OPTIONAL, in
start SVD from the left on this site. If not present SVD start at site 1 or the ortogonality center.
- krINTEGER, OPTIONAL, in
start SVD from the right on this site. If not present, SVD starts on the last site or the orthogonality center.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the SVD decomposition, which is rank revealing and so appropriate for compression. Additionally, the Schmidt coefficients are returned and so entropies can be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_lptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Canonize the LPTN with gauged matrices.
Arguments
- RhoTYPE(lptnc), inout
Bring this LPTN into a canonical form using QR decompositions.
- k0INTEGER, in
This is the new orthogonality center for the LPTN.
- klINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the left side of the LPTN. If not given, the maximum of the 1 and the present orthogonality center is choosen.
- krINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the right side of the LPTN. If not given, the minimum of the system size and the present orthogonality center is choosen.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the QR decomposition - the fastest method - but it is not rank revealing and so inappropriate for compression. Additionally, the Schmidt coefficients are not returned and so entropies cannot be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_svd_lptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Put the LPTN into a canonical form using SVD.
Arguments
- RhoTYPE(lptnc), inout
LPTN to be canonized with SVDs. Updated on exit.
- k0INTEGER, in
The new orthogonality center on exit is at the site k0. All matrices to the left and right are gauged accordingly.
- klINTEGER, OPTIONAL, in
start SVD from the left on this site. If not present SVD start at site 1 or the ortogonality center.
- krINTEGER, OPTIONAL, in
start SVD from the right on this site. If not present, SVD starts on the last site or the orthogonality center.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the SVD decomposition, which is rank revealing and so appropriate for compression. Additionally, the Schmidt coefficients are returned and so entropies can be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_qlptn()[source]¶
fortran-subroutine - June 2017 (dj, updated) Canonize the LPTN with gauged matrices.
Arguments
- RhoTYPE(qlptn), inout
Bring this LPTN into a canonical form using QR decompositions.
- k0INTEGER, in
This is the new orthogonality center for the LPTN.
- klINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the left side of the LPTN. If not given, the maximum of the 1 and the present orthogonality center is choosen.
- krINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the right side of the LPTN. If not given, the minimum of the system size and the present orthogonality center is choosen.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the QR decomposition - the fastest method - but it is not rank revealing and so inappropriate for compression. Additionally, the Schmidt coefficients are not returned and so entropies cannot be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_svd_qlptn()[source]¶
fortran-subroutine - June 2017 (dj, updated) Put the LPTN into a canonical form using SVD.
Arguments
- RhoTYPE(qlptn), inout
LPTN to be canonized with SVDs. Updated on exit.
- k0INTEGER, in
The new orthogonality center on exit is at the site k0. All matrices to the left and right are gauged accordingly.
- klINTEGER, OPTIONAL, in
start SVD from the left on this site. If not present SVD start at site 1 or the ortogonality center.
- krINTEGER, OPTIONAL, in
start SVD from the right on this site. If not present, SVD starts on the last site or the orthogonality center.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the SVD decomposition, which is rank revealing and so appropriate for compression. Additionally, the Schmidt coefficients are returned and so entropies can be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_qlptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Canonize the LPTN with gauged matrices.
Arguments
- RhoTYPE(qlptnc), inout
Bring this LPTN into a canonical form using QR decompositions.
- k0INTEGER, in
This is the new orthogonality center for the LPTN.
- klINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the left side of the LPTN. If not given, the maximum of the 1 and the present orthogonality center is choosen.
- krINTEGER, OPTIONAL, in
This optional argument can provide the information where to start with gauging the LPTN from the right side of the LPTN. If not given, the minimum of the system size and the present orthogonality center is choosen.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the QR decomposition - the fastest method - but it is not rank revealing and so inappropriate for compression. Additionally, the Schmidt coefficients are not returned and so entropies cannot be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.canonize_svd_qlptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Put the LPTN into a canonical form using SVD.
Arguments
- RhoTYPE(qlptnc), inout
LPTN to be canonized with SVDs. Updated on exit.
- k0INTEGER, in
The new orthogonality center on exit is at the site k0. All matrices to the left and right are gauged accordingly.
- klINTEGER, OPTIONAL, in
start SVD from the left on this site. If not present SVD start at site 1 or the ortogonality center.
- krINTEGER, OPTIONAL, in
start SVD from the right on this site. If not present, SVD starts on the last site or the orthogonality center.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Details
Put the LPTN into the canonical form where all matrices to the left of (optionally down to ) are gauged according to the left-handed condition and all matrices to the right of (optionally up to ) are gauged according to the right-handed condition for OBC. This routine uses the SVD decomposition, which is rank revealing and so appropriate for compression. Additionally, the Schmidt coefficients are returned and so entropies can be computed.
Source Code
show / hide f90 code
- LPTNOps_f90.check_lptn()[source]¶
fortran-subroutine - August 2017 (dj) Run basic checks on LPTN, such as left-right unitary and normed.
Arguments
- RhoTYPE(lptn), in
Run checks on this LPTN.
Source Code
show / hide f90 code
- LPTNOps_f90.check_lptnc()[source]¶
fortran-subroutine - August 2017 (dj) Run basic checks on LPTN, such as left-right unitary and normed.
Arguments
- RhoTYPE(lptnc), in
Run checks on this LPTN.
Source Code
show / hide f90 code
- LPTNOps_f90.check_qlptn()[source]¶
fortran-subroutine - August 2017 (dj) Run basic checks on LPTN, such as left-right unitary and normed.
Arguments
- RhoTYPE(qlptn), in
Run checks on this LPTN.
Source Code
show / hide f90 code
- LPTNOps_f90.check_qlptnc()[source]¶
fortran-subroutine - August 2017 (dj) Run basic checks on LPTN, such as left-right unitary and normed.
Arguments
- RhoTYPE(qlptnc), in
Run checks on this LPTN.
Source Code
show / hide f90 code
- LPTNOps_f90.copy_lptn_lptn()[source]¶
fortran-subroutine - September 2017 (dj, updated) Make a copy of a LPTN
Arguments
- Rho_newTYPE(LPTN_TYPE), out
Store a copy of Rho_old here.
- Rho_inTYPE(LPTN_TYPE), in
Copy this LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.copy_lptnc_lptnc()[source]¶
fortran-subroutine - September 2017 (dj, updated) Make a copy of a LPTN
Arguments
- Rho_newTYPE(LPTN_TYPE), out
Store a copy of Rho_old here.
- Rho_inTYPE(LPTN_TYPE), in
Copy this LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.copy_qlptn_qlptn()[source]¶
fortran-subroutine - September 2017 (dj, updated) Make a copy of a LPTN
Arguments
- Rho_newTYPE(LPTN_TYPE), out
Store a copy of Rho_old here.
- Rho_inTYPE(LPTN_TYPE), in
Copy this LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.copy_qlptnc_qlptnc()[source]¶
fortran-subroutine - September 2017 (dj, updated) Make a copy of a LPTN
Arguments
- Rho_newTYPE(LPTN_TYPE), out
Store a copy of Rho_old here.
- Rho_inTYPE(LPTN_TYPE), in
Copy this LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.copy_lptnc_lptn()[source]¶
fortran-subroutine - September 2017 (dj, updated) Make a copy of a LPTN
Arguments
- Rho_newTYPE(LPTN_TYPE), out
Store a copy of Rho_old here.
- Rho_inTYPE(LPTN_TYPE), in
Copy this LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.copy_qlptnc_qlptn()[source]¶
fortran-subroutine - September 2017 (dj, updated) Make a copy of a LPTN
Arguments
- Rho_newTYPE(LPTN_TYPE), out
Store a copy of Rho_old here.
- Rho_inTYPE(LPTN_TYPE), in
Copy this LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.copy_lptn_mps()[source]¶
fortran-subroutine - September 2017 (dj) Copy an MPS wave function Psi to a LPTN density matrix Rho.
Arguments
- RhoTYPE(lptn), inout
Copy MPS into this LPTN.
- PsiTYPE(mps), in
MPS to be converted to an LPTN
- scalarREAL, OPTIONAL, in
Scale Rho by a factor.
Source Code
show / hide f90 code
- LPTNOps_f90.copy_lptnc_mps()[source]¶
fortran-subroutine - September 2017 (dj) Copy an MPS wave function Psi to a LPTN density matrix Rho.
Arguments
- RhoTYPE(lptnc), inout
Copy MPS into this LPTN.
- PsiTYPE(mps), in
MPS to be converted to an LPTN
- scalarREAL, OPTIONAL, in
Scale Rho by a factor.
Source Code
show / hide f90 code
- LPTNOps_f90.copy_lptnc_mpsc()[source]¶
fortran-subroutine - September 2017 (dj) Copy an MPS wave function Psi to a LPTN density matrix Rho.
Arguments
- RhoTYPE(lptnc), inout
Copy MPS into this LPTN.
- PsiTYPE(mpsc), in
MPS to be converted to an LPTN
- scalarREAL, OPTIONAL, in
Scale Rho by a factor.
Source Code
show / hide f90 code
- LPTNOps_f90.copy_qlptn_qmps()[source]¶
fortran-subroutine - September 2017 (dj) Copy an MPS wave function Psi to a LPTN density matrix Rho.
Arguments
- RhoTYPE(qlptn), inout
Copy MPS into this LPTN.
- PsiTYPE(qmps), in
MPS to be converted to an LPTN
- scalarREAL, OPTIONAL, in
Scale Rho by a factor.
Source Code
show / hide f90 code
- LPTNOps_f90.copy_qlptnc_qmps()[source]¶
fortran-subroutine - September 2017 (dj) Copy an MPS wave function Psi to a LPTN density matrix Rho.
Arguments
- RhoTYPE(qlptnc), inout
Copy MPS into this LPTN.
- PsiTYPE(qmps), in
MPS to be converted to an LPTN
- scalarREAL, OPTIONAL, in
Scale Rho by a factor.
Source Code
show / hide f90 code
- LPTNOps_f90.copy_qlptnc_qmpsc()[source]¶
fortran-subroutine - September 2017 (dj) Copy an MPS wave function Psi to a LPTN density matrix Rho.
Arguments
- RhoTYPE(qlptnc), inout
Copy MPS into this LPTN.
- PsiTYPE(qmpsc), in
MPS to be converted to an LPTN
- scalarREAL, OPTIONAL, in
Scale Rho by a factor.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_lptn_tensor_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the left overlap for a right-moving correlation measure.
Arguments
- TenskkTYPE(tensor), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(tensor), out
On exit, left overlap for correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_lptn_tensorc_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the left overlap for a right-moving correlation measure.
Arguments
- TenskkTYPE(tensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(tensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_lptn_tensorc_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the left overlap for a right-moving correlation measure.
Arguments
- TenskkTYPE(tensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(tensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(tensorc), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_lptn_qtensor_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the left overlap for a right-moving correlation measure.
Arguments
- TenskkTYPE(qtensor), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(qtensor), out
On exit, left overlap for correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_lptn_qtensorc_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the left overlap for a right-moving correlation measure.
Arguments
- TenskkTYPE(qtensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(qtensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_lptn_qtensorc_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the left overlap for a right-moving correlation measure.
Arguments
- TenskkTYPE(qtensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(qtensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(qtensorc), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_l_lptn_tensor_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the correlation with a left-moving contraction. This is the initialization.
Arguments
- TenskkTYPE(tensor), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(tensor), out
On exit, left overlap for correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_l_lptn_tensorc_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the correlation with a left-moving contraction. This is the initialization.
Arguments
- TenskkTYPE(tensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(tensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_l_lptn_tensorc_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the correlation with a left-moving contraction. This is the initialization.
Arguments
- TenskkTYPE(tensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(tensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(tensorc), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_l_lptn_qtensor_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the correlation with a left-moving contraction. This is the initialization.
Arguments
- TenskkTYPE(qtensor), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(qtensor), out
On exit, left overlap for correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_l_lptn_qtensorc_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the correlation with a left-moving contraction. This is the initialization.
Arguments
- TenskkTYPE(qtensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(qtensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_init_l_lptn_qtensorc_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the correlation with a left-moving contraction. This is the initialization.
Arguments
- TenskkTYPE(qtensorc), inout
Tensor representing the first site of the correlation measurement.
- ThetaTYPE(qtensorc), out
On exit, left overlap for correlation measurement.
- OpTYPE(qtensorc), inout
Operator for the correlation measurement on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_lptn_tensor_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure correlation and propagate. Right-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(tensor), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(tensor), inout
The left overlap starting on the first site of the correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(tensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_lptn_tensorc_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure correlation and propagate. Right-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(tensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(tensorc), inout
The left overlap starting on the first site of the correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(tensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_lptn_tensorc_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Measure correlation and propagate. Right-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(tensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(tensorc), inout
The left overlap starting on the first site of the correlation measurement.
- OpTYPE(tensorc), inout
Operator for the correlation measurement.
- PhaseOpTYPE(tensorc), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_lptn_qtensor_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure correlation and propagate. Right-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(qtensor), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(qtensor), inout
The left overlap starting on the first site of the correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(qtensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_lptn_qtensorc_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure correlation and propagate. Right-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(qtensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(qtensorc), inout
The left overlap starting on the first site of the correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(qtensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_lptn_qtensorc_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Measure correlation and propagate. Right-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(qtensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(qtensorc), inout
The left overlap starting on the first site of the correlation measurement.
- OpTYPE(qtensorc), inout
Operator for the correlation measurement.
- PhaseOpTYPE(qtensorc), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_l_lptn_tensor_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Measurement process for correlations. Propagation of overlap for next measurement. Left-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(tensor), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(tensor), inout
The right overlap starting on the first site of the correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(tensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_l_lptn_tensorc_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Measurement process for correlations. Propagation of overlap for next measurement. Left-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(tensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(tensorc), inout
The right overlap starting on the first site of the correlation measurement.
- OpTYPE(tensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(tensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_l_lptn_tensorc_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Measurement process for correlations. Propagation of overlap for next measurement. Left-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(tensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(tensorc), inout
The right overlap starting on the first site of the correlation measurement.
- OpTYPE(tensorc), inout
Operator for the correlation measurement.
- PhaseOpTYPE(tensorc), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_l_lptn_qtensor_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Measurement process for correlations. Propagation of overlap for next measurement. Left-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(qtensor), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(qtensor), inout
The right overlap starting on the first site of the correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(qtensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_l_lptn_qtensorc_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Measurement process for correlations. Propagation of overlap for next measurement. Left-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(qtensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(qtensorc), inout
The right overlap starting on the first site of the correlation measurement.
- OpTYPE(qtensor), inout
Operator for the correlation measurement.
- PhaseOpTYPE(qtensor), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.corr_meas_l_lptn_qtensorc_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Measurement process for correlations. Propagation of overlap for next measurement. Left-moving version.
Arguments
- valsREAL, out
Outcome of the correlation measurement.
- TenskkTYPE(qtensorc), inout
Tensor representing site kk of the system.
- kkINTEGER, in
Site index of the current tensor.
- llINTEGER, in
System size.
- ThetaTYPE(qtensorc), inout
The right overlap starting on the first site of the correlation measurement.
- OpTYPE(qtensorc), inout
Operator for the correlation measurement.
- PhaseOpTYPE(qtensorc), inout
Phase operator for propagation for the following correlation measurements.
- hasphaseLOGICAL, in
Flag if phase operator is contracted (.true.).
Source Code
show / hide f90 code
- LPTNOps_f90.create_lptn()[source]¶
fortran-subroutine - December 2014 (dj) Initialize LPTN
Arguments
- RhoTYPE(lptn), out
LPTN to be initialized
- llINTEGER, in
number of sites in the system
- fillCHARACTER, in
‘N’ : allocate, but do not initialize ‘Z’ : fill with zeros ‘O’ : fill with ones ‘I’ : start with the identity / maximally mixed state (chi and kappa not necessary) ‘R’ : random numbers
- ddINTEGER(*), in
dimension of the local Hilbert space SIZE(dd) = 1 : all sites have the same size SIZE(dd) = ll: site dependent local Hilbert space
- chiINTEGER(*), OPTIONAL, in
dimension of the bond dimension to nearest neighbor SIZE(chi) = 1 : all sites have the same bond dimension boundary effects are considered SIZE(chi) = ll - 1: site dependent bond dimension, boundary effects have to be considered in the array.
- kappaINTEGER(*), OPTIONAL, in
dimension of the kraus link to complex conjugated tensor SIZE(kappa) = 1 : all sites have the same bond dimension SIZE(kappa) = ll: site dependent Kraus dimension
Source Code
show / hide f90 code
- LPTNOps_f90.create_lptnc()[source]¶
fortran-subroutine - December 2014 (dj) Initialize LPTN
Arguments
- RhoTYPE(lptnc), out
LPTN to be initialized
- llINTEGER, in
number of sites in the system
- fillCHARACTER, in
‘N’ : allocate, but do not initialize ‘Z’ : fill with zeros ‘O’ : fill with ones ‘I’ : start with the identity / maximally mixed state (chi and kappa not necessary) ‘R’ : random numbers
- ddINTEGER(*), in
dimension of the local Hilbert space SIZE(dd) = 1 : all sites have the same size SIZE(dd) = ll: site dependent local Hilbert space
- chiINTEGER(*), OPTIONAL, in
dimension of the bond dimension to nearest neighbor SIZE(chi) = 1 : all sites have the same bond dimension boundary effects are considered SIZE(chi) = ll - 1: site dependent bond dimension, boundary effects have to be considered in the array.
- kappaINTEGER(*), OPTIONAL, in
dimension of the kraus link to complex conjugated tensor SIZE(kappa) = 1 : all sites have the same bond dimension SIZE(kappa) = ll: site dependent Kraus dimension
Source Code
show / hide f90 code
- LPTNOps_f90.destroy_lptn()[source]¶
fortran-subroutine - September 2017 (dj, updated) Deallocate a LPTN
Arguments
- RhoTYPE(lptn), inout
deallocate the LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.destroy_lptnc()[source]¶
fortran-subroutine - September 2017 (dj, updated) Deallocate a LPTN
Arguments
- RhoTYPE(lptnc), inout
deallocate the LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.destroy_qlptn()[source]¶
fortran-subroutine - September 2017 (dj, updated) Deallocate a LPTN
Arguments
- RhoTYPE(qlptn), inout
deallocate the LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.destroy_qlptnc()[source]¶
fortran-subroutine - September 2017 (dj, updated) Deallocate a LPTN
Arguments
- RhoTYPE(qlptnc), inout
deallocate the LPTN
Source Code
show / hide f90 code
- LPTNOps_f90.distance_lptn_mps()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(lptn), in
Density matrix for distance measure.
- PsiTYPE(mps), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_lptn_mpsc()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(lptn), in
Density matrix for distance measure.
- PsiTYPE(mpsc), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_lptnc_mps()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(lptnc), in
Density matrix for distance measure.
- PsiTYPE(mps), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_lptnc_mpsc()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(lptnc), in
Density matrix for distance measure.
- PsiTYPE(mpsc), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_qlptn_qmps()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(qlptn), in
Density matrix for distance measure.
- PsiTYPE(qmps), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_qlptn_qmpsc()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(qlptn), in
Density matrix for distance measure.
- PsiTYPE(qmpsc), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_qlptnc_qmps()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(qlptnc), in
Density matrix for distance measure.
- PsiTYPE(qmps), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.distance_qlptnc_qmpsc()[source]¶
fortran-function - September 2017 (dj) Measure the distance between an LPTN and an MPS.
Arguments
- RhoTYPE(qlptnc), in
Density matrix for distance measure.
- PsiTYPE(qmpsc), in
Pure state in the distance measure.
- dist_typeCHARACTER, OPTIONAL, in
Specify the distance to be calculated. Only option right now is ‘F’ (fidelity, default).
Source Code
show / hide f90 code
- LPTNOps_f90.fidelity_lptn_mps()[source]¶
fortran-function - September 2017 (dj) Calculate the fidelity between a density matrix represented as LPTN and a state represented as MPS.
Arguments
- RhoTYPE(lptn), inout
Density matrix for distance measure.
- PsiTYPE(mps), in
Pure state in the distance measure.
Details
With the fidelity is . It simplifies to
The two layers of the MPS and the LPTN are contracted. After fusing the chi-links we remain with an MPS-like construct. The local dimension is represented with the kappa-links. This norm of this MPS construct yields the actual distance.
Source Code
show / hide f90 code
- LPTNOps_f90.fidelity_lptn_mpsc()[source]¶
fortran-function - September 2017 (dj) Calculate the fidelity between a density matrix represented as LPTN and a state represented as MPS.
Arguments
- RhoTYPE(lptn), inout
Density matrix for distance measure.
- PsiTYPE(mpsc), in
Pure state in the distance measure.
Details
With the fidelity is . It simplifies to
The two layers of the MPS and the LPTN are contracted. After fusing the chi-links we remain with an MPS-like construct. The local dimension is represented with the kappa-links. This norm of this MPS construct yields the actual distance.
Source Code
show / hide f90 code
- LPTNOps_f90.fidelity_lptnc_mps()[source]¶
fortran-function - September 2017 (dj) Calculate the fidelity between a density matrix represented as LPTN and a state represented as MPS.
Arguments
- RhoTYPE(lptnc), inout
Density matrix for distance measure.
- PsiTYPE(mps), in
Pure state in the distance measure.
Details
With the fidelity is . It simplifies to
The two layers of the MPS and the LPTN are contracted. After fusing the chi-links we remain with an MPS-like construct. The local dimension is represented with the kappa-links. This norm of this MPS construct yields the actual distance.
Source Code
show / hide f90 code
- LPTNOps_f90.fidelity_lptnc_mpsc()[source]¶
fortran-function - September 2017 (dj) Calculate the fidelity between a density matrix represented as LPTN and a state represented as MPS.
Arguments
- RhoTYPE(lptnc), inout
Density matrix for distance measure.
- PsiTYPE(mpsc), in
Pure state in the distance measure.
Details
With the fidelity is . It simplifies to
The two layers of the MPS and the LPTN are contracted. After fusing the chi-links we remain with an MPS-like construct. The local dimension is represented with the kappa-links. This norm of this MPS construct yields the actual distance.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_qr_tensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensor to the right with a QR-decomposition.
Arguments
- TlTYPE(tensor), inout
Run QR decomposition on last index vs the other ones.
- TrTYPE(tensor), inout
On exit, this tensor is the new orhtogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rq_tensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensors to the left with a RQ-decompistion.
Arguments
- TlTYPE(tensor), inout
On exit, this tensor is the new orhtogonality center.
- TrTYPE(tensor), inout
Run RQ decomposition on first index vs the other ones.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_qr_tensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensor to the right with a QR-decomposition.
Arguments
- TlTYPE(tensorc), inout
Run QR decomposition on last index vs the other ones.
- TrTYPE(tensorc), inout
On exit, this tensor is the new orhtogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rq_tensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensors to the left with a RQ-decompistion.
Arguments
- TlTYPE(tensorc), inout
On exit, this tensor is the new orhtogonality center.
- TrTYPE(tensorc), inout
Run RQ decomposition on first index vs the other ones.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_qr_qtensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensor to the right with a QR-decomposition.
Arguments
- TlTYPE(qtensor), inout
Run QR decomposition on last index vs the other ones.
- TrTYPE(qtensor), inout
On exit, this tensor is the new orhtogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rq_qtensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensors to the left with a RQ-decompistion.
Arguments
- TlTYPE(qtensor), inout
On exit, this tensor is the new orhtogonality center.
- TrTYPE(qtensor), inout
Run RQ decomposition on first index vs the other ones.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_qr_qtensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensor to the right with a QR-decomposition.
Arguments
- TlTYPE(qtensorc), inout
Run QR decomposition on last index vs the other ones.
- TrTYPE(qtensorc), inout
On exit, this tensor is the new orhtogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rq_qtensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift gauge for two tensors to the left with a RQ-decompistion.
Arguments
- TlTYPE(qtensorc), inout
On exit, this tensor is the new orhtogonality center.
- TrTYPE(qtensorc), inout
Run RQ decomposition on first index vs the other ones.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rsvd_tensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the left site to the right running an SVD.
Arguments
- TlTYPE(tensor), inout
SVD decompose this tensor between the last index and the other ones.
- LambTYPE(tensor), inout
Contains the singular values on exit.
- TrTYPE(tensor), inout
On exit, this tensor is the new orthogonality center.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_lsvd_tensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the right site to the left running an SVD.
Arguments
- TlTYPE(tensor), inout
This tensor will be the new orthogonality center on exit.
- LambTYPE(tensor), inout
Contains the singular values on exit.
- TrTYPE(tensor), inout
SVD decompose this tensor between the first index and the other ones.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rsvd_tensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the left site to the right running an SVD.
Arguments
- TlTYPE(tensorc), inout
SVD decompose this tensor between the last index and the other ones.
- LambTYPE(tensor), inout
Contains the singular values on exit.
- TrTYPE(tensorc), inout
On exit, this tensor is the new orthogonality center.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_lsvd_tensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the right site to the left running an SVD.
Arguments
- TlTYPE(tensorc), inout
This tensor will be the new orthogonality center on exit.
- LambTYPE(tensor), inout
Contains the singular values on exit.
- TrTYPE(tensorc), inout
SVD decompose this tensor between the first index and the other ones.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rsvd_qtensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the left site to the right running an SVD.
Arguments
- TlTYPE(qtensor), inout
SVD decompose this tensor between the last index and the other ones.
- LambTYPE(qtensor), inout
Contains the singular values on exit.
- TrTYPE(qtensor), inout
On exit, this tensor is the new orthogonality center.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_lsvd_qtensor()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the right site to the left running an SVD.
Arguments
- TlTYPE(qtensor), inout
This tensor will be the new orthogonality center on exit.
- LambTYPE(qtensor), inout
Contains the singular values on exit.
- TrTYPE(qtensor), inout
SVD decompose this tensor between the first index and the other ones.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_rsvd_qtensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the left site to the right running an SVD.
Arguments
- TlTYPE(qtensorc), inout
SVD decompose this tensor between the last index and the other ones.
- LambTYPE(qtensor), inout
Contains the singular values on exit.
- TrTYPE(qtensorc), inout
On exit, this tensor is the new orthogonality center.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.gaugesite_lsvd_qtensorc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Shift the gauge from the right site to the left running an SVD.
Arguments
- TlTYPE(qtensorc), inout
This tensor will be the new orthogonality center on exit.
- LambTYPE(qtensor), inout
Contains the singular values on exit.
- TrTYPE(qtensorc), inout
SVD decompose this tensor between the first index and the other ones.
- haslambdaLOGICAL, inout
Flag if singular values are already allocated.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
Source Code
show / hide f90 code
- LPTNOps_f90.maxchi_lptn()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to nearest neighbors of the LPTN.
Arguments
- RhoTYPE(lptn), in
Get the maximal bond dimension present in the LPTN for the link between nearest neighbors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxchi_lptnc()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to nearest neighbors of the LPTN.
Arguments
- RhoTYPE(lptnc), in
Get the maximal bond dimension present in the LPTN for the link between nearest neighbors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxchi_qlptn()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to nearest neighbors of the LPTN.
Arguments
- RhoTYPE(qlptn), in
Get the maximal bond dimension present in the LPTN for the link between nearest neighbors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxchi_qlptnc()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to nearest neighbors of the LPTN.
Arguments
- RhoTYPE(qlptnc), in
Get the maximal bond dimension present in the LPTN for the link between nearest neighbors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxkappa_lptn()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to conjugate tensors of the LPTN.
Arguments
- RhoTYPE(lptn), in
Get the maximal bond dimension present in the LPTN for the link between the complex conjugate tensors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxkappa_lptnc()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to conjugate tensors of the LPTN.
Arguments
- RhoTYPE(lptnc), in
Get the maximal bond dimension present in the LPTN for the link between the complex conjugate tensors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxkappa_qlptn()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to conjugate tensors of the LPTN.
Arguments
- RhoTYPE(qlptn), in
Get the maximal bond dimension present in the LPTN for the link between the complex conjugate tensors.
Source Code
show / hide f90 code
- LPTNOps_f90.maxkappa_qlptnc()[source]¶
fortran-function - September 2017 (dj, updated) Get the maximal bond dimension to conjugate tensors of the LPTN.
Arguments
- RhoTYPE(qlptnc), in
Get the maximal bond dimension present in the LPTN for the link between the complex conjugate tensors.
Source Code
show / hide f90 code
- LPTNOps_f90.meas_mpo_lptn_mpo()[source]¶
fortran-subroutine - November 2017 (dj) Compute the expectation value of an MPO on a LPTN.
Arguments
- valREAL_OR_COMPLEX, out
Result of the measurement of the MPO applied to Psi.
- HTYPE(mpo), inout
Representation of the MPO to be measured.
- RhoTYPE(lptn), inout
Measure this density matrix.
Source Code
show / hide f90 code
- LPTNOps_f90.meas_mpo_lptnc_mpo()[source]¶
fortran-subroutine - November 2017 (dj) Compute the expectation value of an MPO on a LPTN.
Arguments
- valREAL_OR_COMPLEX, out
Result of the measurement of the MPO applied to Psi.
- HTYPE(mpo), inout
Representation of the MPO to be measured.
- RhoTYPE(lptnc), inout
Measure this density matrix.
Source Code
show / hide f90 code
- LPTNOps_f90.meas_mpo_lptnc_mpoc()[source]¶
fortran-subroutine - November 2017 (dj) Compute the expectation value of an MPO on a LPTN.
Arguments
- valREAL_OR_COMPLEX, out
Result of the measurement of the MPO applied to Psi.
- HTYPE(mpoc), inout
Representation of the MPO to be measured.
- RhoTYPE(lptnc), inout
Measure this density matrix.
Source Code
show / hide f90 code
- LPTNOps_f90.meas_mpo_qlptn_qmpo()[source]¶
fortran-subroutine - November 2017 (dj) Compute the expectation value of an MPO on a LPTN.
Arguments
- valREAL_OR_COMPLEX, out
Result of the measurement of the MPO applied to Psi.
- HTYPE(qmpo), inout
Representation of the MPO to be measured.
- RhoTYPE(qlptn), inout
Measure this density matrix.
Source Code
show / hide f90 code
- LPTNOps_f90.meas_mpo_qlptnc_qmpo()[source]¶
fortran-subroutine - November 2017 (dj) Compute the expectation value of an MPO on a LPTN.
Arguments
- valREAL_OR_COMPLEX, out
Result of the measurement of the MPO applied to Psi.
- HTYPE(qmpo), inout
Representation of the MPO to be measured.
- RhoTYPE(qlptnc), inout
Measure this density matrix.
Source Code
show / hide f90 code
- LPTNOps_f90.meas_mpo_qlptnc_qmpoc()[source]¶
fortran-subroutine - November 2017 (dj) Compute the expectation value of an MPO on a LPTN.
Arguments
- valREAL_OR_COMPLEX, out
Result of the measurement of the MPO applied to Psi.
- HTYPE(qmpoc), inout
Representation of the MPO to be measured.
- RhoTYPE(qlptnc), inout
Measure this density matrix.
Source Code
show / hide f90 code
- LPTNOps_f90.ptm_left_mpo_lptn_tensor_tensor()[source]¶
fortran-subroutine - November 2017 (dj) Build transfer matrix for site between a state and a Hamiltonian (or MPO).
Arguments
- MatTYPE(tensorlist), inout
On exit, new transfer matrix. If ‘Matin’ is not given, this is treated as incoming transfer matrix.
- BraketTYPE(tensor), in
Represent the state of the LPTN on this site.
- HmatTYPE(tensor), inout
Represents the Hamiltonian on this site.
- rightmostLOGICAL, in
Flag if this is the first site. If true, there is no transfer matrix on the right.
- MatinTYPE(tensorlist), OPTIONAL, in
Transfer matrix of the site to the right. Not referenced if rightmost is true.
Details
In contrast to the MPS method, the LPTN method only works for the same state.
Source Code
show / hide f90 code
- LPTNOps_f90.ptm_left_mpo_lptn_tensorc_tensor()[source]¶
fortran-subroutine - November 2017 (dj) Build transfer matrix for site between a state and a Hamiltonian (or MPO).
Arguments
- MatTYPE(tensorlistc), inout
On exit, new transfer matrix. If ‘Matin’ is not given, this is treated as incoming transfer matrix.
- BraketTYPE(tensorc), in
Represent the state of the LPTN on this site.
- HmatTYPE(tensorc), inout
Represents the Hamiltonian on this site.
- rightmostLOGICAL, in
Flag if this is the first site. If true, there is no transfer matrix on the right.
- MatinTYPE(tensorlistc), OPTIONAL, in
Transfer matrix of the site to the right. Not referenced if rightmost is true.
Details
In contrast to the MPS method, the LPTN method only works for the same state.
Source Code
show / hide f90 code
- LPTNOps_f90.ptm_left_mpo_lptn_tensorc_tensorc()[source]¶
fortran-subroutine - November 2017 (dj) Build transfer matrix for site between a state and a Hamiltonian (or MPO).
Arguments
- MatTYPE(tensorlistc), inout
On exit, new transfer matrix. If ‘Matin’ is not given, this is treated as incoming transfer matrix.
- BraketTYPE(tensorc), in
Represent the state of the LPTN on this site.
- HmatTYPE(tensorc), inout
Represents the Hamiltonian on this site.
- rightmostLOGICAL, in
Flag if this is the first site. If true, there is no transfer matrix on the right.
- MatinTYPE(tensorlistc), OPTIONAL, in
Transfer matrix of the site to the right. Not referenced if rightmost is true.
Details
In contrast to the MPS method, the LPTN method only works for the same state.
Source Code
show / hide f90 code
- LPTNOps_f90.ptm_left_mpo_lptn_qtensor_qtensor()[source]¶
fortran-subroutine - November 2017 (dj) Build transfer matrix for site between a state and a Hamiltonian (or MPO).
Arguments
- MatTYPE(qtensorlist), inout
On exit, new transfer matrix. If ‘Matin’ is not given, this is treated as incoming transfer matrix.
- BraketTYPE(qtensor), in
Represent the state of the LPTN on this site.
- HmatTYPE(qtensor), inout
Represents the Hamiltonian on this site.
- rightmostLOGICAL, in
Flag if this is the first site. If true, there is no transfer matrix on the right.
- MatinTYPE(qtensorlist), OPTIONAL, in
Transfer matrix of the site to the right. Not referenced if rightmost is true.
Details
In contrast to the MPS method, the LPTN method only works for the same state.
Source Code
show / hide f90 code
- LPTNOps_f90.ptm_left_mpo_lptn_qtensorc_qtensor()[source]¶
fortran-subroutine - November 2017 (dj) Build transfer matrix for site between a state and a Hamiltonian (or MPO).
Arguments
- MatTYPE(qtensorclist), inout
On exit, new transfer matrix. If ‘Matin’ is not given, this is treated as incoming transfer matrix.
- BraketTYPE(qtensorc), in
Represent the state of the LPTN on this site.
- HmatTYPE(qtensorc), inout
Represents the Hamiltonian on this site.
- rightmostLOGICAL, in
Flag if this is the first site. If true, there is no transfer matrix on the right.
- MatinTYPE(qtensorclist), OPTIONAL, in
Transfer matrix of the site to the right. Not referenced if rightmost is true.
Details
In contrast to the MPS method, the LPTN method only works for the same state.
Source Code
show / hide f90 code
- LPTNOps_f90.ptm_left_mpo_lptn_qtensorc_qtensorc()[source]¶
fortran-subroutine - November 2017 (dj) Build transfer matrix for site between a state and a Hamiltonian (or MPO).
Arguments
- MatTYPE(qtensorclist), inout
On exit, new transfer matrix. If ‘Matin’ is not given, this is treated as incoming transfer matrix.
- BraketTYPE(qtensorc), in
Represent the state of the LPTN on this site.
- HmatTYPE(qtensorc), inout
Represents the Hamiltonian on this site.
- rightmostLOGICAL, in
Flag if this is the first site. If true, there is no transfer matrix on the right.
- MatinTYPE(qtensorclist), OPTIONAL, in
Transfer matrix of the site to the right. Not referenced if rightmost is true.
Details
In contrast to the MPS method, the LPTN method only works for the same state.
Source Code
show / hide f90 code
- LPTNOps_f90.norm_lptn()[source]¶
fortran-function - September 2017 (dj) Calculate the norm of the density matrix defined as the trace.
Arguments
- RhoTYPE(lptn), in
Rho is density matrix represented as LPTN with an orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.norm_lptnc()[source]¶
fortran-function - September 2017 (dj) Calculate the norm of the density matrix defined as the trace.
Arguments
- RhoTYPE(lptnc), in
Rho is density matrix represented as LPTN with an orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.norm_qlptn()[source]¶
fortran-function - September 2017 (dj) Calculate the norm of the density matrix defined as the trace.
Arguments
- RhoTYPE(qlptn), in
Rho is density matrix represented as LPTN with an orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.norm_qlptnc()[source]¶
fortran-function - September 2017 (dj) Calculate the norm of the density matrix defined as the trace.
Arguments
- RhoTYPE(qlptnc), in
Rho is density matrix represented as LPTN with an orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.randomize_lptn()[source]¶
fortran-subroutine - September 2014 (dj) Fill the tensors of a LPTN with random number.
Arguments
- RhoTYPE(lptn), inout
Fill the tensor of each site with random number. This operations destroys gauges/isometry.
Source Code
show / hide f90 code
- LPTNOps_f90.randomize_lptnc()[source]¶
fortran-subroutine - September 2014 (dj) Fill the tensors of a LPTN with random number.
Arguments
- RhoTYPE(lptnc), inout
Fill the tensor of each site with random number. This operations destroys gauges/isometry.
Source Code
show / hide f90 code
- LPTNOps_f90.randomize_qlptn()[source]¶
fortran-subroutine - September 2014 (dj) Fill the tensors of a LPTN with random number.
Arguments
- RhoTYPE(qlptn), inout
Fill the tensor of each site with random number. This operations destroys gauges/isometry.
Source Code
show / hide f90 code
- LPTNOps_f90.randomize_qlptnc()[source]¶
fortran-subroutine - September 2014 (dj) Fill the tensors of a LPTN with random number.
Arguments
- RhoTYPE(qlptnc), inout
Fill the tensor of each site with random number. This operations destroys gauges/isometry.
Source Code
show / hide f90 code
- LPTNOps_f90.read_lptn()[source]¶
fortran-subroutine - June 2016 (dj, updated) Read an LPTN given a filename and a unit (assuming you know the type already).
Arguments
- RhoTYPE(lptn), in
Read LPTN in file to this LPTN
- flnmCHARACTER(100), in
the LPTN is stored in this file.
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’) or human readable (‘H’)
- skipLOGICAL, OPTIONAL, in
.true. : the first two lines were already read somewhere. Do not read them here (those lines contain the information about the type of the LPTN in the file, real/complex, no symm/symmetries). Default to .false.
- errflagINTEGER, out
0 : could read LPTN; 1 : type of LPTN does not correspond type of the LPTN in the file (only checked for skip1st2=false).
Details
The file for LPTN has the general form defined as below. Following these rules, it is possible to provide states to OpenLPTN. * logical if LPTN is real or complex valued (real=True, complex=False) [line 1] * logical if LPTN or qLPTN (qLPTN=True, non-symmetry LPTN=False) [line 2] * integer with number of size [line 3] * integer with position of the orthogonality center [line 4] * “H” : in a loop over the pairs of haslambda and can are written in l lines. “B” : the array of can is read, then haslambda. * In a loop over the sites of the system, the tensors of the LPTN are written. The way how to write the tensors is specified in the corresponding subroutine. * Depending on the value of haslambda, read the vector (vectorlist) with the corresponding subroutine.
Source Code
show / hide f90 code
- LPTNOps_f90.read_lptnc()[source]¶
fortran-subroutine - June 2016 (dj, updated) Read an LPTN given a filename and a unit (assuming you know the type already).
Arguments
- RhoTYPE(lptnc), in
Read LPTN in file to this LPTN
- flnmCHARACTER(100), in
the LPTN is stored in this file.
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’) or human readable (‘H’)
- skipLOGICAL, OPTIONAL, in
.true. : the first two lines were already read somewhere. Do not read them here (those lines contain the information about the type of the LPTN in the file, real/complex, no symm/symmetries). Default to .false.
- errflagINTEGER, out
0 : could read LPTN; 1 : type of LPTN does not correspond type of the LPTN in the file (only checked for skip1st2=false).
Details
The file for LPTN has the general form defined as below. Following these rules, it is possible to provide states to OpenLPTN. * logical if LPTN is real or complex valued (real=True, complex=False) [line 1] * logical if LPTN or qLPTN (qLPTN=True, non-symmetry LPTN=False) [line 2] * integer with number of size [line 3] * integer with position of the orthogonality center [line 4] * “H” : in a loop over the pairs of haslambda and can are written in l lines. “B” : the array of can is read, then haslambda. * In a loop over the sites of the system, the tensors of the LPTN are written. The way how to write the tensors is specified in the corresponding subroutine. * Depending on the value of haslambda, read the vector (vectorlist) with the corresponding subroutine.
Source Code
show / hide f90 code
- LPTNOps_f90.read_qlptn()[source]¶
fortran-subroutine - June 2016 (dj, updated) Read an LPTN given a filename and a unit (assuming you know the type already).
Arguments
- RhoTYPE(qlptn), in
Read LPTN in file to this LPTN
- flnmCHARACTER(100), in
the LPTN is stored in this file.
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’) or human readable (‘H’)
- skipLOGICAL, OPTIONAL, in
.true. : the first two lines were already read somewhere. Do not read them here (those lines contain the information about the type of the LPTN in the file, real/complex, no symm/symmetries). Default to .false.
- errflagINTEGER, out
0 : could read LPTN; 1 : type of LPTN does not correspond type of the LPTN in the file (only checked for skip1st2=false).
Details
The file for LPTN has the general form defined as below. Following these rules, it is possible to provide states to OpenLPTN. * logical if LPTN is real or complex valued (real=True, complex=False) [line 1] * logical if LPTN or qLPTN (qLPTN=True, non-symmetry LPTN=False) [line 2] * integer with number of size [line 3] * integer with position of the orthogonality center [line 4] * “H” : in a loop over the pairs of haslambda and can are written in l lines. “B” : the array of can is read, then haslambda. * In a loop over the sites of the system, the tensors of the LPTN are written. The way how to write the tensors is specified in the corresponding subroutine. * Depending on the value of haslambda, read the vector (vectorlist) with the corresponding subroutine.
Source Code
show / hide f90 code
- LPTNOps_f90.read_qlptnc()[source]¶
fortran-subroutine - June 2016 (dj, updated) Read an LPTN given a filename and a unit (assuming you know the type already).
Arguments
- RhoTYPE(qlptnc), in
Read LPTN in file to this LPTN
- flnmCHARACTER(100), in
the LPTN is stored in this file.
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’) or human readable (‘H’)
- skipLOGICAL, OPTIONAL, in
.true. : the first two lines were already read somewhere. Do not read them here (those lines contain the information about the type of the LPTN in the file, real/complex, no symm/symmetries). Default to .false.
- errflagINTEGER, out
0 : could read LPTN; 1 : type of LPTN does not correspond type of the LPTN in the file (only checked for skip1st2=false).
Details
The file for LPTN has the general form defined as below. Following these rules, it is possible to provide states to OpenLPTN. * logical if LPTN is real or complex valued (real=True, complex=False) [line 1] * logical if LPTN or qLPTN (qLPTN=True, non-symmetry LPTN=False) [line 2] * integer with number of size [line 3] * integer with position of the orthogonality center [line 4] * “H” : in a loop over the pairs of haslambda and can are written in l lines. “B” : the array of can is read, then haslambda. * In a loop over the sites of the system, the tensors of the LPTN are written. The way how to write the tensors is specified in the corresponding subroutine. * Depending on the value of haslambda, read the vector (vectorlist) with the corresponding subroutine.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_kk_lptn()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the reduced density matrix represented as tensor.
Arguments
- RhokkTYPE(tensor), out
The density matrix is stored in this tensor
- RhoTYPE(lptn), in
Calculate reduced density matrix for this LPTN.
- kkINTEGER, in
Select site where reduced density matrix should be calculated. It must be the orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_kk_lptnc()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the reduced density matrix represented as tensor.
Arguments
- RhokkTYPE(tensorc), out
The density matrix is stored in this tensor
- RhoTYPE(lptnc), in
Calculate reduced density matrix for this LPTN.
- kkINTEGER, in
Select site where reduced density matrix should be calculated. It must be the orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_kk_qlptn()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the reduced density matrix represented as tensor.
Arguments
- RhokkTYPE(qtensor), out
The density matrix is stored in this tensor
- RhoTYPE(qlptn), in
Calculate reduced density matrix for this LPTN.
- kkINTEGER, in
Select site where reduced density matrix should be calculated. It must be the orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_kk_qlptnc()[source]¶
fortran-subroutine - September 2017 (dj) Calculate the reduced density matrix represented as tensor.
Arguments
- RhokkTYPE(qtensorc), out
The density matrix is stored in this tensor
- RhoTYPE(qlptnc), in
Calculate reduced density matrix for this LPTN.
- kkINTEGER, in
Select site where reduced density matrix should be calculated. It must be the orthogonality center.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_init_lptn_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the measurement for the two-site density matrix, i.e., building the left overlap leaving the local Hilbert space uncontractred.
Arguments
- TenskkTYPE(tensor), inout
Tensor representing the site kk, should be the orthgonality center.
- ThetaTYPE(tensor), out
On exit, contraction of the tensor on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_init_lptn_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the measurement for the two-site density matrix, i.e., building the left overlap leaving the local Hilbert space uncontractred.
Arguments
- TenskkTYPE(tensorc), inout
Tensor representing the site kk, should be the orthgonality center.
- ThetaTYPE(tensorc), out
On exit, contraction of the tensor on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_init_lptn_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the measurement for the two-site density matrix, i.e., building the left overlap leaving the local Hilbert space uncontractred.
Arguments
- TenskkTYPE(qtensor), inout
Tensor representing the site kk, should be the orthgonality center.
- ThetaTYPE(qtensor), out
On exit, contraction of the tensor on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_init_lptn_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Initialize the measurement for the two-site density matrix, i.e., building the left overlap leaving the local Hilbert space uncontractred.
Arguments
- TenskkTYPE(qtensorc), inout
Tensor representing the site kk, should be the orthgonality center.
- ThetaTYPE(qtensorc), out
On exit, contraction of the tensor on site kk.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_meas_lptn_tensor_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure two-site reduced density matrix for sites i and j and propagate for the next measurement.
Arguments
- RhosijTYPE(tensor)(*, *), inout
Matrix containing two-site density matrices.
- TensjjTYPE(tensor), inout
Tensor representing the current site to be contracted.
- iiINTEGER, inout
Index of the left site of the density matrix kept in Theta.
- jjINTEGER, inout
Index of the tensors Tensjj.
- llINTEGER, inout
Number of sites in the system, used to detect when propagation is stopped.
- ThetaTYPE(tensor), inout
Tensor containing the contractions from the left part of the system.
- PhaseOpTYPE(tensor), inout
Phase operator to be contracted within the propagation.
- hasphaseLOGICAL, inout
Flag if phase operator is present (.true.).
- skipLOGICAL, OPTIONAL, inout
If present and true, the measurement of the density matrix is skiped and it is only propagated.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_meas_lptn_tensorc_tensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure two-site reduced density matrix for sites i and j and propagate for the next measurement.
Arguments
- RhosijTYPE(tensorc)(*, *), inout
Matrix containing two-site density matrices.
- TensjjTYPE(tensorc), inout
Tensor representing the current site to be contracted.
- iiINTEGER, inout
Index of the left site of the density matrix kept in Theta.
- jjINTEGER, inout
Index of the tensors Tensjj.
- llINTEGER, inout
Number of sites in the system, used to detect when propagation is stopped.
- ThetaTYPE(tensorc), inout
Tensor containing the contractions from the left part of the system.
- PhaseOpTYPE(tensor), inout
Phase operator to be contracted within the propagation.
- hasphaseLOGICAL, inout
Flag if phase operator is present (.true.).
- skipLOGICAL, OPTIONAL, inout
If present and true, the measurement of the density matrix is skiped and it is only propagated.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_meas_lptn_tensorc_tensorc()[source]¶
fortran-subroutine - September 2017 (dj) Measure two-site reduced density matrix for sites i and j and propagate for the next measurement.
Arguments
- RhosijTYPE(tensorc)(*, *), inout
Matrix containing two-site density matrices.
- TensjjTYPE(tensorc), inout
Tensor representing the current site to be contracted.
- iiINTEGER, inout
Index of the left site of the density matrix kept in Theta.
- jjINTEGER, inout
Index of the tensors Tensjj.
- llINTEGER, inout
Number of sites in the system, used to detect when propagation is stopped.
- ThetaTYPE(tensorc), inout
Tensor containing the contractions from the left part of the system.
- PhaseOpTYPE(tensorc), inout
Phase operator to be contracted within the propagation.
- hasphaseLOGICAL, inout
Flag if phase operator is present (.true.).
- skipLOGICAL, OPTIONAL, inout
If present and true, the measurement of the density matrix is skiped and it is only propagated.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_meas_lptn_qtensor_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure two-site reduced density matrix for sites i and j and propagate for the next measurement.
Arguments
- RhosijTYPE(qtensor)(*, *), inout
Matrix containing two-site density matrices.
- TensjjTYPE(qtensor), inout
Tensor representing the current site to be contracted.
- iiINTEGER, inout
Index of the left site of the density matrix kept in Theta.
- jjINTEGER, inout
Index of the tensors Tensjj.
- llINTEGER, inout
Number of sites in the system, used to detect when propagation is stopped.
- ThetaTYPE(qtensor), inout
Tensor containing the contractions from the left part of the system.
- PhaseOpTYPE(qtensor), inout
Phase operator to be contracted within the propagation.
- hasphaseLOGICAL, inout
Flag if phase operator is present (.true.).
- skipLOGICAL, OPTIONAL, inout
If present and true, the measurement of the density matrix is skiped and it is only propagated.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_meas_lptn_qtensorc_qtensor()[source]¶
fortran-subroutine - September 2017 (dj) Measure two-site reduced density matrix for sites i and j and propagate for the next measurement.
Arguments
- RhosijTYPE(qtensorc)(*, *), inout
Matrix containing two-site density matrices.
- TensjjTYPE(qtensorc), inout
Tensor representing the current site to be contracted.
- iiINTEGER, inout
Index of the left site of the density matrix kept in Theta.
- jjINTEGER, inout
Index of the tensors Tensjj.
- llINTEGER, inout
Number of sites in the system, used to detect when propagation is stopped.
- ThetaTYPE(qtensorc), inout
Tensor containing the contractions from the left part of the system.
- PhaseOpTYPE(qtensor), inout
Phase operator to be contracted within the propagation.
- hasphaseLOGICAL, inout
Flag if phase operator is present (.true.).
- skipLOGICAL, OPTIONAL, inout
If present and true, the measurement of the density matrix is skiped and it is only propagated.
Source Code
show / hide f90 code
- LPTNOps_f90.rhoij_meas_lptn_qtensorc_qtensorc()[source]¶
fortran-subroutine - September 2017 (dj) Measure two-site reduced density matrix for sites i and j and propagate for the next measurement.
Arguments
- RhosijTYPE(qtensorc)(*, *), inout
Matrix containing two-site density matrices.
- TensjjTYPE(qtensorc), inout
Tensor representing the current site to be contracted.
- iiINTEGER, inout
Index of the left site of the density matrix kept in Theta.
- jjINTEGER, inout
Index of the tensors Tensjj.
- llINTEGER, inout
Number of sites in the system, used to detect when propagation is stopped.
- ThetaTYPE(qtensorc), inout
Tensor containing the contractions from the left part of the system.
- PhaseOpTYPE(qtensorc), inout
Phase operator to be contracted within the propagation.
- hasphaseLOGICAL, inout
Flag if phase operator is present (.true.).
- skipLOGICAL, OPTIONAL, inout
If present and true, the measurement of the density matrix is skiped and it is only propagated.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_red_lptn()[source]¶
fortran-subroutine - June 2018 (dj) Build a general reduced density matrix on multiple sites.
Arguments
- RedTYPE(tensor), out
On exit the reduced density matrix with the sites specified. The first half of the indices corresponds to the kets on each site. The second half corresponds to the bra-indices.
- RhoTYPE(lptn), in
LPTN to build reduced density matrix from.
- sitesINTEGER(*), in
List of sites for the reduced density matrix.
- contLOGICAL, in
Indicator if sites are one continuous block of indices (true) or separated by indices to be traced out (false).
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- errREAL, out
Truncation error for tracking it from calling routine.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_red_lptnc()[source]¶
fortran-subroutine - June 2018 (dj) Build a general reduced density matrix on multiple sites.
Arguments
- RedTYPE(tensorc), out
On exit the reduced density matrix with the sites specified. The first half of the indices corresponds to the kets on each site. The second half corresponds to the bra-indices.
- RhoTYPE(lptnc), in
LPTN to build reduced density matrix from.
- sitesINTEGER(*), in
List of sites for the reduced density matrix.
- contLOGICAL, in
Indicator if sites are one continuous block of indices (true) or separated by indices to be traced out (false).
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- errREAL, out
Truncation error for tracking it from calling routine.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_red_qlptn()[source]¶
fortran-subroutine - June 2018 (dj) Build a general reduced density matrix on multiple sites.
Arguments
- RedTYPE(qtensor), out
On exit the reduced density matrix with the sites specified. The first half of the indices corresponds to the kets on each site. The second half corresponds to the bra-indices.
- RhoTYPE(qlptn), in
LPTN to build reduced density matrix from.
- sitesINTEGER(*), in
List of sites for the reduced density matrix.
- contLOGICAL, in
Indicator if sites are one continuous block of indices (true) or separated by indices to be traced out (false).
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- errREAL, out
Truncation error for tracking it from calling routine.
Source Code
show / hide f90 code
- LPTNOps_f90.rho_red_qlptnc()[source]¶
fortran-subroutine - June 2018 (dj) Build a general reduced density matrix on multiple sites.
Arguments
- RedTYPE(qtensorc), out
On exit the reduced density matrix with the sites specified. The first half of the indices corresponds to the kets on each site. The second half corresponds to the bra-indices.
- RhoTYPE(qlptnc), in
LPTN to build reduced density matrix from.
- sitesINTEGER(*), in
List of sites for the reduced density matrix.
- contLOGICAL, in
Indicator if sites are one continuous block of indices (true) or separated by indices to be traced out (false).
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for MPS). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- errREAL, out
Truncation error for tracking it from calling routine.
Source Code
show / hide f90 code
- LPTNOps_f90.scale_real_lptn()[source]¶
fortran-subroutine - June 2017 (dj, updated) Rescale Rho by some factor. The square is taken since X from rho = xxdagger is normalized.
Arguments
- scalefactorreal, in
some real number to scale LPTN
- RhoTYPE(lptn), inout
Mutliply the orthogonality center (or 1 if no orthogonality center) with a scalar factor).
Details
The tensor is multiplied with sqrt(sc), after the contraction with the complex conjugate this step results in sc.
Source Code
show / hide f90 code
- LPTNOps_f90.scale_real_lptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Rescale Rho by some factor. The square is taken since X from rho = xxdagger is normalized.
Arguments
- scalefactorreal, in
some real number to scale LPTN
- RhoTYPE(lptnc), inout
Mutliply the orthogonality center (or 1 if no orthogonality center) with a scalar factor).
Details
The tensor is multiplied with sqrt(sc), after the contraction with the complex conjugate this step results in sc.
Source Code
show / hide f90 code
- LPTNOps_f90.scale_real_qlptn()[source]¶
fortran-subroutine - June 2017 (dj, updated) Rescale Rho by some factor. The square is taken since X from rho = xxdagger is normalized.
Arguments
- scalefactorreal, in
some real number to scale LPTN
- RhoTYPE(qlptn), inout
Mutliply the orthogonality center (or 1 if no orthogonality center) with a scalar factor).
Details
The tensor is multiplied with sqrt(sc), after the contraction with the complex conjugate this step results in sc.
Source Code
show / hide f90 code
- LPTNOps_f90.scale_real_qlptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Rescale Rho by some factor. The square is taken since X from rho = xxdagger is normalized.
Arguments
- scalefactorreal, in
some real number to scale LPTN
- RhoTYPE(qlptnc), inout
Mutliply the orthogonality center (or 1 if no orthogonality center) with a scalar factor).
Details
The tensor is multiplied with sqrt(sc), after the contraction with the complex conjugate this step results in sc.
Source Code
show / hide f90 code
- LPTNOps_f90.scale_complex_lptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Rescale Rho by some factor. The square is taken since X from rho = xxdagger is normalized.
Arguments
- scalefactorcomplex, in
some real number to scale LPTN
- RhoTYPE(lptnc), inout
Mutliply the orthogonality center (or 1 if no orthogonality center) with a scalar factor).
Details
The tensor is multiplied with sqrt(sc), after the contraction with the complex conjugate this step results in sc.
Source Code
show / hide f90 code
- LPTNOps_f90.scale_complex_qlptnc()[source]¶
fortran-subroutine - June 2017 (dj, updated) Rescale Rho by some factor. The square is taken since X from rho = xxdagger is normalized.
Arguments
- scalefactorcomplex, in
some real number to scale LPTN
- RhoTYPE(qlptnc), inout
Mutliply the orthogonality center (or 1 if no orthogonality center) with a scalar factor).
Details
The tensor is multiplied with sqrt(sc), after the contraction with the complex conjugate this step results in sc.
Source Code
show / hide f90 code
- LPTNOps_f90.set_q_kappa_qtensor()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link.
Arguments
- QtTYPE(qtensor), inout
Tensor to be modified. The quantum numbers of the third leg connecting to the complex conjugate tensor of the LPTN will be set.
Source Code
show / hide f90 code
- LPTNOps_f90.set_q_kappa_qtensorc()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link.
Arguments
- QtTYPE(qtensorc), inout
Tensor to be modified. The quantum numbers of the third leg connecting to the complex conjugate tensor of the LPTN will be set.
Source Code
show / hide f90 code
- LPTNOps_f90.set_q_kappa_tensor()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link.
Arguments
- TensTYPE(tensor), inout
Dummy subroutine to provide interface.
Source Code
show / hide f90 code
- LPTNOps_f90.set_q_kappa_tensorc()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link.
Arguments
- TensTYPE(tensorc), inout
Dummy subroutine to provide interface.
Source Code
show / hide f90 code
- LPTNOps_f90.set_0_kappa_qtensor()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link to zero.
Arguments
- QtTYPE(qtensor), inout
Tensor to be modified. The quantum numbers of the third leg connecting to the complex conjugate tensor of the LPTN will be set to zero.
Source Code
show / hide f90 code
- LPTNOps_f90.set_0_kappa_qtensorc()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link to zero.
Arguments
- QtTYPE(qtensorc), inout
Tensor to be modified. The quantum numbers of the third leg connecting to the complex conjugate tensor of the LPTN will be set to zero.
Source Code
show / hide f90 code
- LPTNOps_f90.set_0_kappa_tensor()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link to zero.
Arguments
- TensTYPE(tensor), inout
Dummy subroutine to provide interface.
Source Code
show / hide f90 code
- LPTNOps_f90.set_0_kappa_tensorc()[source]¶
fortran-subroutine - October 2017 (dj) Set the quantum number on the kappa link to zero.
Arguments
- TensTYPE(tensorc), inout
Dummy subroutine to provide interface.
Source Code
show / hide f90 code
- LPTNOps_f90.swap_lptn_tensor()[source]¶
fortran-subroutine - May 2018 (dj) Swap two nearest-neighbor sites in an LPTN.
Arguments
- TensaTYPE(tensor), inout
The second index of this tensor is on exit contained in Tensb.
- TensbTYPE(tensor), inout
The second index of this tensor is on exit contained in Tensa.
- LamTYPE(tensor), inout
On exit, new singular values at splitting Tensa/Tensb.
- dirINTEGER, in
Multiply singular values to Tensa for dir < 0 and to Tensa for dir > 0 to Tensb.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.swap_lptn_tensorc()[source]¶
fortran-subroutine - May 2018 (dj) Swap two nearest-neighbor sites in an LPTN.
Arguments
- TensaTYPE(tensorc), inout
The second index of this tensor is on exit contained in Tensb.
- TensbTYPE(tensorc), inout
The second index of this tensor is on exit contained in Tensa.
- LamTYPE(tensor), inout
On exit, new singular values at splitting Tensa/Tensb.
- dirINTEGER, in
Multiply singular values to Tensa for dir < 0 and to Tensa for dir > 0 to Tensb.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.swap_lptn_qtensor()[source]¶
fortran-subroutine - May 2018 (dj) Swap two nearest-neighbor sites in an LPTN.
Arguments
- TensaTYPE(qtensor), inout
The second index of this tensor is on exit contained in Tensb.
- TensbTYPE(qtensor), inout
The second index of this tensor is on exit contained in Tensa.
- LamTYPE(qtensor), inout
On exit, new singular values at splitting Tensa/Tensb.
- dirINTEGER, in
Multiply singular values to Tensa for dir < 0 and to Tensa for dir > 0 to Tensb.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.swap_lptn_qtensorc()[source]¶
fortran-subroutine - May 2018 (dj) Swap two nearest-neighbor sites in an LPTN.
Arguments
- TensaTYPE(qtensorc), inout
The second index of this tensor is on exit contained in Tensb.
- TensbTYPE(qtensorc), inout
The second index of this tensor is on exit contained in Tensa.
- LamTYPE(qtensor), inout
On exit, new singular values at splitting Tensa/Tensb.
- dirINTEGER, in
Multiply singular values to Tensa for dir < 0 and to Tensa for dir > 0 to Tensb.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.transposed_lptn()[source]¶
fortran-subroutine - June 2018 (dj) Permute the local Hilbert spaces.
Arguments
- PsiTYPE(lptn), inout
Permute LPTN sites in-place. Error can be introduced due to SVDs.
- permINTEGER(*), in
Permutation array has length equal to the number of sites L in the LPTN with unique entries 1 to L.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.transposed_lptnc()[source]¶
fortran-subroutine - June 2018 (dj) Permute the local Hilbert spaces.
Arguments
- PsiTYPE(lptnc), inout
Permute LPTN sites in-place. Error can be introduced due to SVDs.
- permINTEGER(*), in
Permutation array has length equal to the number of sites L in the LPTN with unique entries 1 to L.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.transposed_qlptn()[source]¶
fortran-subroutine - June 2018 (dj) Permute the local Hilbert spaces.
Arguments
- PsiTYPE(qlptn), inout
Permute LPTN sites in-place. Error can be introduced due to SVDs.
- permINTEGER(*), in
Permutation array has length equal to the number of sites L in the LPTN with unique entries 1 to L.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.transposed_qlptnc()[source]¶
fortran-subroutine - June 2018 (dj) Permute the local Hilbert spaces.
Arguments
- PsiTYPE(qlptnc), inout
Permute LPTN sites in-place. Error can be introduced due to SVDs.
- permINTEGER(*), in
Permutation array has length equal to the number of sites L in the LPTN with unique entries 1 to L.
- truncREAL, OPTIONAL, in
Keep infidelity below trunc (infidelity is sum of squared discarded singular values for LPTN). Default does not truncate.
- ncutINTEGER, OPTIONAL, in
Maximal bond dimension / number of singular values. Default is keeping all singular values.
- cerrREAL, OPTIONAL, inout
Cumulative error from SVDs.
Source Code
show / hide f90 code
- LPTNOps_f90.write_lptn()[source]¶
fortran-subroutine - August 2015 (dj) Write an LPTN to file
Arguments
- RhoTYPE(lptn), in
save this LPTN
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’), human readable (‘H’), or user-friendly (“6”).
Details
For details see the description of the order which the information is written, please see read_lptn
Source Code
show / hide f90 code
- LPTNOps_f90.write_lptnc()[source]¶
fortran-subroutine - August 2015 (dj) Write an LPTN to file
Arguments
- RhoTYPE(lptnc), in
save this LPTN
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’), human readable (‘H’), or user-friendly (“6”).
Details
For details see the description of the order which the information is written, please see read_lptnc
Source Code
show / hide f90 code
- LPTNOps_f90.write_qlptn()[source]¶
fortran-subroutine - August 2015 (dj) Write an LPTN to file
Arguments
- RhoTYPE(qlptn), in
save this LPTN
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’), human readable (‘H’), or user-friendly (“6”).
Details
For details see the description of the order which the information is written, please see read_qlptn
Source Code
show / hide f90 code
- LPTNOps_f90.write_qlptnc()[source]¶
fortran-subroutine - August 2015 (dj) Write an LPTN to file
Arguments
- RhoTYPE(qlptnc), in
save this LPTN
- unitINTEGER, in
open file on this unit
- formCHARACTER, in
Binary (‘B’), human readable (‘H’), or user-friendly (“6”).
Details
For details see the description of the order which the information is written, please see read_qlptnc
Source Code
show / hide f90 code