Joseph C. Kolecki

Glenn Research Center, Cleveland, Ohio

An Introduction to Tensors for Students

of Physics and Engineering

NASA/TM—2002-211716

September 2002
The NASA STI Program Office . . . in Profile

Since its founding, NASA has been dedicated to

the advancement of aeronautics and space

science. The NASA Scientific and Technical

Information (STI) Program Office plays a key part

in helping NASA maintain this important role.

The NASA STI Program Office is operated by

Langley Research Center, the Lead Center for

NASA’s scientific and technical information. The

NASA STI Program Office provides access to the

NASA STI Database, the largest collection of

aeronautical and space science STI in the world.

The Program Office is also NASA’s institutional

mechanism for disseminating the results of its

research and development activities. These results

are published by NASA in the NASA STI Report

Series, which includes the following report types:

• TECHNICAL PUBLICATION. Reports of

completed research or a major significant

phase of research that present the results of

NASA programs and include extensive data

or theoretical analysis. Includes compilations

of significant scientific and technical data and

information deemed to be of continuing

reference value. NASA’s counterpart of peerreviewed formal professional papers but

has less stringent limitations on manuscript

length and extent of graphic presentations.

• TECHNICAL MEMORANDUM. Scientific

and technical findings that are preliminary or

of specialized interest, e.g., quick release

reports, working papers, and bibliographies

that contain minimal annotation. Does not

contain extensive analysis.

• CONTRACTOR REPORT. Scientific and

technical findings by NASA-sponsored

contractors and grantees.

• CONFERENCE PUBLICATION. Collected

papers from scientific and technical

conferences, symposia, seminars, or other

meetings sponsored or cosponsored by

NASA.

• SPECIAL PUBLICATION. Scientific,

technical, or historical information from

NASA programs, projects, and missions,

often concerned with subjects having

substantial public interest.

• TECHNICAL TRANSLATION. Englishlanguage translations of foreign scientific

and technical material pertinent to NASA’s

mission.

Specialized services that complement the STI

Program Office’s diverse offerings include

creating custom thesauri, building customized

databases, organizing and publishing research

results . . . even providing videos.

For more information about the NASA STI

Program Office, see the following:

• Access the NASA STI Program Home Page

at http://www.sti.nasa.gov

• E-mail your question via the Internet to

help@sti.nasa.gov

• Fax your question to the NASA Access

Help Desk at 301–621–0134

• Telephone the NASA Access Help Desk at

301–621–0390

• Write to:

 NASA Access Help Desk

 NASA Center for AeroSpace Information

 7121 Standard Drive

 Hanover, MD 21076
Joseph C. Kolecki

Glenn Research Center, Cleveland, Ohio

An Introduction to Tensors for Students

of Physics and Engineering

NASA/TM—2002-211716

September 2002

National Aeronautics and

Space Administration

Glenn Research Center
Available from

NASA Center for Aerospace Information

7121 Standard Drive

Hanover, MD 21076

National Technical Information Service

5285 Port Royal Road

Springfield, VA 22100

Available electronically at http://gltrs.grc.nasa.gov
NASA/TM2002-211716 1 

An Introduction To Tensors 

for Students of Physics and Engineering 

Joseph C. Kolecki 

National Aeronautics and Space Administration 

Glenn Research Center 

Cleveland, Ohio 44135 

Tensor analysis is the type of subject that can make even the best of students shudder. My own 

post-graduate instructor in the subject took away much of the fear by speaking of an implicit 

rhythm in the peculiar notation traditionally used, and helped me to see how this rhythm plays its 

way throughout the various formalisms. 

Prior to taking that class, I had spent many years “playing” on my own with tensors. I found the 

going to be tremendously difficult, but was able, over time, to back out some physical and 

geometrical considerations that helped to make the subject a little more transparent. Today, it is 

sometimes hard not to think in terms of tensors and their associated concepts. 

This article, prompted and greatly enhanced by Marlos Jacob, whom I’ve met only by e-mail, is 

an attempt to record those early notions concerning tensors. It is intended to serve as a bridge 

from the point where most undergraduate students “leave off” in their studies of mathematics to 

the place where most texts on tensor analysis begin. A basic knowledge of vectors, matrices, and 

physics is assumed. A semi-intuitive approach to those notions underlying tensor analysis is 

given via scalars, vectors, dyads, triads, and similar higher-order vector products. The reader 

must be prepared to do some mathematics and to think. 

For those students who wish to go beyond this humble start, I can only recommend my 

professor’s wisdom: find the rhythm in the mathematics and you will fare pretty well. 

Beginnings 

At the heart of all mathematics are numbers. 

If I were to ask how many marbles you had in a bag, you might answer, “Three.” I would find 

your answer perfectly satisfactory. The ‘bare’ number 3, a magnitude, is sufficient to provide the 

information I seek. 

If I were to ask, “How far is it to your house?” and you answered, “Three,” however, I would 

look at you quizzically and ask, “Three what?” Evidently, for this question, more information is 

required. The bare number 3 is no longer sufficient; I require a ‘denominate’ number – a number 

with a name. 

Suppose you rejoindered, “Three km.” The number 3 is now named as representing a certain 

number of km. Such numbers are sometimes called scalars. Temperature is represented by a 

scalar. The total energy of a thermodynamic system is also represented by a scalar. 

If I were next to ask “Then how do I get to your house from here?” and you said, “Just walk 

three km,” again I would look at you quizzically. This time, not even a denominate number is 

sufficient; it is necessary to specify a distance or magnitude, yes, but in which direction? 
NASA/TM2002-211716 2 

“Just walk three km due north.” The denominate number 3 km now has the required additional 

directional information attached to it. Such numbers are called vectors. Velocity is a vector since 

it has a magnitude and a direction; so is momentum. Quite often, a vector is represented by 

components. If you were to tell me that to go from here to your house I must walk three blocks 

east, two blocks north, and go up three floors, the vector extending from “here” to “your house” 

would have three spatial components: 

• Three blocks east, 

• Two blocks north, 

• Three floors up. 

Physically, vectors are used to represent locations, velocities, accelerations, flux densities, field 

quantities, etc. The defining equations of the gravitational field in classical dynamics (Newton’s 

Law of Universal Gravitation), and of the electromagnetic field in classical electrodynamics 

(Maxwell’s four equations) are all given in vector form. Since vectors are higher order quantities 

than scalars, the physical realities they correspond to are typically more complex than those 

represented by scalars. 

A Closer Look at Vectors 

The action of a vector is equal to the sum of the actions of its components. Thus, in the example 

given above, the vector from “here” to “your house” can be represented as 

V =1 3 blocks east + 2 blocks north + 3 floors up 

Each component of V contains a vector and a scalar part. The scalar and vector components of V

can be represented as follows: 

• Scalar: Let a = 3 blocks, b = 2 blocks, and c = 3 floors be the scalar components; and 

• Vector: Let i be a unit vector pointing east, j be a unit vector pointing north, and k be a 

unit vector pointing up. (N.B.: Unit vectors are non-denominate, have a magnitude of 

unity, and are used only to specify a direction.) 

Then the total vector, in terms of its scalar components and the unit vectors, can be written as 

V = ai + bj + ck. 

This notation is standard in all books on physics and engineering. It is also used in books on 

introductory mathematics. 

Next, let us look at how vectors combine. First of all, we know that numbers may be combined 

in various ways to produce new numbers. For example, six is the sum of three and three or the 

product of two and three. A similar logic holds for vectors. Vector rules of combination include 

vector addition, scalar (dot or inner) multiplication, and (in three dimensions) cross 

multiplication. Two vectors, U and V, can be added to produce a new vector W: 

W = U + V. 

 

1

 The appropriate symbol to use here is “⇒” rather than “=” since the ‘equation’ is not a strict vector 

identity. However, for the sake of clarity, the “⇒” notation has been suppressed both here and later on, 

and “=” signs have been used throughout. There is no essential loss in rigor, and the meaning should be 

clear to all readers. 
NASA/TM2002-211716 3 

Vector addition is often pictorially represented by the so-called parallelogram rule. This rule is a 

pencil and straightedge construction that is strictly applicable only for vectors in Euclidean 

space, or for vectors in a curved space embedded in a Euclidean space of higher dimension, 

where the parallelogram rule is applied in the higher dimensional Euclidean space. For example, 

two tangent vectors on the surface of a sphere may be combined via the parallelogram rule 

provided that the vectors are represented in the Euclidean 3-space which contains the sphere. In 

