IsotropicState

From QETLAB
Revision as of 19:34, 8 January 2013 by Nathaniel (talk | contribs) (Created page with "{{Function |name=IsotropicState |desc=Produces an isotropic state |req=iden<br />MaxEntangled<br />opt_args |rel=WernerState |upd=January 7, 2013 |v=1.00}}...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
IsotropicState
Produces an isotropic state

Other toolboxes required iden
MaxEntangled
opt_args
Related functions WernerState

IsotropicState is a function that returns the isotropic state requested by the user. The isotropic state may be either full or sparse.

Syntax

  • RHO = IsotropicState(DIM,ALPHA)
  • RHO = IsotropicState(DIM,ALPHA,SP)

Argument descriptions

  • DIM: Dimension of the local subsystems on which RHO acts.
  • ALPHA: A parameter that specifies which isotropic state is to be returned. In particular, RHO = (1-ALPHA)*I/DIM^2 + ALPHA*E, where I is the identity operator and E is the projection onto the standard maximally-entangled pure state on two copies of DIM-dimensional space. In order for RHO to be positive semidefinite (and hence a valid density matrix), it must be the case that -1/(DIM^2-1) ≤ ALPHA ≤ 1.
  • SP (optional, default 0): A flag (either 1 or 0) indicating that the isotropic state produced should or should not be sparse.

Examples

A qutrit isotropic state

To generate the isotropic state with parameter $\alpha = 1/2$, the following code suffices:

>> IsotropicState(3,1/2)

ans =

    0.2222         0         0         0    0.1667         0         0         0    0.1667
         0    0.0556         0         0         0         0         0         0         0
         0         0    0.0556         0         0         0         0         0         0
         0         0         0    0.0556         0         0         0         0         0
    0.1667         0         0         0    0.2222         0         0         0    0.1667
         0         0         0         0         0    0.0556         0         0         0
         0         0         0         0         0         0    0.0556         0         0
         0         0         0         0         0         0         0    0.0556         0
    0.1667         0         0         0    0.1667         0         0         0    0.2222

Isotropic states in general have a lot of zero entries, so you will usually save a lot of memory by specifying SP = 1, which causes the isotropic state that is generated to be sparse:

>> IsotropicState(3,1/2,1)

ans =

   (1,1)       0.2222
   (5,1)       0.1667
   (9,1)       0.1667
   (2,2)       0.0556
   (3,3)       0.0556
   (4,4)       0.0556
   (1,5)       0.1667
   (5,5)       0.2222
   (9,5)       0.1667
   (6,6)       0.0556
   (7,7)       0.0556
   (8,8)       0.0556
   (1,9)       0.1667
   (5,9)       0.1667
   (9,9)       0.2222