Record TCL3MultivecQuantity

Unit

Declaration

type TCL3MultivecQuantity = record

Description

Represents a general multivector of Cl(3,0) with physical dimensions.

Combines a TCL3Multivector value with a TDimension, supporting the full geometric algebra arithmetic while preserving dimensional consistency. All eight grades (scalar, vector, bivector, trivector) are present simultaneously, each carrying the same physical dimension stored in FDim.

Arithmetic operations follow both the rules of Cl(3,0) and the rules of dimensional analysis: incompatible dimensions raise an exception at runtime. When the symbol ADIMOFF is defined, this type degenerates to TCL3Multivector and all dimension checking is disabled.

Overview

Methods

Public class operator *(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator *(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;
Public class operator *(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator +(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator +(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;
Public class operator +(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator -(const ASelf: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator -(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator -(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;
Public class operator -(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator /(const ALeft: double; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator /(const ALeft: TCL3MultivecQuantity; const ARight: double): TCL3MultivecQuantity;
Public class operator /(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator /(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;
Public class operator /(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;
Public class operator <>(const ALeft, ARight: TCL3MultivecQuantity): boolean;
Public class operator <>(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): boolean;
Public class operator <>(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): boolean;
Public class operator =(const ALeft, ARight: TCL3MultivecQuantity): boolean;
Public class operator =(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): boolean;
Public class operator =(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): boolean;

Description

Methods

Public class operator *(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the geometric product of two multivector quantities. The resulting dimension is the product of the two dimensions. The geometric product follows the full Cl(3,0) multiplication rules.

Public class operator *(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;

Returns the geometric product of a multivector quantity and a real quantity. The resulting dimension is the product of the two dimensions.

Public class operator *(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the geometric product of a real quantity and a multivector quantity. The resulting dimension is the product of the two dimensions.

Public class operator +(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the component-wise sum of two multivector quantities. Both operands must have the same dimension.

Public class operator +(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;

Returns the sum of a multivector quantity and a real quantity. Both operands must have the same dimension.

Public class operator +(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the sum of a real quantity and a multivector quantity. Both operands must have the same dimension.

Public class operator -(const ASelf: TCL3MultivecQuantity): TCL3MultivecQuantity;

Unary minus. Returns the negation of the multivector quantity. Each component mₖ becomes -mₖ.

Public class operator -(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the component-wise difference of two multivector quantities. Both operands must have the same dimension.

Public class operator -(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;

Returns the difference of a multivector quantity and a real quantity. Both operands must have the same dimension.

Public class operator -(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the difference of a real quantity and a multivector quantity. Both operands must have the same dimension.

Public class operator /(const ALeft: double; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the geometric quotient of a dimensionless real scalar divided by a multivector quantity: ALeft * ARight⁻¹. The resulting dimension is the inverse of ARight.

Public class operator /(const ALeft: TCL3MultivecQuantity; const ARight: double): TCL3MultivecQuantity;

Returns the geometric quotient of a multivector quantity divided by a dimensionless real scalar. Each component is divided by ARight. The dimension is preserved.

Public class operator /(const ALeft, ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the geometric quotient of two multivector quantities: ALeft * ARight⁻¹. The resulting dimension is the ratio of the two dimensions.

Public class operator /(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): TCL3MultivecQuantity;

Returns the geometric quotient of a multivector quantity divided by a real quantity: ALeft * ARight⁻¹. The resulting dimension is the ratio of the two dimensions.

Public class operator /(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): TCL3MultivecQuantity;

Returns the geometric quotient of a real quantity divided by a multivector quantity: ALeft * ARight⁻¹. The resulting dimension is the ratio of the two dimensions.

Public class operator <>(const ALeft, ARight: TCL3MultivecQuantity): boolean;

Returns True if the two multivector quantities differ in dimension or in any component.

Public class operator <>(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): boolean;

Returns True if the multivector quantity and the real quantity differ in dimension or in any component.

Public class operator <>(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): boolean;

Returns True if the real quantity and the multivector quantity differ in dimension or in any component.

Public class operator =(const ALeft, ARight: TCL3MultivecQuantity): boolean;

Returns True if both multivector quantities have the same dimension and all components are equal.

Public class operator =(const ALeft: TCL3MultivecQuantity; const ARight: TQuantity): boolean;

Returns True if the multivector quantity equals the real quantity, i.e. all non-scalar components are negligible.

Public class operator =(const ALeft: TQuantity; const ARight: TCL3MultivecQuantity): boolean;

Returns True if the real quantity equals the multivector quantity, i.e. all non-scalar components are negligible.


Generated by PasDoc 1.0.4.