formal tensor analysis, such devices as the parallelogram rule are generally not considered. 

Two vectors, U and V can also be combined via an inner product to form a new scalar η. Thus 

 U · V = η. 

Example: The inner product of force and velocity gives the scalar power being delivered into (or 

being taken out of) a system: 

 f(nt) · v(m/s) = p(W). 

Example: The inner product of a vector with itself is the square of the magnitude (length) of the 

vector: 

 U · U = U2

. 

Two vectors U and V in three-dimensional space can be combined via a cross product to form a 

new (axial) vector: 

 U × V = S

where S is perpendicular to the plane containing U and V and has a sense (direction) given by the 

right-hand rule. 

Example: Angular momentum is the cross product of linear momentum and distance: 

 p(kg m/s) × s(m) = L(kg m2/s). 

Finally, a given vector V can be multiplied by a scalar number α to produce a new vector with a 

different magnitude but the same direction. Let V = Vu where u is a unit vector. Then 

αV = αVu = (αV)u = ξu

where ξ is the new magnitude. 

Example: Force (a vector) equals mass (a scalar) times acceleration (a vector): 

 f(nt) = m(kg) a(m/s2

) 

where the force and the acceleration share a common direction. 

Introducing Tensors: Magnetic Permeability and Material Stress 

We have just seen that vectors can be multiplied by scalars to produce new vectors with the same 

sense or direction. In general, we can specify a unit vector u, at any location we wish, to point in 

any direction we please. In order to construct another vector from the unit vector, we multiply u

by a scalar, for example λ, to obtain λu, a new vector with magnitude λ and the sense or 

direction of u. 
NASA/TM2002-211716 4 

Notice that the effect of multiplying the unit vector by the scalar is to change the magnitude from 

unity to something else, but to leave the direction unchanged. Suppose we wished to alter both 

the magnitude and the direction of a given vector. Multiplication by a scalar is no longer 

sufficient. Forming the cross product with another vector is also not sufficient, unless we wish to 

limit the change in direction to right angles. We must find and use another kind of mathematical 

‘entity.’ 

Let’s pause to introduce some terminology. We will rename the familiar quantities of the 

previous paragraphs in the following way: 

• Scalar: Tensor of rank 0. (magnitude only – 1 component) 

• Vector: Tensor of rank 1. (magnitude and one direction – 3 components) 

This terminology is suggestive. Why stop at rank 1? Why not go onto rank 2, rank 3, and so on. 

• Dyad: Tensor of rank 2. (magnitude and two directions – 32

 = 9 components) 

• Triad: Tensor of rank 3. (magnitude and three directions – 33 = 27 components) 

• Etcetera... 

We will now merely state that if we form the inner product of a vector and a tensor of rank 2,a 

dyad, the result will be another vector with both a new magnitude and a new direction. (We will 

consider triads and higher order objects later.) 

A tensor of rank 2 is defined as a system that has a magnitude and two directions associated with 

it. It has 9 components. For now, we will use an example from classical electrodynamics to 

illustrate the point just made. 

The magnetic flux density B in volt-sec/m2

 and the magnetization H in Amp/m are related 

through the permeability μ in H/m by the expression 

 B = μH. 

For free space, μ is a scalar with value μ (= μ0) = 4π × 10-7 H/m. Since μ is a scalar, the flux 

density and the magnetization in free space differ in magnitude but not in direction. In some 

exotic materials, however, the component atoms or molecules have peculiar dipole properties 

that make these terms differ in both magnitude and direction. In such materials, the scalar 

permeability is then replaced by the tensor permeability μ, and we write, in place of the above 

equation, 

 B = μ · H.

The permeability μ is a tensor of rank 2. Remember that B and H are both vectors, but they now 

differ from one another in both magnitude and direction. 

The classical example of the use of tensors in physics has to do with stress in a material object. 

Stress has the units of force-per-unit-area, or nt/m2

. It seems clear, therefore, that (stress) ×

(area) should equal (force); i.e., the stress-area product should be associated with the applied 

forces that are producing the stress. We know that force is a vector. We also know that area can 

be represented as a vector by associating it with a direction, i.e., the differential area dS is a 

vector with magnitude dS and direction normal to the area element, pointing outward from the 

convex side. 
NASA/TM2002-211716 5 

Thus, the stress in the equation (force) = (stress) × (area) must be either a scalar or a tensor. If 

stress were a scalar, then a single denominate number should suffice to represent the stress at any 

point within a material. But an immediate problem arises in that there are two different types of 

stress: tensile stress (normal force) and shear stress (tangential force). How can a single 

denominate number represent both? Additionally, stresses have directional properties more like 

“vector times vector” (or dyad) than simply “vector.” We must conclude that stress is a tensor – 

it is, in fact, another tensor of rank 2 – and that the force must be an inner product of stress and 

area. 

The force dF due to the stress T acting on a differential surface element dS is thus given by 

 dF = T · dS. 

The right-hand side can be integrated over any surface within the material under consideration, 

as is actually done, for example, in the analysis of bending moments in beams. The stress tensor 

T was the first tensor to be described and used by scientists and engineers. The word tensor

derives from the Latin tensus meaning stress or tension. 

In summary, notice that in the progression from single number to scalar to vector to tensor, etc., 

information is being added at every step. The complexity of the physical situation being modeled 

determines the rank of the tensor representation we must choose. A tensor of rank 0 is sufficient 

to represent a single temperature or a temperature field across a surface, for example, an aircraft 

compressor blade. A tensor of rank 1 is required to represent the electric field surrounding a 

point charge in space or the gravitational field of a massive object. A tensor of rank 2 is 

necessary to represent a magnetic permeability in complex materials, or the stresses in a material 

object or in a field, and so on... 

Preliminary Mathematical Considerations 

Let’s consider the dyad – the “vector times vector” product mentioned above – in a little more 

detail. Dyad products were the mathematical precursors to actual tensors, and, although they are 

somewhat more cumbersome to use, their relationship with the physical world is somewhat more 

intuitive because they directly build from more traditional vector concepts understood by 

physicists and engineers. 

In constructing a dyad product from two vectors, we form the term-by-term product of each of 

their individual components and add. If U and V are the two vectors under consideration, their 

dyad product is simply UV. The dyad product UV is neither a dot nor a cross product. It is a 

distinct entity unto itself. If U = u1i + u2j + u3k and V = v1i + v2j + v3k, then 

 UV = u1v1ii + u1v2ij + u1v3ik + u2v1ji + ··· 

where i, j, and k are unit vectors in the usual sense and ii, ij, ik, etc. are unit dyads. In forming 

the product UV above, we simply “did what came naturally” (a favorite phrase of another of my 

professors!) from our knowledge of multiplying polynomials in elementary algebra. Notice that, 

by setting u1v1 = μ11, u1v2 = μ12, etc., this dyad can be rewritten as 

 UV = μ11ii + μ12ij + μ13ik + μ21ji + · ·· 

and that the scalar components μij can be arranged in the familiar configuration of a 3x3 matrix: 

μ11 μ12 μ13

μ21 μ22 μ23 
NASA/TM2002-211716 6 

μ31 μ32 μ33 

All dyads can have their scalar components represented as matrices. Just as a given matrix is 

generally not equal to its transpose, so with dyads it is generally the case that UV ≠ VU, i.e., the 

dyad product is not commutative. 

We know that a matrix can be multiplied by another matrix or by a vector. We also know that, 

given a matrix, the results of pre- and post-multiplication are usually different; i.e., matrix 

multiplication does not, in general, commute. This property of matrices is used extensively in 

the “bra-“ and “ket-“ formalisms of quantum mechanics. 

Using the known rules of matrix multiplication, we can, by extension, write the rules associated 

with dyad multiplication. 

The product of a matrix M and a scalar α is commutative. Let the scalar components of M be 

represented by the 3 × 3 matrix [μij] i, j = 1, 2, 3; (i.e., the scalar components of M can be 

thought of as the same array of numbers shown above). Then for any scalar α, we find

αM = [αμij] = [μijα] = Mα.

Similarly, the product of a dyad UV and a scalar α is defined as 

α(UV) = (αU)V = (Uα)V = U(αV) = U(Vα) = (UV)α. 

In this case, the results of pre- and post-multiplication are equal. 

The inner product of a matrix and a vector, however, is not commutative. Let V ⇒ (Vi) be a 

row vector with i = 1, 2, 3, and M = [μij] as before. Then, when we pre-multiply, 

U = V · M = (Uj) = [Σ i Vi μij] 

