Signal Processing with Scipy: Linear Filters

Total Page:16

File Type:pdf, Size:1020Kb

Signal Processing with Scipy: Linear Filters PyData CookBook 1 Signal Processing with SciPy: Linear Filters Warren Weckesser∗ F Abstract—The SciPy library is one of the core packages of the PyData stack. focus on a specific subset of the capabilities of of this sub- It includes modules for statistics, optimization, interpolation, integration, linear package: the design and analysis of linear filters for discrete- algebra, Fourier transforms, signal and image processing, ODE solvers, special time signals. These filters are commonly used in digital signal functions, sparse matrices, and more. In this chapter, we demonstrate many processing (DSP) for audio signals and other time series data of the tools provided by the signal subpackage of the SciPy library for the design and analysis of linear filters for discrete-time signals, including filter with a fixed sample rate. representation, frequency response computation and optimal FIR filter design. The chapter is split into two main parts, covering the two broad categories of linear filters: infinite impulse response Index Terms—algorithms, signal processing, IIR filter, FIR filter (IIR) filters and finite impulse response (FIR) filters. Note. We will display some code samples as transcripts CONTENTS from the standard Python interactive shell. In each interactive Python session, we will have executed the following without Introduction....................1 showing it: IIR filters in scipy.signal ..........1 IIR filter representation.........2 >>> import numpy as np >>> import matplotlib.pyplot as plt Lowpass filter..............3 >>> np.set_printoptions(precision=3, linewidth=50) Initializing a lowpass filter.......5 Bandpass filter..............5 Also, when we show the creation of plots in the transcripts, we Filtering a long signal in batches....6 won’t show all the other plot commands (setting labels, grid Solving linear recurrence relations...6 lines, etc.) that were actually used to create the corresponding FIR filters in scipy.signal ..........7 figure in the paper. Complete scripts for all the figures in Apply a FIR filter............7 this paper are available in the papers/scipy directory at Specialized functions that are FIR filters8 https://github.com/pydata/pydata-cookbook/. FIR filter frequency response......8 FIR filter design.............8 IIR filters in scipy.signal FIR filter design: the window method.8 An IIR filter can be written as a linear recurrence relation, FIR filter design: least squares.....9 in which the output yn is a linear combination of xn , the M FIR filter design: Parks-McClellan... 10 previous values of x and the N previous values of y: FIR filter design: linear programming. 10 Determining the order of a FIR filter.. 13 M N a0 yn = ∑ bi xn−i − ∑ ai yn−N (1) Kaiser’s window method........ 13 i=0 i=1 Optimizing the FIR filter order..... 13 (See, for example, Oppenheim and Schafer [OS], Chapter 6. References 14 Note, however, that the sign convention for a[1], ..., a[N] in Eqn. (1) and used in SciPy is the opposite of that used in Oppenheim and Schafer.) Introduction DRAFTBy taking the z-transform of Eqn. (1), we can express the The SciPy library, created in 2001, is one of the core pack- filter as ages of the PyData stack. It includes modules for statistics, Y(z) = H(z)X(z) (2) optimization, interpolation, integration, linear algebra, Fourier transforms, signal and image processing, ODE solvers, special where b + b z−1 + ··· + b z−M functions, sparse matrices, and more. H(z) = 0 1 M (3) a + a z−1 + ··· + a z−N The signal subpackage within the SciPy library includes 0 1 N tools for several areas of computation, including signal pro- is the transfer function associated with the filter. The functions cessing, interpolation, linear systems analysis and even some in SciPy that create filters generally set a0 = 1. elementary image processing. In this Cookbook chapter, we Eqn. (1) is also known as an ARMA(N, M) process, where "ARMA" stands for Auto-Regressive Moving Average. ∗ Corresponding author: [email protected] b holds the moving average coefficients, and a holds the auto- Copyright ○c 2016 Warren Weckesser. regressive coefficients. 2 PyData CookBook When a1 = a2 = ··· = aN = 0, the filter is a finite impulse the other filter design functions, we might as well create the response filter. We will discuss those later. filter in the transfer function or SOS format when the filter is created. IIR filter representation SOS. In the second order sections (SOS) representation, the In this section, we discuss three representations of a linear filter is represented using one or more cascaded second order filter: filters (also known as "biquads"). The SOS representation is • transfer function implemented as an array with shape (n, 6), where each row • zeros, poles, gain (ZPK) holds the coefficients of a second order transfer function. The • second order sections (SOS) first three items in a row are the coefficients of the numerator of the biquad’s transfer function, and the second three items SciPy also provides a state space representation, but we are the coefficients of the denominator. won’t discuss that format here. Transfer function. The transfer function representation of The SOS format for an IIR filter is more numerically stable a filter in SciPy is the most direct representation of the than the transfer function format, so it should be preferred data in Eqn. (1) or (3). It is two one-dimensional arrays, when using filters with orders beyond, say, 7 or 8, or when conventionally called b and a, that hold the coefficients of the the bandwidth of the passband of a filter is sufficiently small. polynomials in the numerator and denominator, respectively, (Unfortunately, we don’t have a precise specification for what of the transfer function H(z). "sufficiently small" is.) For example, we can use the function A disadvantage of the SOS format is that the function sosfilt scipy.signal.butter to create a Butterworth lowpass (at least at the time of this writing) applies an SOS filter of order 6 with a normalized cutoff frequency of 1/8 filter by making multiple passes over the data, once for each the Nyquist frequency. The default representation created by second order section. Some tests with an order 8 filter show sosfilt(sos, x) butter is the transfer function, so we can use butter(6, that can require more than twice the lfilter(b, a, x) 0.125): time of . Here we create a Butterworth filter using the SOS represen- >>> from scipy.signal import butter >>> b, a = butter(6, 0.125) tation: >>> b >>> sos = butter(6, 0.125, output="sos") array([ 2.883e-05, 1.730e-04, 4.324e-04, >>> sos 5.765e-04, 4.324e-04, 1.730e-04, array([[ 2.883e-05, 5.765e-05, 2.883e-05, 2.883e-05]) 1.000e+00, -1.349e+00, 4.602e-01], >>> a [ 1.000e+00, 2.000e+00, 1.000e+00, array([ 1. , -4.485, 8.529, -8.779, 5.148, 1.000e+00, -1.454e+00, 5.741e-01], -1.628, 0.217]) [ 1.000e+00, 2.000e+00, 1.000e+00, 1.000e+00, -1.681e+00, 8.198e-01]]) The representation of a filter as a transfer function with coef- ficients (b, a) is convenient and of theoretical importance, The array sos has shape (3, 6). Each row represents a biquad; but with finite precision floating point, applying an IIR filter for example, the transfer function of the biquad stored in the of even moderately large order using this format is susceptible last row is to instability from numerical errors. Problems can arise when 1 + 2z−1 + z−2 designing a filter of high order, or a filter with very narrow H(z) = −1 −2 pass or stop bands. 1 − 1:681z + 0:8198z ZPK. The ZPK representation consists of a tuple containing Converting between representations. The signal module three items, (z, p, k). The first two items, z and p, provides a collection of functions for converting one represen- are one-dimensional arrays containing the zeros and poles, tation to another: respectively, of the transfer function. The third item, k, is a sos2tf, sos2zpk, ss2tf, ss2zpk, scalar that holds the overall gain of the filter. tf2sos, tf2zz, tf2zpk, zpk2sos, zpk2ss, zpk2tf We can tell butter to create a filter using the ZPK zpk2sos representation by using the argument output="zpk": For example, converts from the ZPK representation to the SOS representation. In the following, z, p and k have >>> z, p, k = butter(6, 0.125,DRAFT output=’zpk’) >>> z the values defined earlier: array([-1., -1., -1., -1., -1., -1.]) >>> from scipy.signal import zpk2sos >>> p >>> zpk2sos(z, p, k) array([ 0.841+0.336j, 0.727+0.213j, array([[ 2.883e-05, 5.765e-05, 2.883e-05, 0.675+0.072j, 0.675-0.072j, 1.000e+00, -1.349e+00, 4.602e-01], 0.727-0.213j, 0.841-0.336j]) [ 1.000e+00, 2.000e+00, 1.000e+00, >>> k 1.000e+00, -1.454e+00, 5.741e-01], 2.8825891944002783e-05 [ 1.000e+00, 2.000e+00, 1.000e+00, 1.000e+00, -1.681e+00, 8.198e-01]]) A limitation of the ZPK representation of a filter is that SciPy does not provide functions that can directly apply the filter to Limitations of the transfer function representation. Earlier a signal. The ZPK representation must be converted to either we said that the transfer function representation of moderate to the SOS format or the transfer function format to actually filter large order IIR filters can result in numerical problems. Here a signal. If we are designing a filter using butter or one of we show an example. SIGNAL PROCESSING WITH SCIPY: LINEAR FILTERS 3 0 1.00 2 0.75 0.50 4 Gain 0.25 6 0 20 40 60 80 100 120 0.00 Sample number 0.0 0.2 0.4 0.6 0.8 1.0 Fig.
Recommended publications
  • Linear Filtering of Random Processes
    Linear Filtering of Random Processes Lecture 13 Spring 2002 Wide-Sense Stationary A stochastic process X(t) is wss if its mean is constant E[X(t)] = µ and its autocorrelation depends only on τ = t1 − t2 ∗ Rxx(t1,t2)=E[X(t1)X (t2)] ∗ E[X(t + τ)X (t)] = Rxx(τ) ∗ Note that Rxx(−τ)=Rxx(τ)and Rxx(0) = E[|X(t)|2] Lecture 13 1 Example We found that the random telegraph signal has the autocorrelation function −c|τ| Rxx(τ)=e We can use the autocorrelation function to find the second moment of linear combinations such as Y (t)=aX(t)+bX(t − t0). 2 2 Ryy(0) = E[Y (t)] = E[(aX(t)+bX(t − t0)) ] 2 2 2 2 = a E[X (t)] + 2abE[X(t)X(t − t0)] + b E[X (t − t0)] 2 2 = a Rxx(0) + 2abRxx(t0)+b Rxx(0) 2 2 =(a + b )Rxx(0) + 2abRxx(t0) −ct =(a2 + b2)Rxx(0) + 2abe 0 Lecture 13 2 Example (continued) We can also compute the autocorrelation Ryy(τ)forτ =0. ∗ Ryy(τ)=E[Y (t + τ)Y (t)] = E[(aX(t + τ)+bX(t + τ − t0))(aX(t)+bX(t − t0))] 2 = a E[X(t + τ)X(t)] + abE[X(t + τ)X(t − t0)] 2 + abE[X(t + τ − t0)X(t)] + b E[X(t + τ − t0)X(t − t0)] 2 2 = a Rxx(τ)+abRxx(τ + t0)+abRxx(τ − t0)+b Rxx(τ) 2 2 =(a + b )Rxx(τ)+abRxx(τ + t0)+abRxx(τ − t0) Lecture 13 3 Linear Filtering of Random Processes The above example combines weighted values of X(t)andX(t − t0) to form Y (t).
    [Show full text]
  • Designing Filters Using the Digital Filter Design Toolkit Rahman Jamal, Mike Cerna, John Hanks
    NATIONAL Application Note 097 INSTRUMENTS® The Software is the Instrument ® Designing Filters Using the Digital Filter Design Toolkit Rahman Jamal, Mike Cerna, John Hanks Introduction The importance of digital filters is well established. Digital filters, and more generally digital signal processing algorithms, are classified as discrete-time systems. They are commonly implemented on a general purpose computer or on a dedicated digital signal processing (DSP) chip. Due to their well-known advantages, digital filters are often replacing classical analog filters. In this application note, we introduce a new digital filter design and analysis tool implemented in LabVIEW with which developers can graphically design classical IIR and FIR filters, interactively review filter responses, and save filter coefficients. In addition, real-world filter testing can be performed within the digital filter design application using a plug-in data acquisition board. Digital Filter Design Process Digital filters are used in a wide variety of signal processing applications, such as spectrum analysis, digital image processing, and pattern recognition. Digital filters eliminate a number of problems associated with their classical analog counterparts and thus are preferably used in place of analog filters. Digital filters belong to the class of discrete-time LTI (linear time invariant) systems, which are characterized by the properties of causality, recursibility, and stability. They can be characterized in the time domain by their unit-impulse response, and in the transform domain by their transfer function. Obviously, the unit-impulse response sequence of a causal LTI system could be of either finite or infinite duration and this property determines their classification into either finite impulse response (FIR) or infinite impulse response (IIR) system.
    [Show full text]
  • Finite Impulse Response (FIR) Digital Filters (II) Ideal Impulse Response Design Examples Yogananda Isukapalli
    Finite Impulse Response (FIR) Digital Filters (II) Ideal Impulse Response Design Examples Yogananda Isukapalli 1 • FIR Filter Design Problem Given H(z) or H(ejw), find filter coefficients {b0, b1, b2, ….. bN-1} which are equal to {h0, h1, h2, ….hN-1} in the case of FIR filters. 1 z-1 z-1 z-1 z-1 x[n] h0 h1 h2 h3 hN-2 hN-1 1 1 1 1 1 y[n] Consider a general (infinite impulse response) definition: ¥ H (z) = å h[n] z-n n=-¥ 2 From complex variable theory, the inverse transform is: 1 n -1 h[n] = ò H (z)z dz 2pj C Where C is a counterclockwise closed contour in the region of convergence of H(z) and encircling the origin of the z-plane • Evaluating H(z) on the unit circle ( z = ejw ) : ¥ H (e jw ) = åh[n]e- jnw n=-¥ 1 p h[n] = ò H (e jw )e jnwdw where dz = jejw dw 2p -p 3 • Design of an ideal low pass FIR digital filter H(ejw) K -2p -p -wc 0 wc p 2p w Find ideal low pass impulse response {h[n]} 1 p h [n] = H (e jw )e jnwdw LP ò 2p -p 1 wc = Ke jnwdw 2p ò -wc Hence K h [n] = sin(nw ) n = 0, ±1, ±2, …. ±¥ LP np c 4 Let K = 1, wc = p/4, n = 0, ±1, …, ±10 The impulse response coefficients are n = 0, h[n] = 0.25 n = ±4, h[n] = 0 = ±1, = 0.225 = ±5, = -0.043 = ±2, = 0.159 = ±6, = -0.053 = ±3, = 0.075 = ±7, = -0.032 n = ±8, h[n] = 0 = ±9, = 0.025 = ±10, = 0.032 5 Non Causal FIR Impulse Response We can make it causal if we shift hLP[n] by 10 units to the right: K h [n] = sin((n -10)w ) LP (n -10)p c n = 0, 1, 2, ….
    [Show full text]
  • Exploring Anti-Aliasing Filters in Signal Conditioners for Mixed-Signal, Multimodal Sensor Conditioning by Arun T
    Texas Instruments Incorporated Amplifiers: Op Amps Exploring anti-aliasing filters in signal conditioners for mixed-signal, multimodal sensor conditioning By Arun T. Vemuri Systems Architect, Enhanced Industrial Introduction Figure 1. Multimodal, mixed-signal sensor-signal conditioner Some sensor-signal conditioners are used to process the output Analog Digital of multiple sense elements. This Domain Domain processing is often provided by multimodal, mixed-signal condi- tioners that can handle the out- puts from several sense elements Sense Digital Amplifier 1 ADC 1 at the same time. This article Element 1 Filter 1 analyzes the operation of anti- Processed aliasing filters in such sensor- Intelligent Output Compensation signal conditioners. Sense Digital Basics of sensor-signal Amplifier 2 ADC 2 Element 2 Filter 2 conditioners Sense elements, or transducers, convert a physical quantity of interest into electrical signals. Examples include piezo resistive bridges used to measure pres- sure, piezoelectric transducers used to detect ultrasonic than one sense element is processed by the same signal waves, and electrochemical cells used to measure gas conditioner is called multimodal signal conditioning. concentrations. The electrical signals produced by sense Mixed-signal signal conditioning elements are small and exhibit nonidealities, such as tem- Another aspect of sensor-signal conditioning is the electri- perature drifts and nonlinear transfer functions. cal domain in which the signal conditioning occurs. TI’s Sensor analog front ends such as the Texas Instruments PGA309 is an example of a device where the signal condi- (TI) LMP91000 and sensor-signal conditioners such as TI’s tioning of resistive-bridge sense elements occurs in the PGA400/450 are used to amplify the small signals produced analog domain.
    [Show full text]
  • Transformations for FIR and IIR Filters' Design
    S S symmetry Article Transformations for FIR and IIR Filters’ Design V. N. Stavrou 1,*, I. G. Tsoulos 2 and Nikos E. Mastorakis 1,3 1 Hellenic Naval Academy, Department of Computer Science, Military Institutions of University Education, 18539 Piraeus, Greece 2 Department of Informatics and Telecommunications, University of Ioannina, 47150 Kostaki Artas, Greece; [email protected] 3 Department of Industrial Engineering, Technical University of Sofia, Bulevard Sveti Kliment Ohridski 8, 1000 Sofia, Bulgaria; mastor@tu-sofia.bg * Correspondence: [email protected] Abstract: In this paper, the transfer functions related to one-dimensional (1-D) and two-dimensional (2-D) filters have been theoretically and numerically investigated. The finite impulse response (FIR), as well as the infinite impulse response (IIR) are the main 2-D filters which have been investigated. More specifically, methods like the Windows method, the bilinear transformation method, the design of 2-D filters from appropriate 1-D functions and the design of 2-D filters using optimization techniques have been presented. Keywords: FIR filters; IIR filters; recursive filters; non-recursive filters; digital filters; constrained optimization; transfer functions Citation: Stavrou, V.N.; Tsoulos, I.G.; 1. Introduction Mastorakis, N.E. Transformations for There are two types of digital filters: the Finite Impulse Response (FIR) filters or Non- FIR and IIR Filters’ Design. Symmetry Recursive filters and the Infinite Impulse Response (IIR) filters or Recursive filters [1–5]. 2021, 13, 533. https://doi.org/ In the non-recursive filter structures the output depends only on the input, and in the 10.3390/sym13040533 recursive filter structures the output depends both on the input and on the previous outputs.
    [Show full text]
  • Chapter 3 FILTERS
    Chapter 3 FILTERS Most images are a®ected to some extent by noise, that is unexplained variation in data: disturbances in image intensity which are either uninterpretable or not of interest. Image analysis is often simpli¯ed if this noise can be ¯ltered out. In an analogous way ¯lters are used in chemistry to free liquids from suspended impurities by passing them through a layer of sand or charcoal. Engineers working in signal processing have extended the meaning of the term ¯lter to include operations which accentuate features of interest in data. Employing this broader de¯nition, image ¯lters may be used to emphasise edges | that is, boundaries between objects or parts of objects in images. Filters provide an aid to visual interpretation of images, and can also be used as a precursor to further digital processing, such as segmentation (chapter 4). Most of the methods considered in chapter 2 operated on each pixel separately. Filters change a pixel's value taking into account the values of neighbouring pixels too. They may either be applied directly to recorded images, such as those in chapter 1, or after transformation of pixel values as discussed in chapter 2. To take a simple example, Figs 3.1(b){(d) show the results of applying three ¯lters to the cashmere ¯bres image, which has been redisplayed in Fig 3.1(a). ² Fig 3.1(b) is a display of the output from a 5 £ 5 moving average ¯lter. Each pixel has been replaced by the average of pixel values in a 5 £ 5 square, or window centred on that pixel.
    [Show full text]
  • A Multidimensional Filtering Framework with Applications to Local Structure Analysis and Image Enhancement
    Linkoping¨ Studies in Science and Technology Dissertation No. 1171 A Multidimensional Filtering Framework with Applications to Local Structure Analysis and Image Enhancement Bjorn¨ Svensson Department of Biomedical Engineering Linkopings¨ universitet SE-581 85 Linkoping,¨ Sweden http://www.imt.liu.se Linkoping,¨ April 2008 A Multidimensional Filtering Framework with Applications to Local Structure Analysis and Image Enhancement c 2008 Bjorn¨ Svensson Department of Biomedical Engineering Linkopings¨ universitet SE-581 85 Linkoping,¨ Sweden ISBN 978-91-7393-943-0 ISSN 0345-7524 Printed in Linkoping,¨ Sweden by LiU-Tryck 2008 Abstract Filtering is a fundamental operation in image science in general and in medical image science in particular. The most central applications are image enhancement, registration, segmentation and feature extraction. Even though these applications involve non-linear processing a majority of the methodologies available rely on initial estimates using linear filters. Linear filtering is a well established corner- stone of signal processing, which is reflected by the overwhelming amount of literature on finite impulse response filters and their design. Standard techniques for multidimensional filtering are computationally intense. This leads to either a long computation time or a performance loss caused by approximations made in order to increase the computational efficiency. This dis- sertation presents a framework for realization of efficient multidimensional filters. A weighted least squares design criterion ensures preservation of the performance and the two techniques called filter networks and sub-filter sequences significantly reduce the computational demand. A filter network is a realization of a set of filters, which are decomposed into a structure of sparse sub-filters each with a low number of coefficients.
    [Show full text]
  • Digital Signal Processing Filter Design
    2065-27 Advanced Training Course on FPGA Design and VHDL for Hardware Simulation and Synthesis 26 October - 20 November, 2009 Digital Signal Processing Filter Design Massimiliano Nolich DEEI Facolta' di Ingegneria Universita' degli Studi di Trieste via Valerio, 10, 34127 Trieste Italy Filter design 1 Design considerations: a framework |H(f)| 1 C ıp 1 ıp ıs f 0 fp fs Passband Transition Stopband band The design of a digital filter involves five steps: Specification: The characteristics of the filter often have to be specified in the frequency domain. For example, for frequency selective filters (lowpass, highpass, bandpass, etc.) the specification usually involves tolerance limits as shown above. Coefficient calculation: Approximation methods have to be used to calculate the values hŒk for a FIR implementation, or ak, bk for an IIR implementation. Equivalently, this involves finding a filter which has H.z/ satisfying the requirements. Realisation: This involves converting H.z/ into a suitable filter structure. Block or flow diagrams are often used to depict filter structures, and show the computational procedure for implementing the digital filter. 1 Analysis of finite wordlength effects: In practice one should check that the quantisation used in the implementation does not degrade the performance of the filter to a point where it is unusable. Implementation: The filter is implemented in software or hardware. The criteria for selecting the implementation method involve issues such as real-time performance, complexity, processing requirements, and availability of equipment. 2 Finite impulse response (FIR) filter design A FIR filter is characterised by the equations N 1 yŒn D hŒkxŒn k kXD0 N 1 H.z/ D hŒkzk: kXD0 The following are useful properties of FIR filters: They are always stable — the system function contains no poles.
    [Show full text]
  • Digital Filter Design Digital Filter Specifications Digital Filter
    Digital Filter Design Digital Filter Specifications • Usually, either the magnitude and/or the • Objective - Determination of a realizable phase (delay) response is specified for the transfer function G(z) approximating a design of digital filter for most applications given frequency response specification is an important step in the development of a • In some situations, the unit sample response digital filter or the step response may be specified • If an IIR filter is desired, G(z) should be a • In most practical applications, the problem stable real rational function of interest is the development of a realizable approximation to a given magnitude • Digital filter design is the process of response specification deriving the transfer function G(z) Copyright © 2001, S. K. Mitra Copyright © 2001, S. K. Mitra Digital Filter Specifications Digital Filter Specifications • We discuss in this course only the • As the impulse response corresponding to magnitude approximation problem each of these ideal filters is noncausal and • There are four basic types of ideal filters of infinite length, these filters are not with magnitude responses as shown below realizable j j HLP(e ) HHP(e ) • In practice, the magnitude response 1 1 specifications of a digital filter in the passband and in the stopband are given with – 0 c c – c 0 c j j HBS(e ) HBP (e ) some acceptable tolerances –1 1 • In addition, a transition band is specified between the passband and stopband – – c2 c1 c1 c2 – c2 – c1 c1 c2 Copyright © 2001, S. K. Mitra Copyright © 2001, S. K. Mitra Digital Filter Specifications Digital Filter Specifications ω • For example, the magnitude response G(e j ) • As indicated in the figure, in the passband, ≤ ω ≤ ω of a digital lowpass filter may be given as defined by 0 p , we require that jω ≅ ±δ indicated below G(e ) 1 with an error p , i.e., −δ ≤ jω ≤ +δ ω ≤ ω 1 p G(e ) 1 p , p ω ≤ ω ≤ π •In the stopband, defined by s , we jω ≅ δ require that G ( e ) 0 with an error s , i.e., jω ≤ δ ω ≤ ω ≤ π G(e ) s , s Copyright © 2001, S.
    [Show full text]
  • Designing Linear-Phase Digital Differentiators a Novel
    DESIGNING LINEAR-PHASE DIGITAL DIFFERENTIATORS A NOVEL APPROACH Ewa Hermanowicz Multimedia Systems Department, Faculty of Electronics, Telecommunications and Informatics, Gdansk University of Technology, ul. Narutowicza 11/12, 80-952 Gdansk, Poland phone: + (48) 058 3472870, fax: + (48) 058 3472870, email: [email protected] ABSTRACT H (e jω ) = ( jω)k exp(− jωN / 2), ω < π (1) In this paper two methods of designing efficiently a digital k linear-phase differentiator of an arbitrary degree of where k=1,2,… and the frequency response differentiation are proposed. The first one utilizes a symbolic N expression for the coefficients of a generic fractional delay jω − jωn filter and is based on a fundamental relationship between the H k,N (e ) = ∑hk,N [n]e , ω < π (2) coefficients of a digital differentiator and the coefficients of n=0 the generic FD filter. The second profits from one of the of the approximating FIR of order N, i.e. crucial attributes of the structure invented by Farrow for FD jω jω jω filters. It lies in an alternate symmetry and anti-symmetry of Ek,N (e ) = H k (e ) − H k,N (e ) . In (1) N/2 stands for sub-filters which are linear-phase differentiators. The the “transport” delay inevitable in the target FIR. proposed design methods are illustrated by examples. Some Obviously, one can continue the process of deriving practical remarks concerning the usage of the Farrow closed form formulae for the DDk coefficients with higher structure are also included. degree of differentiation, i.e. for k>2. But the value of such formulae would be rather of theoretical nature.
    [Show full text]
  • Deconvolution Filters for Dynamic Rocket Thrust Measurements
    Deconvolution Filters for Dynamic Rocket Thrust Measurements Richard B.H. Ahlfeld Master of Science Thesis Aerospace Engineering Deconvolution Filters for Dynamic Rocket Thrust Measurements Master of Science Thesis For the degree of Master of Science in Aerodynamics at Delft University of Technology Richard B.H. Ahlfeld August 19, 2014 Faculty of Aerospace Engineering · Delft University of Technology The work in this thesis was carried out at Airbus Defence and Space in Ottobrunn, Germany. Copyright © Aerodynamics Group All rights reserved. DELFT UNIVERSITY OF TECHNOLOGY DEPARTMENT OF AERODYNAMICS The undersigned hereby certify that they have read and recommend to the Faculty of Aerospace Engineering for acceptance the thesis entitled “Deconvolution Filters for Dynamic Rocket Thrust Measurements” by Richard B.H. Ahlfeld in fulfilment of the requirements for the degree of Master of Science. Dated: August 19, 2014 Supervisors: ii Richard B.H. Ahlfeld Master of Science Thesis Abstract Every spacecraft carries small rocket engines called thrusters for the purpose of orbit and position corrections in space. A precise operation of the thrusters saves fuel and a lower fuel consumption can extend the service life of the spacecraft. Precise thrust levels can be better obtained by pulsed firing than by continuous firing of the thrusters. To guarantee a precise operation, thrusters are tested extensively in a vacuum chamber beforehand on earth to measure their thrust. Measurement errors always impede the accurate determination of the rocket thrust. The measurement of pulsed rocket thrust is especially difficult, if using strain gage type thrust stands typical for the space industry. Their low first natural frequency results in a dominant transient response of the thrust stand structure, which interferes with the thrust signal.
    [Show full text]
  • Laboratory #5: RF Filter Design
    EEE 194 RF Laboratory Exercise 5 1 Laboratory #5: RF Filter Design I. OBJECTIVES A. Design a third order low-pass Chebyshev filter with a cutoff frequency of 330 MHz and 3 dB ripple with equal terminations of 50 W using: (a) discrete components (pick reasonable values for the capacitors) (b) What is the SWR of the filter in the passband (pick 100 MHz and 330 MHz)? B. Design a third order high-pass Chebyshev filter with a cutoff frequency of 330 MHz and 3 dB ripple with equal terminations of 50 W using: (a) discrete components (pick reasonable values for the capacitors) (b) What is the SWR of the filter in the passband (pick 330 MHz and 500 MHz)? (c) What does the SWR do outside the passband? II. INTRODUCTION Signal filtering is often central to the design of many communication subsystems. The isolation or elimination of information contained in frequency ranges is of critical importance. In simple amplitude modulation (AM) radio receivers, for example, the user selects one radio station using a bandpass filter techniques. Other radio stations occupying frequencies close to the selected radio station are eliminated. In electronic circuits, active filter concepts using OpAmps were introduced. One of the advantages of using active filters included the addition of some gain. However, due to their limited gain-bandwidth product, active filters using OpAmps see little use in communication system design where the operational frequencies are orders of magnitude higher than the audio frequency range. The two types of frequency selective circuit configurations most commonly used in communication systems are the passive LC filter (low, high, and bandpass responses) and the tuned amplifier (bandpass response).
    [Show full text]