Menu

Reference.Programs.qm_balance

Burkhard Schmidt
There is a newer version of this page. You can find it here.

qm_balance: Perform balancing transformation

If the dimensionality of the problems under investigation is growing (particularly so for density matrix description in LvNE simulations), efficient methods for dimension reduction become mandatory. Instead of empirical truncation of the state space, we implemented here the method of balanced truncation, established as a powerful technique for the control of linear systems. This procedure is based on states identified as simultaneously easily controllable and observable and on restricting the dynamics to the subspace spanned by such states.

As we have already demonstrated for some test cases, the procedure can greatly reduce the number of equations to be solved without notably changing the overall response of the system to the external control fields, see [1].

Source code

The MATLAB function qm_balance.m can be found here

File I/O

As input this function requires matrices A,B,N,C,D along with vectors xi, xe which are typically generated using our function qm_abncd. These data are read from input data file lvne_0.dat.

As output this function produces transformed matrices A,B,N,C,D along with vectors xi, xe which are saved as output data file lvne_1.dat. These matrices/vectors can then be truncated by running our function qm_truncate ...

Algorithms

For more details on the balancing transformation, see this page of our WavePacket central wiki.

Variables

Note that function qm_init.m should be run previously in order to initialize all variables in use. Of particular interest are the following structures:

References

  1. B. Schäfer-Bung, C. Hartmann, B. Schmidt, and Ch. Schütte: J. Chem. Phys. 135, 014112 (2011)

MongoDB Logo MongoDB