where the summation is over the first matrix index i. 

When we post-multiply with V = (Vj) now re-arranged as a column vector, 

U* = M · V = (U*i) = [Σ j μij Vj] 

where the summation is over the second matrix index j. It is clear that U* ≠ U. 

Similarly, the inner product of the dyad UV with another vector S is defined to be 

S · (UV)

when we pre-multiply, and 

(UV) · S

when we post-multiply. As with matrices, pre- and post-multiplication do make a difference to 

the resulting object. To maintain consistency with matrix-vector multiplication, the dot 

“attaches” as follows: 

S · UV = (S · U)V = σV

where σ = S · U. The result is a vector with magnitude σ and sense (direction) determined by V. 

But 
NASA/TM2002-211716 7 

UV · S = U(V · S) = Uλ = λU

is a vector with magnitude λ and sense determined by U. It should be clear that, in general, 

S · UV ≠ UV · S. 

Tensors of Rank > 2

Tensors of rank 2 result from dyad products of vectors. In an entirely analogous way, tensors of 

rank 3 arise from triad products, UVW, and tensors of rank n arise from “n-ad” products of 

vectors, UVW...AB. In three-dimensional space, the number of components in each of these 

systems is 3n. The rules governing these higher rank objects are defined in the same way as the 

rules developed above. 

Specific Statements for Tensors per se 

We now extend the properties and rules of operation for familiar objects – scalars, vectors, and 

matrices – to tensors per se. We will summarize our previous remarks in Items 1–5 and then 

make definitive statements explicitly for tensors in Items 6–12. 

1. All scalars are not tensors, although all tensors of rank 0 are scalars (see below). 

2. All vectors are not tensors, although all tensors of rank 1 are vectors (see below). 

3. All dyads or matrices are not tensors, although all tensors of rank 2 are dyads or 

matrices. 

4. We have examined, in some detail, properties and operating rules for scalars, vectors, 

dyads, and matrices. 

5. We now extend these rules to tensors per se. We assert that: 

6. Tensors can be multiplied by other tensors to form new tensors. 

7. The product of a tensor and a scalar (tensor of rank 0) is commutative. 

8. The pre-multiplication of a given tensor by another tensor produces a different result 

from post-multiplication; i.e., tensor multiplication in general is not commutative. 

9. The rank of a new tensor formed by the product of two other tensors is the sum of their 

individual ranks. 

10. The inner product of a tensor and a vector or of two tensors is not commutative. 

11. The rank of a new tensor formed by the inner product of two other tensors is the sum of 

their individual ranks minus 2. 

12. A tensor of rank n in three-dimensional space has 3n

 components. 

Re-examining Magnetic Permeability and Material Stress 

Now we can see why the magnetic permeability (the stress in a material object) must be a rank 2 

tensor. In this section and the next, we will use a more formal approach, proceeding more in the 

style of a mathematician writing a proof than a physicist or engineer solving a problem. While 

the approach is formal, the conclusions are physically as well as mathematically valid. 

Let’s begin with the magnetic field. We use the tensor form 

B = μ · H 

and represent the tensor permeability by a dyad μ = UV without concern for the specific natures 

of the vectors U and V. This step is perfectly valid. Even though we cannot specify the exact 
NASA/TM2002-211716 8 

physical natures of U and V, we understand that a second rank tensor and a dyad are equivalent 

provided the vectors U and V are appropriately chosen. We make this assumption without loss of 

generality. From the physicist/engineer perspective, it is only significant that 

• the dyad UV represents a physical quantity – i.e., permeability μ; and 

• the rules developed in the previous section can be applied to the dyad representation in a 

strictly formalistic way to advance the argument at hand. 

With these ideas in mind, we write

B = UV · H = U(V · H) = Uλ = λU 

where λ = V · H is a scalar and U a vector. It is clear that the direction of B depends only on the 

direction of U, not H. Since we specified nothing about the nature of U, U cannot be restricted in 

its magnitude or direction by H in any way. Therefore, we conclude that the direction of B must 

be independent of the direction of H. 

In tensor (or, in this case, matrix) notation, we might represent the scalar components of the 

magnetization vector by Hi and the permeability scalar components by a Cartesian matrix μst. 

The flux density then becomes a Cartesian vector whose scalar components are Bs where 

Bs = Σt μst Ht

with summation occurring over the repeated index, t. This last representation has become the 

standard in the literature. 

Similarly, if we represent material stress as a dyad, for example, T = UV (again, without concern 

for the specific nature of U and V), then the inner product T · dS, can be represented as 

T · dS = (UV) · dS = U(V · dS) = U dζ

where dζ is the scalar differential resulting from the inner product V · dS. The term U dζ is a 

vector (tensor of rank 1) and is, in fact, the differential force dF acting on the area element 

U dζ = dF. 

Changing Tensor Rank: Contraction 

It is inevitable in an article of this type that we must do some mathematics. The previous section 

used a more formal (less intuitive) approach to demonstrate one role that tensors play in physics 

and engineering. In this section, we will stay with the formal approach and define yet another, 

perhaps somewhat peculiar, tensor operation, which will be left without much physical (intuitive) 

consideration. The student, who so wishes, can skip over this section without loss. 

We begin by summarizing the relationship between the type of vector product being used and the 

rank of the resulting object. These results are already implicit in the material given above. 

• A vector-scalar product results in a vector: there is no change in rank. 

• A vector-vector dyad product results in a dyad: there is an increase in rank from rank 1 

(vector) to rank 2. 

• A vector-vector inner product usually results in a scalar: there is a decrease in rank from 

rank 1 (vector) to rank 0 (scalar). 

• And so on... 
NASA/TM2002-211716 9 

Except for the inner product, the rank of the resulting quantity is the sum of the ranks of the 

quantities being combined. So, if we form a triad UVW, its components comprise a tensor of 

rank 3. If we form a “tetrad,” its components comprise a tensor of rank 4. And so on... 

Now it is time to introduce that “somewhat peculiar” new rule. Please rest assured that its 

practical usefulness is fully attested in all of the advanced works in physics and engineering 

where tensors are applied. 

Let’s say that we have a vector “n-ad,” 

UVW...ABC 

n vectors 

We can form a new tensor by introducing a dot between any two consecutive terms. Thus, we 

might choose to introduce a dot between U and V, or V and W, etc. This process is called 

contraction, and results in a new tensor with rank (n – 2). 

• If we introduce a dot into an existing dyad, the dyad is contracted to a scalar. Thus, given 

the dyad UV, we can introduce the dot forming a new tensor U · V, which is a scalar. 

And there is a reduction in rank by two. A special case of interest is the dyad UU. 

Contraction of the dyad gives the squared magnitude of the vector U: U · U = U2. 

• If we introduce a dot into an existing triad, the triad is contracted to a vector. Given the 

triad UVW, we can introduce a dot in one of two ways, forming either U · VW or UV · 

W, either of which is a vector, since 

U · VW = (U · V)W = αW where (α = U · V) 

or 

UV · W = U(V · W) = (V · W)U = βU where (β = V · W). 

Notice that the two results are different – depending on the placement of the dot. 

Contraction of a tensor of rank (n) always results in another tensor of rank (n – 2). If we were to 

form the force-velocity dyad FV, as might be done in formulating the general equations of fluid 

dynamics, we could always find the rate of energy dissipated in the fluid (the power) by 

contracting the dyad to a scalar. Thus 

dE/dt = F · V. 

Essentially, given a tensor equation of rank n, it is possible to extract information from the 

equation in a variety of ways. The ability of tensor equations both to store information and to 

permit its simple manipulation should be coming clear by now! 

Invariance of Physical Quantities: Introducing Coordinate Transformations 

Tensors are typically defined by their coordinate transformation properties. The transformation 

properties of tensors can be understood by realizing that the physical quantities they represent 

must appear in certain ways to different observers with different points of view. 

Suppose, for example, that I measure the temperature (°C) at a given point P at a given time. You 

also measure the temperature (°C) at P at the same time but from a different location that is in 

motion relative to my location. Would it make any sense if you and I acquired different 
NASA/TM2002-211716 10 

magnitudes; i.e., if my thermometer measured 25°C and yours measured 125°C? No. We must 

both obtain the same quantity from our respective measurements. 

Put another way, suppose that I call my point of view (coordinate system or reference frame) K 

and yours K*. Let T be the temperature (°C) measured at P in K and T* be the temperature (°C) 

measured in K*. We then require

T = T*. 

