Before revision:  It relies on a matrix flow decomposition method that finds a  block-diagonal flow representation for the  hermitean matrix flow H\!K {\cal  _A(t) = \cos(t) H + \sin(t) K if this is possible. Here H\!K{\cal  _A(t) is a 1-parameter varying linear combination of the real and skew part matrices H = (A+A^*)/2 and K = (A-A^*)/(2i) of A.
After revision:  It relies on a matrix flow decomposition method that finds a block-diagonal flow representation for the hermitean matrix flow H\!K {\cal _A(t) = \cos(t) H + \sin(t) K . Here{\cal _A(t) is a 1-parameter varying linear combination of the real and skew part matrices H = (A+A^*)/2 and K = (A-A^*)/(2i) of A.