Tools /
## MpAuxMatrixThe ## Synopsis
Given the supplied infinite wavefunction and lattice file, the main arguments are a list of operators and output files, which can be either product MPOs, triangular MPOs, or finite operators. The matrix elements of the operator are evaluated, and written into the file in sparse format of 4 columns: row, column, real, imag. It is also possible to use a polar format with the The numbering of the rows/columns is 1-based, and is in the order of density matrices, from largest to smallest. Because the matrices can be very big, it is often useful to just show a few of the matrix elements corresponding to the largest eigenvalues, which can be done with the ## Options
show help message
`--wavefunction`
Use this infinite MPS (required)
`--lattice`
Parse operators from this lattice file (required)
`--product` `file=operator`
Determine the matrix elements of the product MPO `operator` , and write them to `file`
`--triangular` `file=operator`
Determine the matrix elements of the product MPO `operator` , and write them to `file`
Only output a subset of matrix elements, in density matrix order with 1-based indexing.
Only relevant for triangular MPOs, output the component of the polynomial for this degree. Defaults to degree 0.
''' Write the matrix elements in <magnitude> <argument> format
''' Display the argument in radians instead of degrees [implies `--polar` ]
## Examples- Calculate the Hamiltonian matrix elements
spinchain-u1 -o lat mp-idmrg-s3e -H lat:"H_J1" -m 10x100 -q 0 -u 2 --create -w psi mp-aux-matrix -w psi -l lat -t file="H_J1" cat file - As above but only output the 4x4 matrix corresponding to the largest density matrix eigenvalues
`mp-aux-matrix -w psi -l lat -t file="H_J1" --restrict 1,2,3,4` - If we calculate the degree 1 component of the Hamiltonian, this is just the energy * identity matrix
`mp-aux-matrix -w psi -l lat -t file="H_J1" --degree 1`
This command is very useful for calculating the matrix elements of SPT symmetry operators, so an example should be added. ## NotesFor triangular operators, the toolkit chooses to fix the trace to be zero (strictly speaking, the trace weighted by the density matrix, so that {$\mathrm{Tr} A \rho = 0$}). This is a somewhat arbitrary choice, since this value is just a constant boundary term and could be taken to be anything, which amounts to a constant shift of the operator {$A \rightarrow A + xI$}. Finite operators are not yet supported. Currently this tool only constructs operators at the edge of the unit cell; other partitions are not yet supported. ## See also |

Page last modified on July 09, 2022, at 12:36 PM