Double Commutators
Here we will illustrate two things. First the ability in GAMMA to visualize
matrix representations of operators, superoperators, etc. Second, the
way in which user can easily generate such entities, e.g. double commutation
superoperators (used in the treatment of relaxation effects.)
Through the course of a simulation it is often handy to have a peek at the
various quantities being used in a calculation. Most GAMMA object can be
viewed on the screen or sent to an output file using the standard operator
<<. For example the following code
spin_system sys;
cout << sys << "\n\n";
matrix mx(3,2,complexi);
cout << mx << "\n\n";
will send the system sys and matrix mx
to the screen (or file if cout is replaced by an ostream attached to
a writable file.) Here is what might be seen from this
|
|
The same is true for operators, superoperators, spatial tensors, etc.
We can also easily make any spin based operator or superoperator. For
example, we can make the double commutation superoperator for a three
proton system. The code would look something like this:
|