|
Namespaces |
| namespace | su2 |
Typedefs |
| typedef std::complex< double > | cdouble |
Functions |
| void | mat_to_cart3 (const Matrix< cdouble > &U, double *c) |
| | Calculate cartesian form of the 3D Bloch vector for U.
|
| void | cart3_to_mat (double *c, Matrix< cdouble > &U) |
| | Construct a matrix U from the 3D cartesian Bloch vector.
|
| void | mat_to_polar3 (const Matrix< cdouble > &U, double *p) |
| | Calculate polar form of the 3D Bloch vector for U.
|
| void | polar3_to_mat (double *p, Matrix< cdouble > &U) |
| | Construct a matrix U from the 3D polar Bloch vector.
|
| void | polar_to_cart3 (double *p, double *c) |
| | Convert a polar 3D vector to a cartesian 3D vector.
|
| void | cart_to_polar3 (double *c, double *p) |
| | Convert a cartesian 3D vector to a polar 3D vector.
|
| void | x_factor (double *z, double *x, double *y) |
| | Given a 3D cartesian vector z, find vectors x,y s.t. .
|
| void | mat_to_cart4 (const Matrix< cdouble > &U, double *a) |
| | Calculate cartesian form of the 4D unit vector for U.
|
| void | cart4_to_mat (double *a, Matrix< cdouble > &U) |
| | Construct a matrix U from the 4D cartesian unit vector.
|
| void | mat_to_polar4 (const Matrix< cdouble > &, double *) |
| | Calculate the polar form of the 4D unit vector for U.
|
| void | polar4_to_mat (double *, Matrix< cdouble > &) |
| | Construct a matrix U from the 4D polar unit vector.
|
| void | polar_to_cart4 (double *, double *) |
| | Convert a polar form 4D vector to cartesian form.
|
| void | cart_to_polar4 (double *, double *) |
| | Convert a cartesian form 4D vector to polar form.
|
| void | polar_to_cart4 (polar &p, double *r) |
| | Legacy conversion from a 4D polar struct to cartesian form.
|
| void | polar4_to_mat (polar &, Matrix< cdouble > &) |
| | Legacy conversion from a 4D cartesian vector to a polar struct.
|
| void | eig_vals (Matrix< cdouble > &U, cdouble *evals) |
| | Quick and dirty calculation of the eigenvalues of an SU(2) matrix.
|
| void | eig_vecs (Matrix< cdouble > &U, cdouble *evecs) |
| | Quick and dirty calculation of the eigenvectors of an SU(2) matrix.
|
| double | trace_dist (const Matrix< cdouble > &U, const Matrix< cdouble > &V) |
| | Trace distance between SU(2) matrices U,V.
|
| double | trace_dist (const Matrix< cdouble > &U, double *coord4) |
| | Trace distance between SU(2) matrices U,V.
|
| double | proj_trace_dist (const Matrix< cdouble > &U, const Matrix< cdouble > &V) |
| | 'Projective' trace distance between SU(2) matrices U,V
|
| double | proj_trace_dist (const Matrix< cdouble > &U, double *coord4) |
| | 'Projective' trace distance between SU(2) matrices U,V
|
| void | group_factor (const Matrix< cdouble > &U, Matrix< cdouble > &V, Matrix< cdouble > &W) |
| | Find 'balanced' V,W in SU(2) such that U = [V,W].
|
| void | x_group_factor (const Matrix< cdouble > &, Matrix< cdouble > &, Matrix< cdouble > &) |
| | 'Balanced' group commutator decomposition for U a rotation about the x-axis
|
| void | similarity_matrix (const Matrix< cdouble > &V, Matrix< cdouble > &W, Matrix< cdouble > &) |
| | Find an SU(2) matrix S such that .
|
| double | norm (double *v, int n) |
| | Norm of a real vector v of length n.
|