This expression is an example of a coordinate transformation law between K and K* for the 

scalar temperature T. Only scalars that transform like this are to be admitted into the class of 

tensors of rank 0. In fact, letting T stand for any scalar quantity we wish, the equation T = T* can 

be taken as the definition of a tensor of rank 0. 

Now let T be the frequency of light emanating from a monochromatic source at P. Again, let two 

observers, K and K*, measure the frequency of the light at P at the same time using the same 

units of inverse seconds. If I am stationary relative to the source, the light will have a certain 

frequency, for example T = υ0. If, on the other hand, you are moving toward or away from the 

source when you take your measurement, the light will be red or blue shifted with frequency T* 

= υ0 ± ∆υ. Obviously T ≠ T* in this case, and although the frequency thus observed is a scalar, it 

is evidently, not a tensor of rank 0. 

A similar argument holds for vectors. As was the case with scalars, not all vectors are tensors of 

rank 1. Suppose that a vector quantity V exists at a point P. Again, assume two reference frames, 

K and K*. Let V be the vector observed (measured) in K, and V* be the same vector observed in 

K* at the same time. As with the temperature example, we again require that 

V = V*

since, after all, K and K* are both observing the self-same vector. Any other result would not 

make physical sense. Any vector that transforms according to the expression V = V* is defined

to be a tensor of rank 1. We usually say that the transformation law T = T*, or V = V*, requires 

the quantity represented by T or V to be coordinate independent. 

While the vector itself is coordinate independent, its individual components are not. Thus, in the 

vector transformation law V = V*, the components of the vector vary from system to system, but 

do so in such a way that the vector quantity itself remains unchanged. This truth is evident when 

we realize that the components in any coordinate system are nothing more than the projections of 

the vector onto the local coordinate axes. 

Many representations exist for vectors in Euclidean 3-space, the space of our school algebra and 

geometry, including the familiar V = α i + β j + γ k in which V is the vector being represented; α, 

β, and γ are its scalar components along the x, y, and z axes of a Cartesian reference system, 

respectively; and i, j, and k are unit vectors along those same axes. Another representation of V 

is as a triad of numbers, V = (α, β, γ). 

In the more general case of higher dimensional spaces, whether Euclidean or non-Euclidean, 

vectors are represented by a number array – a row or a column. Thus, if V were a vector in En or 

Rn (Euclidean or Riemannian n-space) it would be written as 

V = (v1, v2, ... , vn) 

or simply, V = (vi), i = 1, ..., n. 
NASA/TM2002-211716 11 

Now, let V be the position vector extending from the origin of K to a particular point P, and V*

be the position vector extending from the origin of K* to that same point. Assume that the 

origins of K and K* do not coincide; then V ≠ V*. The position vector is very definitely 

coordinate dependent and is not a tensor because it does not satisfy the condition of coordinate 

independence.2

But suppose that V1 and V2 were position vectors of points P1 and P2 in K, and that V1* and V2*

were position vectors to the same points P1 and P2 in K*. The vector extending from P1 to P2

must be the same vector in both systems. This vector is V2 – V1 in K and V2* – V1* in K*. Thus 

we have 

V2 – V1 = V2* – V1*, 

i.e., while the position vector itself is not a tensor, the difference between any two position 

vectors is a tensor of rank 1! Similarly, for any position vectors V and V*, dV = dV*; i.e., the 

differential of the position vector is a tensor of rank 1. 

This result may seem a little strange, but it provides strong motivation for exercising care in 

working with physical vector quantities. 

A Digression: 

Coordinate Systems and Mathematical Spaces 

Now, for one brief chapter, we are going to sidestep the main theme of this article to consider a 

subject that is extremely important but all too often ignored. Students who study such disciplines 

as General Relativity should especially appreciate the ideas introduced here. 

So far, except for a few brief allusions, we have tacitly assumed that we were operating in the 

same Euclidean space as we encountered in our high school and college mathematics and physics 

without so much as a second thought as to what we were doing or why. In fact, the choice of a 

mathematical space – whether Euclidean or non-Euclidean – is every bit as important as the 

choice of a properly suited reference system from which to model physical events. In many 

cases, confusion exists in the minds of students, often spurred on by popular literature, regarding 

the distinction between coordinate systems per se and space. Since we are considering 

physical/tensorial quantities that exist in space and are coordinate independent, it behooves us to 

take a closer look at this distinction. 

A line is an example of a Euclidean 1-space. It has one dimension, extends to ± ∞, and has a 

metric (e.g.: the unit interval). The coordinate system associated with the line is defined by the 

unit interval, chosen for convenience then copied repeatedly, end-to-end along the entire line in 

both directions from the starting point. A line thus marked, with numbers added for reference, is 

called a real number line. 

 

2

 This argument depends on the definition of the position vector as the vector extending from the origin of 

a given coordinate system to a point that it is said to locate. Thus, for any point P in space, the position 

vectors in two systems K and K* whose origins do not coincide will, by definition, be different. If V is the 

position vector in K, then it is also a vector in K* but not a position vector, and the coordinate 

transformations apply to it in the usual way. Since, however, V is a position vector only in one system, not 

in both, it cannot represent the same thing in both; hence, it is fundamentally different than other vector 

quantities whose character is the same in all reference frames. 
NASA/TM2002-211716 12 

A plane is an example of a Euclidean 2-space. It has two dimensions, extends to infinity in all 

directions, and has a linear metric (the unit interval) and an areal metric (the unit square). It also 

has an intrinsic geometry defined by the Greek, Euclid (c. 300 BC). 

In the geometry of Euclid, objects, such as triangles, squares, or circles, can be moved about in 

the plane without deformation and, therefore, compared to one another using such relationships 

as similarity or congruence. Also in the geometry of Euclid, parallel lines extend forever without 

meeting, and so on. In the plane, the coordinate system of choice is the Cartesian system, 

comprising two real number lines that meet at right angles. Other systems are also possible. 

The physical analogue of such a space is a region in which material objects and/or beams of light 

can be moved about without deformation. But since gravity permeates all space and time, no 

such region exists in the universe at large. Thus it was that Einstein abandoned Euclidean space 

as a basis for his General Relativity and adopted a differentially metric non-Euclidean space 

instead. 

A sphere is an example of an elliptic 2-space. Like the plane, the sphere also has two 

dimensions. Unlike the plane, however, the sphere does not extend to infinity; it fact, the sphere 

is a closed, finite surface. The sphere has a differential linear metric and a differential areal 

metric. It also has a geometry, though one quite different from that of Euclid. 

A differential metric is used wherever a unit metric is intractable. A unit metric on a sphere 

would have to be curved to fit into the surface. Such a metric, of course, could be defined; but 

many theorists prefer to use differential quantities that, in the limit of ‘smallness,’ behave as 

though they were Euclidean. One reason is that a simple algebraic metric can be written for 

differential quantities. 

In the plane, the algebraic metric is Pythagoras’ theorem: s2

 = x

2

 + y2, describing the relationship 

between the length of the hypotenuse, s, and the two sides, x and y, of a right triangle. Since the 

plane is flat, differential quantities are not a concern. 

In a sphere, the corresponding relationship would have additional terms: s2 = αx

2

 + βy

2

 + γxy. 

Such a metric is certainly approachable, but in the limit of smallness, Pythagoras theorem 

reappears: ds2 = dx2 + dy2, where ds, dx, and dy are differential lengths. This situation is much 

more to many people’s liking. The assumption being made, of course, is that we can always 

choose a sufficiently small portion of a sphere that we can consider flat to any accuracy we 

desire. 

Navigators use just this type of geometry when traveling across the face of our earth. For them, 

metrics on the order of a few km are small enough to be considered ‘flat,’ given that the earth has 

a radius of 6,400 km. 

In the geometry of the sphere, the elliptic geometry, objects again can be moved without 

deformation (since the surface is of uniform curvature), and, therefore, compared in the same 

sorts of relationships as in the plane. There are no parallels in the sphere, however, because there 

are no Euclidean straight lines, and all pairs of curves that approximate lines (the so-called great 

circles whose radii equal that of the sphere itself) always meet at two antipodal points. Neither is 

there a Cartesian coordinate system in the sphere. Coordinate systems in the sphere can be 

constructed using great circles, but these systems have no unique origin. 
NASA/TM2002-211716 13 

An egg is another example of an elliptic 2-space. It has two dimensions, is closed and finite. It 

has a differential metric like the sphere. Unlike the sphere, the egg cannot support relationships 

