The abstract base class for all deterministic basis signal functions.
BasisFunction
00 Remarks
Every basis function is modeled as a function of a single time variable x with four universal parameters:
- BasisFunction.Amp — amplitude / scaling factor
- BasisFunction.Center — center / horizontal shift (x0)
- BasisFunction.Scale — width / frequency / steepness factor
- BasisFunction.Offset — vertical offset (baseline)
The default evaluation is Offset + Amp * Shape((x - Center) / Scale). A concrete basis function only needs to override BasisFunction.Shape(), while combinators (sum, product, convolution, ...) override BasisFunction.Evaluate() instead. This makes both primitive functions and composite generators interchangeable as building blocks.
01 Syntax
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| Shape | 1 | the normalized shape of the basis function, evaluated at the shifted and scaled coordinate u which equals (x - Center) / Scale at call time. |
| Evaluate | 1 | evaluate the basis function at a given time point x. |
| Sample | 2 | sample the signal over a given time grid. |
| ToGeneralSignal | 1 | sample the signal and wrap it into a GeneralSignal so that it can be consumed by the downstream processing pipeline. |
| CopyParametersTo | 1 | create a deep-ish copy of the universal parameters onto another basis function (useful when building a generator programmatically). |
03 Properties
04 Members
Double)the normalized shape of the basis function, evaluated at the shifted and scaled coordinate u which equals (x - Center) / Scale at call time.
| Name | Type | Description |
|---|---|---|
u | Double | the normalized coordinate |
the shape value (before amp / offset applied)
Double)evaluate the basis function at a given time point x. Combinators override this to combine their operands.
| Name | Type | Description |
|---|---|---|
x | Double | the time coordinate |
the signal value
IEnumerable(Of Double))sample the signal over a given time grid. The default implementation simply evaluates each point; combinators such as convolution may override this to perform whole-signal operations.
| Name | Type | Description |
|---|---|---|
x | IEnumerable(Of Double) | the time grid to sample on |
the sampled signal values
Double, Double, Int32)sample the signal on an evenly spaced time grid.
| Name | Type | Description |
|---|---|---|
min | Double | the start time |
max | Double | the end time |
n | Int32 | the number of sample points (must be > 0) |
the sampled signal values
IEnumerable(Of Double), String, String)sample the signal and wrap it into a GeneralSignal so that it can be consumed by the downstream processing pipeline.
| Name | Type | Description |
|---|---|---|
x | IEnumerable(Of Double) | the time grid |
reference | String | the signal id / variable name |
unit | String | the measure unit of the x axis |
the sampled signal as a GeneralSignal
create a deep-ish copy of the universal parameters onto another basis function (useful when building a generator programmatically).
| Name | Type | Description |
|---|---|---|
other | BasisFunction | the target basis function |
the target, for chaining
amplitude / scaling factor. Default 1.
center / horizontal shift (x0). Controls when the feature occurs.
width / frequency / steepness factor. Interpreted by each subclass.
vertical offset (baseline). Default 0.