Quantity character

Synopsis

Declared in <mp‐units/framework/quantity_character.h>

struct quantity_character;

Description

A quantity character classifies a quantity along two orthogonal axes:

  • its tensor order (quantity_tensor_order): scalar (order 0), vector (order 1), or tensor (order 2), and

  • its numeric field (quantity_field): real or complex.

Scalars, vectors, and tensors are mathematical objects independent of the choice of a coordinate system, whereas their components depend on it. A scalar has magnitude but no direction; a vector possesses both magnitude and direction; a tensor (for example the Cauchy stress tensor) additionally carries orientation. The numeric field separately distinguishes real quantities from complex ones (such as a voltage phasor or a complex permittivity), which affects the operations a quantity admits.

The pre‐2.6.0 flat spelling (quantity_character::real_scalar, ::complex_scalar, ::vector, ::tensor) remains available for backward compatibility and maps onto the two axes.

Member Functions

Name

Description

quantity_character [constructor]

Constructors

Data Members

Name

field

order

Friends

Name

Description

mp_units::operator==

mp_units::operator<=>

Three‐way comparison operator

Created with MrDocs