Subject: Re: CCL:G:Transform to redundant internal Coord?

From: Jenn-Huei Lii <[email-masked]>
Date: Thu, 12 Oct 1995 09:29:43 -0400 (EDT)

Hi Cheol,

In order to overcome your problem, you can use a technique called
"Generalized Inverse".  Please see the following references.

 1. L. B. Thomas and L. O. Patrick in "Generlized Inverse Matrices,";
    Wiley-Interscience; New York, N. Y. (1957)
 
 2. R. Fletcher, Computer Journal, 10, 392 (1968)

-Robert

On Wed, 11 Oct 1995, Cheol Choi wrote:

> Dear CCLers.
> 
> I have a simple question.
> 
> First of all, let me define some terms.
> 
> X : cartesian displacement coordinate
> R : internal displacement coordinate
> If I have N atoms, then I would have 3N of cartesians.
> Also if I define nun-redundant internal coordinate, I would have
> 3N-6 or 5 internal coordnate.
> 
> There is A matrix which transform R into X.
> X=A*R
> 
> In general, one could get the inverse (since A is not square matrix,
> this is not exactly inverse matrix) of A like 
> (Let me use B for inverse of A)
> 
> A=transpose(B)*inverse(B*transpose(B))
> (This formula can only be used for direction independent quantities, such as
> energy and only hold for nun-redundant internal coordinate.)
> 
> 
> Now, my problem is this.
> If I have redundant internal coordinate,which means that there are (is)
> singularities in B matrix, I could not inverse the B*transpose(B).
> Therefore I couldn't get the A matrix form B matrix.
> 
> Gaussian94 uses the redundant internal coordinate to optimize geometry.
> It actually calculates the hessian matrix in redundant internal 
> coordinate and also gives us the cartesian hessian matrix. So there might
> be a transformation matrix between these coordinates.
> 
> Please, let me konw how to get such a transformation matrix.
> 
> Thank you in advance.
> 
> 
> Cheol Ho Choi
> 
> Georgetown Univ.
>

---

From: Tom Sundius U of Helsinki +358 0 1918339 <[email-masked]>
Date: Thu, 12 Oct 1995 23:40:12 +0200 (EET)

> energy and only hold for nun-redundant internal coordinate.)

  This problem occurs in chemistry for instance when one tries to invert
  the transformation between cartesian and internal displacement coordinates:
  R = BX. If B is rectangular, this can be done by multiplying both 
  sides of the equation on the left by the transpose of B. If the inverse
  of B*transpose(B) exists, one gets the above expression for A.
 
  Since A satifies the equation BA = I, it is actually a right inverse of B
  (also called a pseudo-inverse or general inverse). This pseudo-inverse
  can, for instance, be used when transforming force constant matrices
  expressed in cartesian coordinates into internal coordinates. This
  was shown, for instance, in a paper by Collier (W.B. Collier, J. Chem. Phys.
  88, 7295 (1988)).

  Generalized inverses have also been used in several papers by Peter Pulay
  (see, for instance, P.Pulay and G. Fogarasi, J. Chem. Phys. 96, 2856
  (1992)). Many text-books have chapters on generalized inverses, as
  for instance Stephen Barnett: Matrices, Methods and Applications
  (Oxford Applied Mathematics and Computing  Science Series) Oxford 1990.

> Therefore I couldn't get the A matrix form B matrix.

  This is a well-known problem. In a chapter in "Generalized Inverses
  and Applications" ed. by M. Zuhair Nashed, Academic Press (1976),
  B. Noble discusses several methods for computing the generalized
  inverse. He gives as an example the rectangular matrix 

                  1   1    1
            A =   
                  1   1+e 1-e

  where e is a small number. If the generalized inverse is calculated
  according to the above formula, it is easy to get A*transpose(A)
  calculated as

                  3  3
                  3  3

  because of roundoff, and then it cannot be inverted. As Noble points 
  out, this problem can be solved, for instance, by LU decomposition
  of the A matrix.

  Another method to compute the pseudo-inverse if the matrix is almost
  singular is to use singular value decomposition (SVD), which is much
  discussed in the book: W.H. Press, B.P. Flannery, S.A. Teukolsky and
  W.T. Vetterling, Numerical Recipes (Cambridge University Press, 1986).

> be a transformation matrix between these coordinates.

    Yes, see the paper by Collier, and also papers by Pulay.

         -T. Sundius-
         [email-masked]