Record TCL3MultivectorHelper
Unit
Declaration
type TCL3MultivectorHelper = record helper for TCL3Multivector
Description
Record helper for TCL3Multivector providing the full set of geometric algebra operations for Cl(3,0).
Extends TCL3Multivector with grade-aware operations including duality, reversion, conjugation, projection, rejection, reflection, and rotation, as well as utility functions for grade testing, component extraction, and string conversion.
Overview
Methods
| Public | function Conjugate: TCL3Multivector; |
| Public | function Dot(const AVector: TCL3Bivector): TCL3Multivector; overload; |
| Public | function Dot(const AVector: TCL3Multivector): TCL3Multivector; overload; |
| Public | function Dot(const AVector: TCL3Trivector): TCL3Multivector; overload; |
| Public | function Dot(const AVector: TCL3Vector): TCL3Multivector; overload; |
| Public | function Dual: TCL3Multivector; |
| Public | function ExtractBivector: TCL3Bivector; overload; |
| Public | function ExtractBivector(AComponents: TCL3MultivectorComponents): TCL3Bivector; overload; |
| Public | function ExtractMultivector(AComponents: TCL3MultivectorComponents): TCL3Multivector; |
| Public | function ExtractScalar: double; |
| Public | function ExtractTrivector: TCL3Trivector; |
| Public | function ExtractVector: TCL3Vector; overload; |
| Public | function ExtractVector(AComponents: TCL3MultivectorComponents): TCL3Vector; overload; |
| Public | function Inverse: TCL3Multivector; |
| Public | function IsA: string; |
| Public | function IsBiVector: boolean; |
| Public | function IsNull: boolean; |
| Public | function IsScalar: boolean; |
| Public | function IsTrivector: boolean; |
| Public | function IsVector: boolean; |
| Public | function LeftReciprocal: TCL3Multivector; |
| Public | function Norm: double; |
| Public | function Normalized: TCL3Multivector; |
| Public | function Projection(const AVector: TCL3Bivector): TCL3Multivector; overload; |
| Public | function Projection(const AVector: TCL3Multivector): TCL3Multivector; overload; |
| Public | function Projection(const AVector: TCL3Trivector): TCL3Multivector; overload; |
| Public | function Projection(const AVector: TCL3Vector): TCL3Multivector; overload; |
| Public | function Reciprocal: TCL3Multivector; |
| Public | function Reflection(const AVector: TCL3Bivector): TCL3Multivector; overload; |
| Public | function Reflection(const AVector: TCL3Multivector): TCL3Multivector; overload; |
| Public | function Reflection(const AVector: TCL3Trivector): TCL3Multivector; overload; |
| Public | function Reflection(const AVector: TCL3Vector): TCL3Multivector; overload; |
| Public | function Rejection(const AVector: TCL3Bivector): TCL3Multivector; overload; |
| Public | function Rejection(const AVector: TCL3Multivector): TCL3Multivector; overload; |
| Public | function Rejection(const AVector: TCL3Trivector): double; overload; |
| Public | function Rejection(const AVector: TCL3Vector): TCL3Multivector; overload; |
| Public | function Reverse: TCL3Multivector; |
| Public | function Rotation(const AVector1, AVector2: TCL3Bivector): TCL3Multivector; overload; |
| Public | function Rotation(const AVector1, AVector2: TCL3Multivector): TCL3Multivector; overload; |
| Public | function Rotation(const AVector1, AVector2: TCL3Trivector): TCL3Multivector; overload; |
| Public | function Rotation(const AVector1, AVector2: TCL3Vector): TCL3Multivector; overload; |
| Public | function SameValue(const AValue: double): boolean; overload; |
| Public | function SameValue(const AValue: TCL3Bivector): boolean; overload; |
| Public | function SameValue(const AValue: TCL3Multivector): boolean; overload; |
| Public | function SameValue(const AValue: TCL3Trivector): boolean; overload; |
| Public | function SameValue(const AValue: TCL3Vector): boolean; overload; |
| Public | function SquaredNorm: double; |
| Public | function ToString: string; |
| Public | function ToString(APrecision, ADigits: longint): string; |
| Public | function Wedge(const AVector: TCL3Bivector): TCL3Multivector; overload; |
| Public | function Wedge(const AVector: TCL3Multivector): TCL3Multivector; overload; |
| Public | function Wedge(const AVector: TCL3Trivector): TCL3Trivector; overload; |
| Public | function Wedge(const AVector: TCL3Vector): TCL3Multivector; overload; |
Description
Methods
| Public | function Conjugate: TCL3Multivector; |
|
Returns the Clifford conjugate of the multivector. The conjugate combines reversion and grade involution. Grade-
| |
| Public | function Dot(const AVector: TCL3Bivector): TCL3Multivector; overload; |
|
Returns the inner (dot) product of the multivector with a bivector. Parameters
| |
| Public | function Dot(const AVector: TCL3Multivector): TCL3Multivector; overload; |
|
Returns the inner (dot) product of two multivectors. Parameters
| |
| Public | function Dot(const AVector: TCL3Trivector): TCL3Multivector; overload; |
|
Returns the inner (dot) product of the multivector with a trivector. Parameters
| |
| Public | function Dot(const AVector: TCL3Vector): TCL3Multivector; overload; |
|
Returns the inner (dot) product of the multivector with a vector. The inner product extracts the grade Parameters
| |
| Public | function Dual: TCL3Multivector; |
|
Returns the Hodge dual of the multivector. In | |
| Public | function ExtractBivector: TCL3Bivector; overload; |
|
Extracts all grade-2 (bivector) components of the multivector. All other components are discarded. | |
| Public | function ExtractBivector(AComponents: TCL3MultivectorComponents): TCL3Bivector; overload; |
|
Extracts selected bivector components from the multivector. Only grade-2 components present in Parameters
| |
| Public | function ExtractMultivector(AComponents: TCL3MultivectorComponents): TCL3Multivector; |
|
Extracts selected components from the multivector as a TCL3Multivector. Only the components specified in Parameters
| |
| Public | function ExtractScalar: double; |
|
Extracts the grade-0 (scalar) component of the multivector. All other components are discarded. | |
| Public | function ExtractTrivector: TCL3Trivector; |
|
Extracts the grade-3 (pseudoscalar) component of the multivector. All other components are discarded. | |
| Public | function ExtractVector: TCL3Vector; overload; |
|
Extracts all grade-1 (vector) components of the multivector. All other components are discarded. | |
| Public | function ExtractVector(AComponents: TCL3MultivectorComponents): TCL3Vector; overload; |
|
Extracts selected vector components from the multivector. Only grade-1 components present in Parameters
| |
| Public | function Inverse: TCL3Multivector; |
|
Returns the inverse of the multivector: | |
| Public | function IsA: string; |
|
Returns a string identifying the grade structure of the multivector. Examples of possible return values: | |
| Public | function IsBiVector: boolean; |
|
Returns | |
| Public | function IsNull: boolean; |
|
Returns | |
| Public | function IsScalar: boolean; |
|
Returns | |
| Public | function IsTrivector: boolean; |
|
Returns | |
| Public | function IsVector: boolean; |
|
Returns | |
| Public | function LeftReciprocal: TCL3Multivector; |
|
Returns the left reciprocal of the multivector: | |
| Public | function Norm: double; |
|
Returns the norm of the multivector. Defined as | |
| Public | function Normalized: TCL3Multivector; |
|
Returns the unit multivector in the same direction. Each component is divided by Norm. The result satisfies | |
| Public | function Projection(const AVector: TCL3Bivector): TCL3Multivector; overload; |
|
Returns the projection of the multivector onto a bivector subspace. Defined as Parameters
| |
| Public | function Projection(const AVector: TCL3Multivector): TCL3Multivector; overload; |
|
Returns the projection of the multivector onto a general multivector subspace. Parameters
| |
| Public | function Projection(const AVector: TCL3Trivector): TCL3Multivector; overload; |
|
Returns the projection of the multivector onto the trivector subspace. Since the trivector spans the entire space in Parameters
| |
| Public | function Projection(const AVector: TCL3Vector): TCL3Multivector; overload; |
|
Returns the projection of the multivector onto a vector subspace. Defined as Parameters
| |
| Public | function Reciprocal: TCL3Multivector; |
|
Returns the right reciprocal of the multivector: | |
| Public | function Reflection(const AVector: TCL3Bivector): TCL3Multivector; overload; |
|
Returns the reflection of the multivector through a bivector subspace. Defined as Parameters
| |
| Public | function Reflection(const AVector: TCL3Multivector): TCL3Multivector; overload; |
|
Returns the reflection of the multivector through a general multivector subspace. Defined as Parameters
| |
| Public | function Reflection(const AVector: TCL3Trivector): TCL3Multivector; overload; |
|
Returns the reflection of the multivector through the trivector subspace. Defined as Parameters
| |
| Public | function Reflection(const AVector: TCL3Vector): TCL3Multivector; overload; |
|
Returns the reflection of the multivector through a vector hyperplane. Defined as Parameters
| |
| Public | function Rejection(const AVector: TCL3Bivector): TCL3Multivector; overload; |
|
Returns the rejection of the multivector from a bivector subspace. Defined as Parameters
| |
| Public | function Rejection(const AVector: TCL3Multivector): TCL3Multivector; overload; |
|
Returns the rejection of the multivector from a general multivector subspace. Parameters
| |
| Public | function Rejection(const AVector: TCL3Trivector): double; overload; |
|
Returns the rejection of the multivector from the trivector subspace as a scalar. Since the trivector spans the entire space, the rejection reduces to a scalar coefficient. Parameters
| |
| Public | function Rejection(const AVector: TCL3Vector): TCL3Multivector; overload; |
|
Returns the rejection of the multivector from a vector subspace. Defined as Parameters
| |
| Public | function Reverse: TCL3Multivector; |
|
Returns the reverse of the multivector. The reverse
| |
| Public | function Rotation(const AVector1, AVector2: TCL3Bivector): TCL3Multivector; overload; |
|
Returns the rotation of the multivector using a bivector rotor sandwich product. Applied as Parameters
| |
| Public | function Rotation(const AVector1, AVector2: TCL3Multivector): TCL3Multivector; overload; |
|
Returns the rotation of the multivector using a general multivector rotor. Applied as Parameters
| |
| Public | function Rotation(const AVector1, AVector2: TCL3Trivector): TCL3Multivector; overload; |
|
Returns the rotation of the multivector using a trivector rotor sandwich product. Applied as Parameters
| |
| Public | function Rotation(const AVector1, AVector2: TCL3Vector): TCL3Multivector; overload; |
|
Returns the rotation of the multivector in the plane defined by two vectors. The rotation is performed by the versor Parameters
| |
| Public | function SameValue(const AValue: double): boolean; overload; |
|
Returns Parameters
| |
| Public | function SameValue(const AValue: TCL3Bivector): boolean; overload; |
|
Returns Parameters
| |
| Public | function SameValue(const AValue: TCL3Multivector): boolean; overload; |
|
Returns Parameters
| |
| Public | function SameValue(const AValue: TCL3Trivector): boolean; overload; |
|
Returns Parameters
| |
| Public | function SameValue(const AValue: TCL3Vector): boolean; overload; |
|
Returns Parameters
| |
| Public | function SquaredNorm: double; |
|
Returns the squared norm of the multivector. Defined as | |
| Public | function ToString: string; |
|
Converts the multivector to its default string representation. Only non-zero components are included in the output. | |
| Public | function ToString(APrecision, ADigits: longint): string; |
|
Converts the multivector to a formatted string with controlled precision. Only non-zero components are included in the output. Parameters
| |
| Public | function Wedge(const AVector: TCL3Bivector): TCL3Multivector; overload; |
|
Returns the outer (wedge) product of the multivector with a bivector. Parameters
| |
| Public | function Wedge(const AVector: TCL3Multivector): TCL3Multivector; overload; |
|
Returns the outer (wedge) product of two multivectors. Parameters
| |
| Public | function Wedge(const AVector: TCL3Trivector): TCL3Trivector; overload; |
|
Returns the outer (wedge) product of the multivector with a trivector. Since Parameters
| |
| Public | function Wedge(const AVector: TCL3Vector): TCL3Multivector; overload; |
|
Returns the outer (wedge) product of the multivector with a vector. The wedge product extracts the grade Parameters
| |
Generated by PasDoc 1.0.4.