Record TCL3VecQuantity
Unit
Declaration
type TCL3VecQuantity = record
Description
Represents a pure vector (grade-1 element) of Cl(3,0) with physical dimensions.
Combines a TCL3Vector value with a TDimension, supporting geometric algebra arithmetic while preserving dimensional consistency. The physical dimension is stored in FDim and shared by the three vector components m1·e₁ + m2·e₂ + m3·e₃.
When combined with elements of other grades the result is generally promoted to a full TCL3MultivecQuantity, with the following notable exceptions:
The geometric product
v * TandT * vwith a trivector returns a TCL3BivecQuantity, sinceeᵢ · e₁₂₃ = ±eⱼ∧eₖ.The geometric quotient
v / TandT / vanalogously returns a TCL3BivecQuantity.
When the symbol ADIMOFF is defined, this type degenerates to TCL3Vector and all dimension checking is disabled.
Overview
Methods
| Public | class operator *(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator *(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator *(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3BivecQuantity; |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3BivecQuantity; |
| Public | class operator *(const ALeft, ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3VecQuantity; |
| Public | class operator *(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3VecQuantity; |
| Public | class operator +(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft, ARight: TCL3VecQuantity): TCL3VecQuantity; |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3MultivecQuantity; |
| Public | class operator +(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ASelf: TCL3VecQuantity): TCL3VecQuantity; |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft, ARight: TCL3VecQuantity): TCL3VecQuantity; |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3MultivecQuantity; |
| Public | class operator -(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator /(const ALeft: double; const ARight: TCL3VecQuantity): TCL3VecQuantity; |
| Public | class operator /(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator /(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator /(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3BivecQuantity; |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: double): TCL3VecQuantity; |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3BivecQuantity; |
| Public | class operator /(const ALeft, ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3VecQuantity; |
| Public | class operator /(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3VecQuantity; |
| Public | class operator :=(const AValue: TCL3VecQuantity): TCL3MultivecQuantity; |
| Public | class operator <>(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): boolean; |
| Public | class operator <>(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): boolean; |
| Public | class operator <>(const ALeft, ARight: TCL3VecQuantity): boolean; |
| Public | class operator =(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): boolean; |
| Public | class operator =(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): boolean; |
| Public | class operator =(const ALeft, ARight: TCL3VecQuantity): boolean; |
Description
Methods
| Public | class operator *(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric product of a bivector quantity and a vector quantity. The resulting dimension is the product of the two dimensions. Grade mixing occurs according to the | |
| Public | class operator *(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric product of a multivector quantity and a vector quantity. The resulting dimension is the product of the two dimensions. Grade mixing occurs according to the | |
| Public | class operator *(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3BivecQuantity; |
|
Returns the geometric product of a trivector quantity and a vector quantity. Since | |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric product of a vector quantity and a bivector quantity. The resulting dimension is the product of the two dimensions. Grade mixing occurs according to the | |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric product of a vector quantity and a multivector quantity. The resulting dimension is the product of the two dimensions. Grade mixing occurs according to the | |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3BivecQuantity; |
|
Returns the geometric product of a vector quantity and a trivector quantity. Since | |
| Public | class operator *(const ALeft, ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric product of two vector quantities. The result is a mixed-grade element (scalar + bivector), hence a full TCL3MultivecQuantity. | |
| Public | class operator *(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3VecQuantity; |
|
Returns the geometric product of a vector quantity and a real quantity scalar. Each component is scaled by | |
| Public | class operator *(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3VecQuantity; |
|
Returns the geometric product of a real quantity scalar and a vector quantity. Each component is scaled by | |
| Public | class operator +(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a bivector quantity and a vector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-2 components from | |
| Public | class operator +(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a multivector quantity and a vector quantity. Both operands must have the same dimension. The vector contributes only to the grade-1 components. | |
| Public | class operator +(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a trivector quantity and a vector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-3 component from | |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a vector quantity and a bivector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-1 components from | |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a vector quantity and a multivector quantity. Both operands must have the same dimension. The vector contributes only to the grade-1 components. | |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a vector quantity and a trivector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-1 components from | |
| Public | class operator +(const ALeft, ARight: TCL3VecQuantity): TCL3VecQuantity; |
|
Returns the component-wise sum of two vector quantities. Both operands must have the same dimension. The result is a pure vector quantity. | |
| Public | class operator +(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a vector quantity and a real quantity. Both operands must have the same dimension. The result is a full multivector quantity with | |
| Public | class operator +(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the sum of a real quantity and a vector quantity. Both operands must have the same dimension. The result is a full multivector quantity with | |
| Public | class operator -(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a bivector quantity and a vector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-2 components from | |
| Public | class operator -(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a multivector quantity and a vector quantity. Both operands must have the same dimension. The vector contributes only to the grade-1 components. | |
| Public | class operator -(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a trivector quantity and a vector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-3 component from | |
| Public | class operator -(const ASelf: TCL3VecQuantity): TCL3VecQuantity; |
|
Unary minus. Returns the negation of the vector quantity. Each component | |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a vector quantity and a bivector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-1 components from | |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a vector quantity and a multivector quantity. Both operands must have the same dimension. The vector contributes only to the grade-1 components. | |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a vector quantity and a trivector quantity. Both operands must have the same dimension. The result is a full multivector quantity with grade-1 components from | |
| Public | class operator -(const ALeft, ARight: TCL3VecQuantity): TCL3VecQuantity; |
|
Returns the component-wise difference of two vector quantities. Both operands must have the same dimension. The result is a pure vector quantity. | |
| Public | class operator -(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a vector quantity and a real quantity. Both operands must have the same dimension. The result is a full multivector quantity with | |
| Public | class operator -(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the difference of a real quantity and a vector quantity. Both operands must have the same dimension. The result is a full multivector quantity with | |
| Public | class operator /(const ALeft: double; const ARight: TCL3VecQuantity): TCL3VecQuantity; |
|
Returns the geometric quotient of a dimensionless real scalar divided by a vector quantity: | |
| Public | class operator /(const ALeft: TCL3BivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric quotient of a bivector quantity divided by a vector quantity: | |
| Public | class operator /(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric quotient of a multivector quantity divided by a vector quantity: | |
| Public | class operator /(const ALeft: TCL3TrivecQuantity; const ARight: TCL3VecQuantity): TCL3BivecQuantity; |
|
Returns the geometric quotient of a trivector quantity divided by a vector quantity: | |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: double): TCL3VecQuantity; |
|
Returns the geometric quotient of a vector quantity divided by a dimensionless real scalar. Each component is divided by | |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TCL3BivecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric quotient of a vector quantity divided by a bivector quantity: | |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric quotient of a vector quantity divided by a multivector quantity: | |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TCL3TrivecQuantity): TCL3BivecQuantity; |
|
Returns the geometric quotient of a vector quantity divided by a trivector quantity: | |
| Public | class operator /(const ALeft, ARight: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Returns the geometric quotient of two vector quantities: | |
| Public | class operator /(const ALeft: TCL3VecQuantity; const ARight: TQuantity): TCL3VecQuantity; |
|
Returns the geometric quotient of a vector quantity divided by a real quantity scalar: | |
| Public | class operator /(const ALeft: TQuantity; const ARight: TCL3VecQuantity): TCL3VecQuantity; |
|
Returns the geometric quotient of a real quantity scalar divided by a vector quantity: | |
| Public | class operator :=(const AValue: TCL3VecQuantity): TCL3MultivecQuantity; |
|
Implicit conversion from a vector quantity to a full multivector quantity. All components of the result are zero except | |
| Public | class operator <>(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): boolean; |
|
Returns | |
| Public | class operator <>(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): boolean; |
|
Returns | |
| Public | class operator <>(const ALeft, ARight: TCL3VecQuantity): boolean; |
|
Returns | |
| Public | class operator =(const ALeft: TCL3MultivecQuantity; const ARight: TCL3VecQuantity): boolean; |
|
Returns | |
| Public | class operator =(const ALeft: TCL3VecQuantity; const ARight: TCL3MultivecQuantity): boolean; |
|
Returns | |
| Public | class operator =(const ALeft, ARight: TCL3VecQuantity): boolean; |
|
Returns | |
Generated by PasDoc 1.0.4.