# Mathematica and Geometry Hints

## Books

Here are some books that I recommend. You should not think of Mathematica as a program but rather as a language. Just as you would not try to learn C without a book, neither should you expect to learn Mathematica just from the online help.
``` AUTHOR       Blachman, Nancy R.
TITLE        Mathematica, a practical approach / Nancy Blachman.
PUBLISHED    Englewood Cliffs, N.J. : Prentice Hall, c1992.
DESCRIPTION  xv, 363 p. : ill. ; 23 cm.
SERIES       Prentice Hall series in innovative technology.
NOTE(S)      Includes index.
SUBJECT(S)   Mathematica (Computer file)
Mathematics --Computer programs.
ISBN         0135638267.
```
This is an excellent book to start with. I am still looking things up in it.
``` AUTHOR       Wickham-Jones, Tom, 1958-
TITLE        Mathematica graphics : techniques & applications / Tom Wickham-
Jones.
PUBLISHED    Santa Clara, Calif. : TELOS, c1994.
DESCRIPTION  xiii, 721 p. : ill. (some col.) ; 24 cm. + 1 computer disk (3 1/2
in.)
NOTE(S)      System requirements for computer disk using IBM-compatible PC:
DOS or Windows; Mathematica; high-density disk drive. Files may
also be read by Macintosh, Unix, and NeXT systems.
BIBLIOGRAPHY Includes bibliographical references and index.
SUBJECT(S)   Computer graphics.
```
This is really necessary if you want to get into graphics with any sophistication.

## How to write vectors and covectors in Mma.

You can manipulate lists of numbers as if they were vectors, like say {1,2,3}, but this will not let you separate the vector types from the covector types.

Mma writes matrices as lists of lists, and you should treat vectors and covectors as 1xn matrices. Thus the vectors might be written

{{1},{2},{3}}

and the covectors as

{{1,2,3}}

You can see the output written properly as matrices if you ask for MatrixForm

{{1},{2},{3}} // MatrixForm

The Euclidean metric operator maps vectors into covectors, and is here represented by the Transpose[] operator. This is actually an important observation: the transpose operator implies the choice of a geometry.

The spacetime geometry operator would instead flip the sign of the first component (if that is where you have decided to put the timelike components) provided that you are working in orthonormal coordinates.