0% found this document useful (0 votes)
56 views

Digital Signal Processing Using Matlab 1st Edition Andre Quinquis instant download

The document provides information about various digital signal processing (DSP) books available for download, including titles by André Quinquis and others. It lists the contents of the book 'Digital Signal Processing using MATLAB' and outlines its chapters, which cover topics such as discrete-time signals, random signals, and Fourier transforms. Additionally, it includes publication details and copyright information.

Uploaded by

wietsglaucy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
56 views

Digital Signal Processing Using Matlab 1st Edition Andre Quinquis instant download

The document provides information about various digital signal processing (DSP) books available for download, including titles by André Quinquis and others. It lists the contents of the book 'Digital Signal Processing using MATLAB' and outlines its chapters, which cover topics such as discrete-time signals, random signals, and Fourier transforms. Additionally, it includes publication details and copyright information.

Uploaded by

wietsglaucy
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 81

Digital Signal Processing Using Matlab 1st

Edition Andre Quinquis pdf download

https://ebookgate.com/product/digital-signal-processing-using-
matlab-1st-edition-andre-quinquis/

Get Instant Ebook Downloads – Browse at https://ebookgate.com


Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Digital Signal Processing Using MATLAB 3rd Edition Vinay


K. Ingle

https://ebookgate.com/product/digital-signal-processing-using-
matlab-3rd-edition-vinay-k-ingle/

ebookgate.com

Instructor Solution Manual Fundamentals of Digital Signal


Processing Using MATLAB 2nd Edition Robert J. Schilling

https://ebookgate.com/product/instructor-solution-manual-fundamentals-
of-digital-signal-processing-using-matlab-2nd-edition-robert-j-
schilling/
ebookgate.com

Digital Image Processing Using MATLAB R Rafael C. Gonzalez

https://ebookgate.com/product/digital-image-processing-using-matlab-r-
rafael-c-gonzalez/

ebookgate.com

Multirate filtering for digital signal processing MATLAB


applications 1st Edition Ljiljana Milic

https://ebookgate.com/product/multirate-filtering-for-digital-signal-
processing-matlab-applications-1st-edition-ljiljana-milic/

ebookgate.com
Digital Signal Processing 1st Edition J.S. Chitode

https://ebookgate.com/product/digital-signal-processing-1st-edition-j-
s-chitode/

ebookgate.com

DSP for MATLAB and LabVIEW I Fundamentals of Discrete


Signal Processing Synthesis Lectures on Signal Processing
Isen
https://ebookgate.com/product/dsp-for-matlab-and-labview-i-
fundamentals-of-discrete-signal-processing-synthesis-lectures-on-
signal-processing-isen/
ebookgate.com

Modern Digital Signal Processing 1st Edition Roberto


Cristi

https://ebookgate.com/product/modern-digital-signal-processing-1st-
edition-roberto-cristi/

ebookgate.com

Information Fusion in Signal and Image Processing Digital


Signal and Image Processing 1st Edition Isabelle Bloch

https://ebookgate.com/product/information-fusion-in-signal-and-image-
processing-digital-signal-and-image-processing-1st-edition-isabelle-
bloch/
ebookgate.com

Digital Signal and Image Processing 1st Edition Tamal Bose

https://ebookgate.com/product/digital-signal-and-image-processing-1st-
edition-tamal-bose/

ebookgate.com
This page intentionally left blank
Digital Signal Processing using MATLAB£
This page intentionally left blank
Digital Signal
Processing using
£
MATLAB

André Quinquis
First published in France in 2007 by Hermes Science/Lavoisier entitled “Le traitement du signal sous
Matlab£: pratique et applications”, 2nd edition
First published in Great Britain and the United States in 2008 by ISTE Ltd and John Wiley & Sons, Inc.

Apart from any fair dealing for the purposes of research or private study, or criticism or review, as
permitted under the Copyright, Designs and Patents Act 1988, this publication may only be reproduced,
stored or transmitted, in any form or by any means, with the prior permission in writing of the publishers,
or in the case of reprographic reproduction in accordance with the terms and licenses issued by the CLA.
Enquiries concerning reproduction outside these terms should be sent to the publishers at the
undermentioned address:

ISTE Ltd John Wiley & Sons, Inc.


6 Fitzroy Square 111 River Street
London W1T 5DX Hoboken, NJ 07030
UK USA

www.iste.co.uk www.wiley.com

© ISTE Ltd, 2008


© LAVOISIER, 2007

The rights of André Quinquis to be identified as the author of this work have been asserted by him in
accordance with the Copyright, Designs and Patents Act 1988.

Library of Congress Cataloging-in-Publication Data

Quinquis, André.
[Traitement du signal sous MATLAB. English]
Digital signal processing using MATLAB / André Quinquis.
p. cm.
Includes bibliographical references and index.
ISBN 978-1-84821-011-0
1. Signal processing--Digital techniques. I. Title.
TK5102.9.Q853 2008
621.382'2--dc22
2007043209

British Library Cataloguing-in-Publication Data


A CIP record for this book is available from the British Library
ISBN: 978-1-84821-011-0

Printed and bound in Great Britain by Antony Rowe Ltd, Chippenham, Wiltshire.
Table of Contents

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix

Chapter 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1. Brief introduction to MATLAB . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1. MATLAB software presentation . . . . . . . . . . . . . . . . . . . . 1
1.1.2. Important MATLAB commands and functions . . . . . . . . . . . . 3
1.1.3. Operating modes and programming with MATLAB . . . . . . . . . 8
1.1.4. Example of work session with MATLAB . . . . . . . . . . . . . . . 10
1.1.5. MATLAB language . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Chapter 2. Discrete-Time Signals . . . . . . . . . . . . . . . . . . . . . . . . . . 23


2.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.1.1. Mathematical model of 1D and 2D discrete-time signals . . . . . . 25
2.1.2. Basic 1D and 2D discrete-time signals . . . . . . . . . . . . . . . . . 26
2.1.3. Periodic 1D and 2D discrete-time signals representation
using the discrete-time Fourier series . . . . . . . . . . . . . . . . . . . . . . 26
2.1.4. Representation of non-periodic 1D and 2D discrete-time
signals by discrete-time Fourier transform . . . . . . . . . . . . . . . . . . . 27
2.1.5. Analytic signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Chapter 3. Discrete-Time Random Signals . . . . . . . . . . . . . . . . . . . . 55


3.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.2. Real random variables . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.1.3. Random processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
vi Digital Signal Processing using MATLAB

3.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64


3.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

Chapter 4. Statistical Tests and High Order Moments . . . . . . . . . . . . . 83


4.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.1.1. Moments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
4.1.2. Cumulants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
4.1.3. Cumulant properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
4.1.4. Chi-square (Chi2) tests. . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.1.5. Normality test using the Henry line . . . . . . . . . . . . . . . . . . . 86
4.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

Chapter 5. Discrete Fourier Transform of Discrete-Time Signals . . . . . . 103


5.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.1.1. Discrete Fourier transform of 1D digital signals. . . . . . . . . . . . 104
5.1.2. DFT of 2D digital signals . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.1.3. Z-transform of 1D digital signals . . . . . . . . . . . . . . . . . . . . 106
5.1.4. Z-transform of 2D digital signals . . . . . . . . . . . . . . . . . . . . 106
5.1.5. Methods and algorithms for the DFT calculation . . . . . . . . . . . 106
5.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

Chapter 6. Linear and Invariant Discrete-Time Systems. . . . . . . . . . . . 137


6.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.1.1. LTI response calculation. . . . . . . . . . . . . . . . . . . . . . . . . . 137
6.1.2. LTI response to basic signals . . . . . . . . . . . . . . . . . . . . . . . 139
6.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
6.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

Chapter 7. Infinite Impulse Response Filters . . . . . . . . . . . . . . . . . . . 173


7.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
7.1.1. Transfer function and filter specifications for infinite
impulse response (IIR) filters. . . . . . . . . . . . . . . . . . . . . . . . . . . 173
7.1.2. Design methods for IIR filters . . . . . . . . . . . . . . . . . . . . . . 174
7.1.3. Frequency transformations . . . . . . . . . . . . . . . . . . . . . . . . 180
7.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
7.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Preface vii

Chapter 8. Finite Impulse Response Filters . . . . . . . . . . . . . . . . . . . . 197


8.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
8.1.1. Transfer function and properties of FIR filters. . . . . . . . . . . . . 197
8.1.2. Design methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
8.1.3. General conclusion about digital filter design . . . . . . . . . . . . . 203
8.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
8.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

Chapter 9. Detection and Estimation . . . . . . . . . . . . . . . . . . . . . . . . 215


9.1. Theoretical background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
9.1.1. Matched filtering: optimal detection of a known noisy signal. . . . 215
9.1.2. Linear optimal estimates. . . . . . . . . . . . . . . . . . . . . . . . . . 216
9.1.3. Least squares (LS) method . . . . . . . . . . . . . . . . . . . . . . . . 221
9.1.4. LS method with forgetting factor . . . . . . . . . . . . . . . . . . . . 222
9.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
9.3. Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239

Chapter 10. Power Spectrum Density Estimation . . . . . . . . . . . . . . . . 241


10.1. Theoretical background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
10.1.1. Estimate properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
10.1.2. Power spectral density estimation . . . . . . . . . . . . . . . . . . . 242
10.1.3. Parametric spectral analysis . . . . . . . . . . . . . . . . . . . . . . . 245
10.1.4. Superresolution spectral analysis methods . . . . . . . . . . . . . . 250
10.1.5. Other spectral analysis methods . . . . . . . . . . . . . . . . . . . . 256
10.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257
10.3. Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

Chapter 11. Time-Frequency Analysis . . . . . . . . . . . . . . . . . . . . . . . 279


11.1. Theoretical background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
11.1.1. Fourier transform shortcomings: interpretation difficulties . . . . 279
11.1.2. Spectrogram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
11.1.3. Time-scale analysis – wavelet transform . . . . . . . . . . . . . . . 281
11.1.4. Wigner-ville distribution . . . . . . . . . . . . . . . . . . . . . . . . . 284
11.1.5. Smoothed WVD (SWVD) . . . . . . . . . . . . . . . . . . . . . . . . 287
11.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
11.3. Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

Chapter 12. Parametrical Time-Frequency Methods . . . . . . . . . . . . . . 307


12.1. Theoretical background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
12.1.1. Fractional Fourier transform. . . . . . . . . . . . . . . . . . . . . . . 307
viii Digital Signal Processing using MATLAB

12.1.2. Phase polynomial analysis concept. . . . . . . . . . . . . . . . . . . 309


12.1.3. Time-frequency representations based on warping operators . . . 314
12.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
12.3. Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

Chapter 13. Supervised Statistical Classification. . . . . . . . . . . . . . . . . 343


13.1. Theoretical background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
13.1.1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
13.1.2. Data analysis methods . . . . . . . . . . . . . . . . . . . . . . . . . . 344
13.1.3. Supervised classifiers. . . . . . . . . . . . . . . . . . . . . . . . . . . 348
13.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
13.3. Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379

Chapter 14. Data Compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383


14.1. Theoretical background . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
14.1.1. Transform-based compression methods . . . . . . . . . . . . . . . . 384
14.1.2. Parametric (predictive) model-based compression methods . . . . 385
14.1.3. Wavelet packet-based compression methods . . . . . . . . . . . . . 386
14.1.4. Vector quantization-based compression methods . . . . . . . . . . 387
14.1.5. Neural network-based compression methods . . . . . . . . . . . . . 388
14.2. Solved exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
14.3. Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403

References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
Preface

Why and How this Book was Written

Sometimes it is easier to say what a book is not than what it exactly represents. It
may be also better to resume the authors’ motivations than to explain the book
content itself.

From this point of view, our book is certainly not a traditional course, although it
recalls many theoretical signal processing concepts. Indeed, we emphasize a limited
number of important ideas instead of making a detailed description of the involved
concepts. Intuitive manners have been used to link these concepts to physical
aspects. Hence, we hope that reading this book will be much more exciting than
studying a traditional signal processing course.

This book is also not a physics course, although a major purpose of most
proposed exercises is to link abstract signal processing concepts to real-life
problems. These connections are illustrated in a simple and comprehensive manner
through MATLAB£ simulations.

The main topics of this book cover the usual program of an undergraduate signal
processing course. It is especially written for language and computer science
students, but also for a much larger scientific community who may wish to have a
comprehensive signal processing overview. Students will certainly find here what
they are looking for, while others will probably find new and interesting knowledge.

This book is also intended to illustrate our pedagogical approach, which is based
on three major reasons:
1. Students need to know how the teaching provided can be useful for them; it is
their customer attitude.
x Digital Signal Processing using MATLAB

2. Students have good potential for doing independent work; their interest and
curiosity should be continuously stimulated by:
– using a diversified pedagogical approach that combines the two sides of a
complete presentation methodology: from components to the system and vice versa;
– encouraging them to take advantage of their creativity through interactive
educational tools; they should be allowed to make changes and even contribute to
their development.
3. Students have to improve and validate their knowledge through written work;
writing is still the best way to focus someone’s concentration.

The role of simulations is becoming more and more important in the framework
of a scientific education because it is an effective way to understand many physical
phenomena, some of them less known or mastered, and to take into account their
complexity. Simulations may be thus very useful for:
− understanding working principles and deriving behavior laws;
− learning about processing methods and systems running using algorithms to
reproduce them off-line;
− evaluating the performance and robustness of various algorithms and
estimating the influence of different parameters.

Simulations in signal processing education enable students to learn faster and


facilitate the comprehension of the involved physical principles. From a teaching
point of view, simulation tools lead to lower costs and time efficiency.

This book is based on a signal processing course, which has been successfully given
for many years in several universities. According to our experience, signal theory
abstract concepts and signal processing practical potentialities can be linked only through
tutorial classes and simulation projects. In this framework, simulations appear to be the
necessary complement for the classical tripod theory – modeling – experimentation.

This book brings together into a clear and concise presentation the main signal
processing methods and the related results, using MATLAB software as a simulation
tool. Why MATLAB? Because it is:
− simple to learn and to use;
− powerful and flexible;
− accurate, robust and fast;
− widespread in both academic and industrial environments;
− continuously updated by professionals.
Preface xi

The word “signal” stands for a physical entity, most often of an electrical nature,
like that observed at a microphone output. It is submitted to various transformations
when it goes through a system. Thus, in a communication chain, the signal is subject
to some changes (distortion, attenuation, etc.), which can make it unrecognizable.
The aim is to understand this evolution in order to properly recover the initial
message.

In other words, a signal is a physical support of information. It may carry the


orders in a control and command equipment or multimedia (speech and image) over
a network. It is generally very weak and it has to be handled with much caution in
order to reach the signal processing final goal, i.e. information extraction and
understanding.

Signal processing is widely used in many industrial applications such as:


telecommunications, audio and speech signal processing, radar, sonar, non-
destructive control, vibrations, biomedicine, imagery, etc. Standard signal
processing functions include signal analysis, improvement, synthesis, compression,
detection, classification, etc., which depend on and interact with each other in an
integrated information processing chain.

The digital signal processing methods provide noteworthy capabilities: accurate


system design, excellent equipment reproducibility, high stability of their
exploitation characteristics and an outstanding supervision facility.

The digital signal processing boom is related to the development of fast


algorithms to calculate the discrete Fourier transform. Indeed, this is the equivalent
of the Fourier transform in the discrete domain and so it is a basic tool to study
discrete systems. However, related concepts are generally considered highly
theoretical and accessible to scientific researchers rather than to most engineers.
This book aims to overcome this difficulty by putting the most useful results of this
domain within the understanding of the engineer.

Chapter 1 briefly describes essential concepts of MATLAB software, which is an


