Skip to content
Interpolation.md

Interpolation

Performs interpolation on input values using a specified dataset and interpolation method.

Takes an input value and produces an output by interpolating within a dataset according to the specified interpolation type. The component creates an interpolator object from the dataset and interpolation parameters, then applies this interpolator to map input values to output values through lookup and interpolation.

This component extends from BlockComponents.SISO

Usage

Interpolation(interpolator=dataset_interpolation(interpolation_type, dataset))

Parameters:

NameDescriptionUnitsDefault value
datasetDataset containing the data points to be interpolated
interpolation_typeType of interpolation to be used (e.g., linear, cubic)

Connectors

  • u - This connector represents a real signal as an input to a component (RealInput)

  • y - This connector represents a real signal as an output from a component (RealOutput)

Behavior

@example
using BlockComponents #hide
using ModelingToolkit #hide
@named sys = Interpolation() #hide
full_equations(sys) #hide

Source

# Performs interpolation on input values using a specified dataset and interpolation method.
#
# Takes an input value and produces an output by interpolating within a dataset according to the
# specified interpolation type. The component creates an interpolator object from the dataset and
# interpolation parameters, then applies this interpolator to map input values to output values
# through lookup and interpolation.
component Interpolation
  extends BlockComponents.SISO
  # Dataset containing the data points to be interpolated
  structural dataset::DyadDataset
  # Type of interpolation to be used (e.g., linear, cubic)
  structural interpolation_type::Real
  # Interpolator object created from the dataset and interpolation type
  final parameter interpolator::RealInterpolator = dataset_interpolation(interpolation_type, dataset)
relations
  y = interpolator(u)
end
Flattened Source
# Performs interpolation on input values using a specified dataset and interpolation method.
#
# Takes an input value and produces an output by interpolating within a dataset according to the
# specified interpolation type. The component creates an interpolator object from the dataset and
# interpolation parameters, then applies this interpolator to map input values to output values
# through lookup and interpolation.
component Interpolation
  # Input signal port
  u = RealInput() [{
    "Dyad": {
      "placement": {"icon": {"iconName": "input", "x1": -50, "y1": 450, "x2": 50, "y2": 550}}
    }
  }]
  # Output signal port
  y = RealOutput() [{
    "Dyad": {
      "placement": {"icon": {"iconName": "output", "x1": 950, "y1": 450, "x2": 1050, "y2": 550}}
    }
  }]
  # Dataset containing the data points to be interpolated
  structural dataset::DyadDataset
  # Type of interpolation to be used (e.g., linear, cubic)
  structural interpolation_type::Real
  # Interpolator object created from the dataset and interpolation type
  final parameter interpolator::RealInterpolator = dataset_interpolation(interpolation_type, dataset)
relations
  y = interpolator(u)
metadata {}
end


Test Cases

No test cases defined.