Difference between revisions of "SchmidtDecomposition"
Jump to navigation
Jump to search
m |
(remove red links) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{Function | {{Function | ||
|name=SchmidtDecomposition | |name=SchmidtDecomposition | ||
− | |desc=Computes the | + | |desc=Computes the Schmidt decomposition of a bipartite vector |
− | + | |rel=[[IsProductVector]]<br />[[OperatorSchmidtDecomposition]]<br />[[SchmidtRank]] | |
− | |rel=[[IsProductVector]]<br />[[OperatorSchmidtDecomposition]]<br />[[SchmidtRank]] | + | |cat=[[List of functions#Entanglement_and_separability|Entanglement and separability]] |
− | |upd= | + | |upd=December 1, 2012 |
− | |v= | + | |v=0.50}} |
− | <tt>'''SchmidtDecomposition'''</tt> is a [[List of functions|function]] that computes the | + | <tt>'''SchmidtDecomposition'''</tt> is a [[List of functions|function]] that computes the Schmidt decomposition of a bipartite vector. The user may specify how many terms in the Schmidt decomposition they wish to be returned. |
==Syntax== | ==Syntax== | ||
Line 16: | Line 16: | ||
==Argument descriptions== | ==Argument descriptions== | ||
===Input arguments=== | ===Input arguments=== | ||
− | * <tt>VEC</tt>: A | + | * <tt>VEC</tt>: A bipartite vector (e.g., a pure quantum state) to have its Schmidt decomposition computed. |
* <tt>DIM</tt> (optional, by default has both subsystems of equal dimension): A 1-by-2 vector containing the dimensions of the subsystems that <tt>VEC</tt> lives on. | * <tt>DIM</tt> (optional, by default has both subsystems of equal dimension): A 1-by-2 vector containing the dimensions of the subsystems that <tt>VEC</tt> lives on. | ||
* <tt>K</tt> (optional, default 0): A flag that determines how many terms in the Schmidt decomposition should be computed. If <tt>K</tt> = 0 then all terms with non-zero [[Schmidt coefficient]]s are computed. If <tt>K</tt> = -1 then all terms (including zero Schmidt coefficients) are computed. If <tt>K</tt> > 0 then the <tt>K</tt> terms with largest Schmidt coefficients are computed. | * <tt>K</tt> (optional, default 0): A flag that determines how many terms in the Schmidt decomposition should be computed. If <tt>K</tt> = 0 then all terms with non-zero [[Schmidt coefficient]]s are computed. If <tt>K</tt> = -1 then all terms (including zero Schmidt coefficients) are computed. If <tt>K</tt> > 0 then the <tt>K</tt> terms with largest Schmidt coefficients are computed. | ||
Line 22: | Line 22: | ||
===Output arguments=== | ===Output arguments=== | ||
* <tt>S</tt>: A vector containing the Schmidt coefficients of <tt>VEC</tt>. | * <tt>S</tt>: A vector containing the Schmidt coefficients of <tt>VEC</tt>. | ||
− | * <tt>U</tt> (optional): | + | * <tt>U</tt> (optional): A matrix whose columns are the left Schmidt vectors of <tt>VEC</tt>. |
− | * <tt>V</tt> (optional): | + | * <tt>V</tt> (optional): A matrix whose columns are the right Schmidt vectors of <tt>VEC</tt>. |
==Examples== | ==Examples== | ||
− | + | The following code returns the Schmidt decomposition of the [[MaxEntangled|standard maximally-entangled pure state]] $\frac{1}{\sqrt{d}}\sum_j|j\rangle\otimes|j\rangle \in \mathbb{C}^d \otimes \mathbb{C}^d$ in the $d = 3$ case: | |
+ | <syntaxhighlight> | ||
+ | >> [s,u,v] = SchmidtDecomposition(MaxEntangled(3)) | ||
+ | |||
+ | s = | ||
+ | |||
+ | 0.5774 | ||
+ | 0.5774 | ||
+ | 0.5774 | ||
+ | |||
+ | |||
+ | u = | ||
+ | |||
+ | 1 0 0 | ||
+ | 0 1 0 | ||
+ | 0 0 1 | ||
+ | |||
+ | |||
+ | v = | ||
+ | |||
+ | 1 0 0 | ||
+ | 0 1 0 | ||
+ | 0 0 1 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | {{SourceCode|name=SchmidtDecomposition}} |
Latest revision as of 19:16, 13 April 2015
SchmidtDecomposition | |
Computes the Schmidt decomposition of a bipartite vector | |
Other toolboxes required | none |
---|---|
Related functions | IsProductVector OperatorSchmidtDecomposition SchmidtRank |
Function category | Entanglement and separability |
SchmidtDecomposition is a function that computes the Schmidt decomposition of a bipartite vector. The user may specify how many terms in the Schmidt decomposition they wish to be returned.
Syntax
- S = SchmidtDecomposition(VEC)
- S = SchmidtDecomposition(VEC,DIM)
- S = SchmidtDecomposition(VEC,DIM,K)
- [S,U,V] = SchmidtDecomposition(VEC,DIM,K)
Argument descriptions
Input arguments
- VEC: A bipartite vector (e.g., a pure quantum state) to have its Schmidt decomposition computed.
- DIM (optional, by default has both subsystems of equal dimension): A 1-by-2 vector containing the dimensions of the subsystems that VEC lives on.
- K (optional, default 0): A flag that determines how many terms in the Schmidt decomposition should be computed. If K = 0 then all terms with non-zero Schmidt coefficients are computed. If K = -1 then all terms (including zero Schmidt coefficients) are computed. If K > 0 then the K terms with largest Schmidt coefficients are computed.
Output arguments
- S: A vector containing the Schmidt coefficients of VEC.
- U (optional): A matrix whose columns are the left Schmidt vectors of VEC.
- V (optional): A matrix whose columns are the right Schmidt vectors of VEC.
Examples
The following code returns the Schmidt decomposition of the standard maximally-entangled pure state $\frac{1}{\sqrt{d}}\sum_j|j\rangle\otimes|j\rangle \in \mathbb{C}^d \otimes \mathbb{C}^d$ in the $d = 3$ case:
>> [s,u,v] = SchmidtDecomposition(MaxEntangled(3))
s =
0.5774
0.5774
0.5774
u =
1 0 0
0 1 0
0 0 1
v =
1 0 0
0 1 0
0 0 1
Source code
Click here to view this function's source code on github.