interactive software tailored for digital signal processing. Language rules,
elementary operations as well as basic functions are presented. Chapter 2 illustrates
the generation of 1D or 2D (image) digital signals as data vectors and matrices
respectively.

Finding the solution of a signal processing problem involves several distinct


phases. The first phase is the modeling: the designer chooses a representation model
for an observed data. When it can be done very accurately the signals are said to be
deterministic. A powerful tool for analyzing them is provided by the Fourier
transform, also called frequency representation, which is presented in Chapter 5. Its
xii Digital Signal Processing using MATLAB

equivalent in the discrete domain is represented by the z-transform, which is


developed in Chapter 6.

There are many other processes, which give different and apparently
unpredictable results, although they are observed using identical experimental
conditions. They are known as random processes, such as the receiver’s thermal
noise. The wide sense stationary random processes, which form a particularly
interesting class of these signals, are presented in Chapter 3. Some useful statistical
tools for testing different hypothesis about their parameters behavior are provided in
Chapter 4.

From a very general point of view, digital signal processing covers all the
operations, arithmetical calculations and number handling performed on the signal
to be processed, defined by a number series, in order to obtain a transformed number
series representing the processed signal. Very different functions can be carried out
in this way, such as classical spectral analysis (Chapter 10), time-frequency analysis
(Chapters 11 and 12), linear filtering (Chapters 7 and 8), detection and estimation
(Chapter 9), and feature extraction for information classification or compression
(Chapters 13 and 14).

Theoretical developments have been reduced to the necessary elements for a


good understanding and an appropriate application of provided results. A lot of
MATLAB programs, solved examples and proposed exercises make it possible to
directly approach many practical applications. The reader interested in some more
complementary information will find this in the references cited at the end of this
book.

Finally, I would like to acknowledge all the members of my team, Emanuel


Radoi, Cornel Ioana, Ali Mansour and Hélène Thomas, for their contributions to this
book.

André QUINQUIS
Chapter 1

Introduction

1.1. Brief introduction to MATLAB

1.1.1. MATLAB software presentation

MATLAB (MATrix LABoratory) is an interactive software, developed by Math


Works Inc. and intended especially for digital signal processing. It is particularly
effective when the data format is vector or matrix.

MATLAB integrates digital calculus, data visualization and open environment


programming. MATLAB exists under both Windows and UNIX. Many
demonstrations are available using the command demo.

This digital simulation software enables a fast and simple visualization of the
obtained results.

MATLAB was primarily written in FORTRAN and C. However, MATLAB


knows to interpret commands, while a compilation of the source code is required by
FORTRAN and C.

MATLAB is especially designed for digital signal processing and for complex
digital system modeling and simulation. It is also suitable for processing data series,
images or multidimensional data fields.

MATLAB software general structure is provided in Figure 1.1.


2 Digital Signal Processing using MATLAB

Figure 1.1. MATLAB software general structure

The toolboxes extend the basic MATLAB functions and perform specific tasks
corresponding to different digital processing fields, such as image processing,
optimization, statistics, system control and identification, neural networks, fuzzy
systems, etc.

SIMULINK is an interactive software designed for modeling and simulating


continuous-time or discrete-time dynamical systems or hybrid structures containing
both analog and digital systems. It makes use of a mathematical equation set and
provides a large variety of predefined or user-defined functional blocks.

MATLAB has been developed for several years, especially as a consequence of


its use in the academic environment as an excellent education tool in mathematics,
engineering and science. In addition, MATLAB has already proven its utility for
scientific research and technological development.
Introduction 3

In order to run MATLAB, type the command matlab with UNIX shell (if a
MATLAB license under UNIX is available) or double click on the MATLAB icon if
the operating system is Windows. To exit MATLAB, type exit or quit. If
MATLAB is running under UNIX, you may have access to all UNIX commands
using just before the symbol! (example: !ls -l).

1.1.2. Important MATLAB commands and functions

who lists the variables in the current workspace

whos the same as previous, but lists more information about each variable

what lists MATLAB-specific files in directory

size provides the size of a data array

length provides the size of a data vector

help displays help text in Command Window

exit, quit exits from MATLAB

Table 1.1. General commands

dir, chdir,
delete, load, similar to the corresponding DOS commands
save, type

pack consolidates workspace memory

Table 1.2. Commands related to the workspace

+, -, *, /, ^ usual arithmetical operators

followed by an arithmetical operator for applying it to each array


.
element

' Hermitian operator

.' transpose operator

Table 1.3. Arithmetical operators


4 Digital Signal Processing using MATLAB

<, <=, >, >= usual relational operators


== equality operator
~= inequality operator
& element-wise logical AND
| element-wise logical OR
~ logical complement (NOT)

Table 1.4. Relational and logical operators

= variable assignment operator


used to separate the arguments of a function or the elements of a data
,
array
[] used to build data arrays
() used in arithmetical expressions
: used for indexing variables
; used at the end of a statement to cancel displaying any output
... used to continue a command on the next line
% used to enter a comment

Table 1.5. Special characters

ans default name of a variable or a result


eps spacing of floating point numbers
pi value of π = 3.14159...

i,j value of −1
Inf IEEE arithmetic representation for positive infinity (1/0)
NaN IEEE arithmetic representation for Not-a-Number (0/0)
nargin returns the number of function input arguments
nargout returns the number of function output arguments

Table 1.6. Special variables and constants


Introduction 5

abs absolute value function


sqrt square root function
real real part of a complex variable
imag imaginary part of a complex variable
angle returns the phase angles, in radians, of a complex variable
conj complex conjugate operator
sign signum function
rem returns the remainder after division
exp exponential function
log natural logarithm function
log10 base 10 logarithm function

Table 1.7. Elementary mathematical functions

sin, cos, tan, cot, sec usual trigonometric functions


asin, acos, atan, acot, asec inverse trigonometric functions
sinh, cosh, tanh, coth, sech hyperbolic functions
asinh, acosh, atanh, acoth, asech inverse hyperbolic functions

Table 1.8. Trigonometric functions

max largest component


min smallest component
mean average or mean value
std standard deviation
sum sum of elements
cumsum cumulative sum of elements
prod product of elements
cumprod cumulative product of elements

Table 1.9. Data analysis functions


6 Digital Signal Processing using MATLAB

conv convolution and polynomial multiplication

deconv deconvolution and polynomial division

roots finds polynomial roots

poly converts roots to polynomial

polyval evaluates polynomial

residue partial-fraction expansion (residues)

Table 1.10. Polynomial related functions

zeros enables generation of zero arrays

ones enables generation of ones arrays

rand enables generation of uniformly distributed random numbers

randn enables generation of normally distributed random numbers

linspace enables generation of linearly spaced vectors

logspace enables generation of logarithmically spaced vector

det calculates the determinant of a square matrix

norm calculates matrix or vector norm

inv calculates matrix inverse

eig calculates matrix eigenvalues and eigenvectors

Table 1.11. Vector or matrix related functions

input gives the user the prompt and then waits for input from the keyboard

gets an unlimited or a predefined number of points from the current


ginput
axes and returns their coordinates

Table 1.12. Input functions


Introduction 7

plot plot vectors or matrices


subplot create axes in tiled positions
bar draws a bar graph
hist draws a histogram graph
polar makes a plot using polar coordinates
stairs draws a stairstep graph
stem plots the data sequence as stems
semilogx, semi-log scale plot: a logarithmic (base 10) scale is used for the x-axis
semilogy or y-axis
log-log scale plot: a logarithmic (base 10) scale is used for both the x-
loglog
axis and y-axis
xlabel,
adds text beside the x-axis or y-axis
ylabel
title adds text at the top of the current axes
grid adds grid lines to the current axes
figure creates a new figure window
clf clears current figure
close all closes all the open figure windows
hold on/off holds/discards the current plot and all axis properties
axis controls axis scaling and appearance
legend puts a legend on the current plot using the specified strings as labels
gtext allows placing text with mouse
image displays a matrix as an image

Table 1.13. 1D and 2D graphical commands

plot3 plot lines and points in 3-D space


mesh/surf plots a 3-D mesh/colored surface
plots a contour plot of a matrix treating its values as heights above a
contour
plane

Table 1.14. 3D graphical commands


8 Digital Signal Processing using MATLAB

if conditionally executes statements


else, elseif used with if command
end terminates scope of for,while,switch,try and if statements
for repeats statements a specific number of times
while repeats statements an indefinite number of times
switch switches among several cases based on expression
break terminates execution of while or for loop
return causes a return to the invoking function or to the keyboard
pause pauses and waits for the user response

Table 1.15. Control commands

1.1.3. Operating modes and programming with MATLAB

The “online command” default operating mode is available after MATLAB gets
started. It displays the prompt >> and then waits for an input command. Running a
command usually results in creating one or several variables in the current
workspace, displaying a message or plotting a graph. For instance, the following
command:

v = 0:10

creates the variable v and displays its elements on screen. A semicolon has to be
added at the end of the statement if it is not necessary to display the result.

The previously typed commands can be recalled with the key ↑, while a
statement can be modified using the keys ← and →. You may also analyze the
effects on the command lines of the following keys: ↓, home, end, esc, del,
backspace and of the following key combinations: ctrl + →, ctrl + ←, ctrl + k.

Besides the “online command” operating mode, MATLAB can also create script
files and function files. Both of these are saved with the extension .m, but the
function files accept input arguments and return output arguments and operate on
variables within their own workspace.

In order to create a script file you have to select the menu File/New/M-file, while
to edit an existing file you have to first select File/Open M-file etc., and then choose
the appropriate file. After these commands, an edition session will be open using the
Introduction 9

chosen editor from Edit/View/Edit Preference. The edited file can be saved with the
menu File/Save As etc., followed by the file name (with the extension .m).

In MATLAB, many functions are predefined and saved as m-files. Some of them
are intrinsic, the others being provided by external libraries (toolbox): they cover
specific domains such as mathematics, data analysis, signal processing, image
processing, statistics, etc.

A function may use none, one or several input arguments and return none, one or
several output values. These different cases for a MATLAB function are called:
− one output value and no input argument:
variable_name = function_name
− no output value and one input argument:
function_name (argument_name)
− several output values and several input arguments:
[var_1, var_2, ...,var_n] = function_name (arg_1, arg_2, ...., arg_m)

For the last case, the first line of the file function_name.m has the following
form:
− function [var_1, var_2, ...,var_n] = function_name(arg_1, arg_2, ...., arg_m)

Usually, the input arguments are not modified, even if their values change during
the function execution. In fact, all the variables are local by default. Nevertheless,
this rule can be changed using the command: global variable_name.

In a MATLAB file, the comment lines have to begin with the symbol %.

The on-line help can be obtained using: help <function_name>. The first lines
of the file <function_name>.m beginning with % are then displayed. It is also
possible to search all the files containing a given keyword in their help using the
command: lookfor <keyword>.

NOTE.– The user-defined MATLAB files are recognized only in the current
directory, unlike the original MATLAB functions (toolbox, etc.). In order to make
available a user-defined file <file_name.m> outside the current directory you have
to type the command:

path(path,'<file_acces_path>/file_name>')

(see help path, help addpath).


10 Digital Signal Processing using MATLAB

The data from the current workspace can be saved in a *.mat file using the
command save. They can be reloaded using the command load. (Type help save
and help load for more information).

Another possibility is to use the same procedure to manage the files as in the C
language:

fid = fopen('x.dat','wb'); fwrite(fid,x,'double'); fclose(fd);

MATLAB is also able to manage other file formats, such as postscript.

1.1.4. Example of work session with MATLAB

Format
All the calculations are performed in MATLAB using the format double, but the
display format can be controlled using the function format (type help format).
Some examples are provided here after:
− format short: scaled fixed point format with 5 digits (default);
− format long: scaled fixed point format with 15 (7) digits for double (simple);
− format short e: floating point format with 5 digits;
− format long e: floating point format with 15 (7) digits for double (simple).

Scalars, vectors, matrices


MATLAB handles only one data type, because all the variables are considered as
floating point complex matrices. It is not necessary to declare or to size these
matrices before using them. In fact, when a variable is assigned a value, MATLAB
replaces the previous value if this variable exists in the work space; otherwise the
variable is created and sized properly.

A vector is a one row or a one column matrix, while a scalar is a 1×1 matrix.
MATLAB is optimized for matrix calculations. You should try to use matrix
operation as much as possible instead of loops in order to save execution time and
memory space.

The effectiveness of an algorithm can be measured using the functions flops


(number of floating point operations) and etime (elapsed time). Thus, the couple of
commands flops(0) and flops inserted just before and after an algorithm code line
returns the number of operations required. The function clock yields the present
time, while etime(t1,t2) provides the time elapsed between t1 and t2.
Introduction 11

EXAMPLE
t = clock;
%Algorithm;
time = etime(clock,t)

etime is not an accurate measure of the algorithm effectiveness because the


execution speed depends on the CPU.

EXERCISE 1.1.
Type a = 3 and then a = 3;

What is the signification of the symbol “;”?

There are some predefined variables. For instance pi = π, while i and j are
defined as the square root of –1. Type a = 1+2*i.

Pay attention to the use of these keywords for defining new variables: any
assignment replaces the predefined value by the new input (for instance the
assignment pi = 3 replaces the value π). Type clear pi to recover the initial
value of this variable.

You should avoid assigning i and j other values in a MATLAB program which
handles complex numbers.

EXERCISE 1.2.
Type i = 2, then a = 1+2*i and finally clear i.

clear command allows one or several variables to be removed.

Elementary operations
An operation involving 2 variables is possible only if the corresponding matrix
sizes match.

EXERCISE 1.3.
Type v = [1 2 3] then v = [1; 2; 3] and v(1).

As opposed to the case of C language, where the array index begins with 0, in
MATLAB it begins with 1: see the effect of v(0).

A vector filled with equally spaced values is defined in the following manner:
initial_value:increment:final value (for example v = 4:-0.1:3.2).
12 Digital Signal Processing using MATLAB

A matrix can be defined as indicated below:


− M = [1 2; 3 4];
− N(1,:) = [1 2] and N(2,:) = [3 4].

Type M(:,1), M(:,2),N(:,1) and M(:,2).

The pointwise operators: ".*", "./" or ".^" are useful for performing matrix
operations.

EXERCISE 1.4.
Define the following matrix: A = [exp(j) 1; 2 j] and see A', A.', A^2,
A.^2.

The relational operators: <, <=, >, >=, ~= and == compare couples of
elements belonging to equal size matrices and return a matrix filled with 1 (true) and
0 (false).

The logical operators such as: &, |, ~, any or all consider all the non-zero
elements as true and return a matrix filled with 0 and 1, according to the logical
operation result.

MATLAB has no pointer structures, but it automatically allocates (when using =)


and recovers (when using clear) memory space. For example, for solving A*x=y,
MATLAB automatically creates a vector for x.

Notice the difference between matrix right division and matrix left division:
X=A\B (equivalent to A-1*B) is the solution to A*X=B while X=A/B (equivalent to
A*B-1) is the solution to X*B=A.

EXERCISE 1.5.
A = [1 2 1; 2 1 3; 4 0 5];
y = [3; 2; 1];
x = A\y
z = A/y

The matrices can be concatenated either line by line or column by column.

N = [1 2]; P = [M; N]; then Q = [M’; N’];

The inverse submatrix extraction can be performed using brackets as indicated below:

Type B=A(1:3,:) and C=A([1 3],:).


Introduction 13

1.1.5. MATLAB language

MATLAB is a true programming language. However, it is an uncompiled


language and thus is not particularly suitable for developing very complex
applications. However, it is provided with all the necessary algorithmic structures
for rigorous programming.

The “for” loops


for (expression)
code lines;
end

The “while” loops


while (condition)
code lines;
end

The “if ... then” loops


if (condition1)
code lines;
else if (condition2)
code lines;
else
code lines;
end

1.2. Solved exercises