like similarity or congruence since objects cannot be moved without deformation (except for 

some special cases; the egg is differentially curved in one direction but not the other). Local 

coordinate systems are possible in the egg, at least over regions small enough that variations in 

curvature can be ignored. But a global system, like that of the sphere, is not entirely tractable. 

There are higher dimensional analogs of the plane, the sphere, and the egg, and of any number of 

other shapes that might happen to come to mind (including the saddle of hyperbolic geometry). 

Each comprises a mathematical space in terms of being a point set with certain specially defined 

characteristics. In each space, different kinds of coordinate systems are possible. In the plane, we 

spoke of the Cartesian system; but there is also the polar system, the triangular system, and so 

on. All of these systems can be used to map the same plane; yet, all are different. 

Physical quantities existing in the plane must be independent of the particular coordinate system 

chosen. These quantities are not necessarily independent of the space that contains them, 

however. The same idea applies to all other spaces and coordinate systems as well. 

Any triangle in the plane has the property that the sum of its interior angles adds to 180°. Not so, 

the sphere. Any triangle in the sphere has the property that the sum of its interior angles is 

greater than 180°, the more-so the larger the triangle. Consider a triangle on the earth comprising 

one-quarter of the equator with two more legs extending toward and meeting at one of the poles. 

This triangle has three right angles for interior angles, giving a grand total of 270°! 

Tensor analysis takes account of coordinate independence and of the peculiarities of different 

kinds of spaces in one grand sweep. Its formalisms are structurally the same regardless of the 

space involved, the number of dimensions, and so on. For this reason, tensors are very effective 

tools in the hands of theorists working in advanced studies. For this same reason, tensors are also 

very effective tools for setting up systems of equations in “everyday” physics or engineering 

applications. The systems themselves may not be easy to solve, but they are usually obtained 

with expedience. 

Coordinate Curves and Coordinate Surfaces 

Let’s now return to Euclidean space and consider the idea of coordinate systems a little more 

closely. What we learn here can be immediately extended to other types of spaces and/or to 

higher numbers of dimensions. 

We begin with a 2-dimensional Cartesian system in a Euclidean space. The system consists of an 

x- and a y-axis that are orthogonal. These two axes determine a unique point of intersection. This 

point is designated the origin of the system and is given the special label x = 0, y = 0. Whole 

numbers are then placed along each of the axes by establishing a unit interval and using it 

repeatedly to mark off additional intervals. 

The two axes determine a unique plane, the xy-plane. This plane is called a coordinate surface. 

Any point P in this surface can be designated by a pair of numbers, one from each of the two 

axes, in the following manner: Through P, two lines are constructed parallel to the individual 

axes. (These lines are often referred to as a local coordinate system or local axes at P.) The 

numerical values, x = x0 and y = y0, on the Cartesian axes where these lines intersect designate 

the coordinates of the point. The shorthand notation is 
NASA/TM2002-211716 14 

P = (x0, y0). 

In a 3-dimensional Cartesian system, there are three orthogonal axes (x, y, and z) and three 

coordinate planes (xy, xz, and yz). Any point P is uniquely specified by the number triple 

P = (x, y, z). 

In an n-dimensional Cartesian system, by extension, there are n orthogonal axes and (n-1)! 

coordinate planes. Any point P is uniquely specified by a number n-tuple

P = (x1, x2, x3, ... , xn) 

where the change to subscripted notation in necessitated for purposes of generality. 

If we carefully consider the Cartesian system, we observe some specific characteristics: 

• The coordinate axes are straight lines defined to intersect at a single point, the origin. 

• The coordinate axes are mutually orthogonal. 

• The coordinate planes are completely determined by the axes. 

Suppose we were to relax these conditions. We would obtain statements to the effect that: 

• The coordinate axes are general curves defined to intersect at least once. A point of 

intersection can be chosen as the origin. 

• The coordinate axes are not necessarily mutually orthogonal. 

• Pairs of coordinate axes uniquely determine curvilinear coordinate surfaces as product 

spaces.

This last expression needs clarification. We will proceed by example. First, consider the case of 

the Cartesian axes above. If one axis is slid along another, a unique plane is swept out. The plane 

is said to be the product space of the two lines. The coordinates of points in this plane are 

intuitively determined in the process, for the sliding axis changes position on the stationary axis 

(i.e., assumes different coordinate values from the stationary axis), and the moving axis itself has 

coordinates marked off on it. 

Next, consider a straight line and a circle. Let the circle touch the line so that its radius is 

perpendicular to the line and the line is perpendicular to the plane of the circle. Now slide the 

circle along the full extent of the line. The result is that a cylinder will be swept out. The cylinder 

is the product space of the circle and the line in the configuration specified. If coordinates are 

marked on the line and the circle, then a unique pair of numbers will specify every point in the 

cylinder. 

Now, consider two circles of equal radius. Let the circles be perpendicular to one another so that 

one circle touches the other at each of the opposite ends of a diameter. Again, sweep one of the 

circles around the other to produce a sphere. The sphere is the product space of the two circles in 

the configuration specified. If coordinates are marked on each of the circles, then a pair of 

numbers will uniquely specify every point in the sphere. 

Similarly, a torus is the product space of two circles (not necessarily of equal radius) in a 

different configuration. And so on... 

These last exercises describe the basis for forming non-Cartesian coordinate systems in 

Euclidean 3-space: i.e., the cylindrical, the spherical, and the toroidal coordinate systems. 
NASA/TM2002-211716 15 

Finally, start with any two curves. Let the curves intersect at one point. Mark the curves with 

coordinates, analogously to the coordinates on a Cartesian axis. Slide one curve along the other 

to produce a surface. Then a pair of numbers from the curves will specify any point on the 

surface in perfect analogy with the Cartesian plane. If the curves are called u and v, we then say 

that we have a u-axis and a v-axis. These axes together produce a uv-surface (a coordinate 

surface) as a product space. Any point P in this surface is specified by a pair of numbers, u = u0

and v = v0: 

P = (u0, v0). 

Such a system is called a generalized (or curvilinear) coordinate system. We need not limit this 

discussion to Euclidean spaces, for the technique described can be carried almost directly into 

non-Euclidean spaces as well. We will stay concerned with Euclidean spaces for the remainder 

of this article. 

Often in physics or engineering, such systems are necessary to solve problems. For example, a 

NASA engineer whom I know was solving fluid dynamic equations for airflow over aircraft 

compressor blades. He chose to let the blade surfaces themselves represent coordinate surfaces 

and specified coordinate axes to fit. He wrote tensor equations in this somewhat complicated 

system and produced beautiful theoretical flow patterns, some of which are still hanging framed 

in our Administration Building and in other places around the laboratory! 

Covariance and Contravariance 

Writing vector or tensor equations in generalized coordinate systems is a process familiar to 

students in classical mechanics. In order to successfully write such equations and use them to 

solve problems or to build models, the characteristics of generalized coordinate systems must be 

understood. Recall that in a generalized coordinate system: 

• The coordinate axes are general curves – we will call them u, v, w, ... , a, b, c, .... 

• The coordinate axes are not necessarily orthogonal. 

• Pairs of coordinate axes uniquely determine curvilinear surfaces as product spaces. These 

surfaces are the coordinate surfaces of the system. 

Additionally: 

• We can specify local coordinate axes at any point P in the system just as we can specify 

local Cartesian axes at any point in a Cartesian system. 

• Similarly, we can specify local coordinate surfaces at any point P in the system. 

• We can use the local coordinate curves and the local coordinate surfaces to specify 

unique sets of unit vectors at P. 

• We can write any vector quantity V at P as a linear combination of these local unit 

vectors. 

Now, some imagination is required. Let’s return to the 3-dimensional Cartesian system. At any 

point P, we can specify three local axes and three local planes determined by these axes. In 

accordance with strict definitions, the axes must be mutually perpendicular and, by extension, so 

must the planes. Now, choose three unit vectors at P such that each vector is tangent to one of 

the axes. Such a triple is usually designated (i, j, k). Any vector V at P can then be written 

V = αi + βj + γk
NASA/TM2002-211716 16 

where α, β, and γ are the usual x, y, and z scalar components of the vector. 

Now suppose that we had chosen unit vectors perpendicular to each of the planes rather than 

tangent to each of the coordinate axes. Let’s do so and call the resulting triple (i*, j*, k*). Again, 

any vector V at P can be written 

V = α*i* + β*j* + γ*k*

where α*, β*, and γ* are the scalar components of the vector referred to the i*, j*, k* triple. 

