Table of Contents
Introduction 1
 About This Book 1
 Conventions Used in This Book 1
 What You’re Not to Read 2
 Foolish Assumptions 2
 How This Book Is Organized 2
 Part I: Getting Started with Signals and Systems 3
 Part II: Exploring the Time Domain 3
 Part III: Picking Up the Frequency Domain 3
 Part IV: Entering the s- and z-Domains 3
 Part V: The Part of Tens 4
 Icons Used in This Book 4
 Where to Go from Here 4
 Part I: Getting Started with Signals and Systems 7
 Chapter 1: Introducing Signals and Systems 9
 Applying Mathematics 10
 Getting Mixed Signals and Systems 11
 Going on and on and on 11
 Working in spurts: Discrete-time signals and systems 13
 Classifying Signals 14
 Periodic 14
 Aperiodic 15
 Random 15
 Signals and Systems in Other Domains 16
 Viewing signals in the frequency domain 16
 Traveling to the s- or z-domain and back 18
 Testing Product Concepts with Behavioral Level Modeling 18
 Staying abstract to generate ideas 19
 Working from the top down 19
 Relying on mathematics 20
 Exploring Familiar Signals and Systems 20
 MP3 music player 21
 Smartphone 22
 Automobile cruise control 22
 Using Computer Tools for Modeling and Simulation 23
 Getting the software 24
 Exploring the interfaces 25
 Seeing the Big Picture 26
 Chapter 2: Brushing Up on Math 29
 Revealing Unknowns with Algebra 29
 Solving for two variables 30
 Checking solutions with computer tools 30
 Exploring partial fraction expansion 31
 Making Nice Signal Models with Trig Functions 35
 Manipulating Numbers: Essential Complex Arithmetic 36
 Believing in imaginary numbers 37
 Operating with the basics 39
 Applying Euler’s identities 41
 Applying the phasor addition formula 42
 Catching Up with Calculus 44
 Differentiation 44
 Integration 45
 System performance 47
 Geometric series 48
 Finding Polynomial Roots 50
 Chapter 3: Continuous-Time Signals and Systems 51
 Considering Signal Types 52
 Exponential and sinusoidal signals 52
 Singularity and other special signal types 55
 Getting Hip to Signal Classifications 60
 Deterministic and random 60
 Periodic and aperiodic 62
 Considering power and energy 63
 Even and odd signals 68
 Transforming Simple Signals 69
 Time shifting 69
 Flipping the time axis 70
 Putting it together: Shift and flip 70
 Superimposing signals 71
 Checking Out System Properties 72
 Linear and nonlinear 73
 Time-invariant and time varying 73
 Causal and non-causal 74
 Memory and memoryless 74
 Bounded-input bounded-output 75
 Choosing Linear and Time-Invariant Systems 75
 Chapter 4: Discrete-Time Signals and Systems 77
 Exploring Signal Types 77
 Exponential and sinusoidal signals 78
 Special signals 80
 Surveying Signal Classifications in the Discrete-Time World 83
 Deterministic and random signals 84
 Periodic and aperiodic 85
 Recognizing energy and power signals 88
 Computer Processing: Capturing Real Signals in Discrete-Time 89
 Capturing and reading a wav file 90
 Finding the signal energy 91
 Classifying Systems in Discrete-Time 92
 Checking linearity 92
 Investigating time invariance 93
 Looking into causality 93
 Figuring out memory 94
 Testing for BIBO stability 95
 Part II: Exploring the Time Domain 97
 Chapter 5: Continuous-Time LTI Systems and the Convolution Integral 99
 Establishing a General Input/Output Relationship 100
 LTI systems and the impulse response 100
 Developing the convolution integral 101
 Looking at useful convolution integral properties 103
 Working with the Convolution Integral 105
 Seeing the general solution first 105
 Solving problems with finite extent signals 107
 Dealing with semi-infinite limits 111
 Stepping Out and More 116
 Step response from impulse response 116
 BIBO stability implications 117
 Causality and the impulse response 117
 Chapter 6: Discrete-Time LTI Systems and the Convolution Sum 119
 Specializing the Input/Output Relationship 120
 Using LTI systems and the impulse response (sequence) 120
 Getting to the convolution sum 121
 Simplifying with Convolution Sum Properties and Techniques 124
 Applying commutative, associative, and distributive properties 124
 Convolving with the impulse function 126
 Transforming a sequence 126
 Solving convolution of finite duration sequences 128
 Working with the Convolution Sum 133
 Using spreadsheets and a tabular approach 133
 Attacking the sum directly with geometric series 136
 Connecting the step response and impulse response 144
 Checking the BIBO stability 145
 Checking for system causality 146
 Chapter 7: LTI System Differential and Difference Equations in the Time Domain 149
 Getting Differential 150
 Introducing the general Nth-order system 150
 Considering sinusoidal outputs in steady state 151
 Finding the frequency response in general Nth-order LCC differential equations 153
 Checking out the Difference Equations 156
 Modeling a system using a general Nth-order LCC difference equation 156
 Using recursion to find the impulse response of a first-order system 158
 Considering sinusoidal outputs in steady state 159
 Solving for the general Nth-order LCC difference equation frequency response 161
 Part III: Picking Up the Frequency Domain 163
 Chapter 8: Line Spectra and Fourier Series of Periodic Continuous-Time Signals 165
 Sinusoids in the Frequency Domain 166
 Viewing signals from the amplitude, phase, and frequency parameters 167
 Forming magnitude and phase line spectra plots 168
 Working with symmetry properties for real signals 171
 Exploring spectral occupancy and shared resources 171
 Establishing a sum of sinusoids: Periodic and aperiodic 172
 General Periodic Signals: The Fourier Series Representation 175
 Analysis: Finding the coefficients 176
 Synthesis: Returning to a general periodic signal, almost 178
 Checking out waveform examples 179
 Working problems with coefficient formulas and properties 186
 Chapter 9: The Fourier Transform for Continuous-Time Signals and Systems 191
 Tapping into the Frequency Domain for Aperiodic Energy Signals 192
 Working with the Fourier series 192
 Using the Fourier transform and its inverse 194
 Getting amplitude and phase spectra 197
 Seeing the symmetry properties for real signals 197
 Finding energy spectral density with Parseval’s theorem 201
 Applying Fourier transform theorems 203
 Checking out transform pairs 208
 Getting Around the Rules with Fourier Transforms in the Limit 210
 Handling singularity functions 210
 Unifying the spectral view with periodic signals 211
 LTI Systems in the Frequency Domain 213
 Checking out the frequency response 214
 Evaluating properties of the frequency response 214
 Getting connected with cascade and parallel systems 216
 Ideal filters 216
 Realizable filters 218
 Chapter 10: Sampling Theory 219
 Seeing the Need for Sampling Theory 220
 Periodic Sampling of a Signal: The ADC 221
 Analyzing the Impact of Quantization Errors in the ADC 226
 Analyzing Signals in the Frequency Domain 228
 Impulse train to impulse train Fourier transform theorem 229
 Finding the spectrum of a sampled bandlimited signal 230
 Aliasing and the folded spectrum 233
 Applying the Low-Pass Sampling Theorem 233
 Reconstructing a Bandlimited Signal from Its Samples: The DAC 234
 Interpolating with an ideal low-pass filter 236
 Using a realizable low-pass filter for interpolation 239
 Chapter 11: The Discrete-Time Fourier Transform for Discrete-Time Signals 241
 Getting to Know DTFT 242
 Checking out DTFT properties 243
 Relating the continuous-time spectrum to the discrete-time spectrum 244
 Getting even (or odd) symmetry properties for real signals 245
 Studying transform theorems and pairs 249
 Working with Special Signals 252
 Getting mean-square convergence 252
 Finding Fourier transforms in the limit 255
 LTI Systems in the Frequency Domain 258
 Taking Advantage of the Convolution Theorem 260
 Chapter 12: The Discrete Fourier Transform and Fast Fourier Transform Algorithms 263
 Establishing the Discrete Fourier Transform 264
 The DFT/IDFT Pair 265
 DFT Theorems and Properties 270
 Carrying on from the DTFT 271
 Circular sequence shift 272
 Circular convolution 274
 Computing the DFT with the Fast Fourier Transform 277
 Decimation-in-time FFT algorithm 277
 Computing the inverse FFT 280
 Application Example: Transform Domain Filtering 280
 Making circular convolution perform linear convolution 281
 Using overlap and add to continuously filter sequences 281
 Part IV: Entering the s- and z-Domains 283
 Chapter 13: The Laplace Transform for Continuous-Time 285
 Seeing Double: The Two-Sided Laplace Transform 286
 Finding direction with the ROC 286
 Locating poles and zeros 288
 Checking stability for LTI systems with the ROC 289
 Checking stability of causal systems through pole positions 290
 Digging into the One-Sided Laplace Transform 290
 Checking Out LT Properties 292
 Transform theorems 292
 Transform pairs 296
 Getting Back to the Time Domain 298
 Dealing with distinct poles 299
 Working double time with twin poles 299
 Completing inversion 299
 Using tables to complete the inverse Laplace transform 300
 Working with the System Function 302
 Managing nonzero initial conditions 303
 Checking the frequency response with pole-zero location 304
 Chapter 14: The z-Transform for Discrete-Time Signals 307
 The Two-Sided z-Transform 308
 The Region of Convergence 309
 The significance of the ROC 309
 Plotting poles and zeros 311
 The ROC and stability for LTI systems 311
 Finite length sequences 313
 Returning to the Time Domain 315
 Working with distinct poles 316
 Managing twin poles 316
 Performing inversion 317
 Using the table-lookup approach 317
 Surveying z-Transform Properties 320
 Transform theorems 321
 Transform pairs 322
 Leveraging the System Function 323
 Applying the convolution theorem 324
 Finding the frequency response with pole-zero geometry 325
 Chapter 15: Putting It All Together: Analysis and Modeling Across Domains 327
 Relating Domains 328
 Using PyLab for LCC Differential and Difference Equations 329
 Continuous time 330
 Discrete time 332
 Mashing Domains in Real-World Cases 334
 Problem 1: Analog filter design with a twist 334
 Problem 2: Solving the DAC ZOH droop problem in the z-domain 340
 Part V: The Part of Tens 343
 Chapter 16: More Than Ten Common Mistakes to Avoid When Solving Problems 345
 Miscalculating the Folding Frequency 345
 Getting Confused about Causality 346
 Plotting Errors in Sinusoid Amplitude Spectra 346
 Missing Your Arctan Angle 347
 Being Unfamiliar with Calculator Functions 347
 Foregoing the Return to LCCDE 348
 Ignoring the Convolution Output Interval 348
 Forgetting to Reduce the Numerator Order before Partial Fractions 348
 Forgetting about Poles and Zeros from H(z) 349
 Missing Time Delay Theorems 349
 Disregarding the Action of the Unit Step in Convolution 349
 Chapter 17: Ten Properties You Never Want to Forget 351
 LTI System Stability 351
 Convolving Rectangles 351
 The Convolution Theorem 352
 Frequency Response Magnitude 352
 Convolution with Impulse Functions 352
 Spectrum at DC 353
 Frequency Samples of N-point DFT 353
 Integrator and Accumulator Unstable 353
 The Spectrum of a Rectangular Pulse 354
 Odd Half-Wave Symmetry and Fourier Series Harmonics 354
 Index 355