Product
Multiplies two input signals and outputs their product.
The Product component multiplies two input signals, producing a single output that is the result of u1*u2. This is a fundamental mathematical operation used in many control and signal processing applications.
This component extends from SI2SO
Usage
Product()
Connectors
u1
- This connector represents a real signal as an input to a component (RealInput
)u2
- 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
Source
dyad
# Multiplies two input signals and outputs their product.
#
# The Product component multiplies two input signals, producing a single output
# that is the result of u1*u2. This is a fundamental mathematical operation used in many control and signal
# processing applications.
component Product
extends SI2SO
relations
# Calculates the output as the product of the two input signals
y = u1*u2
metadata {"Dyad": {"icons": {"default": "dyad://BlockComponents/Product.svg"}}}
end
Flattened Source
dyad
# Multiplies two input signals and outputs their product.
#
# The Product component multiplies two input signals, producing a single output
# that is the result of u1*u2. This is a fundamental mathematical operation used in many control and signal
# processing applications.
component Product
# First real-valued input signal
u1 = RealInput() [{"Dyad": {"placement": {"icon": {"x1": -50, "y1": 150, "x2": 50, "y2": 250}}}}]
# Second real-valued input signal
u2 = RealInput() [{"Dyad": {"placement": {"icon": {"x1": -50, "y1": 750, "x2": 50, "y2": 850}}}}]
# Real-valued output signal
y = RealOutput() [{"Dyad": {"placement": {"icon": {"x1": 950, "y1": 450, "x2": 1050, "y2": 550}}}}]
relations
# Calculates the output as the product of the two input signals
y = u1*u2
metadata {"Dyad": {"icons": {"default": "dyad://BlockComponents/Product.svg"}}}
end
Test Cases
This is setup code, that must be run before each test case.
julia
using BlockComponents
using ModelingToolkit, OrdinaryDiffEqDefault
using Plots
using CSV, DataFrames
snapshotsdir = joinpath(dirname(dirname(pathof(BlockComponents))), "test", "snapshots")
"/home/actions-runner-10/.julia/packages/BlockComponents/77kIK/test/snapshots"
Related
Examples
Experiments
Analyses
Tests