EXERCISE 1.6.
Define a 4×3 matrix zero everywhere excepting the first line that is filled with 1.

b = ones (1,3); m = zeros (4,3); m(1,:) = b

m=
1 1 1
0 0 0
0 0 0
0 0 0
14 Digital Signal Processing using MATLAB

EXERCISE 1.7.
Consider the couples of vectors (x1, y1) and (x2, y2). Define the vector x so that:

x(j) = 0 if y1(j) < y2(j);


x(j) = x1(j) if y1(j) = y2(j);
x(j) = x2(j) if y1(j) > y2(j).

function x = vectors(x1,y1,x2,y2)
x = x1.*[y1 == y2] + x2.*[y1 > y2];

vectors([0 1],[4 3],[-2 4],[2 0])

ans =
-2 4

EXERCISE 1.8.
Generate and plot the signal: y(t) = sin(2πt) for 0 ≤ t ≤ 2, with an increment of
0.01, then undersample it (using the function decimate) with the factors 2 and 16.

t = 0:0.01:2;
y = sin(2*pi*t);
subplot(311)
plot(t,y) ;
ylabel('sin(2.pi.t)');
title('Original signal');
t2 = decimate(t,2);
t16 = decimate(t2,8);
y2 = decimate(y,2);
y16 = decimate(y2,8);
subplot(312)
plot(t2,y2);
ylabel('sin(2.pi.t)')
title('Undersampled signal with a factor 2');
subplot(313);
plot(t16,y16);
ylabel('sin(2.pi.t)');
xlabel('Time t');
title('Undersampled signal with a factor 16');

You can save the figures in eps (Encapsulated PostScript) format, which is
recognized by many software programs. The command print -eps file_name
creates the file file_name.eps.
Introduction 15

Original signal
1

0.5
sin(2 pi.t)
0

0.5

1
0 0.5 1 1.5 2

Undersampled signal with a factor 2


1

0.5
sin(2.pi.t)

0.5

1
0 0.5 1 1.5 2

Undersampled signal with a factor 16


1

0.5
sin(2.pi.t)

0.5

1
0 0.5 1 1.5 2
Time t

Figure 1.2. Sinusoid waveform corresponding to different sample frequencies

EXERCISE 1.9.
Plot the paraboloid defined by the equation: z2 = x2 + y2 for -50 ≤ x, y ≤ 50.

N = 50; x = -N:N; y = -N:N;


% first solution (to avoid): two nested loops
%-------------------------------------------------------
for k = 1: 2*N+1
for l = 1: 2*N+1
z1(k,l) = sqrt(x(k)^2 + y(l)^2);
end;
end;
figure; meshc(x,y,z1);
xlabel('x'); ylabel('y'); zlabel('z');

fprintf('Type a key to plot the paraboloid using another


method\n'); pause;
% second solution: one loop
%---------------------------------------
z2 = zeros(2*N+1,2*N+1);
16 Digital Signal Processing using MATLAB

for k = 1: 2*N+1
z2(k,:) = sqrt(x(k)^2 + y.^2); % pointwise multiplication
for y
end;
figure; meshc(x,y,z2);
xlabel('x'); ylabel('y'); zlabel('z');
fprintf('Type a key to plot the paraboloid using another
method\n'); pause;
% third solution (the best): no loop
%---------------------------------------------
xc = x.^2; yc = y.^2;
mx=xc.'*ones(1,2*N+1); % line k of mx filled with the value
xc[k]
my=ones(1,2*N+1).'*yc; % column l of my filled with the value
yc[l]
z3 = sqrt(mx + my);
figure; meshc(x,y,z3);
xlabel('x'); ylabel('y'); zlabel('z');

80

60

40
z

20

0
50
50
0
0

y 50 50
x

Figure 1.3. Paraboloid plot

EXERCISE 1.10.
1. Generate 1,000 independent values x1,...,x1,000 of a zero-mean random
Gaussian variable with variance 4 using the function randn.

Plot the corresponding histogram and calculate the mean and the standard
deviation of the generated series using the functions hist, mean and std.

Find out the mean and the standard deviation of the random series x21, …,x21,000.
Then compare the obtained results with the theoretical results.
Introduction 17

clear all
n = 1000;

% If X ~ N(m,sigma^2) then Y = (X-m)/sigma ~ N(0,1)


Y=randn(1,n); X=2*Y;
[histoX,bins]=hist(X);
plot(bins,histoX);
xlabel('Bins');
ylabel('Number of values belonging to each bin');
title('Histogram of X using 10 bins');

% Find below 2 ways for displaying the results:

% 1) Character chain concatenation:


moyX=num2str(mean(X));
ecartX=num2str(std(X));
varX=num2str(var(X))
fprintf(strcat('\nMean of X = ',moyX, '\n'));
fprintf(strcat('St. dev. of X = ',ecartX, '\n'));
fprintf(strcat('Variance of X = ',varX, '\n\n'));

% 2) Use of formats, just like in C:


% (type "help format" for more explanations)
fprintf('Mean of X = %2.5f\n',mean(X));
fprintf('St. dev. of X = %2.5f\n',std(X));
fprintf('Variance of X = %2.5f\n',std(X)^2);
Z = X.*X;
fprintf('\nMean of Z = %2.5f\n',mean(Z));
fprintf('St. dev. of Z = %2.5f\n',std(Z));
fprintf('Variance of Z = %2.5f\n',std(Z)^2);
fprintf('Var Z - 2*(Var X)^2 = %2.5f\n\n',std(Z)^2-2*std(X)^4);
Histogram of X using 10 bins
300

250
Number of values belonging to each bin

200

150

100

50

0
8 6 4 2 0 2 4 6 8
Bins

Figure 1.4. Histogram of a Gaussian random variable


18 Digital Signal Processing using MATLAB

Mean of X = 0.0085986
St. dev. of X = 1.963
Variance of X = 3.8533

Mean of X = 0.00860
St. dev. of X = 1.96298
Variance of X = 3.85328

Mean of Z = 3.84950
St. dev. of Z = 5.55695
Variance of Z = 30.87972
Var Z - 2*(Var X)^2 = 1.18418

2. Use the function rand to generate 1,000 independent values of the random
variable X defined by:
P ( X = −1) = p 0 ; P( X = 0) = p1 ; P ( X = 1) = 1 − p 0 − p1 ;

where p0 and p1 are the probabilities to be entered by the user.

function va_gen(n,po,p1)
help va_gen; Y = rand(1,n);
X = -1*[Y< po*ones(1,n)] + 1*[Y>((po+p1)*ones(1,n))];
% If Y is a uniformly distributed variable between 0 and 1, then the X
current value is obtained from the combination of 2 tests, so that X = -
1*(Y<p0) + 1*(Y>p0+p1):
% - if Y < p0 (this case occurs with the probability p0) then
% the first test is true and the second is false, so X = -1
% - if Y > p0+p1 (this case occurs with the probability 1-p0-p1)
% then the first test is false and the second is true, so X = 1
% - if p0 < Y < p0+p1 (this case occurs with the probability p1)
% then the two tests are false, so X = 0
prob = hist(X,3)/n;
fprintf('\np [X = -1] = %1.4f\n', prob(1));
fprintf('p [X = 0] = %1.4f\n', prob(2));
fprintf('p [X = 1] = %1.4f\n\n', prob(3));

When the function va_gen is called:


va_gen(1000,0.1,0.5)

it provides the following result:

If Y is a uniformly distributed variable between 0 and 1, then the X current


value is obtained from the combination of 2 tests, so that X = -1*(Y<p0) +
1*(Y>p0+p1):
- if Y < p0 (this case occurs with the probability p0) then
the first test is true and the second is false, so X = -1
- if Y > p0+p1 (this case occurs with the probability 1-p0-p1)
then the first test is false and the second is true, so X = 1
Introduction 19

- if p0 < Y < p0+p1 (this case occurs with the probability p1)
then the two tests are false, so X = 0

p [X = -1] = 0.1000
p [X = 0] = 0.4840
p [X = 1] = 0.4160

EXERCISE 1.11.
Plot in polar coordinates the poles of the filter having the following transfer function:

1
H ( z) =
−1
1 + az + bz −2

The values of a and b are entered by the user and the function returns the poles.
(use the commands roots and polar).

function c = filter_bis(a,b)
c = roots([1 a b]); % Comment: H(z) = poly(c)
fprintf('The poles are:\n'); z1 = c(1,:)
z2 = c(2,:)
if (abs(z1)> 1 | abs(z2) > 1)
fprintf ('There is at least an instable pole\n');
else
clf; figure; polar(angle(z1),abs(z1),'r+');
% Second solution: use zplane
hold on; polar(angle(z2),abs(z2),'r+');
legend('Polar plot of H(z) poles',0);
end

90
1
120 60
08

06
150 30
0.4

0.2

180 0

210 330

240 300
270
Polar plot of H(z) poles

Figure 1.5. Function call example – filter_bis (1.5,1)


20 Digital Signal Processing using MATLAB

The poles are:

z1 =
-0.7500 + 0.6614i

z2 =
-0.7500 - 0.6614i

EXERCISE 1.12.
Generate the signal: x(t) = A⋅sin(2πft + φ) + b(t), t = 0..1024, where φ is a uniformly
distributed random variable on [0, 2π] and b(t) is a white Gaussian noise with mean zero
and variance one (use rand and randn). A and f are chosen by the user.

Estimate the mean value, the autocorrelation function (xcorr) and the spectrum
of x(t) using the periodogram and the correlogram (use fft and fftshift).
Compare the obtained results to the theoretical results. Change A in order to control
the SNR.

function noisy_sin(A,f)
N = 1024; % Number of calculated frequencies
nech = 1024; % Number of samples
t = 0:nech;
b = randn(1,nech+1);
phi = 2*pi*rand(1);
x = A*sin(2*pi*f*t+phi)+b;
fprintf('\nMean of x(t) = %2.4f\n',mean(x));
fprintf('Mean of b(t) = %2.4f\n',mean(b));
cx = xcorr(x);
% plot(cx);
% Correlogram based spectrum estimation:
sx_correlo = (abs(fft(cx,N))).^2;
sx_correlo = sx_correlo / max(sx_correlo);
% the first N/2 values correspond to 0<=f<0.5
% the last N/2 values correspond to 0.5<=f<1 (or -0.5<=f< 1)
sx_correlo = fftshift(sx_correlo);
% The spectrum is centred around 0:
% the first N/2 values correspond to -0.5<=f<0
% the last N/2 values correspond to 0<=f<0.5

% Periodogram based spectrum estimation:


%------------------------------------------
sx_periodo = (abs(fft(x,N))).^2;
sx_periodo = sx_periodo / max(sx_periodo);
sx_periodo = fftshift(sx_periodo);

% SNR estimation for a noisy sinusoid


%----------------------------------------------
Introduction 21

vector(1:N) = sx_periodo;
vector(N+1:2*N) = sx_correlo;

plot(-0.5:1/N:0.5-1/N,10*log10(sx_correlo(1:N)),'r-',-0.5:1/N:0.5-
1/N,10*log10(sx_periodo(1:N)),'b:');
legend('Correlogram','Periodogram',0);
xlabel('Normalized frequency');
ylabel('Magnitude spectrum [dB]');
axis([-0.5 0.5 min(10*log(vector)) 0]);

% 0 dB <=> 10.log10 (Psignal + Pnoise)


% background_noise <=> 10.log10 (Pnoise) < 0
% Psignal = A^2/(2.N) (periodogram)
% Pnoise = sigma^2 = 1

SNRth = A^2/2;

fprintf('\nSignal SNR = %2.4f dB \n',10*log10(SNRth));


