removed unnecessary symmetrization; only diagonal elements are used