Systems is a ubiquitous concept. There are mechanical systems, electronic systems, optical systems, acoustic systems, finical systems, and many others. In system science, these diverse systems are all viewed as black boxes that receive signals as input and produce signals as output.
This abstraction of a system as an input-output relationship is remarkably powerful and widely applicable across various fields. In many ways, it resembles functions/procedurals in programming languages, as it allows for composability and liberates us from the need to consider internal details. However, systems typically deal with signals (a.k.a. functions) rather than distinct samples. In this sense, the system concept is more akin to higher-order functions in programming.
Though systems consider signals (functions) rather than individual samples, as input and output. so in that sense it is similar to higher-order functions.
Note that the choice of input and output for a system can be arbitrary, though it should be relevant and effective for addressing a specific problem.
System Representations
Discrete
- difference equations - declarative and concise
- block diagram - imperative
- operator notation
Continuous
Classification of Systems
- linear vs nonlinear
- time invariant vs time varying
- causal vs noncausal
- continuous vs discrete
- invertible vs noninvertible
- stable vs unstable
One of the most widely studied type of systems is the linear time-invariant (LTI) system.