  In this paper a two-sided, parallel Kogbetliantz-type algorithm for the
hyperbolic singular value decomposition (HSVD) of real and complex square
matrices is developed, with a single assumption that the input matrix, of order
$n$, admits such a decomposition into the product of a unitary, a non-negative
diagonal, and a $J$-unitary matrix, where $J$ is a given diagonal matrix of
positive and negative signs. When $J=\pm I$, the proposed algorithm computes
the ordinary SVD. The paper's most important contribution -- a derivation of
formulas for the HSVD of $2\times 2$ matrices -- is presented first, followed
by the details of their implementation in floating-point arithmetic. Next, the
effects of the hyperbolic transformations on the columns of the iteration
matrix are discussed. These effects then guide a redesign of the dynamic pivot
ordering, being already a well-established pivot strategy for the ordinary
Kogbetliantz algorithm, for the general, $n\times n$ HSVD. A heuristic but
sound convergence criterion is then proposed, which contributes to high
accuracy demonstrated in the numerical testing results. Such a $J$-Kogbetliantz
algorithm as presented here is intrinsically slow, but is nevertheless usable
for matrices of small orders.