There is nothing surprising in what we have just done, and our representation is satisfactory 

provided we ensure that 

αi + βj + γk = α*i* + β*j* + γ*k*. 

But, you might argue that what we have done is trivial since it is apparent from geometry that the 

two unit vector triples comprise the same set; i.e., that 

i = i*

j = j*

k = k*. 

Still, we used two distinct approaches to defining a unit vector triple at P. Should we expect 

these approaches to produce so tidy a result in all cases? The answer is very definitely “NO”!

To understand why the answer is “NO,” let’s modify our Cartesian system so that the axes are no 

longer mutually orthogonal – for example, so that they meet at 60°. In this case, the origin lies at 

a vertex of a tetrahedron, and the axes lie along three of the edges. (Such coordinate systems are 

actually used in engineering and crystallography and are called triangular coordinate systems.) It 

should be intuitive that (i, j, k) and (i*, j*, k*) are now two different sets of unit vectors. 

Specifically, i and i* now meet at an angle of 60°, as do j and j*, and k and k*. Thus, while they 

are all unit vectors, they specify different sets of directions, and the choice of which set to use in 

a given calculation must be a matter of expediency. 

In tensor analysis, the same logic must be applied in generalized coordinate systems. At any 

point P in a generalized system, with an associated set of local axes and coordinate surfaces, we 

can specify two related but distinct sets of unit vectors: (1.) a set tangent to the local axes, and 

(2.) another set perpendicular to the local coordinate surfaces. The first set is given the name 

contravariant; the second set is given the name covariant. The vector V can be referred to either 

set, and is called contravariant when referred to the contravariant unit vectors or covariant when 

referred to the covariant unit vectors. As before, the choice of which to use is strictly a matter of 

expediency. The vector V is obviously not affected by the choice. 

Reciprocal Sets of Vectors 

Let’s return to the 3-dimensional Cartesian system of our previous discussion. The unit vectors 

(i, j, k) are a contravariant set. The unit vectors (i*, j*, k*) are a covariant set. The vector V has 

the contravariant representation 

V = αi + βj + γk. 

It also has the covariant representation 

V = α*i* + β*j* + γ*k*. 

Since both representations designate the same vector V, we must have 
NASA/TM2002-211716 17 

αi + βj + γk = α*i* + β*j* + γ*k*. 

Let’s further explore the last relationship. First of all, we know that in this special case, 

i = i*

j = j*

 k = k*

so that 

i · i* = i* · i = 1 j · i* = i* · j = 0 k · i* = i* · k = 0 

i · j* = j* · i = 0 j · j* = j* · j = 1 k · j* = j* · k = 0 

i · k* = k* · i = 0 j · k* = k* · j = 0 k · k* = k* · k = 1 

Making a change in notation will help us to summarize this relationship very succinctly. Let 

i = u1

j = u2

k = u3 

 i* = u1*

 j* = u2*

 k* = u3*. 

Then 

ui · uj* = uj* · ui = [1 when i = j] or [0 when i ≠ j].

The vector sets ui and uj* are called, by definition, reciprocal vector sets. If we set δij = [1 when 

i = j] or [0 when i ≠ j], then we can write 

ui · uj* = uj* · ui = δij. 

δij is a component of a second rank tensor called Kronecker’s delta after the mathematician 

Leopold Kronecker (1923-91) who first inaugurated its use. All vector sets satisfying this 

relationship are called reciprocal. The covariant and contravariant unit vector sets in all systems 

will always be (or, more generally, can always be chosen to be) reciprocal vector sets. 

Covariant and Contravariant Base Vectors: A More General Case Study 

In the case just studied, the reciprocal sets comprised unit vectors. In the general case, the 

requirement for unit vectors is usually dropped and replaced with a requirement for base vectors. 

It turns out that the set of relationships contained in 

ui · uj* = uj* · ui = δij

still hold with the provision that the magnitudes of the given pairs whose inner product is unity 

are reciprocal quantities. Let’s consider a generalized 3-dimensional coordinate system, u-v-w, 

in a Euclidean 3-space. We can refer the u-, v-, and w- axes to a Cartesian x-y-z system in the 

same space by transformation equations of the form 

u = u(x, y, z) x = x(u, v, w) 

v = v(x, y, z) y = y(u, v, w) 

w = w(x, y, z) z = z(u, v, w) 
NASA/TM2002-211716 18 

as is done in basic calculus and analytic geometry. We require that the functions u, v, and w be 

linearly independent and that x, y, and z also be linearly independent. Thus, no one coordinate 

axis in either system can be written as a linear combination of the other two, and the system is 

truly 3-dimensional. 

We can then choose a point P in the system, and specify coordinate curves and surfaces in both 

coordinate systems. In the generalized coordinate system, we can specify a contravariant basis 

set as 

e

(1) = ∂r/∂u, e(2) = ∂r/∂v, and e(3) = ∂r/∂w 

where, by convention, the contravariant vectors are superscripted rather than subscripted, and the 

vector r is simply the position vector 

r = xi + yj + zk

in the Cartesian system. Please note: The parentheses around the superscripts indicate “which” 

base vector is being referred to; they do not denote tensor notation. We can also specify a 

covariant basis set as 

e(1) = ∇u, e(2) = ∇v, and e(3) = ∇w 

where, again by convention, the covariant vectors are shown subscripted3

. Both sets are basis 

sets; neither set necessarily comprises unit vectors; and the two sets are reciprocal. To see the 

reciprocity, we must form the individual inner products: 

e

(1) · e(1) = (∂r/∂u) · (∇u) = (∂x/∂u)(∂u/∂x) + (∂y/∂u)(∂u/∂y) + (∂z/∂u)(∂u/∂z) 

= ∂u/∂u 

=1 

e

(1) · e(2) = (∂r/∂u) · (∇v) = (∂x/∂u)(∂v/∂x) + (∂y/∂u)(∂v/∂y) + (∂z/∂u)(∂v/∂z) 

= ∂v/∂u 

=0 

and so on. The partial derivatives and chain rule used above should be familiar from basic 

calculus. 

We can write the vector V in its contravariant and its covariant forms as follows: 

V = v

1

e

(1) + v2

e

(2) + v3

e

(3) = v1e(1) + v2e(2) + v3e(3). 

If we now wish to find the magnitude of V, we can form the inner product V · V. If, further, we 

use both the contravariant and the covariant representations of V and take advantage of the 

reciprocity between the two different sets of base vectors, we obtain a particularly nice result: 

V · V = (v1e

(1) + v2

e

(2) + v3

e

(3)) · (v1e(1) + v2e(2) + v3e(3)) 

= v

1

v1 + v2v2 + v3v3

= V2

 

3

 The covariant representation retains its use of subscripts while the contravariant representation switches 

from subscripts to superscripts. This change in notation helps particularly in the case of mixed tensors

(resulting from certain types of dyads and higher order products) where some of the vectors comprising 

the product UVW...ABC are covariant while the rest are contravariant. 
NASA/TM2002-211716 19 

The summation involves both contravariant and covariant indices. The shorthand for this process 

is 

V · V = Σi v

i

vi (also = Σi viv

i

) = V2. 

From here on, we will always take advantage of the reciprocity between the contravariant and the 

covariant base vector sets when constructing sums of the type given above. Summations will 

always be done over a contravariant-covariant pair of indices. 

The Cartesian Fundamental Tensor 

Let’s again return to the 3-dimensional Cartesian system of our previous discussion. Please recall 

that the unit vectors (i, j, k) are a contravariant set, and that the unit vectors (i*, j*, k*) are a 

covariant set. Recall also that the vector V has the contravariant representation 

V = αi + βj + γk

and the covariant representation 

V = α*i* + β*j* + γ*k*. 

This time, we will again use these results to solve for the covariant components of V in terms of

its contravariant components (or vice-verse). 

To begin, in the equation 

αi + βj + γk = α*i* + β*j* + γ*k*

let’s form the inner product of both sides of the equation by any of the six different unit vectors 

and again make use of their reciprocity. If we (arbitrarily) choose the unit vector j* with which to 

do this operation, we acquire 

[αi + βj + γk = α*i* + β*j* + γ*k*] · j* 

or 

α(i · j*) + β(j · j*) + γ(k · j*) = α*(i* · j*) + β*(j* · j*) + γ*(k* · j*) 

We already know how to deal with the left-hand side of this equation. The right-hand side is 

taken care of when we recognize that 

i* · i* = 1 j* · i* = i* · j* = 0 k* · i* = i* · k* = 0 