fprintf('\t=> Theoretical mean background noise corresponding to the
periodogram estimated spectrum\n');
fprintf('\t in the range [-0.5:%1.2f] & [%1.2f:0.5] = %2.4f dB\n\n',-f-
0.05,0.05+f,-10*log10(N*SNRth/2+1));

background_noise1 = mean(10*log10(sx_periodo(1:round(N*(0.45-f)))));
background_noise2 = mean(10*log10(sx_periodo(round(N*(0.65+f)):N)));

mean_background_noise=mean([background_noise1,background_noise2]);

fprintf('Mean background noise corresponding to the periodogram estimated


spectrum \n');
fprintf('in the range [-0.5:%1.2f] & [%1.2f:0.5] = %2.4f dB\n',-f-0.05,
0.05+f, mean_background_noise);
fprintf('\t=> Estimated SNR = %2.4f dB \n',10*log10((2/N)*(-1+exp(-
noise_moy*log(10)/10))));

Function call example: noisy_sin(2,0.15)

Mean of x(t) = 0.0529


Mean of b(t) = 0.0499

Signal SNR = 3.0103 dB


=> Theoretical mean background noise corresponding to the periodogram
estimated spectrum in the range
[-0.5:-0.20] & [0.20:0.5] = -30.1072 dB

Mean background noise corresponding to the periodogram estimated spectrum in


the range [-0.5:-0.20] & [0.20:0.5] = -29.7643 dB
=> Estimated SNR = 2.6670 dB
22 Digital Signal Processing using MATLAB

The SNR estimation error is related to several odd spectrum values, which lead
to a biased mean background noise level.

0
Correlogram
Periodogram
10

20
Magnitude spectrum [dB]

30

40

50

60

70

80
0.5 0 0.5
Normalized frequency

Figure 1.6. Spectral representation of a noisy sinusoidal signal


Chapter 2

Discrete-Time Signals

2.1. Theoretical background

A signal is a physical support for information, depending on one or several


independent variables, such as: time, range, temperature, pressure, etc. The signal
concept generally refers to its mathematical or physical model, chosen in the most
appropriate manner for describing the complexity of real signals.

According to whether a signal depends on only one variable or two variables, it


is called one-dimensional (1D) or two-dimensional (2D). As a general rule, a
multidimensional signal is defined as a function of several variables.

A discrete-time signal is represented by a digital series, uniformly or non-


uniformly sampled. The first case is considered in the following and corresponds to
a constant time delay between each two successive samples.

Usually, s(k) stands for the kth sample of the discrete-time signal {s(k)}k = 1, 2, .
However, the two notations usually overlap in order to simplify the theoretical
presentation.

The signal theory is mainly related to the signal mathematical representation in


the original or a transformed space, and to its algorithmic processing in order to
extract the useful information.

2.1.1. Mathematical model of 1D and 2D discrete-time signals

The mathematical model of a discrete-time signal can be defined in terms of the


function indicated below:
24 Digital Signal Processing using MATLAB

x : T → X , n → x [n] [2.1]

so that:

∀ n ∈ T ⊆ N or Z Ÿ x [ n ] ∈ X ⊆ N , R or C [2.2]

while, for 2D discrete-time signals n = (n1,n2 ) → x(n1,n2 ) and ∀ ( n1 ,n2 ) ⊆ N × N


or Z × Z Ÿ x [ n1 ,n2 ] ∈ N, R or C .

In addition to the mathematical model above, 1D discrete-time signals can be


also described as:
a. a data vector:

x = { xn with n ∈ N, Z or n ∈ 0..N − 1} [2.3]

b. a polynomial depending on a real variable z:

N −1
X ( z) = ¦ xn z n = x0 + x1 z + x2 z 2 + ... + x N −1 z N −1 [2.4]
n=0

In the same manner, 2D discrete-time signals can be also represented as:


a. a data matrix:

{ }
x = x ( n1 ,n2 ) or xn1 ,n2 with n1 = 0..N ′ − 1 and n2 = 0..N ′′ − 1 [2.5]

b. a set of polynomials depending on one variable:

N ′′−1
X n1 ( z ) = ¦ xn1 ,n2 z n2 with n1 = 0..N ′ − 1 [2.6]
n2 =0

c. a polynomial depending on two variables:

N ′ −1 N ′′ −1
X ( z1 , z 2 ) = ¦
n n
¦ x n1 , n2 z1 1 z 2 2 [2.7]
n1 = 0 n2 = 0
Discrete-Time Signals 25

2.1.2. Basic 1D and 2D discrete-time signals

1D 2D
Dirac pulse

­1, if n = 0 ­1, if n1 = n2 = 0
δ [ n] = ® , δ [ n1 , n2 ] = ® ,
¯0, otherwise ¯0, otherwise
so that: so that:
x[n] = ¦ x[r ] δ [n − r ] x[n1 , n2 ] = ¦ ¦ x[r1 , r2 ] δ [n1 − r1 , n2 − r2 ]
(r ) ( r1 ) ( r2 )

Step signal

­1, if n ≥ 0 ­1, if n1 , n2 ≥ 0
u [ n] = ® u [ n1 , n2 ] = ®
¯0, otherwise ¯0, otherwise
∞ ∞ ∞
and: u[n ] = ¦ δ [n − r ] and: u[n1 , n2 ] = ¦ ¦ δ [n1 − r1 , n2 − r2 ]
r =0 r1 = 0 r2 = 0

Complex exponential signal

x[n] = e jω 0 n = e jω 0 ( n + N ) x [ n1 , n2 ] = e jω01n1 e jω02 n2


with: N = 2π / ω 0
= e jω01 ( n1 + N1 ) e jω02 ( n2 + N 2 )
with: N1 = 2π ω01 and N 2 = 2π ω02
Set of finite orthogonal complex signals

ϕk [ n ] = {e jkω0 n
}, {
ϕ k1 , k 2 [n1 , n2 ] = e jk1ω 01 n1 e jk 2ω 02 n 2 }
where: k = 0..N − 1 where: k1 = 0. N1 − 1 and k2 = 0. N 2 − 1

­N , i = j ­ N1 N 2 , i1 = j1 = i2 = j2
and: ϕ i , ϕ j = ® and: ϕ i1 , i 2 , ϕ j1 , j 2 =®
¯0, i ≠ j ¯0, i1,2 ≠ j1,2
Set of orthonormal complex signals

­ 1 ½ ­° 1 ½°
® ϕk [ n ]¾ , k = 0..N − 1 ® ϕk1 ,k2 [ n1 , n2 ]¾ , k1,2 = 0..N1,2
¯ N ¿ °¯ N1 N 2 °¿

Table 2.1. Mathematical representations of discrete-time signals


26 Digital Signal Processing using MATLAB

2.1.3. Periodic 1D and 2D discrete-time signal representation using the discrete-


time Fourier series

Harmonic analysis is the most important tool in signal analysis theory. The
generalized Fourier transform, which makes use of distributions, allows the spectral
representation of deterministic signals to be obtained. This describes the frequency
distribution of the signal amplitude, phase, energy or power.

The discrete-time Fourier series (DTFS) consists of decomposing a periodic


signal as a sum of several basic functions, which are easier to generate and to
observe. They may be the sin and cos functions in the case of the trigonometric
Fourier series or the exponential function exp(jωt) in the case of the complex
Fourier series.

A periodic 1D discrete-time signal, denoted1 by x [n], has the following form:

N −1
x [ n ] = x [ n + N ] = ¦ ck exp ª¬ jk ( 2π N ) n º¼ [2.8]
k =0

where:
1 N −1
ck = ¦ x [ n] exp ª¬ − jk ( 2π N ) n º¼, k = 0..N − 1 [2.9]
N n =0

A periodic 2D discrete-time signal, denoted by x [n1, n2] can be expressed as:

x [ n1 , n2 ] = x [ n1 + N1 , n2 ] = x [ n1 , n2 + N 2 ] =
N1 −1 N 2 −1 § 2π 2π · [2.10]
= ¦ ¦ ck1 ,k2 exp ¨ jk1 n1 + jk2 n2 ¸
k1 =0 k2 =0 © N1 N2 ¹

where:

1 N1 −1 N 2 −1 § 2π 2π ·
ck1 ,k2 = ¦ ¦ x [ n1 , n2 ] exp ¨ − jk1 n1 − jk2 n2 ¸
N1 N 2 n1 =0 n2 =0 © N1 N 2 ¹ [2.11]
k1 = 0..N1 − 1, k2 = 0. N 2 − 1

Consequently, DTFS1D and DTFS2D perform the following transformations:

DTFS1D DTFS2D
x [ n ] ←⎯⎯⎯ → ck , x [ n1 , n2 ] ←⎯⎯⎯ → ck1k2 [2.12]

1 Different notations are sometimes used for periodic ( x [n] or x [n1, n2]) and non-periodic
discrete-time signals (x[n] or x[n1, n2]).
Discrete-Time Signals 27

2.1.4. Representation of non-periodic 1D and 2D discrete-time signals by discrete-


time Fourier transform

The discrete-time Fourier transform (DTFT) of a 1D discrete-time signal x[n] has


the following form:

+∞
( )
X e jω =DTFT1D x [ n ] = { } ¦ x [ n ] exp ( − jω n )
n =−∞
[2.13]

while the inverse transform is defined by:

x [ n ] =DTFT1D
−1
X e jω{ ( )} = 21π v³ X ( e ) e

jω jω n
dω [2.14]

Direct and inverse discrete Fourier transform of a discrete-time 2D signal are


given by very similar relationships:

( )
X e jω1 + jω2 = X (ω1 , ω2 ) = DTFT2D x [ n1 , n2 ]{ }
+∞ +∞ [2.15]
= ¦ ¦ x [ n1 , n2 ] exp [ − jω1n1 − jω2 n2 ]
n1 =−∞ n2 =−∞

1
x [ n1 , n2 ] = v³ v³ X (ω1 , ω2 ) exp [ jω1n1 + jω2 n2 ] d ω1 d ω2 [2.16]
( 2π )2 2π 2π

Consequently, DTFT1D and DTFT2D perform the following transformations:

x [ n ] ←⎯⎯⎯
1DDTFT
( )
→ X e jω = X (ω ) , x [ n1 , n2 ] ←⎯⎯⎯
2D DTFT
→ X (ω1 , ω2 ) [2.17]

2.1.5. Analytic signals

It is well known that the Fourier transform of a real signal has the Hermitian
symmetry property (odd absolute value and real part, even argument and imaginary
part). This means that giving the Fourier transform (FT) of a real signal for the
positive frequency axis is enough for its complete characterization.

It is thus possible to represent a real signal x(t) by a complex one zx(t), without
any information loss. The new complex signal zx(t) is called the analytic signal
associated with the real signal x(t).
28 Digital Signal Processing using MATLAB

Generally, a signal z(t) is an analytic signal if its spectrum Z(ν) is zero for any
negative frequency value. Bearing in mind that Z(ν) = Z(ν)U(ν), where U(ν) stands
for the frequency step function, it can be easily shown that the real and imaginary
parts of z(t) are a couple of the Hilbert transform. An analytical signal is therefore
completely determined if its real part is known.

Let us consider the DTFT of a real, non-periodic and causal 1D discrete-time


signal x[n]:

{ } ( ) ( )
DTFT1D x [ n ] = X e jω = X Re e jω + jX Im e jω ( )
The real and imaginary parts of this DTFT are related by the Hilbert transform
(HT):

­° 1 +π θ − ω ½°
( )
X Im e jω = PV ®
¯° 2π
³
−π
( )
X Re e jθ cot
2 ¿°
{ ( )} [2.18]
d θ ¾ = HT1D X Re e jω

­° 1 +π θ − ω ½°
( )
X Re e jω = −PV ® ³
¯° 2π −π
( )
X Im e jθ cot
2
d θ ¾ + x [ 0]
¿° [2.19]

{ ( )} + x [0]
= −HT1D X Im e jω

where “PV” denotes the principal value of an integral and the Hilbert transform is
defined by:

°­ 1 π § θ − ω · °½
HT1D { f } (ω ) = PV ® ³ f (θ )cot ¨ ¸ dθ ¾ [2.20]
°¯ 2π −π © 2 ¹ °¿

If the spectrum of a non-periodical discrete-time signal x[n] is constrained by the


causality condition over ω ∈ [− π ,+π ] , we obtain:

( )
X e jω = 0, −π ≤ ω < 0 [2.21]

x[n] is thus an analytical signal and can be written in the following form:

x [ n ] = xre [ n ] + jxim [ n ] [2.22]


Discrete-Time Signals 29

The relationship between its real and imaginary parts can be easily derived:
+∞
{
xim [ n ] = ¦ xre [ m ] h [ n − m ] = DHT1D xre [ n ] } [2.23]
m =−∞

+∞
xre [ n ] = − ¦ xim [ m] h [ n − m] = −DHT1D { xim [ n] } [2.24]
m =−∞

where h[n] is the impulse response corresponding to an ideal discrete Hilbert


transformer:

­0, if n = 0
°
h [ n ] = ® 2 sin 2 (π n 2 ) [2.25]
° , if n ≠ 0
¯π n

2.2. Solved exercises

EXERCISE 2.1.
The MATLAB code below generates and plots some basic discrete-time signals.
subplot(3,3,1);
stem([1;zeros(49,1)]);
title('Dirac pulse')
subplot(3,3,2); stem(ones(50,1));
title('Step function')
subplot(3,3,3);
stem([ones(1,5),zeros(1,3)])
title('Rectangular pulse')
subplot(3,3,4);
stem(sin(2*pi/8*(0:15)))
title('Sinusoidal signal')
subplot(3,3,5); stem(sinc(0:0.25:8));
title('"Sinc" signal')
subplot(3,3,6); stem(exp(-(0:15)));
title('e^-^n signal')
subplot(3,3,7);
stem(pow2(-0.5*(0:15)))
title('2^-^0^.^5^n signal')
subplot(3,3,8); stem(3.^(0:15));
title('3^n signal')
subplot(3,3,9); stem(randn(1,16));
title('Gaussian random signal')
30 Digital Signal Processing using MATLAB

Dirac pulse Step function Rectangular pulse


1 1 1

0.5 0.5 0.5

0 0 0
0 50 0 50 0 5 10
n
Sinusoidal signal "Sinc" signal e signal
1 1 1

0 0 0.5

1 1 0
0 10 20 0 20 40 0 10 20
0 5n n
2 signal x 10 3 signal
7 Gaussian random signal
1 2 2

0.5 1 0

0 0 2
0 10 20 0 10 20 0 10 20

Figure 2.1. Examples of discrete-time signals

EXERCISE 2.2.
Generate the following signal:

x(n) = K ⋅ exp[c ⋅ n] ,

where: K = 2, c = −1/12 + jπ / 6 , n ∈ ` and n = 0..40 .

c = -(1/12)+(pi/6)*i;
K = 2; n = 0:40;
x = K*exp(c*n);
subplot(2,1,1); stem(n,real(x));
xlabel('Time index n');
ylabel('Amplitude');
title('Real part');
subplot(2,1,2); stem(n,imag(x));
xlabel('Time index n');
ylabel('Amplitude');
title('Imaginary part');
Discrete-Time Signals 31

Real part
2

1
Amplitude

2
0 5 10 15 20 25 30 35 40
Time index n
Imaginary part
2

1
Amplitude

1
0 5 10 15 20 25 30 35 40
Time index n

Figure 2.2. Real and imaginary parts of a complex discrete-time signal

K is a constant amplitude factor and Re{c} sets the attenuation, while Im{c} is
related to the dumped signal period (12 points per period).

EXERCISE 2.3.
Generate the following amplitude modulated signal:

y (n) = (1 + m ⋅ sin(2πυb n)) ⋅ sin(2πυh n)

where m = 0.4, υ b = 0.01, υ h = 0.1 , n ∈ N and n = 0..100 .

n = 0:100; m = 0.4;
fH = 0.1 ; fL = 0.01;
xH = sin(2*pi*fH*n);
xL = sin(2*pi*fL*n);
y = (1+m*xL).*xH;
stem(n,y); grid ;
xlabel('Time index n');
ylabel('Amplitude');
Other documents randomly have
different content
egli faceva perdere la memoria ai testimoni, e ingarbugliava le idee
ai giudici, e metteva la stracchezza addosso ai carnefici. Tutto veniva
da lui. Se la strega durante la tortura moriva, era il diavolo che
l'aveva strozzata, per impedirle di parlare; se la strega si uccideva da
sè stessa, era il diavolo che a ciò l'aveva spinta, affinchè non si
potesse più fare il processo. In Lindheim, villaggio dell'Assia, cinque
o sei donne furono accusate d'aver dissotterrato un bambino e
d'essersene servite per la manipolazione della consueta broda delle
streghe. Torturate in regola, esse confessarono il delitto. Allora il
marito di una di esse tanto s'adoperò che potè ottenere si facesse
una visita al camposanto, per meglio accertarsi della cosa. Aperta la
fossa, il corpicino apparve intatto nella sua bara; ma l'inquisitore,
senza punto smarrirsi, disse che quella doveva essere una illusione
del diavolo maledetto, e che essendoci la confessione delle colpevoli
non era da cercar altro, ma era da dar corso alla giustizia, a onore e
gloria della santissima Trinità: e le donne furono bruciate vive.
Per render vane le frodi e le gherminelle del diavolo, si usavano in
varii luoghi varii accorgimenti e rimedii: si vestiva la strega di una
camicia tessuta e cucita in un sol giorno, le si dava bere un intruglio
fatto di cose benedette, si aspergevano d'acqua benedetta gli
stromenti di tortura, si bruciavano certe erbe, ecc. ecc. Fosse in
grazia di tali pratiche, fosse per altra ragione, certo si è che assai di
rado riusciva il diavolo a porgere alle streghe e agli stregoni amici
suoi ajuto veramente efficace e durevole. Lo storico siciliano
Tommaso Fazello (1498-1570) narra di certo mago Diodoro, che
ajutato dal diavolo scappava di mano alle guardie, e volava per l'aria,
da Catania a Costantinopoli. Il giuoco durò un pezzo; ma finalmente
il vescovo Leone potè mettergli le mani addosso, e lo fece gettar
vivo in una fornace ben accesa, d'onde quegli non uscì più, o uscì
solo per andar capofitto in inferno.
Il primo a insorgere contro la odiosa superstizione, e contro gli
orribili effetti suoi, fu nel secolo XVI il famoso Cornelio Agrippa di
Nettesheim, seguito e superato dal suo proprio discepolo Giovanni
Weier (1518-88) il cui libro fa epoca. I difensori della retta ragione e
della umanità si moltiplicarono poi rapidamente; ma la battaglia da
essi combattuta non fu coronata di vittoria se non assai tardi. Le
ultime vittime della superstizione caddero in Europa nella seconda
metà del secolo scorso: fuori d'Europa, nel Messico, due roghi si
accesero ancora nel 1860 e nel 1873.
L'Inquisizione è morta, e sono finiti i processi per istregoneria; ma
non è morta la stolta credenza, nè sono finiti i lamenti di coloro che
la serbano viva; e non passa anno senza che venga alla luce, scritto
da un qualche teologo fallito e frenetico, un libro in cui si grida che il
mondo è nelle mani del diavolo, e che i satelliti del diavolo,
ammaestrati da lui, corrompono con l'arti loro ogni cosa, insidiano e
sopraffanno i buoni. Il mondo è pieno di stregoni, camuffati in altra
maniera, ma non meno tristi e pericolosi degli antichi, e, quel ch'è
peggio, il diavolo, lor buon signore, ha finalmente trovato il modo
d'impedire che sieno bruciati. Se si potessero ancora bruciare, a
tutto ci sarebbe rimedio.
Capitolo X.
L'INFERNO.

Immaginate un mondo spartito in tre piani. Nel piano di sopra è il


paradiso, la reggia di Dio, la dimora degli angeli e dei beati,
sfolgorante di luce, risonante d'ineffabili armonie, odorosa di fiori
immarcescibili; è il regno della santità incorruttibile e della eterna
letizia. Nel piano di mezzo è questo mondo terreno, popolato da una
umanità decaduta e dogliosa, che pecca anelando al riscatto, e
spasima sognando beatitudine; è il regno della perpetua vicenda, del
cimento sempre rinovellato nella mescolanza del bene e del male.
Nel piano di sotto è l'inferno, la voragine tenebrosa, dove Satana e
gli angeli suoi, con l'infinito popolo dei dannati, pagano alla divina
giustizia un debito che mai non si salda; è il regno del peccato
irreparabile, della scelleratezza irredimibile, del dolore smisurato,
disperato ed eterno. A quest'ultimo regno è congiunta una regione
dove il peccato si ripara e si purga, dove il dolore è alleviato dalla
speranza; è il purgatorio, vestibolo bujo del cielo radioso.
Il regno di mezzo è come un vivajo immenso di anime, le quali
ininterrottamente ne emigrano, spartite in doppia corrente, l'una che
sale al cielo, l'altra che scende all'inferno. Satana e la innumerevole
sua milizia non intendono ad altro fine, non ad altro usano l'arte e la
malvagità loro, che a trarre all'ingiù quante più anime possono, a
popolare l'inferno a scapito del paradiso. E della loro riuscita in tale
intento non si possono lagnare.
Ma dov'era propriamente l'inferno? Dice sant'Agostino, nel suo libro
della Città di Dio, che nessun uomo lo può sapere se Dio stesso non
glielo ha rivelato. Ciò non tolse tuttavia che le più disparate e le più
strane opinioni fossero espresse in proposito; e il regno dei dannati
fu posto nell'aria, nel sole, nella Valle di Giosafat, sotto i poli, agli
antipodi, dentro ai vulcani, nel centro della terra, nell'ultimo Oriente,
in isole remote, perdute in grembo di oceani sconosciuti, o, a
dirittura, fuori del mondo. Qualche esempio a tale riguardo potrà
bastare. Gregorio Magno racconta di un solitario dell'isola di Lipari,
che vide una volta il papa Giovanni e Simmaco precipitar nella bocca
di quel vulcano l'anima di Teodorico. Alberico delle Tre Fontane,
cronista francese morto nel 1241, dice, parlando dell'Etna, che le
anime dei dannati erano quivi portate quotidianamente a bruciar tra
le fiamme. Aimoino, monaco di Fleury sul finire del secolo X, e
Cesario di Heisterbach, narrano fatti e storie consimili. San
Brandano, navigando fuori dei termini del mondo conosciuto, vide
un'isola ignivoma, dove demonii in figura di fabbri ferrai
martellavano sulle incudini le anime arroventate. Nell'Huon de
Bordeaux, poema francese del secolo XIII, si dice che l'inferno è in
un'isola chiamata Moysant, e nell'Otinel, altro poema pure francese,
che esso è posto sotto la Tartaria. Ugone d'Alvernia trova l'adito
infernale nell'ultimo, favoloso Oriente.
L'opinione più comune tuttavia, e nel tempo stesso più naturale, era
quella che poneva l'inferno nelle viscere della terra, conformemente
a quanto già avevano creduto gli antichi. Così l'abisso era
spalancato, insidia e minaccia perpetua, sotto ai piedi dei peccatori e
dei giusti, e la corteccia terrestre diveniva un tenue solajo che
trepidava e fremeva per l'impeto delle fiamme penaci e pel mugghio
degli eterni tormenti. La terra, illuminata fuori dal sole, lieta di floridi
campi e di selve, rorida di acque, era come un frutto bacato che,
sotto vaga buccia, abbia fradicio il midollo; era com'un di quei pomi
che a detta dei viaggiatori nascevano sulle rive del Mar Morto, e che
coloriti e odorosi di fuori, erano, dentro, pieni di cenere. Il baco che
aveva ròsa e guasta la terra era Satana, cui Dante chiama il verme
reo che il mondo fora, e alla cui caduta dal cielo fa seguire, con
mirabile fantasia, la formazione del baratro infernale.
L'inferno doveva avere le sue bocche e i suoi aditi, necessarii, se non
altro, al disimpegno di quelle mille faccende che i diavoli avevano, al
loro andare, venire, frullare perpetuo. Negli Evangeli è cenno di
porte dell'inferno che non prevarranno contro la Chiesa; Cristo,
accingendosi a penetrar nei regni buj, grida ai principi delle tenebre
di aprir quelle porte, e non obbedito, le infrange. Dove fossero non si
sa con certezza. Gervasio di Tilbury dice ch'eran di bronzo, e che si
vedevano ancora, così infrante, in fondo a un lago, presso Pozzuoli.
Dante entra in inferno per una porta senza serrame, su cui si
leggono le parole di colore oscuro. Altre entrate ad ogni modo non
mancavano. Più di una caverna tortuosa e cupa, più di una voragine
sprofondante sotterra, fu creduta una bocca dell'inferno, e se alcuni
pensavano che dentro i vulcani abitassero i demonii e fossero
tormentate le anime dannate, altri dicevano i vulcani essere più
propriamente bocche e spiracoli dell'inferno, d'onde esalavano gli
ardori e il fumo dell'eterna fornace. In Irlanda il famoso pozzo di San
Patrizio metteva in purgatorio e in inferno. Nè mancavano, oltre gli
aditi ordinarii e stabili, gli straordinarii e avventizii. Il suolo si
lacerava per lasciar passare i demonii, o per ingojare vivi gli scellerati
maggiori. L'inferno era come un mostro immane sul cui corpo si
moltiplicavano le bocche, avide di procacciare nuova pastura al
ventre voraginoso. Non senza ragione dunque si vede rappresentato
l'inferno, nelle pitture e nei misteri del medio evo, sotto la forma di
una mostruosa bocca di drago che divora anime e vomita turbini di
fiamme e di fumo.

L'inferno è il regno del dolore e del bujo, come il paradiso è il regno


della letizia e della luce. Le tenebre vi sono dense, profonde, fatte in
qualche modo consistenti. La dolorosa valle d'abisso, dice Dante,

Oscura, profond'era e nebulosa,


Tanto, che per ficcar lo viso al fondo,
Io non vi discernea nessuna cosa.

Essa è il cieco mondo, il loco d'ogni luce muto, la cui eterna caligine
è rotta solo dai sanguigni lampeggiamenti di quei nembi e vortici di
fiamme, dal corruscare delle brage ammontate, dei metalli colati.
Non mancò del resto chi disse il fuoco infernale aver l'ardore e non
la luce, esser nere le fiamme che mai non si spengono.
Il regno della morta gente è vasto e profondo, come si conviene
all'infinito popolo che vi si accoglie. In un antico poema
anglosassone si dice che Cristo ordinò a Satana di misurarlo, e
Satana trovò che dal fondo alla porta correvano 100,000 miglia.
Giova per altro avvertire che il gesuita Cornelio a Lapide (1566-
1637), autore di dieci volumi di commento sopra la Sacra Scrittura,
afferma non avere l'inferno più di dugento miglia italiane di
larghezza. Un buon teologo tedesco andò più in là e calcolò che una
capacità di un miglio per ogni verso basta a centomila milioni
d'anime dannate, le quali non hanno già a stare al largo e a loro
agio, ma le une sulle altre, pigiate, come le acciughe nel barile, o gli
acini dell'uva nel tino.
Dante ci descrive un inferno geometricamente costruito, diviso in
cerchi, che facendosi sempre più angusti, vanno digradando verso il
centro della terra. Tale struttura si ritrova in alcuni degli imitatori del
divino poeta, ma non in quelli che si possono in qualche modo
chiamare precursori suoi, negli autori delle Visioni. Qui l'inferno
descritto rassomiglia a una regione terrestre, salvo che è più orribile
assai d'ogni più orribile luogo che conoscano gli uomini, e non vede
mai lume di cielo. Vi si trovano montagne dirupate ed ignude, valli
asserragliate e ronchiose, precipizii spalancati, foreste d'alberi strani,
laghi color di bitume, paludi putride e tetre. Lo traversano per lungo
e per largo fiumi pigri o impetuosi, alcuni dei quali scaturiti dalle
viscere dell'Averno antico, l'Acheronte, il Flegetonte, il Lete, il Cocito,
lo Stige, che anche Dante descrive, o ricorda.
Non mancavano nel doloroso regno le città e le castella. Dante
dipinge la città di Dite, vallata d'alte fosse, con le torri eternamente
affocate, con le mura di ferro. Spesso l'inferno tutto intero è
considerato come una gran città, che prende il nome di Babilonia
infernale, e si oppone alla Gerusalemme celeste, come Satana si
oppone a Dio. Immaginate, dice san Bonaventura, una città vasta ed
orribile, profondamente tenebrosa, accesa di oscurissime e
terribilissime fiamme, piena di clamori spaventevoli e di urla
disperate; tale è l'inferno. Un poeta francescano del secolo XIII,
Giacomino da Verona, descrisse in due suoi poemi assai rozzi, ma
accesi di fede, le due città contrarie, l'una a riscontro dell'altra. La
Gerusalemme celeste è cinta d'alte mura, fondata di pietre preziose,
munita di tre porte più lucenti che stelle, adorna di merli di cristallo.
Le sue vie e le sue piazze sono lastricate d'oro e d'argento; i palazzi
risplendono nello sfoggio dei marmi, dei lapislazzuli, dei metalli
preziosi. Acque cristaline corrono per ogni banda e dànno alimento
ad alberi meravigliosi, a fiori soavissimi: l'aria pervasa da un lume
divino, è tutta un olezzo, e vibra di armonie sovrumane. Ben diversa
da quella è la Babilonia infernale.

La cità è granda et alta e longa e spessa

coperchiata da un irrefrangibile cielo di ferro e di bronzo, murata


tutt'intorno di macigni e di monti, corsa da torbide acque più amare
che il fiele, piena d'ortiche e di spine acute e taglienti come coltelli,
divorata da un furioso e perpetuo incendio. L'aria vi è pregna
d'incomportabile puzzo, sonante di spaventoso fragore.
Tra le cose più notabili di quella terra maledetta è, per testimonianza
di molti, un ponte sottilissimo su cui debbono passare le anime, e
d'onde precipitano nel baratro sottostante tutte quelle cui grava
troppa soma di peccati; immaginosa finzione del lontano Oriente
venuta a cacciarsi, non si sa come, nelle Visioni cristiane del medio
evo, se pure non sorse spontanea tra noi, come sorse spontanea
laggiù.
Il doloroso regno ha la sua topografia; ma ha ancora la sua
meteorologia, la sua flora e la sua fauna. Lo infestano venti
impetuosi, gelidi gli uni, gli altri infocati, piogge dirotte che mai non
ristanno, grandine e neve. Le piante cui nutre l'orribile suolo, sono
irte di spine e recan frutti gonfii di tossico. Gli animali, o sono tali
veramente, o son demonii contraffatti, Cerbero, Gerione, cani
rabbiosi, draghi, vipere, rospi, insetti nauseabondi.
In inferno capitavano anime d'ogni qualità e condizione, anime di
papi e d'imperatori, di frati e di cavalieri, di mercanti e di giullari, di
donne impudiche e di fanciulli malvagi; tutte le classi, tutte le
professioni gli pagavan tributo e tributo larghissimo. Il cómpito
principale dell'umanità, il fine de' suoi lunghi travagli pareva esser
quello di vettovagliare l'inferno. Le anime, o erano catturate e
trasportate dai diavoli, o precipitavano nell'abisso come tratte da una
specifica gravità di peccato. Un eremita dell'ottavo secolo, san
Baronto, vide i demonii portar l'anime in inferno con la frequenza
che mostrano le api, quando, fatto il loro bottino, se ne tornano
all'alveare; sant'Obizzo (m. c. 1200) vide cader le anime in inferno
fitte come neve, e santa Brigida dice in una delle sue Rivelazioni che
le anime le quali piombano ogni giorno in inferno sono più numerose
delle arene del mare. Quante ce n'entrano in paradiso? Nessuno lo
dice.
Molte volte furono vedute le turbe dei diavoli portare le anime a volo
per l'aria. Così ne fu portata l'anima di Rodrigo, ultimo re dei Goti di
Spagna; così quelle di molti altri scellerati, pari suoi. Ma i demonii,
anche in ciò mutavano modo volentieri. Certi monaci, racconta
Giacomo da Voragine, stavano una volta, prima dello spuntar del
giorno, sulla riva di un fiume, e s'intrattenevano in frivoli ed oziosi
discorsi. A un tratto veggono venir oltre, sull'acqua, una barca piena
di remiganti, i quali remavano con grandissimo impeto. “Chi siete
voi?„ chiedono essi. E quelli: “Noi siam demonii, che portiamo
all'inferno l'anima di Ebroino, maggiordomo di Neustria.„ Udendo ciò
i monaci allibiscono di terrore, e gridano: “Santa Maria, ora pro
nobis!„ — “Voi fate bene a invocar Maria,„ dicono i demonii, “perchè
era nostro pensiero di lacerarvi e di sommergervi in punizione di
questo vostro cicalar dissoluto e fuor di tempo.„ I monaci non se lo
fan ripetere, e tornano al convento, mentre i demonii si affrettano
alla volta d'inferno.
Del resto i diavoli non si contentavano di portarsi via le anime; ma
spesse volte rapivano vivi gli scellerati, anima e corpo. Cesario di
Heisterbach racconta di un soldato della diocesi di Colonia, giocatore
arrabbiato, il quale una volta giocò a dadi col diavolo e perdette: per
rifarlo della perdita, il diavolo se lo portò via attraverso il tetto della
casa, lasciandone gl'intestini attaccati alle tegole.
Per compiere tali rapine il diavolo prendeva volentieri la forma di un
cavallo nero, o di un cavaliere montato sopra un cavallo nero. Un
giorno Teodorico, vecchio oramai, si stava bagnando, quando udì
uno de' suoi famigli gridare: “Laggiù corre un cavallo nero di tanta
bellezza e vigoria ch'io mai non vidi l'eguale.„ Il principe barbaro
balza fuori dell'acqua, si copre alla meglio e comanda che tosto gli si
conducano il suo proprio cavallo e i suoi cani. Ma tardando i servi a
tornare, egli, impaziente, salta sul cavallo nero, il quale tosto si
mette a fuggire, più rapido di un uccello. Lo insegue, ma indarno,
con tutti i cani sguinzagliati, il miglior cavaliere della scorta.
Teodorico, sentendo essere nel cavallo che lo rapisce alcun che di
soprannaturale, si sforza di scendere, ma non può. Il cavaliere da
lungi gli grida: “Signore, perchè corri tu in cotal guisa, e quando
farai ritorno?„ e quegli: “È il diavolo che mi porta. Tornerò quando
piacerà a Dio e alla Vergine Maria.„
Jacopo Passavanti racconta nel suo Specchio della vera penitenza:
“Leggesi iscritto da Elinando, che in Matiscona fu uno conte, il quale
era uomo mondano e grande peccatore, contro a Dio superbo,
contro il prossimo spietato e crudele. Et essendo in grande stato,
con signoria e colle molte ricchezze, sano e forte, non pensava di
dovere morire, nè che le cose di questo mondo gli dovessero venir
meno, nè dovere essere giudicato da Dio. Un dì di Pasqua, essendo
egli nel palazzo proprio attorniato di molti cavalieri e donzelli, e da
molti orrevoli cittadini, che pasquavano con lui; subito uno uomo
iscognosciuto, in su uno grande cavallo, entrò per la porta del
palazzo, senza dire a persona niente; e venendo in sino dove era il
conte con la sua compagnia, veggendolo tutti e udendolo, disse al
conte: Su, conte, lévati su e séguitami. Il quale, tutto ispaurito,
tremando si levò, e andava dietro a questo isconosciuto cavaliere, al
quale niuno era ardito di dire nulla. Venendo alla porta del palazzo,
comandò il cavaliere al conte, che montasse in su uno cavallo che ivi
era apparecchiato; e prendendolo per le redini e traendolosi dietro,
correndo alla distesa, lo menava su per l'aria, veggendolo tutta la
città, traendo il conte dolorosi guai, gridando; Soccorretemi, o
cittadini, soccorrete il vostro conte misero, isventurato. E così
gridando, sparì dagli occhi degli uomini, e andò a essere senza fine
nello inferno co' demonii.„ Prima che dal Passavanti e da Elinando, si
trova narrata una storia in tutto simile da Pietro il Venerabile nel suo
libro De Miraculis.
In questo lor mestiere d'acchiappar le anime, o anche gli uomini vivi,
i diavoli non la guardavano tanto pel sottile, e spesso mettevan le
mani addosso a chi non dovevano. Morto l'imperatore Enrico II, un
eremita vide una turba di diavoli portarne l'anima, sotto forma di un
orso, al giudizio, che riuscì favorevole al prigione. Gregorio Magno
racconta la storia di certo uomo nobile per nome Stefano, il quale,
essendo in Costantinopoli subitamente ammalò e morì. Condotto
dinanzi al giudice infernale, il morto udì questo gridare: “Io ho
ordinato di portar giù Stefano ferrajo e non costui.„ Incontanente fa
ritorno al mondo Stefano nobile, e Stefano ferrajo muore in suo
luogo. Altri esempii, e più strani ancora, di anime mandate e
rimandate non mancano. Eccone uno raccontato da Tommaso
Cantipratense. Muore un fanciullo disobbediente, e i diavoli ne
ghermiscono l'anima per portarla in inferno. Sopraggiunge
l'arcangelo Michele, che la toglie loro, e la porta in cielo. Quivi un
vecchio (certamente san Pietro) si oppone al suo ingresso, e ordina
a Michele di rimetter l'anima nel corpo suo.

All'inferno era facilissimo andare come inquilino perpetuo;


difficilissimo, per contro, l'andarci come semplice visitatore. Ciò
nondimeno molti lo visitarono, a cominciare dalla Vergine Maria, che
vi andò accompagnata dall'arcangelo Michele, e da numerosa schiera
di angeli, secondo è narrato in certa apocalissi greca. Subito dopo lei
v'andò san Paolo, secondo una leggenda molto divulgata nel medio
evo, e che Dante certamente conobbe. Sì fatte discese nel regno dei
dannati solevano essere effetto della divina grazia, sollecita della
salute di alcun peccatore, o di quella di un intero popolo, dimentico
dei precetti e degli ammonimenti divini; ma non sempre la grazia
c'entrava, almeno in modo diretto. San Gutlaco, di cui ho già
ricordato più di una volta il nome, è assalito nella sua cella, una
notte, da una legione di diavoli, che con molti tormenti lo trascinano
a vedere le pene dell'inferno. Ugone d'Alvernia, l'avventuroso
cavaliere, va in inferno per ordine espresso del suo re, che voleva
tributo da Lucifero. L'anno 1218 un conte di Geulch offre gran
premio a chi sappia dargli notizia della condizione del padre, morto
poco innanzi. Un intrepido cavaliere offre i suoi servigi, scende con
l'ajuto di un negromante in inferno, e quivi trova il vecchio conte, il
quale dice che le pene gli saranno alleviate, se si restituiranno alla
Chiesa certi beneficii da lui tolti indebitamente. Quando la grazia
divina operava in modo diretto, un angelo soleva guidare il visitatore.
La visita poteva compiersi in ispirito soltanto, e anche
corporalmente. Nel primo caso si aveva la visione propriamente
detta; nel secondo, una vera e propria peregrinazione. Le visioni
toccavano di solito a chi era in istato di sovreccitazione mentale, o
spossato da lunga infermità: mentre l'anima viaggiava per conto suo,
il corpo rimaneva in istato di profondo letargo, simile alla morte. Io
non debbo qui entrar nell'esame delle condizioni psicologiche e
patologiche del fenomeno; mi basta di recar qualche esempio. San
Furseo, monaco irlandese del settimo secolo, essendo ammalato da
tre giorni, fu condotto a vedere le pene dell'inferno da due angeli,
preceduti da un altro angelo, che aveva una spada sfavillante e uno
scudo luminoso. Una notte, Carlo il Grosso stava per coricarsi,
quando udì una voce terribile gridargli: “Carlo, l'anima tua lascerà il
corpo, e sarà condotta a vedere i giudizii di Dio;„ e così fu. Alberico,
figliuolo di un barone della Campania, fu soprappreso, all'età di nove
anni, da un deliquio che durò nove giorni, durante il qual tempo,
guidato da san Pietro e da due angeli, visitò l'inferno e il paradiso.
L'anno 1149, un cavaliere irlandese per nome Tundalo, uomo empio
e di mali costumi, fu pressochè ucciso con un colpo di scure da un
suo debitore. Rinsensato, raccontò ciò che aveva veduto delle cose
dell'altro mondo. Altri invece, come Ugone d'Alvernia e Guerino il
Meschino, già ricordati, e il cavaliere Owen, andarono all'inferno in
carne ed ossa, imitando gli esempii di Ulisse e di Enea. Dante v'andò
allo stesso modo.
Comunque ci si andasse del resto, col corpo o senza il corpo,
l'andata non era senza pericolo: san Furseo portò tutto il tempo di
vita sua le tracce del fuoco infernale che l'aveva tocco. I demonii
vedevano assai mal volentieri aggirarsi pel regno loro chi non doveva
restarci, e si studiavano di nuocere in tutti i modi agli intrusi. Essi
tentarono di uncinar Carlo il Grosso con uncini arroventati, e di
afferrare con ignee tenaglie un buon uomo di Nortumbria di cui
narra la visione il Venerabile Beda. Il giovane Alberico, il cavaliere
Owen, altri assai, furono da loro in varii modi minacciati o
tormentati. Senza l'ajuto di Virgilio e del messo celeste, Dante si
sarebbe trovato più d'una volta a mal partito.
Capitolo XI.
ANCORA L'INFERNO.

L'inferno c'è per comun punizione dei dannati e dei diavoli, dei
tormentati e dei tormentatori. Satana ha in se più qualità e più
officii, che pajono, a primo aspetto, non potersi conciliare fra loro.
Cagion prima del male nel mondo, suscitatore instancabile di
peccato, e seduttore perpetuo di anime, egli è nel tempo stesso il
gran giustiziere, egli è colui per la cui opera il male è represso e il
peccato si espia.
Non è così picciolo atto, nè così tenue pensiero, nella vita e nella
mente degli uomini, di cui i demonii non serbino memoria, quando
siavi in quelli alcuna parte, alcun fermento di colpa. Sant'Agostino
vide una volta un diavolo che recava sulle spalle un grandissimo
libro, dove erano notati per ordine tutti i peccati degli uomini. Più
spesso c'era per ogni singolo peccatore un particolar volume,
ponderoso e tetro, che i diavoli portavano ostentatamente in
giudizio, opponendolo al piccioletto ed aureo in cui l'angelo custode
aveva amorosamente descritte le azioni buone e meritorie, e
scaraventandolo talora, con iscalpore e con ira, in uno dei piatti della
bilancia divina. In più chiese del medio evo, come, per esempio nel
duomo di Halberstadt, si vede dipinto il diavolo che scrive i nomi di
coloro i quali dormono nella casa di Dio, o chiacchierano, o in altro
modo non serbano il contegno dovuto. Nella vita di sant'Aicadro si
legge che avendo un pover uomo osato di tagliarsi i capelli in giorno
di domenica, fu veduto, appiattato in un angolo della casa, il diavolo,
che frettolosamente scriveva il peccato sopra un foglietto di
pergamena.
Di regola il peccatore indegno di misericordia è punito in inferno; ma
talvolta Satana, coltolo sul fatto, anticipa la vendetta divina e lo
castiga mentre è ancor vivo. Gli uccisori di san Regolo, vescovo,
furono strozzati, l'assassino di san Godegrando fu portato via dal
diavolo; certa donna di mala vita, che voleva trascinare al peccato
sant'Elia Speleota, fu da lui conciata pel dì delle feste. Se non mente
lo storico Liutprando, il pessimo pontefice Giovanni XII fu
ammazzato a furia di legnate dal diavolo, che lo colse in letto, fra le
braccia di una concubina; e sì che il pontefice usava, mentr'era vivo
e sano, di bere alla salute di colui che doveva fargli fare così misera
fine. Fra Filippo da Siena racconta la terribile storia di certa donna
non meno vana che leggiadra, usa di spendere l'ore in lisciarsi ed
ornarsi, la quale fu una bella volta lisciata dal diavolo, e sfigurata in
modo che di vergogna e di paura se ne morì. Ciò avvenne in Siena,
l'anno di grazia 1322. Ai 27 di maggio del 1562, alle sette ore di
sera, nella città di Anversa, il diavolo strangolò una fanciulla, che
invitata a nozze, aveva osato comperare certa tela a nove talleri il
braccio, per farsene uno di quei collari crespi a ventaglio, come
usavano allora. Spesso il diavolo picchia, strozza, o porta via chi si
mostra irriverente alle reliquie, o deride le sacre cerimonie; entra in
corpo a chi assiste distrattamente alla messa; rimprovera ad alta
voce, con gran confusione dei colpevoli, peccati secreti. Spesso il
furore diabolico non si cheta se non dopo essersi esercitato anche
sul cadavere del peccatore, e molte orribili storie si raccontano di
corpi che furono strappati a furia fuor delle chiese, o bruciati negli
avelli, o lacerati a brani.

Santa Teresa chiese una volta a Dio di poter fare, per propria
edificazione, un piccolo saggio delle pene dell'inferno. Le fu
conceduta la grazia, e dopo sei anni il ricordo dello strazio sofferto la
gelava ancora di terrore. Sono molte le storie in cui si narra di
dannati usciti per breve ora dall'inferno, a solo fine di dare a' vivi
alcun segno delle inenarrabili torture a cui vanno soggetti. Jacopo
Passavanti racconta quella di Ser Lo, maestro di filosofia in Parigi, e
di certo suo scolare, “arguto e sottile in disputare, ma superbo e
vizioso di sua vita,„ il quale essendo morto, apparve dopo alquanti
giorni al maestro, e gli disse d'essere dannato, e per fargli conoscere
in qualche modo l'atrocità dei tormenti che pativa, scosse un dito
sovra la palma della mano di lui, facendovi cadere una piccola goccia
di sudore, che “forò la mano dall'uno lato all'altro con molto dolore e
pena, come fosse stata una saetta focosa et aguta.„
Le pene infernali sono, al dir dei teologi, non solo continue nel
tempo, ma continue ancora nello spazio, in questo senso, che non è
nel dannato neppur una minima particella che non soffra intollerabile
strazio, e sempre egualmente intenso. Strumento principale di pena
è il fuoco. Origene, Lattanzio, san Giovanni Damasceno, credettero
che il fuoco infernale fosse un fuoco puramente ideale e metaforico;
ma la grande maggioranza dei Padri tenne contraria opinione, e
sant'Agostino disse che se i mari tutti della terra confluissero in
inferno non potrebbero temperarvi l'ardore delle orribili fiamme che
perpetuamente vi divampano. Oltre il fuoco v'è il ghiaccio, vi sono i
venti impetuosi e le piogge dirotte, vi sono animali orribili, e mille
qualità di tormenti, che i diavoli inventano e adoprano. San
Tommaso prova che i diavoli hanno il diritto e il dovere di tormentare
i dannati; che essi fanno quanto possono per ispaventarli e torturarli,
e che per giunta li deridono e li scherniscono. La pena maggiore ad
ogni modo viene ai dannati dall'esser privi in eterno della beatifica
visione di Dio, e dall'aver conoscenza della letizia dei santi. Su
quest'ultimo punto per altro gli scrittori non troppo si accordano,
essendovene alcuni i quali affermano che i santi vedono le pene dei
reprobi, ma questi non vedono il gaudio di quelli. San Gregorio
Magno assicura che le pene dei dannati sono agli eletti gradito
spettacolo, e san Bernardo di Chiaravalle si scalmana a dimostrare
che i beati godono dello spettacolo che i tormenti dei dannati offrono
alla lor vista, e ne godono per quattro ragioni propriamente: la
prima, perchè quei tormenti non toccano a loro; la seconda, perchè
dannati tutti i rei, non potranno i santi più temere malizia alcuna, nè
diabolica, nè umana; la terza, perchè la loro gloria apparirà, per
ragion di contrasto, maggiore; la quarta, perchè ciò che piace a Dio
deve piacere ai giusti.
E certo lo spettacolo era tale, per varietà ed intensità, da appagare
qualsivoglia più difficile gusto. Procuriamo di farcene spettatori
anche noi un istante, almeno con la fantasia, e a tal fine mettiamoci
dietro a qualcuna di quell'anime pellegrine ch'ebbero in sorte di
visitare il regno della morta gente.

Un monaco per nome Pietro, di cui fa memoria Gregorio Magno in


uno de' suoi Dialoghi, vide le anime dannate immerse in uno
sterminato mare di fiamme. Furseo vide quattro gran fuochi,
alquanto distanti l'uno dall'altro, nei quali penavano quattro diverse
classi di peccatori, e molti demonii affaccendati intorno ad essi.
Queste visioni sono tra le più antiche, appartenendo esse al VI ed al
VII secolo, e ne mostrano una pena non ancora differenziata, una
pena semplice ed unica: nelle visioni de' tempi che seguono cresce a
poco a poco la varietà e la complicazion dei castighi, e l'inferno si
rivela in tutta la molteplicità degli orrori e de' terrori suoi.
Il monaco Wettin, di cui narrò la visione in sul principiare del secolo
IX un abate del monastero di Reichenau, giunse, scortato da un
angelo, a certi monti d'incomparabile altezza e bellezza, che
parevano essere di marmo, e cui cingeva da piede un grandissimo
fiume di fuoco. In quell'onde era immersa una innumerevole
moltitudine di dannati, e altri dannati erano in mille altri modi
tormentati. In un gran fuoco si vedevano molti ecclesiastici, di vario
grado, legati a certi pali, ciascuno rimpetto alla propria concubina,
similmente legata, e l'angelo disse a Wettin che quei peccatori erano
flagellati nelle parti genitali tutti i giorni della settimana meno uno.
In un castello tetro e fuligginoso, dal quale denso fumo esalava,
stavano prigioni alcuni monaci, ed un di loro era, per giunta,
rinserrato in un'arca di piombo.
Ben più vario l'inferno veduto dal monaco Alberico in principio del XII
secolo, quand'era ancora fanciullo. In una valle spaventosa molte
anime stavano immerse nel ghiaccio, alcune sino alla caviglia, o sino
al ginocchio solamente, altre sino al petto, altre sino al capo.
Sorgeva più oltre un terribile bosco, formato di alberi alti sessanta
braccia, e irti di spine, da' cui rami aguzzi e taglienti pendevano per
le mammelle quelle triste donne che ricusarono di nutrire del loro
latte i bambini orfani di madre; due serpi suggevano a ciascuna il
mal ricusato seno. Per una scala di ferro rovente, alta
trecentosessantacinque cubiti, salivano e scendevano coloro che
nelle domeniche e nelle feste dei santi non seppero astenersi dalla
copula, e quando l'uno, quando l'altro di essi precipitava in una gran
caldaja piena d'olio, di pece e di resina, che bolliva da basso. In
terribili fiamme, simili a quelle di una fornace, erano puniti i tiranni;
in un lago di fuoco gli omicidi; in uno smisurato tegame, pieno di
bronzo, di stagno, di piombo in fusione, mescolati con zolfo e con
resina, i parrocchiani poco zelanti che tollerarono le scostumatezze
dei loro parroci. Si spalancava più oltre, simile ad un pozzo, la bocca
del più profondo baratro infernale, pieno di tenebre orrende, di
fetore e di strida. Ivi presso era legato con una catena di ferro un
serpente smisurato, dinanzi a cui stava, sospesa in aria, una
moltitudine di anime; ed ogni volta che traeva a sè il fiato, il
serpente ingozzava di quelle anime, non altrimenti che se fossero
mosche, e quando emetteva il fiato, le vomitava accese a guisa di
faville. I sacrileghi bollivano in un lago di metallo liquefatto, le cui
onde si agitavano crepitando; in un altro lago, formato d'acqua
sulfurea, pieno di serpenti e di scorpioni, annegavano in perpetuo i
traditori e i falsi testimoni. I ladri e i rapinatori erano legati con gran
catene di ferro arroventate, e loro pendevano dal collo gravi pesi,
similmente di ferro.

Ma di quante descrizioni dell'inferno ci tramandò il medio evo, la più


terribile, quella in cui più grandeggia la poesia dell'orrore, e in cui è
maggior dispendio di fantasia inventiva, è la descrizione che si legge
nella Visione di Tundalo, ricordata più sopra. Sfuggita dalle mani
d'infiniti demoni, l'anima di Tundalo, guidata da un angelo luminoso,
giunse, attraverso fittissime tenebre, in una orribil valle, piena di
carboni ardenti, e coperchiata da un cielo di ferro arroventato dello
spessor di sei cubiti. Su quell'immane coperchio piovono senza
intermissione le anime degli omicidi, e quivi, penetrate dallo
spaventoso calore, si struggono come il lardo nella padella, e
liquefatte, colano attraverso il metallo, come fa la cera attraverso il
panno, e sgocciolano sui carboni sottostanti, dove tornano nel primo
stato, rinnovate all'eterno tormento. Più oltre è una montagna di
meravigliosa grandezza, piena d'orrore in vasta solitudine. Vi si
accede per un angusto sentiero, che dall'una parte ha fuoco putrido,
sulfureo e tenebroso, e dall'altra grandine e neve. Il monte è pieno
di demonii, armati di roncigli e di tridenti, i quali demonii assalgon le
anime degli insidiatori e dei perfidi che si mettono per quel sentiero,
e le travolgono giù, e con perpetua vicenda le scaraventano dal
fuoco nel ghiaccio e dal ghiaccio nel fuoco. Ecco un'altra valle, tanto
cupa e tenebrosa che non se ne vede il fondo. L'aria vi mugghia pel
rombo di un fiume sulfureo che corre laggiù, e per l'incessante ululo
dei dannati, mentre la ingombra un fumo d'incomportabil fetore.
Unisce le opposte pareti di quella voragine un ponte lungo mille
passi, largo non più di un piede, e impervio ai superbi, che da esso
precipitano nei tormenti senza fine. Dopo lungo e malagevol
cammino, si scopre all'anima esterrefatta una bestia, più grande che
le più grandi montagne, e piena in vista d'intollerabile orrore. Gli
occhi suoi pajono due colline ardenti, e la bocca è così smisurata che
vi potrebbero capire novemila uomini armati. Due giganti tengono, a
guisa di colonne immani, spalancata quella bocca, d'onde erompe un
inestinguibile incendio. Sollecitate e sforzate da un esercito di
demonii, le anime degli avari si precipitano contro le fiamme,
entrano nella bocca, e dalla bocca sono travolte nel ventre del
mostro, d'onde si sprigiona l'urlo di miriadi di tormentati. Vien poscia
uno stagno, grandissimo e procelloso, pieno di bestie muggenti e
terribili, attraversato da un ponte lungo due miglia, largo un palmo,
irto di acutissimi chiodi. Le bestie si raccolgono lungo il ponte,
sbuffando vampe di fuoco, e inghiottono le anime tutte che ne
cadono, le quali sono di ladri e di rapinatori. Da un edificio
smisurato, rotondo, e simile a un forno, guizzano fiamme che a mille
passi di distanza mordono e brucian le anime. Davanti alle porte, in
mezzo all'incendio, stanno carnefici diabolici, muniti di coltelli, di
falci, di trivelle, di scuri, di zappe, di vanghe, e d'altri strumenti, coi
quali scojano, decapitano, forano, squartano, frastagliano, per poi
darle al fuoco, le anime dei golosi. Più là siede sopra uno stagno
gelato una bestia disforme da tutte l'altre, la quale ha due piedi, due
ali, lunghissimo collo, e un rostro di ferro che erutta fiamme
inestinguibili. Questa bestia divora quante anime le vengono a tiro, e
le digerisce, e digerite che l'ha, come si fa del cibo le espelle. La
poltiglia delle anime cade sullo stagno gelato, dove ciascun'anima si
rintegra, e rintegrata, subito ingravida, sia femmina o maschio. La
gravidanza segue il naturale suo corso, e durante quel tempo le
anime stanno sul ghiaccio, e si sentono lacerare le viscere dalla prole
concetta. Venuto il termine partoriscono, così gli uomini come le
donne, e partoriscono bestie mostruose, che hanno capi di ferro
rovente, e rostri acutissimi, e code irte di uncini. Tali bestie escono
da qualsivoglia parte del corpo, e nell'uscire stracciano e si traggono
dietro le carni e le viscere, graffiando, azzannando, ruggendo; e
questa è la pena dei lussuriosi, e più specialmente di coloro che,
entrati al servigio di Dio, non seppero signoreggiare la carne. In altra
più remota valle son molte fucine, e innumerevoli demonii in figura
di fabbri ferrai, i quali afferrano le anime con tenaglie ardenti, e le
gettano sulla bragia perpetuamente avvivata dal soffio dei mantici;
poi, quando quelle son fatte roventi e malleabili, con gran forconi di
ferro le traggon dal fuoco, e ammassatene insieme venti o trenta, o
anche cento, gettano quella massa ignea sopra le incudini, e con i
magli la percuotono a gara, e così martellata e compressa la scaglian
per l'aria ad altri non meno terribili fabbri, che riafferratala con le
ferree tenaglie ricominciano il giuoco. Lo stesso Tundalo è sottoposto
al supplizio, il quale è preparato a coloro che cumulano peccato
sopra peccato. Sostenuta la formidabile prova, l'anima perviene alla
bocca dell'ultima e più profonda voragine infernale, simile in figura
ad una cisterna quadrangolare, d'onde esala un'altissima colonna di
fuoco e di fumo. Un'infinita moltitudine di anime e innumerevoli
demonii salgono dentro quella colonna a guisa di faville, poi ricadon
nel baratro. Ivi, nella più remota e spaventosa profondità dell'abisso,
stassi il principe delle tenebre, steso e legato sopra una enorme
graticola di ferro, e assiepato di demonii, che attizzano sotto a
quella, e avvivano coi mantici, i carboni crepitanti. Esso è di
smisurata grandezza, negro come le penne del corvo, e mille mani,
armate di ferrei artigli, agita nelle tenebre, e divincola una
lunghissima coda, tutta aspra di dardi acutissimi. Freme e si torce
l'orribile mostro, e furiando di dolore e di rabbia, avventa quelle mille
sue mani per l'aria tenebrosa, tutta impregnata di anime, e quante
ne coglie tante si spreme nell'arsa bocca, come dì un grappolo d'uva
fa il villano assetato; poi, sospirando, le soffia fuori e le sparpaglia, e
quando riprende il fiato, tutte a sè le ritrae novamente. Così sono
puniti coloro che non isperarono nella misericordia di Dio, o in Dio
non credettero, e così pure gli altri peccatori tutti, i quali, sostenuti
alcun tempo gli altri tormenti, sono da ultimo assoggettati a quello,
supremo ed eterno.

Altri descrisse l'inferno più propriamente simile a un'immensa e


orrenda cucina, e a uno spaventoso tinello, dove i diavoli fanno da
cuochi e da banchettanti, e le vivande sono di anime di dannati, in
varii modi preparate ed acconce. Il già ricordato Giacomino da
Verona dice che il cuoco Belzebù, mette l'anima ad arrostire com'un
bel porco al fogo, la condisce con una salsa fatta di acqua, sale,
fuliggine, vino, fiele, aceto forte, e uno schizzo di veleno buono, e
così appetitosamente concia, la fa servire in tavola al re dell'inferno,
il quale, assaggiatala, tosto la rimanda indietro, non parendogli cotta
abbastanza. Un trovero francese dei tempi di Giacomino, Radulfo di
Houdan, descrive in certo suo poemetto intitolato Le songe d'enfer,
un gran banchetto infernale, cui gli fu dato di assistere, un giorno
che il re Belzebù teneva corte bandita e generale concilio. Appena
entrato in inferno, egli vide una gran moltitudine affaccendata in
apparecchiar le tavole. Entrava chi voleva, e non si rimandava
indietro nessuno. Vescovi, abati e chierici lo salutarono caramente;
Pilato e Belzebù gli diedero il benvenuto; e, giunta l'ora, tutti
sedettero a mensa. Più pomposo banchetto, e più rari cibi non vide
mai corte di re. Le tovaglie erano fatte di pelli di usurai, e i tovaglioli
di pelli di vecchie bagasce: serviti e inframmessi non lasciavan nulla
a desiderare: usurai grassi lardellati, ladri e assassini in guazzetto,
baldracche in salsa verde, eretici allo spiedo, lingue fritte di avvocati,
e più manicaretti d'ipocriti, di frati, di monache, di sodomiti, e d'altro
buon selvaggiume. Il vino mancava; chi aveva sete beveva
spremitura di villanie.

I diavoli avevano officio di aguzzini e di carnefici. Ad essi toccava,


come si è veduto, arrostire, lessare, scorticare, squartare le anime.
Tale officio aveva le sue suddivisioni e i suoi gradi; e come i
tormentati erano distribuiti per le regioni infernali secondo il peccato
loro chiedeva, così erano distribuiti i tormentatori, secondo chiedeva
il castigo alle speciali loro cure affidato; e come ciascuna colpa aveva
proprii diavoli instigatori, così aveva proprii diavoli punitori. Ma i
punitori, mentre attendevano a quell'ufficio, sentivano essi il castigo
meritato dalla malvagità loro? erano essi straziati nel tempo stesso
che straziavano?
Intorno a ciò sono varie opinioni. Non mancano scrittori, e di gran
credito, i quali affermano che i diavoli non soffrono delle pene
infernali, perchè se ne soffrissero, assai di mal animo potrebbero
attendere all'officio di tentare e di tormentare, officio ch'essi
mostrano, per contro, di esercitare con singolare compiacimento.
Nelle Visioni, come nel poema di Dante, Lucifero suol essere
assoggettato nell'ultimo fondo d'inferno, e in conformità di quanto è
detto nell'Apocalissi, ad asprissimo supplizio; ma degli altri demonii
non si dice, di solito, che patiscano gravi tormenti. Che alcuna volta
si tormentassero a vicenda, si azzuffassero e si picchiassero, sembra
più che naturale, e se ne può vedere esempio nella visione stessa di
Tundalo e nella Divina Commedia, là dove è descritta la bolgia dei
barattieri. Nè ai maledetti mancavano svaghi e godimenti. Come ogni
opera buona era loro cagion di tormento, così era cagion di letizia
ogni opera rea, e quanto sappiamo dell'andamento delle cose umane
lascia supporre ch'essi avessero assai più frequente occasione di
rallegrarsi che di dolersi. Spesso, nelle pietose leggende, si veggono i
diavoli far grande tripudio intorno all'anima che diventa loro
concittadina. Dice Pietro Cellense (m. 1183) in uno de' suoi sermoni
che il diavolo, sommerso nelle fiamme infernali, sarebbe morto di
fame da un pezzo, se non lo rifocillassero i peccati degli uomini; e
Dante assicura che egli in inferno si placa vedendo le cose di questo
mondo andare a modo suo. Anche ammettendo che la pena dei
diavoli fosse gravissima, refrigerio non le mancava.

I teologi sono comunemente d'accordo nel dire che in purgatorio


non ci sono demonii a tormentare le anime; ma moltissime Visioni
rappresentano il purgatorio pieno anch'esso di diavoli, intesi a farvi il
consueto officio di tormentatori. La Chiesa, che solo nel 1439, nel
concilio di Firenze, fermò il dogma del purgatorio, la cui dottrina era
stata innanzi svolta da san Gregorio e da san Tommaso, non si
pronunziò sopra questo punto particolare. Dante, che quanto alla
situazione e alla struttura del purgatorio ha immaginazioni e concetti
tutti proprii, quanto alla relazione di esso coi demonii tiene la opinion
dei teologi e lascia quella dei mistici. L'antico avversario tenta, gli è
vero, di penetrare nel purgatorio del poeta in forma di biscia,

Forse qual diede ad Eva il cibo amaro;

ma gli angeli, gli astor celestiali, lo volgono in fuga. Sia qui notato di
passaggio che le pene del purgatorio furono da taluno credute più
aspre che non quelle dell'inferno, e ciò perchè non duravano eterne,
come l'altre duravano.

L'inferno era l'ordinaria dimora dei dannati, e il luogo dov'essi


soffrivano regolarmente il meritato castigo; ma non si creda che la
regola fosse a dirittura senza eccezione. Lasciando stare per ora certi
dannati avventurosi che per ispecialissima grazia divina furono tratti
dall'abisso e ammessi in cielo, dei quali avrò a parlare più oltre, si
vuol notare che i dannati potevano in certi determinati casi, e per un
tempo più o meno lungo, uscire dalla lor prigione, e che c'era pure,
se così può dirsi, un inferno fuori dell'inferno. Apparizioni di dannati
erano, come s'è veduto, frequenti; ma nulla giovava ad essi l'essere
fuori del luogo consueto di pena, perchè la pena li seguiva lo stesso,
come l'ombra il corpo. Altri dannati non erano ricevuti in inferno, ma
penavano in qualche strano luogo della terra, forse perchè potessero
essere di salutare ammaestramento a chi, peregrinando, s'imbatteva
in loro. Così è che san Brandano, navigando alla scoperta del
Paradiso terrestre, trovò in un gran gorgo di mare il massimo dei rei,
Giuda Iscariote, perpetuamente sbattuto dall'onde infuriate; e che
uno degli eroi della leggenda epica carolingia, Ugone di Bordeaux,
errando in Oriente, trovò Caino chiuso in una botte di ferro, irta
dentro di chiodi, la quale andava senza posa ruzzolando per un'isola
deserta. Giovanni Boccaccio, rifacendo a modo suo più antichi
racconti, narra la paurosa storia di quel Guido degli Anastagi, che
uccisosi di propria mano per disperazione d'amore, e dannato agli
eterni castighi, insegue ogni giorno, quando per questa, quando per
quella campagna, montato sopra un cavallo nero, con uno stocco in
mano, e due mastini innanzi, la donna spietata e crudele, dannata
ancor essa, la quale a piedi e ignuda gli fugge davanti, finchè
raggiuntala, egli con lo stocco la trafigge, con un coltello la spara, e
il cuore e gli altri visceri getta in pastura ai cani affamati. Stefano di
Borbone (m. c. 1262) parla di certi fantasmi che, in luogo prossimo
all'Etna, si vedevano, tutta la settimana, affaccendati a costruire un
castello, il quale precipitava nella notte del sabato, e per opera loro
ricominciava a sorgere dalle fondamenta la mattina del lunedì; ma
sembra fossero piuttosto anime purganti che dannate.
Più d'una volta fu veduto, nel colmo della notte, l'intero popolo
infernale andare a processione, per l'aria, o passar per un bosco, con
ordinanza come di sterminato esercito in marcia. Il monaco Otlone,
vissuto sin verso la fine del secolo XI, racconta di due fratelli, che
cavalcando un giorno, videro improvvisamente nell'aria una turba
grandissima, la quale passava non molt'alto da terra. Esterrefatti,
chiesero, facendosi il segno della croce, a quegli strani viaggiatori chi
fossero. Uno, che pel cavallo che montava e per le vesti, sembrava
cavaliere di conto, si diede loro a conoscere, dicendo: “Io sono il
padre vostro, e se voi non rendete al convento, cui lo tolsi
ingiustamente, il fondo che sapete, sarò irremissibilmente dannato, e
con me saranno tutti i successori miei che terranno il maltolto.„ Il
padre dà ai figliuoli un saggio degli orribili tormenti che soffre, e i
figliuoli riparano la colpa di lui, e in tal modo lo liberano dall'inferno.
Ma una storia più meravigliosa e spaventosa di questa trovasi
narrata da un altro monaco, il cronista Orderico Vital, vissuto sin
verso il mezzo del XII secolo. Un prete di nome Gualchelmo, curato
di Bonneval, tornava una notte dell'anno 1091 dall'aver visitato un
infermo, lungi un buon tratto dalla sua casa. Mentr'egli attraversava i
campi deserti, illuminati dalla luna che alta splendeva nel cielo, gli
percosse l'orecchio un rumor vasto e formidabile, come di
grandissimo esercito che valicasse. Preso dallo spavento, fa per
nascondersi tra certe piante, che quivi erano, quand'ecco un gigante,
armato di una smisurata mazza, gli vieta il passo, e senza altrimenti
nuocergli, gl'ingiunge di non muoversi. Il prete resta come
inchiodato, e assiste a uno strano e terribile spettacolo. Passa da
prima una turba innumerevole di pedoni, i quali trascinano con sè
grande quantità di bestiame, e vanno carichi d'ogni sorta di
masserizie. Si lamentano tutti in grave modo, e l'un l'altro sollecita.
Segue una torma di sotterratori, i quali recano cinquanta feretri, e su
ciascun feretro siede un orribile nano, con capo enorme, a guisa di
dolio. Sopra un gran tronco, che due tenebrosi etiopi recano in
ispalla, è strettamente legato un malvagio uomo, il quale empie l'aria
di orrendi ululati. Un mostruoso demonio gli sta sopra a cavalcioni, e
con isproni affocati gli lacera il tergo ed i lombi. Viene dopo una
cavalcata senza fine, tutta di donne peccatrici: il vento solleva ogni
tratto quegli aerei lor corpi all'altezza di un cubito, e subito li lascia
ricader sulle selle irte di chiodi roventi. Alla cavalcata s'accoda una
schiera di ecclesiastici d'ogni condizione, e a questa tien dietro un
esercito di cavalieri, vestiti di tutte le armi, cavalcanti corsieri
grandissimi, e spieganti all'aria negri vessilli. Il prete ha con uno di
quei cavalieri un colloquio che qui non importa riferire: il cronista
Orderico afferma d'avere udito dalla stessa bocca di lui l'intero
racconto.

Nell'Apocalissi detta di san Giovanni si legge che lo strazio dei


dannati durerà nei secoli, e non avrà lenimento nè di giorno, nè di
notte, e gli scrittori ecclesiastici sono unanimi in affermare che Dio
abbandona affatto i dannati e si scorda di loro. San Bernardo dice
esplicitamente, in uno de' suoi sermoni, che in inferno non è luogo a
indulgenza, come non è possibilità di penitenza. È questa la opinione
fermata dalla rigida teologia dogmatica; ma ad essa un'altra
opinione contrasta, suggerita da una teologia più tollerante e più
umana, da una teologia che ignora le sottigliezze della dialettica, e
vien dal cuore per andare al cuore; e secondo quest'altra opinione la
infinita misericordia di Dio non si ferma dinanzi alle porte
dell'inferno, ma, come un raggio di luce benefica, penetra
nell'abisso, e consola di alcun blandimento e di alcuna requie le
torture inenarrabili dei dannati.
Il poeta cristiano Aurelio Prudenzio (c. 348-408?) parla, in un suo
inno, di riposo conceduto alle anime dannate, la notte della
risurrezione di Cristo. In un'apocrifa apocalissi di san Paolo,
composta verso la fine del quarto secolo da un qualche monaco
greco, si racconta una discesa dell'apostolo delle genti nel regno
dell'eterna perdizione. Guidato dall'arcangelo Michele, l'apostolo ha
già tutto percorso il doloroso regno, ha veduto i varii ordini di
peccatori e gli aspri castighi a cui li assoggetta la divina giustizia, ha
versato a quella vista lacrime di pietà e di dolore. Egli sta per
togliersi all'orror delle tenebre, quando i dannati gridano ad una
voce: “O Michele, o Paolo, movetevi a compassione di noi; pregate
per noi il Redentore!„ L'arcangelo dice loro: “Piangete tutti, ed io
piangerò con voi, e con me piangeranno Paolo e i cori degli angeli:
chi sa che Dio non v'usi misericordia.„ E i dannati gridano: “Miserere
di noi, figliuolo di David!„ ed ecco scende dal cielo Cristo incoronato,
e rinfaccia ai reprobi la malvagità loro, e ricorda il sangue inutilmente
per essi versato. Ma Michele, e Paolo, e migliaja di migliaja di angeli,
s'inginocchiano dinanzi al figliuolo di Dio, e chiedono misericordia; e
Gesù, mosso a pietà, concede alle anime tutte che sono in inferno
tanta grazia che abbiano requie, e sieno senza tormento alcuno,
dall'ora nona del sabato all'ora prima del lunedì.
Questa, che è forse la più bella tra quante leggende divote nacquero
dalla fantasia cristiana, ebbe più tardi, volta di greco in latino, e di
latino in varii volgari d'Europa, grande divulgazione e celebrità, e gli
è più che probabile che Dante l'abbia conosciuta e n'abbia fatto
ricordo nel suo poema divino; ma il pensiero che la informa non le è
così proprio che anche in più altre leggende del medio evo non si
ritrovi. San Pier Damiano racconta sulla fede dell'arcivescovo
Umberto: Presso a Pozzuoli sorge, fra acque fetide e negre, un
promontorio sassoso e ronchioso. Da quell'acque pestifere sogliono
levarsi, a tempi determinati, uccelli spaventosi, i quali si lasciano
vedere dal vespro del sabato sino al mattino del lunedì. Durante
questo tempo volano come emancipati, di qua e di là intorno al
monte, spandono l'ale, si ravviano col becco le piume, e pajono
godere di alcun refrigerio e di alcun riposo loro conceduto. Nessuno
mai li vide cibarsi, nè v'è cacciatore che possa, per qualunque
ingegno v'adoperi, insignorirsene. Come appar l'alba del lunedì, ecco
sopraggiunge un corvo, di grandezza simile a un avvoltoio, e
comincia con un gracchiar grave a sollecitar quegli uccelli, e a
cacciarseli innanzi. Essi, gli uni dopo gli altri, s'immergono tutti nello
stagno, e più non si lasciano vedere sino al sabato seguente; onde
da alcuni si crede sieno anime di dannati, alle quali, ad onore della
risurrezione di Cristo, è largita la grazia dì poter riposare la domenica
e le due notti ancora che fra sè la comprendono.
Ma con o senza temporanea mitigazione e temporaneo riposo, le
pene infernali duravano per l'eternità. La dottrina propugnata nel
terzo secolo da Origene, uno dei più grandi spiriti per certo ch'abbia
prodotto l'antichità cristiana, la dottrina cioè della salvazione finale di
tutte le creature, e del ritorno a Dio di tutto quanto venne da Dio,
pure insegnata, nel secolo successivo, da Gregorio di Nazianzo e
Gregorio di Nissa, era caduta sotto la riprovazione dei più gelosi
custodi della verità dogmatica, sotto l'anatema dei concilii, e aveva in
tutto ceduto il luogo alla dottrina della dannazione eterna ed
irrevocabile. La spaventosa minaccia era perciò perpetuamente
presente agli spiriti, e di ogni mezzo si usava perchè fosse rincalzata
a dovere e impressa con più forza, più addentro. Le arti a gara
ajutavan la fede; e Giotto nell'Arena di Padova, l'Orcagna sopra una
parete di Santa Maria Novella in Firenze, un pittore non accertato nel
Campo Santo di Pisa, in luogo consacrato all'eterno riposo, altri
altrove, ritraevano con pennelli di fiamma i terrori e gli orrori
dell'abisso infernale. Nei Misteri drammatici si vedeva comparir sulla
scena la bocca voraginosa del simbolico drago, trangugiatore di
anime. Dante descriveva alle universe genti il regno delle tenebre,
sulla cui orribile porta scolpiva:

Lasciate ogni speranza, o voi ch'entrate.

Dal pulpito il frate, levando con l'una mano il crocifisso a testimonio


delle sue parole, noverava, una per una, le torture dei maledetti
caduti in signoria di Satana, e quand'egli aveva finito, l'organo
cominciava a muggire, e sotto le volte profonde, nel crepuscolo delle
marmoree navate, risonava un terribil canto, e narrava gli orrori della
spaventosa voragine,

Ubi tenebræ condensæ,


Voces diræ et immensæ,
Et scintillæ sunt succensæ
Flantes in fabrilibus.
Locus ingens et umbrosus,
Fætor ardens et fumosus,
Rumorque tumultuosus,
Et abyssus sitiens.
Capitolo XII.
LE DISFATTE DEL DIAVOLO.

Satana aveva, come s'è veduto, numerosi fautori; ma aveva anche


numerosi avversarii: quelli in inferno e sulla terra, questi sulla terra e
nel cielo. Fautori suoi erano tutti gli altri demonii, e tutti gli uomini
malvagi, specialmente gli eretici e gli stregoni; avversarii, tutti gli
uomini buoni, e in più particolar modo i santi, vivi e morti, e gli
ecclesiastici, in grazia, se non di loro virtù, di loro ministerio; poi i
varii ordini degli angeli, la Vergine Maria, Dio Signore. Dio, come nel
tempo della prima ribellione, poca parte prendeva alla lotta,
aspettando la pienezza dei tempi e il termine fatale segnato alla
diabolica tracotanza: contro l'indegno nemico egli lasciava
combattere la madre sua, i suoi santi, tutte le celesti milizie, e gli
uomini cui non veniva meno la sua grazia e l'ajuto di Santa Chiesa.
Ed era battaglia cotidiana, perpetuamente rinnovata, giacchè, vinto
appena, Satana risorgeva, e cacciato da una parte, ricompariva da
un'altra. Qualche volta ancora Satana diventava, di vinto, vincitore.
Vediamo prima quali vittorie riportassero sul grande avversario gli
uomini d'ossa e di polpe, e vedrem poi quali vittorie riportassero su
di lui gli abitatori del cielo.

Il cristiano, che per la salvezza dell'anima propria pugnava contro


Satana, non mancava di armi, acconce di offesa e di difesa, quali si
richiedevano a così terribil combattimento; ed erano armi parte
spirituali, parte materiali. Egli aveva anzi tutto il sussidio della divina
grazia, senza di cui non era speranza di salute; poi aveva la fede e la
virtù, dietro a cui si riparava come dietro alle mura di una rocca ben
munita e forte. Le pratiche religiose cui egli diligentemente
attendeva, la preghiera, la frequentazione dei sacramenti, i digiuni,
le prolungate vigilie, erano come tante fazioni di guerra, atte a tener
lontano il nemico, o a fargli perdere novamente terreno, se mai si
fosse già troppo inoltrato. Arme formidabile, sempre pronta al
bisogno, e di facile uso, era il segno della croce, non meno buona
per l'offesa che per la difesa. Innumerevoli diavoli ebbero a
confessare di propria bocca che non era loro possibile resistere alla
virtù del sacratissimo segno, il quale li empieva di confusione e di
sgomento. Col segno della croce, non solamente si cacciavano i
demonii, ma si estinguevano incendii, si sedavan procelle, si
guarivano infermi, si ammansavano animali inferociti, e molte altre
cose difficili si facevano. Grande efficacia pure avevano i nomi di Dio
Padre, di Gesù, della Vergine Maria, invocati con fervore di fede, e
gettati come una sfida in volto ai dannati. Poi veniva l'acqua
benedetta, più cocente alle cervici e alle terga scellerate che non la
pece bollente e il piombo fuso delle caldaje infernali. Le campane,
che empievano l'aria di lor voce squillante, invitando i fedeli alle
cerimonie del culto, alla meditazione, alla preghiera, annunziando le
feste piene di grazia, mettevano in rotta i demonii tutto all'intorno,
dissipavano le procelle da questi suscitate assai volte, e producevano
altri mirabili effetti; onde l'inno della campana:

Laudo Deum verum,


Plebem voco,
Congrego clerum.
Defunctos ploro,
Pestem fugo,
Festa decoro.
Funera plango,
Fulgura frango
Sabbata pango.
Excito lentos,
Dissipo ventos,
Paco cruentos;

e in fine, talvolta, il terribile verso:

Est mea cunctorum terror vox dæmoniorum.

Le reliquie dei santi che avevano trionfato di tutti gli assalti e di tutte
le insidie di Satana, ajutavano altri infiniti a conseguire consimili
trionfi, e lo stesso dicasi di certi brevi benedetti, da portare appesi al
collo, o cuciti nei panni, e di certi amuleti. Nè mancavano cose
puramente naturali, le quali erano contrarie e nocive ai diavoli; tali
alcune gemme, come il crisolito e l'agata, che li volgevano in fuga, e
il zaffiro, che riconciliava con Dio; tali certe piante, come l'aglio e la
ruta, e un'erba detta dai francesi permanable, che aveva virtù
d'incantare i demonii. Il sale era una delle cose di cui questi si
mostravano più paurosi. Il gallo era, come già s'è notato, un loro
grande avversario, e con la mattutina sua strombettata, foriera del
giorno, li forzava (ma non tutti) a nascondersi. Finalmente, in certi
casi, il cristiano poteva anche usare felicemente, come vedremo,
delle sue braccia e di un buon bastone. Chi poi era caduto in signoria
del nemico poteva, con penitenze più o meno aspre e lunghe,
riscattarsi e mettersi sotto i piedi il tristo padrone.
Tuttavia è da dire che quelle armi e quei ripari non sempre
giovavano, come per chiari esempii si può vedere nelle vite di molti
santi, non pur dei minori e dei mezzani, ma degli eccellentissimi.
Accadde assai volte, qual che ne fosse la cagione, che i diavoli
sfacciati e protervi, ripeterono parola per parola, con ischerno, le
sante orazioni con cui altri s'ingegnava di tenerli in rispetto, e i salmi
stessi del libro sacro; che ghignarono atrocemente alla vista di quella
croce a cui di solito volgevano, fuggendo, le spalle; che trescarono
tripudiando sotto l'aspersorio, e che tanto più gli assalti loro
diventarono rabbiosi e frequenti, quanto maggiori furono le difese.
Welcome to Our Bookstore - The Ultimate Destination for Book Lovers
Are you passionate about books and eager to explore new worlds of
knowledge? At our website, we offer a vast collection of books that
cater to every interest and age group. From classic literature to
specialized publications, self-help books, and children’s stories, we
have it all! Each book is a gateway to new adventures, helping you
expand your knowledge and nourish your soul
Experience Convenient and Enjoyable Book Shopping Our website is more
than just an online bookstore—it’s a bridge connecting readers to the
timeless values of culture and wisdom. With a sleek and user-friendly
interface and a smart search system, you can find your favorite books
quickly and easily. Enjoy special promotions, fast home delivery, and
a seamless shopping experience that saves you time and enhances your
love for reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!

ebookgate.com

You might also like