Scientific.Core.IRealFunction
IRealFunction = interface
end
Represents a real-valued function $f\colon\mathbb{R}\to\mathbb{R}$.
Unit
Scientific.CoreDeclared in Scientific.Core.pas
Defines geometric primitives and scalar-function abstractions. Vectors use Cartesian coordinates:
None.
Scientific.Core.IRealFunction
IRealFunction = interface
end
Represents a real-valued function $f\colon\mathbb{R}\to\mathbb{R}$.
Scientific.Core.TRealFunctionTInterfacedObjectIRealFunction
TRealFunction = class(TInterfacedObject, IRealFunction)
end
Supplies reference counting for concrete real-valued functions.
Scientific.Core.TVector2
TVector2 = record
end
Stores a vector $\mathbf{v}=(v_x,v_y)$ in the Euclidean plane.
Scientific.Core.AngleBetween
function AngleBetween(const A: TVector2; const B: TVector2): Double
Measures the unsigned angle between two non-zero vectors.
| Name | Description |
|---|---|
A | First vector $\mathbf{a}$. |
B | Second vector $\mathbf{b}$. |
The angle $\theta\in[0,\pi]$, or zero for a zero input.
Scientific.Core.Distance
function Distance(const A: TVector2; const B: TVector2): Double
Computes the distance between two points.
| Name | Description |
|---|---|
A | First point $\mathbf{a}$. |
B | Second point $\mathbf{b}$. |
Their Euclidean distance.
Scientific.Core.Dot
function Dot(const A: TVector2; const B: TVector2): Double
Computes the Euclidean inner product.
| Name | Description |
|---|---|
A | Left vector $\mathbf{a}$. |
B | Right vector $\mathbf{b}$. |
The scalar inner product.
Scientific.Core.Magnitude
function Magnitude(const Value: TVector2): Double
Computes the Euclidean magnitude of a vector.
| Name | Description |
|---|---|
Value | Vector $\mathbf{v}$. |
Its non-negative magnitude.
Scientific.Core.Normalize
function Normalize(const Value: TVector2): TVector2
Produces a unit vector with the same direction.
The zero vector maps to itself rather than dividing by zero.
| Name | Description |
|---|---|
Value | Vector $\mathbf{v}$ to normalize. |
$\widehat{\mathbf{v}}$ or $(0,0)$ for a zero input.
Scientific.Core.Rotate
function Rotate(const Value: TVector2; const Angle: Double): TVector2
Rotates a vector counter-clockwise by $\theta$ radians.
| Name | Description |
|---|---|
Value | Vector $\mathbf{v}$ to rotate. |
Angle | Rotation angle $\theta$ in radians. |
The rotated vector $\mathbf{v}'$.
Scientific.Core.Vector2
function Vector2(const X: Double; const Y: Double): TVector2
Constructs the vector $\mathbf{v}=(x,y)$.
| Name | Description |
|---|---|
X | Horizontal component $v_x$. |
Y | Vertical component $v_y$. |
A vector containing both components.
Scientific.Core.IRealFunction.EvaluateParent: Scientific.Core.IRealFunction
function Evaluate(const X: Double): Double
Evaluates $f(x)$ at one real argument.
| Name | Description |
|---|---|
X | Argument supplied to the function. |
The scalar value $f(X)$.
Scientific.Core.TRealFunction.EvaluateParent: Scientific.Core.TRealFunction
function Evaluate(const X: Double): Double; virtual; abstract
Evaluates the concrete function at $x$.
| Name | Description |
|---|---|
X | Argument supplied to the function. |
The scalar value $f(X)$.
Scientific.Core.TVector2.XParent: Scientific.Core.TVector2
X : Double
Horizontal component $v_x$.
Scientific.Core.TVector2.YParent: Scientific.Core.TVector2
Y : Double
Vertical component $v_y$.