i* · j* = j* · i* = 0 j* · j* = 1 k* · j* = j* · k* = 0 

i* · k* = k* · i* = 0 j* · k* = k* · j* = 0 k · k* = 1. 

As before, we again let 

 i* = u1*

 j* = u2*

 k* = u3*. 

Then 

ui* · uj* = uj* · ui* = gij = δij

where gij is a component of a second rank tensor called the fundamental tensor, which, in this 

case, just happens to be equal to δij (and can be called the Cartesian fundamental tensor). In the 

general case, the last equality does not hold. 
NASA/TM2002-211716 20 

Using these relationships in the example above, we find that 

β = β*. 

In this case, the same type of equality holds for the other vector components as well. 

Let’s see what happens when we use the base vectors e

(i), and e(j) defined above. Again, we have

V = v

1

e

(1) + v2

e

(2) + v3

e

(3) = v1e(1) + v2e(2) + v3e(3). 

When we wanted to find the magnitude of V, we formed the inner product V · V using both the 

contravariant and the covariant representations of V. Suppose that we had just chosen one or the 

other. Suppose we had chosen the contravariant representation. Then 

V2

 = V · V = (v1e

(1) + v2

e

(2) + v3

e

(3)) · (v1

e

(1) + v2

e

(2) + v3

e

(3)) 

= (v1

e

(1))·( v1

e

(1)) + (v1

e

(1))·( v2

e

(2)) + (v1

e

(1))·( v3

e

(3)) + 

(v2e

(2))·( v1

e

(1)) + (v2

e

(2))·( v2

e

(2)) + (v2

e

(2))·( v3

e

(3)) + 

(v3

e

(3))·( v1

e

(1)) + (v3

e

(3))·( v2

e

(2)) + (v3

e

(3))·( v3

e

(3)) 

= g11(v1)

2

 + g12 v

1

v

2

 + g13 v

1

v

3

 + 

g21 v

2

v

1

 + g22 (v2)

2

 + g23 v

2

v

3

 + 

g31 v

3

v

1

 + g32 v

3

v

2

 + g33 (v3)

2

. 

The shorthand for this process is 

V · V = Σi Σj gij v

i

vj = V2. 

While this relationship is perfectly correct, it lacks the simplicity of the previous relationship in 

that it involves both a double summation and extra terms (the gij). A similar argument can be 

made for using just the covariant indices. 

Reciprocal Sets and the Fundamental Tensor in the General Case 

These arguments can be extended directly to the case of a vector in a non-orthogonal, non-linear 

n-dimensional coordinate system. For the moment, let’s just stick to a 3-dimensional system. The 

extension to n-dimensions should be intuitively clear. 

Using local coordinate axes and surfaces at the point P, let a vector V at P again be represented 

in two different ways: 

V = α1

e

(1) + α2

e

(2) + α3

e

(3) = α1e(1) + α2e(2) + α3e(3). 

Notice that the same change in notation as before has again been introduced. Since the covariant 

and contravariant basis sets are reciprocal sets, we must have 

e

(i) · e(j) = e(j) · e(i) = δi

j

. 

Notice that Kronecker’s delta is now a component of a mixed tensor of rank 2 in the general 

case; i.e., the index (superscript) j is a contravariant index, while the index (subscript) i is a 

covariant index. (Notice also that the superscript ‘i’ in the inner products becomes a covariant 

index in the delta, and that the subscript ‘j’ in the inner products becomes a contravariant index 

in the delta. Again, recall that the letters in parentheses are not tensorial indices.) 

Next let’s write out the fundamental tensor in its covariant and contravariant forms: 

e

(i) · e(j) = gij (covariant) and e(i) · e(j) = gij (contravariant). 
NASA/TM2002-211716 21 

(Notice again that the covariant and contravariant fundamental tensors arise from the 

superscripted and subscripted sets of unit vectors, respectively. Now the going becomes more 

direct. These last two are the only cases in which this peculiar switch takes place.) 

Now, let’s solve for the contravariant components of V in terms of the covariant components. 

We will introduce yet another shorthand notation, the so-called Einstein summation convection. 

Notice that V can be written as 

V = Σi αi

e

(i) = Σj αj e(j). 

Einstein noticed that summation always occurs over a repeated index so that it is not strictly 

necessary to write out the summation operator (‘Σi’or ‘Σj’) each and every time. Using this 

convention, we have the compact notation 

V = αi

e

(i) = αj e(j)

where summation is now understood to occur over i in the middle and j on the right-hand side. 

Using this convention and applying the results of the previous paragraphs, we first form the inner 

product 

V · e(s) = αi (e

(i) · e(s)) = αj (e(j) · e(s)) 

where a new index ‘s’ is introduced because no summation is intended. Next, we notice that the 

middle term reduces to 

αi (e

(i) · e(s)) = αi

δi

s

 = αs 

as the reader can show by writing out the expression in full, and that the right-hand terms reduce 

to 

αj (e(j) · e(s)) = αj gjs. 

Thus, we conclude that 

αs = αj gjs

where the summation on the right-hand side is over the index ‘j’. Thus, the contravariant 

components of V are linear combinations of the covariant components. Expanded, this same 

expression becomes 

α1

 = α1 g11 + α2 g21 + α3 g31

α2

 = α1 g12 + α2 g22 + α3 g32

α3 = α1 g13 + α2 g23 + α3 g33

Notice that the free index ‘s’ takes on sequential values (1, 2, 3) while the repeated index ‘j’ 

represents summation for each new value of ‘s.’ 

Similarly, the covariant components can be expressed as linear combinations of the contravariant 

components 

αr= αi

 gir 

where the summation on the right-hand side is over the index ‘i.’ 

This little exercise is typical of beginning tensor analysis. It not only shows the index notation in 

full swing, but also provides two relationships fundamental to tensor algebra, specifically 
NASA/TM2002-211716 22 

αs = αj gjs

and 

αr= αi gir. 

One final note on the fundamental tensor is that it is symmetric: i.e., gij = gji, and gst = gts. To 

understand why this is so, let’s return to the definitions 

e

(i) · e(j) = gij and e(i) · e(j) = gij

. 

We know from our basic vector analysis that the inner product is symmetric, i.e., that 

e

(i) · e(j) = e(j) · e(i) and e(i) · e(j) = e(j) · e(i). 

From this, the symmetry of the fundamental tensor follows directly. 

Coordinate Transformations: Scalars 

We now have the mathematical tools that enable us to achieve our stated objective of 

approaching Line 1, Page 1 of any standard text on tensor analysis. These texts typically begin 

by stating that tensors obey particular transformation laws whose forms are then specified with 

little or no motivating arguments. We have already looked at tensors as representing physical 

quantities and agreed that such quantities must appear the same to all observers. If we now 

formally replace the word ‘observer’ with the word ‘coordinate system’ we can paraphrase our 

previous statement to read that tensors are quantities that must be invariant under a coordinate 

transformation; i.e., they must retain a certain character no matter how we look at them. Their 

components might vary from system to system, but their overall structure must remain the same. 

Let’s now consider the simplest case, the scalar. Let S be any scalar quantity observed in a 

system K. Let S* be the same scalar quantity observed in a system K*. Then, for S to represent a 

real physical quantity, we must require that 

S = S*. 

Any quantity satisfying this transformation law is called a tensor of rank 0. This concludes our 

study of scalars. 

Coordinate Transformations: Vectors

Let’s next consider a vector. Let V be a vector quantity observed in a system K and V* be the 

same vector quantity observed in K*. Then, for V to represent a real physical quantity, we must 

require that 

V = V*. 

Any quantity satisfying this transformation law is called a tensor of rank 1. In order to derive 

transformation laws, we can represent V in each system in either its covariant or contravariant 

form. Let’s use the base vector system introduced earlier and consider the covariant case in some 

detail. 

First, let’s review: Recall that we had a generalized 3-dimensional coordinate system u-v-w in a 

Euclidean 3-space. Let this system now become the system K above. 

We referred the u-, v-, and w- axes to a Cartesian x-y-z system in the same space by 

transformation equations of the form 
NASA/TM2002-211716 23 

u = u(x, y, z) x = x(u, v, w) 

v = v(x, y, z) y = y(u, v, w) 

w = w(x, y, z) z = z(u, v, w) 

We now change this notation as follows: 

u = u

1

 x = x

1

v = u

2

 y = x

2

w = u

3

 z = x

3

so that the coordinate transformation equations reduce to 

u

i

 = u

