Z-Transform
The Z-transform is a mathematical technique in [signal processing](/page/signal-processing "Signal processing is a fundamental engineering discipline...") and control theory that converts a discrete-time signal, which is a sequence of real or complex numbers, into a complex frequency-domain representation [8]. It is the discrete-time counterpart of the Laplace transform and serves as a fundamental tool for the analysis and design of linear time-invariant (LTI) discrete-time systems [2][5]. By transforming sequences of data points into functions of a complex variable, denoted as , the Z-transform provides a powerful framework for solving difference equations, analyzing system stability, and determining the frequency response of digital systems [1][6]. Its primary importance lies in its ability to simplify the manipulation of discrete-time signals and systems, much like the Laplace transform does for continuous-time systems, making it indispensable in digital signal processing (DSP) and discrete control system design [3][7]. The Z-transform of a discrete-time sequence is formally defined as a power series: , where is a complex variable [2][6]. This transformation exists only for values of where the infinite series converges, defining a region of convergence (ROC) in the complex plane that is crucial for interpreting the transform uniquely [5][7]. There are two main types: the bilateral (or two-sided) Z-transform, which considers the signal for all positive and negative time indices , and the unilateral (or one-sided) Z-transform, which is defined for and is particularly useful for analyzing causal systems and solving difference equations with initial conditions [1][6]. Key properties, such as linearity, time-shifting, and convolution, allow for the algebraic manipulation of systems, where convolution in the time domain corresponds to simple multiplication in the Z-domain [2][5]. The relationship between the Z-transform and other transforms is foundational; for instance, evaluating the Z-transform on the unit circle in the complex plane (where ) yields the discrete-time Fourier transform (DTFT), linking time-domain sequences to their frequency content [5][7]. The applications of the Z-transform are extensive and critical across multiple engineering disciplines. In digital signal processing, it is used to analyze and design digital filters, such as finite impulse response (FIR) and infinite impulse response (IIR) filters, by providing a direct method to examine pole-zero plots which determine filter characteristics and stability [3][6]. In control theory, it is applied to analyze and design sampled-data control systems, enabling the stability analysis of digital controllers and the derivation of transfer functions for discrete-time systems [4][7]. Furthermore, the Z-transform simplifies the solution of linear constant-coefficient difference equations, which are the discrete-time analogs of differential equations, making it essential for the simulation and modeling of discrete systems [1][2]. Its modern relevance remains paramount with the proliferation of digital technology, underpinning algorithms in telecommunications, audio processing, image processing, and biomedical signal analysis [3][8]. The inverse Z-transform, which recovers the original time-domain sequence from its Z-domain representation, is equally vital for implementing system designs derived in the transform domain [5][6].
It serves as the discrete-time counterpart to the Laplace transform for continuous-time signals and systems, providing a powerful analytical framework for linear time-invariant (LTI) systems described by difference equations [8]. The transform's primary utility lies in its ability to simplify the analysis and design of digital filters, control systems, and other discrete-time processes by converting convolutions into multiplications and difference equations into algebraic equations [8].
Mathematical Definition and Forms
Formally, the Z-transform of a discrete-time sequence is defined as a power series in the complex variable :
where is an integer index and is a complex number [8]. This bilateral or two-sided definition sums over all integer indices from negative to positive infinity. In many practical applications involving causal systems (where the output depends only on present and past inputs), the unilateral Z-transform is used, defined as:
which starts the summation at [8]. The region of convergence (ROC) is a critical concept associated with the Z-transform, defined as the set of complex numbers for which the infinite series converges absolutely [8]. The ROC is typically an annular region in the complex plane of the form , and its properties determine the characteristics of the corresponding sequence, such as causality and stability [8].
Relationship to Other Transforms and Key Properties
The Z-transform has deep connections to other fundamental transforms in signal processing. When the complex variable is evaluated on the unit circle in the complex plane (where ), the Z-transform reduces to the Discrete-Time Fourier Transform (DTFT), establishing the frequency response of the system [8]. This relationship is expressed as , where is the normalized angular frequency. Furthermore, the Z-transform can be viewed as a generalization of the Fourier transform for sequences that may not be absolutely summable, as it can handle a broader class of signals through appropriate selection of the ROC [8]. Several mathematical properties make the Z-transform particularly useful for system analysis:
- Linearity: If with ROC and with ROC , then with ROC containing [8].
- Time Shifting: , with the ROC being the same as that of except possibly or [8].
- Convolution: The convolution of two sequences in the time domain corresponds to multiplication of their Z-transforms: , with ROC containing [8].
- Differentiation in the z-domain: , with the same ROC as [8].
Poles, Zeros, and System Function
For LTI systems characterized by linear constant-coefficient difference equations, the Z-transform leads directly to the system function , which is a rational function of [8]. A general Nth-order difference equation is given by:
where and are constant coefficients, is the input, and is the output [8]. Taking the Z-transform of both sides and applying the linearity and time-shifting properties yields:
This rational function can be factored to reveal its poles (roots of the denominator polynomial) and zeros (roots of the numerator polynomial) [8]. The poles and zeros completely characterize the system's frequency response and stability properties when considered with the ROC. A system is bounded-input bounded-output (BIBO) stable if and only if the ROC of includes the unit circle, which is equivalent to all poles lying inside the unit circle in the complex plane [8].
Applications in Engineering
The Z-transform finds extensive application across multiple engineering disciplines. In digital signal processing, it is indispensable for analyzing and designing digital filters, including finite impulse response (FIR) and infinite impulse response (IIR) filters [8]. The system function allows engineers to determine filter characteristics such as passband, stopband, cutoff frequencies, and phase response. In control theory, the Z-transform facilitates the analysis and design of digital control systems, enabling stability analysis through methods like the Jury stability criterion and the root locus technique in the z-domain [7]. Additionally, it is used in solving linear difference equations that arise in various fields including economics, physics, and population dynamics. The inverse Z-transform, which recovers the time-domain sequence from its Z-transform representation, can be computed using several methods including partial fraction expansion, power series expansion (long division), and contour integration using the Cauchy integral theorem [8]. The choice of method depends on the form of and whether a closed-form expression or numerical values are required.
History
Origins in Laplace Transform Theory
The mathematical foundations of the Z-transform emerged from the broader development of integral transforms in the 19th and early 20th centuries. The Laplace transform, formalized by Pierre-Simon Laplace in the late 18th century and extensively developed by Oliver Heaviside in the 1890s for solving differential equations in electrical engineering, provided the conceptual framework for transforming functions from the time domain to a complex frequency domain [12]. This continuous-time transform, defined as where is a complex frequency variable, became fundamental to the analysis of linear time-invariant systems in continuous-time signal processing and control theory [12]. The need for a discrete-time counterpart to the Laplace transform became apparent with the advent of digital computing and sampled-data systems in the mid-20th century, setting the stage for the Z-transform's development [12][14].
Early Development and Formalization (1940s-1950s)
The Z-transform was independently discovered and developed by several researchers during the 1940s and 1950s, primarily in the context of sampled-data control systems and digital filter design. A key early contributor was the German mathematician H. G. W. Geiger, who in 1947 introduced a generating function for sequences that closely resembled what would become the Z-transform [14]. However, the modern formulation is most commonly attributed to the work of American mathematician and control theorist John R. Ragazzini and his doctoral student Lotfi A. Zadeh at Columbia University. In their seminal 1952 paper, "The Analysis of Sampled-Data Systems," published in the Transactions of the American Institute of Electrical Engineers, they formally introduced the "Z-transform" as a tool for analyzing linear sampled-data systems [14]. The transform was defined for a discrete-time sequence as , where is a complex variable [12][13]. This formulation generalized the discrete-time Fourier transform (DTFT), which is obtained by evaluating the Z-transform on the unit circle in the complex plane where [12]. Concurrently, other researchers including the Russian mathematician Yakov Z. Tsypkin were developing similar mathematical tools in the Soviet Union, referring to it as the "discrete Laplace transform" [14].
Consolidation and Theoretical Expansion (1960s-1970s)
The 1960s and 1970s saw the Z-transform evolve from a specialized tool for control engineers into a cornerstone of the emerging field of digital signal processing (DSP). The publication of influential textbooks played a crucial role in this consolidation. Notably, The Finite Fourier Transform (1969) by William T. Cochran et al. and, most importantly, Digital Processing of Signals (1969) by Bernard Gold and Charles M. Rader at MIT Lincoln Laboratory, systematically presented the Z-transform alongside other DSP fundamentals [14]. During this period, the critical concept of the Region of Convergence (ROC) was fully formalized. The ROC, defined as the set of complex numbers for which the Z-transform summation converges absolutely, was recognized as an integral part of the transform specification, not merely a mathematical technicality [12]. Key properties of the ROC were established:
- The ROC is always an annular region in the complex plane of the form [12]. - The ROC cannot contain any poles, which are values of where becomes infinite [12]. - For a right-sided sequence, the ROC is the exterior of a circle; for a left-sided sequence, it is the interior of a circle; and for a two-sided sequence, it is an annulus [12]. - The ROC determines system properties: a system is stable if and only if the ROC of its transfer function includes the unit circle (), and it is causal if the ROC is the exterior of a circle extending to infinity [12]. The development of efficient algorithms for the Inverse Z-transform was another major milestone of this era. Several methods were standardized for recovering the original time-domain sequence from its Z-transform :
- Inspection Method: Utilizing a table of common Z-transform pairs and properties [9][11].
- Power Series Expansion (Long Division): Directly dividing the numerator by the denominator of to obtain a series in , where the coefficients correspond to [9][11].
- Partial Fraction Expansion (PFE): Decomposing a rational into a sum of simpler terms whose inverse transforms are known, particularly effective for transforms expressible as a ratio of polynomials in [9][10][11].
- Contour Integration (Complex Inversion Integral): Applying the formal inverse formula , where is a counterclockwise closed contour within the ROC encircling the origin [11]. This method, based on the Cauchy integral theorem, provides the most general solution but is often computationally intensive [11][15].
Integration into Digital Signal Processing and Modern Applications (1980s-Present)
With the digital revolution and the widespread availability of affordable digital computing hardware, the Z-transform became an indispensable analytical tool. The 1980s saw its complete integration into the core curriculum of electrical engineering, cemented by landmark textbooks such as Alan V. Oppenheim and Ronald W. Schafer's Discrete-Time Signal Processing (first published 1975, revised 1989) [14]. The Z-transform provided the theoretical foundation for designing and analyzing Infinite Impulse Response (IIR) digital filters by relating the filter's difference equation to its system function , a rational function in whose poles and zeros determine the frequency response [10][15]. The relationship became standard for representing IIR filters [10]. In contemporary practice, the Z-transform's primary utility lies in its role in stability analysis, filter design, and solving linear constant-coefficient difference equations. The development of sophisticated computer algebra systems (e.g., MATLAB, Mathematica) has automated the computational aspects of forward and inverse transformation, particularly the partial fraction expansion method for rational functions [10][15]. Today, the Z-transform remains a fundamental concept taught in undergraduate engineering programs worldwide, serving as a critical bridge between the time-domain analysis of discrete systems and their frequency-domain and pole-zero representations, enabling the design and analysis of everything from digital audio filters and telecommunications systems to advanced control algorithms and image processing pipelines [9][10][12][14].
It serves as the discrete-time counterpart to the Laplace transform for continuous-time signals and systems. The region of convergence (ROC), a set of points in the complex plane for which the summation converges, is a critical component of the transform pair and determines the properties of the corresponding sequence [16][18].
Mathematical Definition and Properties
The bilateral, or two-sided, Z-transform is defined over all integer indices . A more commonly used variant in practical system analysis is the unilateral Z-transform, defined as , which is particularly useful for causal systems where the sequence is zero for [18]. The variable can be expressed in polar form as , where is the magnitude and is the frequency. This representation connects the Z-transform to the Discrete-Time Fourier Transform (DTFT); specifically, the DTFT is equivalent to the Z-transform evaluated on the unit circle in the complex plane where [16][13]. Fundamental properties of the Z-transform that facilitate the analysis of linear time-invariant (LTI) systems include:
- Linearity: The transform of a weighted sum of sequences equals the weighted sum of their individual transforms [18].
- Time Shifting: A delay of samples in the time domain corresponds to multiplication by in the Z-domain, a property central to solving difference equations [18].
- Convolution: The Z-transform of the convolution of two sequences is the product of their individual Z-transforms. This property allows the output of an LTI system to be expressed as the product of the input and the system's transfer function : [18].
Poles, Zeros, and the Z-Plane
The transfer function of a discrete-time LTI system is typically expressed as a rational function in or : [16][16]. The roots of the numerator polynomial are called the zeros of the system, as the frequency response magnitude is zero at these complex frequencies. The roots of the denominator polynomial are called the poles; at these complex frequencies, the transfer function's magnitude becomes unbounded [16][16]. The pole-zero plot on the complex Z-plane provides a geometric interpretation of system behavior. For instance, a transfer function given by has poles at , which dictate the system's resonant frequency and damping [16]. The location of poles relative to the unit circle is the primary determinant of system stability. A causal LTI system is stable if and only if all poles lie inside the unit circle (i.e., have magnitude ). A pole on the unit circle () indicates marginal stability, while any pole outside the unit circle () results in an unstable system [16]. This geometric criterion provides a powerful tool for stability analysis without requiring explicit computation of the system's impulse response.
The Inverse Z-Transform
Recovering the original time-domain sequence from its Z-transform and its associated ROC is achieved through the inverse Z-transform. Several standard methods exist for performing this inversion [11][15]. The inspection method relies on recognizing common Z-transform pairs from a table. For example, the transform pair is fundamental, where is the unit step sequence [13][15]. If the number happens to be one or zero, the sequence simplifies to a constant value [13]. The power series expansion (or long division) method involves dividing the numerator by the denominator of to express it as a power series in or . The coefficients of this series directly yield the sequence values . This method is particularly straightforward for finite-length sequences or when a simple recursive pattern emerges [11][15]. For rational functions, the partial fraction expansion method is widely used. The function is decomposed into a sum of simpler first-order terms whose inverse transforms are known. For a proper rational function with distinct poles, the expansion takes the form , where each term corresponds to a geometric sequence in the time domain [11][15]. The most general method is contour integration, defined by the inverse formula , where is a counterclockwise closed contour within the ROC of . This integral is typically evaluated using the Cauchy residue theorem from complex analysis, summing the residues of at the poles enclosed by the contour [11][15].
Applications in System Analysis and Design
Building on its role in stability analysis and solving difference equations mentioned previously, the Z-transform is instrumental in digital filter design. By mapping specifications from the frequency domain to pole-zero locations on the Z-plane, engineers can design filters with desired characteristics. For example, a low-pass filter can be designed by placing poles near the unit circle at low frequencies (near ) and zeros at high frequencies (near ) [16][16]. Furthermore, the relationship , where is the complex Laplace variable and is the sampling period, provides a connection between continuous-time and discrete-time systems, forming the basis for design techniques like impulse invariance and the bilinear transform [17][15].
Significance
The Z-transform represents a fundamental mathematical framework that bridges discrete-time signal analysis with complex frequency domain representation, establishing critical connections between difference equations, system stability, and practical implementation of digital filters [2]. Its significance extends across multiple disciplines, providing analytical tools that have shaped modern digital signal processing and control systems engineering.
Mathematical Foundation for Discrete Systems
Unlike the Laplace transform which operates on continuous-time signals, the Z-transform provides the natural mathematical language for discrete-time systems through the mapping , where represents the sampling period [3]. This transformation converts linear constant-coefficient difference equations of the form:
into algebraic equations in the Z-domain:
This algebraic manipulation significantly simplifies the analysis and design of discrete-time systems [2]. The resulting system function completely characterizes the system's behavior, with the denominator polynomial determining the system's natural modes and the numerator polynomial determining the system's zeros [3].
Analytical Framework for Stability and Frequency Response
The Z-transform provides direct analytical methods for determining system stability through pole-zero analysis. The unit circle in the complex Z-plane corresponds to the frequency axis in the discrete-time Fourier transform, creating a direct relationship between pole locations and frequency response characteristics [3]. For a system with transfer function , the frequency response is obtained by evaluating , where represents the normalized angular frequency. This evaluation reveals critical system properties including:
- Resonant frequencies corresponding to poles near the unit circle
- Notch frequencies corresponding to zeros on or near the unit circle
- Phase characteristics determined by the angular positions of poles and zeros
- Gain characteristics determined by the radial distances of poles and zeros from the unit circle [2]
The relationship between pole locations and damping characteristics follows specific mathematical patterns: poles closer to the origin produce faster decaying responses, while poles with larger magnitudes produce more oscillatory behavior [3].
Design and Implementation of Digital Filters
The Z-transform serves as the primary mathematical tool for designing and analyzing digital filters, enabling systematic approaches to both finite impulse response (FIR) and infinite impulse response (IIR) implementations. For FIR filters with impulse response of length , the transfer function becomes:
This polynomial representation allows for precise placement of zeros to create desired frequency response characteristics, particularly useful for linear phase filters where symmetry conditions ensure constant group delay [2]. For IIR filters, the Z-transform representation as a rational function:
enables designers to leverage analog filter prototypes through transformation techniques. The bilinear transform, given by , maps the continuous-time frequency axis to the discrete-time unit circle while preserving stability properties [3]. This transformation introduces frequency warping according to , where represents the analog frequency and the digital frequency, a critical consideration in filter design [2].
Applications in Control Systems and Communications
In control theory, the Z-transform enables the analysis and design of digital controllers for sampled-data systems. The transformation of continuous-time plant models to discrete-time equivalents through techniques such as zero-order hold sampling produces difference equations that are naturally analyzed using Z-transform methods [1]. This approach facilitates:
- Stability analysis of closed-loop digital control systems through root locus techniques in the Z-plane
- Design of digital compensators to meet specific performance specifications
- Analysis of intersample behavior in hybrid continuous-discrete systems
- Implementation of advanced control algorithms including deadbeat controllers and minimum-time controllers [1]
Digital communication systems extensively utilize Z-transform analysis for equalizer design, synchronization algorithms, and channel modeling. Adaptive filters employing algorithms such as the least mean squares (LMS) method rely on Z-domain analysis to predict convergence behavior and stability boundaries [2]. The transform's ability to represent multirate systems through operations like upsampling and downsampling further extends its utility in communication system design, where efficient implementation often requires sample rate conversion [3].
Computational Advantages and Algorithmic Development
The Z-transform's algebraic nature enables efficient computational algorithms that would be impractical in the time domain. Fast convolution algorithms leverage the convolution property of the Z-transform, where multiplication in the Z-domain corresponds to convolution in the time domain, reducing computational complexity from to when implemented via fast Fourier transform techniques [2]. This computational efficiency extends to system identification, where the relationship between input and output Z-transforms provides direct methods for estimating system parameters from observed data [1]. Building on the concept discussed above regarding inverse transform algorithms, the development of efficient computational methods for working with Z-transforms has enabled real-time implementation of complex digital signal processing systems. These include:
- Recursive implementations of IIR filters requiring only a few multiplications and additions per sample
- Lattice filter structures providing numerical robustness and modular implementation
- Parallel and cascade realizations of high-order systems for improved numerical stability
- State-space representations enabling efficient implementation of complex systems [3]
Educational and Theoretical Impact
The Z-transform occupies a central position in engineering education, serving as a unifying concept that connects continuous-time system theory with discrete-time implementations. Its pedagogical value extends beyond mere application, providing students with deep insights into the fundamental relationships between time-domain and frequency-domain representations of systems [1]. The theoretical framework established by the Z-transform has influenced subsequent developments in multidimensional signal processing, wavelet analysis, and time-frequency analysis, demonstrating its enduring conceptual significance [2]. In research and advanced applications, the Z-transform continues to evolve through extensions including the modified Z-transform for analyzing systems with non-integer delays, the chirp Z-transform for efficient evaluation along spiral contours in the Z-plane, and multidimensional Z-transforms for image and video processing applications [3]. These developments underscore the transform's adaptability to emerging technological challenges while maintaining its core mathematical principles. The enduring significance of the Z-transform lies in its unique position as both a practical engineering tool and a fundamental mathematical concept, providing a coherent framework that has shaped the development of digital technology across multiple domains. Its continued relevance in contemporary engineering practice reflects the robustness and versatility of its underlying mathematical principles [1][2][3].
Applications and Uses
The Z-transform serves as a foundational analytical tool across numerous engineering and scientific disciplines, primarily due to its ability to convert discrete-time difference equations into algebraic equations in the complex Z-domain. This transformation simplifies the analysis and design of linear time-invariant (LTI) systems, enabling engineers to characterize system behavior, stability, and frequency response with greater ease than working directly in the time domain [1]. Its applications extend from core signal processing tasks to complex modeling in control theory, communications, and economics.
Digital Filter Design and Analysis
One of the most significant applications of the Z-transform is in the systematic design and analysis of digital filters, including Finite Impulse Response (FIR) and Infinite Impulse Response (IIR) filters. The transfer function , derived as the Z-transform of the system's impulse response , provides a complete algebraic description of the filter [1]. For an IIR filter defined by a linear constant-coefficient difference equation , applying the Z-transform yields the transfer function:
The frequency response is then obtained by evaluating on the unit circle, where , giving [1]. This allows designers to specify filter characteristics—such as passband ripple, stopband attenuation, and cutoff frequencies—in the frequency domain and then determine the corresponding coefficients and through techniques like the bilinear transform or impulse invariance [1]. For example, designing a low-pass Butterworth filter with a cutoff frequency radians/sample and an order of 4 involves mapping the analog prototype to the Z-domain to obtain the specific polynomial coefficients for the numerator and denominator of [1].
System Stability and Pole-Zero Analysis
Building on the concept discussed above, the Z-transform enables rigorous stability analysis through pole-zero mapping. The roots of the denominator polynomial of (the poles) and the roots of the numerator polynomial (the zeros) completely define the system's characteristics [1]. A causal LTI system is Bounded-Input Bounded-Output (BIBO) stable if and only if all poles lie inside the unit circle in the complex Z-plane (i.e., for all poles , ) [1]. This geometric test is far simpler than analyzing the infinite sum of the impulse response in the time domain. Engineers routinely use pole-zero plots to visualize stability and frequency response; for instance, a zero on the unit circle at a specific frequency creates a perfect null in the frequency response, while a pole near the unit circle creates a resonant peak [1].
Solving Linear Difference Equations
The Z-transform provides an efficient method for solving linear constant-coefficient difference equations, which are the discrete-time equivalents of differential equations. By transforming the difference equation into an algebraic equation in , solving for , and then applying the inverse Z-transform, one obtains the complete solution comprising both the natural (zero-input) and forced (zero-state) responses [1]. Consider the difference equation with an initial condition and input , the unit step. Applying the unilateral Z-transform yields:
Solving for and performing a partial fraction expansion leads to a time-domain solution that clearly separates the transient and steady-state components [1]. This technique is indispensable for analyzing discrete-time system responses to various inputs.
Control Systems Engineering
In discrete-time control systems, the Z-transform is used to analyze and design digital controllers. A sampled-data control system, where a continuous plant is managed by a digital computer, is modeled using Z-domain transfer functions [1]. Key analyses include:
- Determining the closed-loop transfer function , where is the controller and is the Z-transform of the sampled plant [1]. - Assessing stability using the Jury's stability test or by examining if the roots of the characteristic equation lie within the unit circle [1]. - Designing a digital Proportional-Integral-Derivative (PID) controller by discretizing its continuous-time counterpart, resulting in a control law expressed in the Z-domain, such as , where is the sampling period [1].
Signal Processing and Spectral Analysis
Beyond filter design, the Z-transform facilitates advanced signal processing operations. The convolution of two sequences and in the time domain, , corresponds to simple multiplication in the Z-domain: [1]. This property simplifies the analysis of cascaded systems, where the overall transfer function is the product of individual transfer functions. Furthermore, concepts derived from the Z-transform underpin modern spectral estimation techniques. For a signal , its power spectral density can be estimated from the Z-transform of its autocorrelation sequence, and models like the Autoregressive (AR) model directly utilize the pole locations of to represent the signal's spectrum [1].
Other Disciplines and Advanced Applications
The utility of the Z-transform extends to several other fields:
- Communications Engineering: It is used in the analysis and design of digital modems, equalizers to combat intersymbol interference, and digital phase-locked loops [1].
- Economics and Finance: Economists apply it to solve discrete-time difference equation models that describe economic dynamics, such as capital accumulation or adaptive expectations [1].
- Biomedical Engineering: It aids in modeling physiological systems and designing digital filters for processing biomedical signals like ECG and EEG [1].
- Computer Science: It finds use in the analysis of algorithms, particularly for solving recurrence relations that describe computational complexity using generating functions, a close relative of the Z-transform [1]. In summary, the Z-transform's power to convert discrete-time operations into algebraic manipulations has made it an indispensable analytical framework. Its applications span from fundamental stability checks and filter synthesis to complex modeling in control and communications, solidifying its role as a cornerstone of modern digital system engineering [1].