A character does not know its basis
Assumes Three optical characters, and the arithmetic that assigns them and What a trace decides.
A hexagonal crystal has five independent elastic constants. This site computes that number from a group of twenty-four integer matrices, written in a basis where a and b are 120° apart and of the same length as each other and a different length from c.
Those matrices are not orthogonal. The basis is not orthonormal. An elastic tensor is defined in an orthonormal frame, and the whole calculation never builds one.
It is nevertheless exact, and the reason is one property of the trace.
The two descriptions
There are two ways to write the symmetry operations of a hexagonal crystal.
In the lattice basis, an operation is the matrix of how it permutes the basis vectors. The six-fold rotation about c sends a to a + b and b to −a, so it is a matrix of integers — 1, −1 and 0 — with no trigonometry in it at all. Every operation of every crystallographic group is an integer matrix in this basis, and that is the whole reason symmetry here is decidable rather than measured.
In a Cartesian frame, the same rotation is a matrix of cosines and sines of 60°, with an irrational √3/2 in it. This is the description a physicist needs, because a tensor’s components are defined against orthonormal axes.
The two are related by the basis matrix B, whose columns are the lattice vectors expressed in the Cartesian frame:
They are conjugate, which is to say they are the same linear map written down twice.
Conjugation does not move a trace
The identity that does the work is one line:
from which tr(B M B⁻¹) = tr(M B⁻¹ B) = tr(M). A trace is a property of a linear map rather than of the array of numbers used to write it.
The determinant is likewise invariant, since det is multiplicative and det(B)·det(B⁻¹) = 1.
Every character in Neumann’s principle is built from tr M, tr M² and det M — the vector character is tr M, the symmetric rank-2 character is ½[(tr M)² + tr M²], the elastic one is a polynomial in those, and axial properties multiply by det M. So every character is conjugation-invariant, so the sum is the same in either description, so the answer is the same.
The lattice-basis computation is not an approximation to the Cartesian one. It is the same number.
What this actually buys
Three things, and the first is the one that matters least and is noticed first.
Speed, which is irrelevant here. Forty-eight integer matrix multiplications are fast and forty-eight floating-point ones are also fast.
Exactness, which matters a great deal. In a Cartesian frame the six-fold rotation’s entries are ±½ and ±√3/2, and tr M² is a sum of products of irrationals that comes to an integer after cancellation. In floating point that integer arrives as 2.9999999999999996, and a count of independent components is then a number that has to be rounded — which means a tolerance, which means a judgement, on a site whose standing claim is that this subject needs neither.
In the lattice basis the trace is a sum of integers. The average is an exact rational, the assertion that it is an integer is exact, and an input that is not a group fails that assertion rather than rounding to something plausible.
Consistency with everything else here. The same integer matrices that detect a plane pattern’s group, that derive the holohedries from a metric and that enumerate the thirty-two classes are the ones that count elastic constants. No conversion happens anywhere in the field, so there is no place for a conversion to be wrong.
The trigonal case, where the lattice basis earns its keep
Hexagonal axes are the mild version of the argument. The one that makes it worth stating is rhombohedral, where the natural lattice basis is three equal vectors at three equal angles that are not right angles and not 120° either.
In that basis the three-fold rotation is a permutation matrix — it cycles a → b → c — so its trace is 0 and its entries are three ones and six zeros. Nothing could be simpler. In a Cartesian frame the same rotation is about a body-diagonal direction and every entry is an irrational number.
The same object, and one of the two descriptions is a permutation. That is the general pattern: the lattice basis is the one in which a crystal’s own symmetry operations are combinatorial, because they are permutations and sign changes of things the lattice actually contains.
The part that genuinely needs axes
The count is basis-free. The shape is not.
“How many independent components” is a question about a subspace and has a basis-free answer. “Which components vanish” is a question about named components — is it c₁₄ or c₁₅ that is zero — and a component has no name until axes are chosen. There is no basis-free version of that question, and pretending otherwise would be a category error rather than a shortcut.
So the shape figures in this field do choose a frame, and they choose it at that point and no earlier: the group’s matrices are conjugated into a Cartesian frame, the projector is built on the six or twenty-one named components, and the surviving ones are read off. It is the one place in the field where a floating-point number appears.
And the two are required to agree
This is the check the field is built around, and it is the reason the shape figures are worth having beyond illustration.
The two calculations share the group and nothing else. One sums traces of integer matrices; the other builds an explicit projector in floating point in a chosen frame, applies it to each component in turn, and counts the distinct surviving values. The build fails if they disagree.
They have disagreed exactly once, during development, and the disagreement was informative: an early version of the shape figure tied two components together whenever their projected values matched for the first basis component tried, rather than for all of them, and it reported one independent value too few in the trigonal classes. The count from the character sum was right; the picture was wrong; and nothing about the picture looked wrong.
That is the same shape as the space-group diagram missing twelve of its sixteen elements — a well-formed picture of the wrong thing — and it was caught the same way, by computing the same quantity twice along routes that share no arithmetic.
What the assertion catches
The integer arithmetic is not only tidier; it makes one class of error impossible to hide, and the field relies on that.
The average of a character over a finite group must be a non-negative integer, because it is the dimension of a subspace. If the input is not a group — a set of matrices missing an element, or containing one it should not — the average is generally not an integer, and the code refuses:
a character averaged over a group gives an integer — the dimension of the invariant subspace: elastic: 173/8
In floating point that message could not be written. The value would arrive as 21.625000000000004, and any test for integrality needs a tolerance, and a tolerance large enough to accept genuine rounding is large enough to accept a nearby wrong answer. The integrality check is only a check because the arithmetic is exact.
So the property calculation is also a group check, run 192 times per build on the same objects the classification produced. It has never fired, which is the point of it: a subgroup enumeration that returned a non-closed set would be caught here even if it survived everything upstream.
Where the exactness stops
The invariance is of the character, not of the tensor. The elastic tensor of a hexagonal crystal has different components in the lattice basis and in a Cartesian frame, and the lattice-basis ones are not what anybody publishes. Only the count transfers.
It requires the two representations to be genuinely conjugate, which they are because B is invertible — a basis matrix always is. It would fail for a projection or any other singular map, and nothing here uses one.
And it says nothing about which of the surviving components is large. A hexagonal crystal has five elastic constants and they may span four orders of magnitude; graphite’s are the standard illustration, and the anisotropy is a fact about carbon rather than about the hexagonal system. Symmetry decides how many numbers there are and never what they are.
The same argument, one field over
This is not a trick invented for elastic constants. It is the reason character theory exists, and it is worth naming the general shape because it appears three times on this site under three different descriptions.
A character is a class function. It is constant on conjugacy classes, so it cannot see anything that conjugation moves — which includes the basis, the orientation, and the labels on the axes. Everything a character reports is a property of the abstract group together with how it acts, and nothing else.
That is why the element type of a crystallographic operation can be read from det and trace in any basis; why two subgroups with matching characters are the same crystal class, which is the criterion the enumeration’s merges rest on; and why the property counts here are basis-free. Three uses, one theorem, and it is not a coincidence that all three arrive in the same field.
A remark on why this is not obvious
The step reads as suspicious the first time because of a real asymmetry in how the two bases feel. The lattice basis is a bookkeeping device — a choice of cell, and the cell is a choice — while the Cartesian frame feels like where physics happens.
That intuition is backwards for this question. The physics is in the linear map: a rotation of the crystal is a rotation whatever coordinates describe it, and both matrices describe the same rotation. A trace asks a question about the map — how much does it leave alone, roughly speaking — and gets the same answer either way. What the Cartesian frame supplies is names for directions, and Neumann’s principle in its counting form does not ask for any.
The site’s older essays make the same point about cells: two descriptions of one lattice have different bases and identical content, and every claim decided in fractional coordinates survives the change. This is that argument applied to a physical property rather than to a symmetry, and it is the reason the physics can be done in the crystallographer’s coordinates rather than in the physicist’s.
What would have to change for the shortcut to fail
Stating the conditions makes the argument portable rather than a fact about this particular calculation, and there are exactly three.
The two descriptions must be conjugate. They are, because a change of basis is invertible. This would fail for a projection or any singular map, and nothing here uses one.
The quantity asked for must be a class function. Trace and determinant are; so is any polynomial in them, which covers every character in this field. It would fail immediately for a question about a specific matrix entry — “is the xy component of this operation zero” is not basis-free and has no basis-free answer.
And the property’s intrinsic symmetry must be expressible in the character. Symmetric, antisymmetric and mixed-symmetry tensor powers all have characters built from traces of powers of M, which is why the six properties here are covered. A property whose components obey a constraint that is not a symmetry of the index permutation group would need a different construction.
All three hold, and the third is the one worth watching, because it is the one that would fail silently. A character computed for the wrong representation is still a number, still an integer after averaging, and still wrong — which is why the field’s own gate checks the counts against an explicitly constructed projector rather than against nothing.
The general lesson is small and travels well: a question about how much a group leaves alone is basis-free, and a question about which named thing it leaves alone is not. Every shortcut in this field is an instance of that sentence, and every place the shortcut stops is the other half of it.
A last observation, and it is the one that makes the whole shortcut feel less like a trick. The question “how many independent elastic constants does this crystal have” sounds like a question about numbers in a table, and it is not. It is a question about the size of a space — how many degrees of freedom the symmetry leaves — and the size of a space is not a coordinate-dependent quantity any more than the number of vertices of a polyhedron depends on where the origin is put. Computing it without coordinates is therefore the natural thing to do, and computing it with them is the detour that happens to be more familiar.
Why the third condition holds, written out
The three conditions end with one that could fail silently, and it is worth checking rather than asserting for the property the essay opens with — because the elastic tensor’s intrinsic symmetry is the most elaborate in the field.
An elastic tensor has four indices. It is symmetric in the first pair, symmetric in the second, and symmetric under exchanging the two pairs. That is not a symmetric fourth power; it is the symmetric square of a symmetric square, which is a different space of a different dimension — twenty-one rather than fifteen.
The question is whether its character is still built from traces of powers of M. It is, and the construction is two applications of one rule. The symmetric square of a representation with character χ has character ½[χ(g)² + χ(g²)]. Apply that to the natural representation to get the character of a symmetric rank-two tensor; apply it again to that character to get the elastic one. Everything on the right-hand side is a trace of a power of M, so everything is basis-free.
The condition therefore holds, and it holds for a reason rather than by luck. Every intrinsic symmetry that can be written as a sequence of symmetric and antisymmetric powers inherits a character built from traces, and the ones crystal physics uses are all of that kind.
What would fail is a constraint of a different sort — a property required to satisfy a relation that is not a symmetry of its indices at all, such as a tensor whose trace is required to vanish. That is not a subspace the group’s action alone determines, so its dimension is not a character average, and no amount of basis-independence rescues it. The gyration tensor is the case to watch: it is an ordinary symmetric square with a determinant attached, which is fine, and the traceless condition some authors impose on it is not — that condition has to be applied afterwards, by subtracting a scalar, and the subtraction is where a careless calculation loses a component.
The one thing the lattice basis cannot supply
The character’s blindness to the basis is what makes the whole field computable in integers, and it is worth being precise about what it therefore cannot answer.
A character sees no lengths and no angles, because those are exactly what a change of basis moves. So no question about a metric quantity can be answered this way: how large an angle is between two directions, whether two lattice vectors have the same length, which of two planes is more widely spaced.
Those questions all need the metric tensor — the six numbers giving the dot products of the basis vectors — supplied separately. And that is precisely the division this collection runs on everywhere: the operations are integer matrices and decide the symmetry; the metric is a set of numbers and decides the geometry; and a claim needing both has to say so.
The property counts need only the first, which is why they are exact. The lattice classification needs both, which is why it takes a metric as input. And a figure drawing a tensor’s shape needs a frame, which is a metric with a choice on top of it — the reason those figures come last.
Where this goes
With the sum established as exact, the counts themselves are worth reading. The oldest of them, and the one with the most history attached, is the number of independent elastic constants: 21 for a triclinic crystal, 3 for a cubic one, and a split inside two systems that a count of operations alone does not predict.
What this makes readable
Essays that name this one as a prerequisite.
Named alongside this one
Essays reaching for the same objects. Nobody chose these; they are what the concept index makes visible.
- Twelve of the thirty-two are free character · invariant · representation · trace
- Twenty of the twenty-one character · neumann principle · tensor
- Fifteen may rotate light, and eleven are chiral character · neumann principle
- Permitted is not present neumann principle · tensor
- The mechanisms a count cannot see character · representation
- The ten with a direction of their own neumann principle · tensor
What links here
The 8 essays that link to this one and share the most of its objects, of 13 that link here.
The objects this essay names
Each one links to every other essay that touches it.
BasisCharacterInvariantNeumann principleRepresentationTensorTrace