i

 (xj) xs = xs (ut) 

with i, j, s, t, = 1, 2, 3. We then chose a point P in the system, and specified coordinate curves 

and surfaces at P. In the generalized coordinate system, we specified a contravariant basis set as 

e

(1) = ∂r/∂u, e(2) = ∂r/∂v, and e(3) = ∂r/∂w 

and a covariant basis set as 

e(1) = ∇u, e(2) = ∇v, and e(3) = ∇w. 

Using the new notation just introduced, these expressions become 

e

(i) = ∂r/∂u

i

 and e(j) = ∇uj. 

Now, let’s move on: We can make identical specifications for K*, first with coordinate 

transformations 

u

i

* = ui* (xj) xs = xs (ut*) 

and then with base vectors 

e

(i)* = ∂r/∂u

i

* and e(j)* = ∇uj*. 

Now, using the covariant representation, the expression V = V* then becomes 

V = Vi e

(i) = Vj* e(j)* = V* 

The middle of the equation expands to read 

Vi ∇u

i

= Vj* ∇uj* 

But4 ∇uj

* = [∂uj*/∂xs] = (∂uj*/∂u

k

) [∂u

k

/∂xs] = (∂uj*/∂u

k

) ∇u

k

. Substituting, we acquire 

Vi ∇u

i

= Vj* (∂uj*/∂u

k

) ∇u

k

or, changing summation indices on the right-hand side 

Vi ∇u

i

= Vj* (∂uj*/∂u

i

) ∇u

i

. 

Finally, we write 

(Vi - Vj* (∂uj*/∂u

i

)) ∇u

i

 = 0 

and, since ∇u

i

≠ 0 necessarily, we must have 

 

4 NOTE: We are using the shorthand notation [∂uj

*/∂x

s

] = [∂uj

*/∂x

1

, ∂uj*/∂x

2

, ∂uj*/∂x

3

] to represent the 

gradient of uj

. 
NASA/TM2002-211716 24 

Vi = Vj* (∂uj*/∂u

i

) 

with summation over the index j. This expression is the general transformation law for a 

covariant tensor of rank 1. A similar calculation can be completed for the transformation of the 

contravariant components. The result is

Vi

 = Vj* (∂u

i

/∂uj*). 

The two equations 

Vi = Vj* (∂uj*/∂u

i

) and Vi = Vj* (∂u

i

/∂uj*) 

are usually taken as definitions of covariant and contravariant tensors of rank 1. Textbooks often 

begin at this point. 

Epilogue 

If you had difficulty following the last few arguments, please take time to write out the 

summations in full. Doing so will require some care in mathematical bookkeeping but will be 

well worth the effort. Once the technique is mastered, it can then be repeated for higher order 

vector products such as dyads, triads, or the general “n-ad” product UVW...ABC. You are urged 

to try. From this point on, you should also be able to work your way through any basic text in the 

subject. 

Many important theories in physics are developed using tensors because of their succinctness 

and their relative “ease” in utility. The resulting algebraic and/or differential equations can be 

extremely difficult to solve, but the procedure for arriving at them is usually very direct. Among 

the most famous of the theoretical developments using tensors are the theory of 

electromagnetism and the special and general theories of relativity. 

Acknowledgments 

1. Thanks to Marlos Jacob de Melo, a civil engineer, who lives in Recife, Brazil. This article was 

written at his request. He appreciates physics and uses his computer to visit the NASA Glenn 

LTP website (www.grc.nasa.gov/WWW/K-12/Numbers/Math/Mathematical_Thinking/). Marlos 

and I corresponded extensively on this article. 

2. Thanks to Dr. Ken DeWitt, my tensor analysis professor, who read the text and made valuable 

corrections. Dr. DeWitt is the one who pointed out the rhythm in mathematics. If a shared insight 

can change a life, his certainly did! 

3. Thanks especially to Ruth Petersen, my mentor in distance learning who edits all of my Learning 

Technologies Project (LTP) work, and who had both the courage and the stamina to slog through 

this article not once but several times as it developed. 

4. Thanks to Dr. Tom Morton who reviewed an early draft and made several helpful suggestions. 

Tom kept me from getting too lazy in the really sticky parts! 

5. Thanks to Dr. Harold Kautz who first described the permeability tensor to me as an example of a 

quantity capable of changing both the magnitude and direction of a vector during one of our 

famous walks in the park many years ago. 

6. Thanks to Dr. Norman Grier who introduced me to Shokolnikoff’s text on tensor analysis. I still 

consider it one of the finest. 

7. Thanks to Dr. Aaron Snyder whose beautiful computer renderings of air-flow over aircraft turbine 

blades graphically demonstrates the power of advanced mathematics. 
This publication is available from the NASA Center for AeroSpace Information, 301–621–0390.

REPORT DOCUMENTATION PAGE

2. REPORT DATE

19. SECURITY CLASSIFICATION

 OF ABSTRACT

18. SECURITY CLASSIFICATION

 OF THIS PAGE

Public reporting burden for this collection of information is estimated to average 1 hour per response, including the time for reviewing instructions, searching existing data sources,

gathering and maintaining the data needed, and completing and reviewing the collection of information. Send comments regarding this burden estimate or any other aspect of this

collection of information, including suggestions for reducing this burden, to Washington Headquarters Services, Directorate for Information Operations and Reports, 1215 Jefferson

Davis Highway, Suite 1204, Arlington, VA 22202-4302, and to the Office of Management and Budget, Paperwork Reduction Project (0704-0188), Washington, DC 20503.

NSN 7540-01-280-5500 Standard Form 298 (Rev. 2-89)

Prescribed by ANSI Std. Z39-18

298-102

Form Approved

OMB No. 0704-0188

12b. DISTRIBUTION CODE

8. PERFORMING ORGANIZATION

 REPORT NUMBER

5. FUNDING NUMBERS

3. REPORT TYPE AND DATES COVERED

4. TITLE AND SUBTITLE

6. AUTHOR(S)

7. PERFORMING ORGANIZATION NAME(S) AND ADDRESS(ES)

11. SUPPLEMENTARY NOTES

12a. DISTRIBUTION/AVAILABILITY STATEMENT

13. ABSTRACT (Maximum 200 words)

14. SUBJECT TERMS

17. SECURITY CLASSIFICATION

 OF REPORT

16. PRICE CODE

15. NUMBER OF PAGES

20. LIMITATION OF ABSTRACT

Unclassified Unclassified

Technical Memorandum

Unclassified

National Aeronautics and Space Administration

John H. Glenn Research Center at Lewis Field

Cleveland, Ohio 44135–3191

1. AGENCY USE ONLY (Leave blank)

10. SPONSORING/MONITORING

 AGENCY REPORT NUMBER

9. SPONSORING/MONITORING AGENCY NAME(S) AND ADDRESS(ES)

National Aeronautics and Space Administration

Washington, DC 20546–0001

Available electronically at http://gltrs.grc.nasa.gov

September 2002

NASA TM—2002-211716

E–13468

WU–332–41–00–00

30

An Introduction to Tensors for Students of Physics and Engineering

Joseph C. Kolecki

Tensor analysis; Introduction physiscs; Engineering

Unclassified -Unlimited

Subject Categories: 59 and 67 Distribution: Nonstandard

Responsible person, Joseph C. Kolecki, organization code 5410, 216–433–2296.

Tensor analysis is the type of subject that can make even the best of students shudder. My own post-graduate instructor in the subject

took away much of the fear by speaking of an implicit rhythm in the peculiar notation traditionally used, and helped us to see how this

rhythm plays its way throughout the various formalisms. Prior to taking that class, I had spent many years “playing” on my own with

tensors. I found the going to be tremendously difficult but was able, over time, to back out some physical and geometrical considerations that helped to make the subject a little more transparent. Today, it is sometimes hard not to think in terms of tensors and their

associated concepts. This article, prompted and greatly enhanced by Marlos Jacob, whom I’ve met only by e-mail, is an attempt to

record those early notions concerning tensors. It is intended to serve as a bridge from the point where most undergraduate students

“leave off” in their studies of mathematics to the place where most texts on tensor analysis begin. A basic knowledge of vectors,

matrices, and physics is assumed. A semi-intuitive approach to those notions underlying tensor analysis is given via scalars, vectors,

dyads, triads, and higher vector products. The reader must be prepared to do some mathematics and to think. For those students who

wish to go beyond this humble start, I can only recommend my professor’s wisdom: find the rhythm in the mathematics and you will

fare pretty well.