Difference between revisions of "List of functions"
Jump to navigation
Jump to search
m |
|||
Line 1: | Line 1: | ||
This is a '''list of functions''' provided by [[QETLAB]], arranged by category. If you would prefer an alphabetical list of all functions please see [[:Category:Functions|this page]]. Brief descriptions of these functions are provided here, as well as links to their documentation pages, where full details and numerous examples can be found. | This is a '''list of functions''' provided by [[QETLAB]], arranged by category. If you would prefer an alphabetical list of all functions please see [[:Category:Functions|this page]]. Brief descriptions of these functions are provided here, as well as links to their documentation pages, where full details and numerous examples can be found. | ||
− | ==Basic | + | ==Basic operations== |
* <tt>[[IsPSD]]</tt>: Determines whether or not a matrix is [[positive semidefinite]] | * <tt>[[IsPSD]]</tt>: Determines whether or not a matrix is [[positive semidefinite]] | ||
* <tt>[[Tensor]]</tt>: [[Kronecker product|Kronecker tensor product]] of two or more matrices | * <tt>[[Tensor]]</tt>: [[Kronecker product|Kronecker tensor product]] of two or more matrices | ||
* <tt>[[TensorSum]]</tt>: Computes a vector or operator from its tensor decomposition | * <tt>[[TensorSum]]</tt>: Computes a vector or operator from its tensor decomposition | ||
− | ==Entanglement and | + | ==Entanglement and separability== |
* <tt>[[FilterNormalForm]]</tt>: Computes the [[filter normal form]] of an operator | * <tt>[[FilterNormalForm]]</tt>: Computes the [[filter normal form]] of an operator | ||
* <tt>[[IsEntanglingGate]]</tt>: Determines if a [[unitary]] is an [[entangling gate]] | * <tt>[[IsEntanglingGate]]</tt>: Determines if a [[unitary]] is an [[entangling gate]] | ||
Line 32: | Line 32: | ||
* <tt>[[TraceNorm]]</tt>: Computes the [[trace norm]] of an operator | * <tt>[[TraceNorm]]</tt>: Computes the [[trace norm]] of an operator | ||
− | ==Permutations and | + | ==Permutations and symmetry of subsystems== |
* <tt>[[AntisymmetricProjection]]</tt>: Produces the [[projection]] onto the [[antisymmetric subspace]] | * <tt>[[AntisymmetricProjection]]</tt>: Produces the [[projection]] onto the [[antisymmetric subspace]] | ||
* <tt>[[PermutationOperator]]</tt>: Produces a [[unitary operator]] that permutes subsystems | * <tt>[[PermutationOperator]]</tt>: Produces a [[unitary operator]] that permutes subsystems | ||
Line 40: | Line 40: | ||
* <tt>[[SymmetricProjection]]</tt>: Produces the projection onto the symmetric subspace | * <tt>[[SymmetricProjection]]</tt>: Produces the projection onto the symmetric subspace | ||
− | ==Random | + | ==Random things== |
* <tt>[[RandomDensityMatrix]]</tt>: Generates a random [[density matrix]] | * <tt>[[RandomDensityMatrix]]</tt>: Generates a random [[density matrix]] | ||
* <tt>[[RandomStateVector]]</tt>: Generates a random pure state vector | * <tt>[[RandomStateVector]]</tt>: Generates a random pure state vector | ||
Line 46: | Line 46: | ||
* <tt>[[RandomUnitary]]</tt>: Generates a random [[unitary]] or [[orthogonal matrix]] | * <tt>[[RandomUnitary]]</tt>: Generates a random [[unitary]] or [[orthogonal matrix]] | ||
− | ==Special | + | ==Special states, vectors, and operators== |
* <tt>[[ChessboardState]]</tt>: Produces a chessboard state | * <tt>[[ChessboardState]]</tt>: Produces a chessboard state | ||
* <tt>[[FourierMatrix]]</tt>: Generates the [[unitary matrix]] that implements the [[quantum Fourier transform]] | * <tt>[[FourierMatrix]]</tt>: Generates the [[unitary matrix]] that implements the [[quantum Fourier transform]] | ||
Line 72: | Line 72: | ||
* <tt>[[Twirl]]</tt>: Twirls a bipartite or multipartite operator | * <tt>[[Twirl]]</tt>: Twirls a bipartite or multipartite operator | ||
− | ==Unextendible | + | ==Unextendible product bases== |
* <tt>[[IsUPB]]</tt>: Determines whether or not a given set of vectors form an [[unextendible product basis]] | * <tt>[[IsUPB]]</tt>: Determines whether or not a given set of vectors form an [[unextendible product basis]] | ||
* <tt>[[MinUPBSize]]</tt>: Gives the minimum cardinality of an [[unextendible product basis]] in given dimensions | * <tt>[[MinUPBSize]]</tt>: Gives the minimum cardinality of an [[unextendible product basis]] in given dimensions | ||
Line 84: | Line 84: | ||
* <tt>[[Purity]]</tt>: Computes the purity of a quantum state | * <tt>[[Purity]]</tt>: Computes the purity of a quantum state | ||
− | ==Helper | + | ==Helper functions== |
* <tt>[[iden]]</tt>: Computes a sparse or full identity matrix | * <tt>[[iden]]</tt>: Computes a sparse or full identity matrix | ||
* <tt>[[jacobi_poly]]</tt>: Computes the coefficients of Jacobi polynomials | * <tt>[[jacobi_poly]]</tt>: Computes the coefficients of Jacobi polynomials |
Revision as of 14:58, 22 September 2014
This is a list of functions provided by QETLAB, arranged by category. If you would prefer an alphabetical list of all functions please see this page. Brief descriptions of these functions are provided here, as well as links to their documentation pages, where full details and numerous examples can be found.
Basic operations
- IsPSD: Determines whether or not a matrix is positive semidefinite
- Tensor: Kronecker tensor product of two or more matrices
- TensorSum: Computes a vector or operator from its tensor decomposition
Entanglement and separability
- FilterNormalForm: Computes the filter normal form of an operator
- IsEntanglingGate: Determines if a unitary is an entangling gate
- IsPPT: Determines whether or not a matrix has positive partial transpose
- IsProductOperator: Determines if an operator is an elementary tensor
- IsProductVector: Determines if a pure state is a product vector
- IsSeparable: Determines whether or not a bipartite operator is separable
- OperatorSchmidtDecomposition: Computes the operator Schmidt decomposition of a bipartite operator
- OperatorSchmidtRank: Computes the operator Schmidt rank of a bipartite operator
- SchmidtDecomposition: Computes the Schmidt decomposition of a bipartite vector
- SchmidtNumber: (coming soon)
- SchmidtRank: Computes the Schmidt rank of a bipartite vector
- SymmetricExtension: Determines whether or not an operator has a symmetric extension
- SymmetricInnerExtension: Determines whether or not an operator has a symmetric inner extension
Norms
- CBNorm: Computes the completely bounded norm of a superoperator
- DiamondNorm: Computes the diamond norm of a superoperator
- kpNorm: Computes the (k,p)-norm of a vector or matrix
- kpNormDual: Computes the dual of the (k,p)-norm of a vector or matrix
- KyFanNorm: Computes the Ky Fan k-norm of an operator
- SkOperatorNorm: Bounds the S(k)-norm of an operator
- SkVectorNorm: Computes the s(k)-norm of a vector
- SchattenNorm: Computes the Schatten p-norm of an operator
- TraceNorm: Computes the trace norm of an operator
Permutations and symmetry of subsystems
- AntisymmetricProjection: Produces the projection onto the antisymmetric subspace
- PermutationOperator: Produces a unitary operator that permutes subsystems
- PermuteSystems: Permutes subsystems within a state or operator
- Swap: Swaps two subsystems within a state or operator
- SwapOperator: Produces a unitary operator that swaps two subsystems
- SymmetricProjection: Produces the projection onto the symmetric subspace
Random things
- RandomDensityMatrix: Generates a random density matrix
- RandomStateVector: Generates a random pure state vector
- RandomSuperoperator: (coming soon)
- RandomUnitary: Generates a random unitary or orthogonal matrix
Special states, vectors, and operators
- ChessboardState: Produces a chessboard state
- FourierMatrix: Generates the unitary matrix that implements the quantum Fourier transform
- GellMann: Produces a Gell-Mann operator
- GenGellMann: Produces a generalized Gell-Mann operator
- GenPauli: Produces a generalized Pauli operator
- IsotropicState: Produces an isotropic state
- MaxEntangled: Produces a maximally entangled bipartite pure state
- Pauli: Produces a Pauli operator
- WernerState: Produces a Werner state
Superoperators
- ApplyMap: Applies a superoperator to an operator
- ChoiMatrix: Computes the Choi matrix of a superoperator
- ChoiMap: Produces the Choi map or one of its generalizations
- ComplementaryMap: Computes the complementary map of a superoperator
- DualMap: Computes the dual of a superoperator in the Hilbert-Schmidt inner product
- IsCP: Determines whether or not a superoperator is completely positive
- IsHermPreserving: Determines whether or not a superoperator is Hermiticity preserving
- KrausOperators: Computes a set of Kraus operators for a superoperator
- PartialMap: Applies a superoperator to a subsystem of an operator
- PartialTrace: Computes the partial trace of a matrix
- PartialTranspose: Computes the partial transpose of a matrix
- Realignment: Computes the realignment of a bipartite operator
- Twirl: Twirls a bipartite or multipartite operator
Unextendible product bases
- IsUPB: Determines whether or not a given set of vectors form an unextendible product basis
- MinUPBSize: Gives the minimum cardinality of an unextendible product basis in given dimensions
- UPB: Generates an unextendible product basis
Miscellaneous
- Commutant: Computes the commutant of a set of matrices
- IsTotallyNonsingular: Determines whether or not a matrix is totally nonsingular
- IsTotallyPositive: Determines whether or not a matrix is totally positive
- Majorizes: Determines whether or not a vector or matrix majorizes another
- Purity: Computes the purity of a quantum state
Helper functions
- iden: Computes a sparse or full identity matrix
- jacobi_poly: Computes the coefficients of Jacobi polynomials
- kron: A faster version of MATLAB's kron function
- normalize_cols: Scales the columns of a matrix to have norm 1
- opt_args: Handles optional input arguments for functions
- opt_disp: Display a message to the user (sometimes)
- perm_inv: Computes the inverse of a permutation
- perm_sign: Computes the sign of a permutation
- sk_iterate: Computes a lower bound of the S(k)-norm of an operator
- spnull: Returns a sparse orthonormal basis for the null space
- sporth: Returns a sparse orthonormal basis for the range