Andy Harrison - Introduction To Radar Using Python and MATLAB-Artech House (2019)
Andy Harrison - Introduction To Radar Using Python and MATLAB-Artech House (2019)
Andy Harrison
Library of Congress Cataloging-in-Publication Data
A catalog record for this book is available from the U.S. Library of Congress.
All rights reserved. Printed and bound in the United States of America. No part of this book
may be reproduced or utilized in any form or by any means, electronic or mechanical, including
photocopying, recording, or by any information storage and retrieval system, without permission
in writing from the publisher.
All terms mentioned in this book that are known to be trademarks or service marks have been
appropriately capitalized. Artech House cannot attest to the accuracy of this information. Use of
a term in this book should not be regarded as affecting the validity of any trademark or service
mark.
10 9 8 7 6 5 4 3 2 1
Contents
Preface xiii
1 Introduction 1
1.1 History of Radar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Radar Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.1 Frequency Band . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2.2 Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.3 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.4 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Accompanying Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.1 Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.2 MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
v
vi Introduction to Radar Using Python and MATLAB
3 Antenna Systems 67
3.1 Antenna Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.1.1 Radiation Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.1.2 Beamwidth. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.1.3 Power Density . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.1.4 Radiation Intensity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.1.5 Directivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3.1.6 Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.1.7 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.1.8 Polarization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.2 Antenna Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
Contents vii
11 Countermeasures 443
11.1 Passive Jamming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
11.1.1 Chaff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443
11.1.2 Passive Deception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
11.2 Active Jamming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
11.2.1 Continuous Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
11.2.2 Active Deception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
11.3 Digital Radio Frequency Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
11.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
11.4.1 Jammer to Signal: Self-Screening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
11.4.2 Jammer to Signal: Escort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
11.4.3 Crossover Range: Self-Screening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 459
11.4.4 Crossover Range: Escort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
11.4.5 Burn-Through Range: Self-Screening . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
11.4.6 Burn-Through Range: Escort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
xii Introduction to Radar Using Python and MATLAB
Index 471
Preface
I firmly believe even the most difficult topics can and should be presented in a clear and
concise manner such that the student can fully comprehend the material. Education is not
the aggregation of facts; it is the accumulation of understanding and knowledge about
particular subjects. That said, there are many radar engineering handbooks and online
references containing vast amounts of very useful and detailed material with little or no
explanation or analysis. These are valuable resources and have their place as references
for students and engineering professionals. However, there is a tendency to indiscrimi-
nately use equations, generalities, and approximations in situations where they are not
applicable. Thus, the intent of this book is to provide the reader with a straightforward
and succinct introduction to, and explanation of, a number of radar fundamentals. To
reinforce these fundamentals, a tool suite consisting of Python® scripts and correspond-
ing MATLAB® scripts is included with this book. This gives the user a mechanism to
analyze and predict radar performance for various scenarios and applications. The tool
suite includes a user-friendly GUI that produces many graphical outputs and visualiza-
tions of the concepts being covered. The user has full access to the Python and MATLAB
scripts to modify for their particular application. Several examples using the tool suite
are given at the end of each chapter. These examples, combined with the end of chapter
problem sets, make this an excellent choice for a senior or first-year graduate level course
in engineering, as well as professionals seeking to enter the field of radar engineering.
While there are numerous topics in the field of radar engineering, this book
focuses on the more crucial concepts. The book begins with a brief history of radar
and description of the various categories of radar systems. Included in this chapter are
detailed instructions for installing and executing the accompanying software. Chapter 2
begins with a review of the theory of electromagnetic fields and waves necessary for
understanding the interaction of energy transmitted by the radar with the environment
and targets of interest. Specific environmental effects such as refraction, diffraction, rain
attenuation, fog attenuation, and atmospheric attenuation are also covered. Chapter 3
introduces various types of antennas used by radar systems and the parameters needed
to describe their performance and characteristics. These devices transmit and receive
electromagnetic energy generated by the radar, and include linear wire, loop, aperture,
horn, and array antennas. Chapter 4 derives various forms of the radar range equation to
predict performance measures such as maximum detection range, noise effects, output
signal to noise ratio, and others. Special versions of the radar range equation for specific
xiii
xiv Introduction to Radar Using Python and MATLAB
missions and bistatic radar configurations are derived. Chapter 5 discusses the processes
used by radar receivers to take the signals received by the antenna and then amplify,
filter, downconvert, digitize, and deliver them to the radar signal and data processors.
An overview of digital receivers is also presented. The detection process is a key part
of any radar system, and Chapter 6 deals with the detection of targets in the presence
of noise. This chapter addresses coherent and noncoherent receivers, pulse integration,
fluctuating targets, and constant false alarm rate processing. Radar cross section plays
an important role in received signal power, probability of detection, probability of false
alarm, tracking accuracy, classification, and discrimination. Therefore, the study of radar
cross section is fundamental to the understanding of radar system analysis and design.
Chapter 7 is dedicated to radar cross section theory, prediction, and measurement. Chapter
8 begins with an overview of range resolution for simple waveforms and considers the
detection of closely spaced targets through the use of pulse compression techniques. This
is followed by the study of intrapulse and interpulse approaches to pulse compression.
Finally, the ambiguity function is examined for various waveforms, including pulse trains
and phase-coded waveforms. Chapter 9 first considers simple alpha-beta and alpha-beta-
gamma tracking filters. Then, the Kalman filter is introduced in one-dimension and
subsequently extended to the multivariate formulation. Next, adaptive filtering techniques
for maneuvering targets are presented. Multiple target tracking techniques are also
covered. Chapter 10 introduces tomographic synthetic aperture radar (SAR) imaging and
its various applications. The Radon transform is presented, which leads to a set of line
integrals and projection functions. Image reconstruction techniques, including the filtered
backprojection algorithm, are then used to recreate the target’s reflectivity function from
the spatial frequency domain data. A generalized three-dimensional framework is also
given. Chapter 11 presents a compact yet thorough review of countermeasures, including
active and passive jamming techniques. Methods for mitigating jamming techniques,
such as space-time adaptive processing (STAP) and moving target indication (MTI) are
presented. Finally, a sophisticated jamming technique known as digital radio frequency
memory (DRFM) is discussed.
This book is based on the broad range of experience I have gained as a student,
instructor, and professional engineer. My journey in the field of radar engineering began
with an undergraduate course in microwave engineering and continued with more ad-
vanced coursework in radar-related areas. My professional career began as a radar test
engineer and has advanced into areas such as distributed aperture radar, SAR imaging,
and advanced signal processing.
There have been many individuals along the way from whom I have learned much
and who were influential in my career. However, there are a few who deserve special
mention. First, my gratitude to Caleb Stewart for our valuable discussions about Qt and
GUI development, which led to an interactive and educational set of tools accompanying
this book. I must also thank Vince Rodriguez for his review of the material, in particular
his expertise in antenna systems and radar cross section measurement techniques. Next, I
want to express my sincere appreciation to Will Halcomb. He very generously gave of his
Preface xv
time and effort reviewing the material in this book, which notably improved the overall
quality. I would like to also thank my good friend Bassem Mahafza who urged me to
pursue this book, gave me invaluable opportunities and advice, and without whom this
book would not have been possible.
Most importantly, I would like to thank my wife, Lacon, and my son, Conner,
for their love, support, patience, understanding, and sacrifice during the countless hours
committed to this endeavor.
Chapter 1
Introduction
While some may argue that the development of radar did very little to contribute to
theoretical science, its significance in areas of engineering and technology cannot be
disputed. The emergence of radar systems capable of detecting enemy aircraft played a
vital role in the Allied victory in World War II [1]. Since that time, radar has been the
precursor to a wide range of modern technology and has numerous practical applications.
For example, medical imaging, radar astronomy, meteorological prediction, safe air
travel, communication systems, modern computers, television, and microwave ovens
arose from radar technologies. This chapter begins with a brief history of radar, and then
describes various categories of radar systems. This is followed by an overview of the
software tool suite accompanying this book. Instructions for downloading and installing
Python® [2] and the necessary libraries, along with the tool suite are presented. The
chapter concludes with a brief description of MATLAB® [3] and the scripts associated
with this book.
The term radar was first used in the 1940s by the United States Signal Corps working
on these systems for the United States Navy, the origin of these systems dates back
much further. In the late 1880s, German physicist Heinrich Hertz definitively showed
the existence of electromagnetic waves [4] as formulated by James Clerk Maxwell in
his profound work on the theory of electromagnetism [5]. Using electromagnetic energy
at a frequency of about 455 MHz, Hertz demonstrated that electromagnetic waves are
reflected by metallic structures and refracted by dielectric materials. The experiments
performed by Hertz provided the basis for the detection of targets, and in 1904 German
physicist Christian Hülsmeyer was issued a patent for an obstacle detector and ship
navigation device named the telemobiloscope [6]. While Hülsmeyer demonstrated the
1
2 Introduction to Radar Using Python and MATLAB
telemobiloscope to the German navy, there was little interest until the 1930s when the
urgency to detect enemy aircraft arose due to the advancement of long-range, large-
capacity bombers. During this time, development of systems to use short pulses of
electromagnetic energy to detect aircraft took place independently in the United States,
Great Britain, Germany, France, the Soviet Union, Italy, the Netherlands, and Japan. In
1939, a system with a single antenna for both transmitting and receiving was used on
the battleship USS New York for detecting and tracking aircraft and ships. Immediately
following World War II, advancement in radar technology slowed significantly [7].
However, the 1950s saw the emergence of highly accurate tracking radars and the use
of the klystron amplifier [8] for high-power, long-range systems. The statistical theory
of detection of signals in noise and the matched filter theory were published during
this time [9, 10]. Digital technology advancements in the 1970s gave rise to many
signal and data processing techniques including target discrimination. During the 1980s,
improvements in phased array systems, including solid-state and microwave circuit
technology, made remote sensing of environmental effects such as wind shear possible.
In 1990, an operational prototype of the WSR-88D (Weather Surveillance Radar, 1988,
Doppler) was completed, and the first installation for daily weather forecasting was
completed in Sterling, Virginia in 1992 [11]. These were the first of the next-generation
radar (NEXRAD) systems, which is a network of 159 high-resolution Doppler weather
radars [12]. Over the years, many enhancements have been made to weather radars,
including super resolution, dual polarization, and the automated volume scan evaluation
and termination (AVSET) algorithm [12]. Current digital technology and new signal and
data processing techniques have given rise to multiple-input multiple-output (MIMO)
systems with digital beamforming and diverse waveforms, pushing radar systems toward
the goal of an all-digital design [13].
The early driving force behind the development of radar systems was the military need
to detect enemy aircraft. Since then, radar systems have seen application in many areas
such as cancer detection, autonomous vehicle navigation, weather forecasting, terrain
mapping, and through-wall detection. Therefore, it is often convenient to delineate
systems into various categories. Radar types may be classified based on the operating
frequency band, type of waveform used, application, and configuration. While there may
be other possible categories, the following sections focus on these four areas.
The first method for classifying radar systems is by frequency band, which emerged
during World War II (e.g., L-band radars are used for air turbulence studies). Table
Introduction 3
Table 1.1
Radar Classification by Operating Frequency
VHF (very high frequency) 30 − 300 MHz Very long-range and ground-penetrating systems
UHF (ultrahigh frequency) 300 − 1000 MHz Very long-range and foliage-penetrating systems
1.1 gives the IEEE radar designation [14] for frequency bands commonly used in radar
systems and a description of the types of applications for each band.
1.2.2 Waveform
The next method for classifying radar systems is by the type of waveform used. Typical
radar waveforms include continuous wave (CW), where the signal is transmitted contin-
uously at a given frequency; pulsed waveforms, where bursts of energy are transmitted at
various pulse repetition frequencies (PRF), and more complex waveforms such as phase-
coded waveforms. Table 1.2 gives a description of commonly used waveform categories
and their applications.
1.2.3 Application
Another useful method for classifying radar systems is based on the particular application
of the system. For example, the WSR-88D may be categorized as a weather radar as it was
4 Introduction to Radar Using Python and MATLAB
Table 1.2
Radar Classification by Waveform Type
Pulsed CW Low PRF Airborne and ground-based moving target indication (MTI)
and long-range surveillance
Coded waveforms Phase, frequency, Reduce peak power requirements, improve maximum
and time codes range, improve range/Doppler ambiguities, and for better
jamming immunity
designed, manufactured, and emplaced for the specific purpose of daily meteorological
prediction. Table 1.3 gives a few of the common radar application categories and example
systems in each category.
1.2.4 Configuration
The final method of classifying radar systems is by the configuration; in particular, mono-
static, quasi-monostatic, bistatic, and multistatic configurations. Referring to Figures 1.1
and 1.2, the different radar configurations are defined as follows:
• Monostatic systems use the same antenna for transmitting and receiving (α = 0).
• Quasi-monostatic systems have the transmitting and receiving antennas at slightly
different locations (α ≈ 0).
• Bistatic systems use a separate transmitting and receiving antenna (α 6= 0).
Target Position
𝑟𝑡 𝛼
𝑟𝑟
Transmitting
Radar Position
Receiving
Radar Position
Target Position
𝛼1
𝛼2
Transmitting 𝛼3 Receiving
Radar Position Radar Positions
Table 1.3
Radar Classification by Application
Application Systems
Weather forecasting WSR-88D, WF44, OU-PRIME, Baron Gen3
Marine navigation Raymarine Quantum 2, Garmin GMR, Furuno 1st Watch Wireless
Automotive collision avoidance Audi Pre Sense, BMW Active Protection, Ford Forward Alert,
GM Forward Collision Alert
To aid reader comprehension of the concepts covered in the subsequent chapters, a radar
software tool suite is included with this book. The tool suite is written in the Python
programming language [2] and gives the reader a mechanism to analyze and predict
radar performance for various scenarios and applications. The tool suite includes a user-
friendly GUI developed with Qt [15] that updates plots and images automatically as the
user changes parameters. This results in a very interactive tool, helping the user gain
valuable insight about the topic of interest. Also included are scripts written in MATLAB
corresponding to each of the scripts written in Python. Full access to both the Python and
MATLAB scripts gives the user the ability to customize and extend each tool for their
particular application or include as part of a larger simulation. Several examples using
the tool suite are given at the end of each chapter.
The Python and MATLAB sets of code are obtained from the GitHub repository
at https://radarbook.github.io. The user may clone the repository or download as
a zip file, as illustrated in Figure 1.3. Once the software has been obtained, the folder
structure is shown in Figure 1.4. Note that the subfolders are identical, as the MATLAB
scripts correspond to each of the Python scripts. More information about the installation
and execution of the software is given in the following sections.
Introduction 7
Click Here
Figure 1.3 GitHub repository for the software accompanying this book.
1.3.1 Python
The Python tools were developed with version 3.6.4, and the GUIs were developed
with Qt 5.10.0. The tool suite makes use of packages, including SciPy, which is a
Python-based system of open-source software for mathematics, science, and engineering
[16]. It also makes use of the core package, NumPy, which is a fundamental package
for scientific computing, and includes a powerful N -dimensional array object, useful
linear algebra, Fourier transform, and random number capabilities. [17]. For plotting,
the tool suite takes advantage of Matplotlib, a Python plotting library that produces
publication-quality figures in a variety of formats and interactive environments across
platforms [18]. To install Python and the necessary packages, begin by navigating to
https://www.python.org and downloading the installer for the operating system of
choice, as shown in Figure 1.5. Launch the Python installer and follow the onscreen
instructions. Once the installation is complete, ensure the following packages are installed
by typing the commands given in Listing 1.1 at the command prompt.
Figure 1.4 Folder structure for the software accompanying this book.
Then install the libraries and examples associated with this book by typing “pip install
-e mypath/pyradar”, where mypath is the path to the folder “pyradar”. To test if all
packages were installed correctly, run the main GUI given in the file pyradar\Chapter01
\RadarBook.py. This displays the GUI shown in Figure 1.6, which allows the user to
execute any of the examples from the chapters by selecting the desired chapter and
double-clicking on the example from the tree widget. There are different methods for
running a Python script, such as typing “python pyradar\Chapter01\RadarBook.py”
at the command prompt, or from an integrated development environment (IDE). It is
recommended to use an IDE as these tools are dedicated to software development and
provide a mechanism for the user to modify the code for their specific application. As
the name implies, IDEs integrate several tools that usually include an editor with syntax
highlighting and auto completion; build, execution, and debugging tools; and some form
of source code control. There are several excellent IDEs for use with Python, including
PyCharm, Spyder, and PyDev [19–21].
Introduction 9
1.3.2 MATLAB
MATLAB combines a desktop environment tuned for iterative analysis and design
processes with a programming language that expresses matrix and array mathematics
directly. It includes the Live Editor for creating scripts that combine code, output, and
formatted text in an executable notebook [3]. The MATLAB scripts associated with this
book were developed with R2018a. In order to run the MATLAB scripts provided with
this book, the library folder and subfolders must be added to the MATLAB path, as shown
in Figure 1.7. Once these folders have been added to the path, the MATLAB scripts may
be executed from the editor, as shown in Figure 1.8 or from the command window by
typing the name of the script. An example output from one of the MATLAB scripts is
shown in Figure 1.8.
10 Introduction to Radar Using Python and MATLAB
Figure 1.6 Main GUI for the Python radar tool suite.
Figure 1.7 Add library folder and subfolders to the MATLAB path.
Introduction 11
Click Here
PROBLEMS
1.1 Describe the significance of radar development to the Allied victory in WWII.
Identify the major advancements and the timeline leading to the deployment of
these systems.
1.2 Using λ = c/f , where c is the speed of light, and f is the operating frequency,
calculate the wavelength, λ, of radar systems operating at L, S, and X-band, and
compare to the dimension of common radar targets such as aircraft, ships, and
automobiles.
1.3 Applying t = 2 r/c, where r is the range from the radar to the target, and c is the
speed of light, calculate the round-trip time delay, t, for targets located at ranges of
100m, 1 km, and 100 km.
1.4 Describe the major differences between continuous wave and pulsed radar wave-
forms. Give examples of practical applications of each.
1.5 Explain the difference between monostatic and bistatic radar systems. Give the
advantages and disadvantages of each type of system.
1.6 Determine the operating frequency band of a weather forecasting radar, such as the
WSR-88D, and explain the choice of the frequency band.
1.7 Obtain the Python code associated with this book, as outlined in Section 1.3. Then
install Python as described in Section 1.3.1, and verify successful installation by
executing RadarBook.py, which produces the window shown in Figure 1.6.
References
[1] D. K. Keuren. Science goes to war: The radiation laboratory, radar, and their technological consequences.
Reviews in American History, 25(4):643–647, 1997.
[2] G. van Rossum. Python Software Foundation. https://www.python.org/.
[3] MATLAB. version 9.4.0 (R2018a). The MathWorks Inc., Natick, Massachusetts, 2018.
[4] H. R. Hertz. Ueber sehr schnelle electrische schwingungen. Annalen der Physik, 267(7).
[5] J. C. Maxwell. A Treatise on Electricity and Magnetism. Oxford University Press, London, UK, 1873.
[6] The telemobiloscope. Electrical Magazine (London), 2:388, 1904.
[7] M. Skolnik. Radar Handbook, 3rd ed. McGraw-Hill Education, 2008.
[8] A. S. Gilmour. Klystrons, Traveling Wave Tubes, Magnetrons, Cross-Field Amplifiers, and Gyrotrons.
Artech House, Norwood, MA, 2011.
Introduction 13
[9] P. Swerling. Probability of detection for fluctuating targets. IRE Transaction on Information Theory,
pages 269–308, April 1960.
[10] P. M. Woodward. Probability and Information Theory with Applications to Radar. Pergamon Press,
London, 1953.
[11] The National Weather Service. Everything You Ever Wanted to Know about the NWS WSR-88D.
https://www.weather.gov/iwx/wsr 88d.
[12] Wikipedia Contributors. NEXRAD. https://en.wikipedia.org/wiki/NEXRAD.
[13] W. Wiesbeck, et al. Radar 2020: The future of radar systems. 2014 International Radar Conference,
March 2014.
[14] IEEE standard for radar definitions. IEEE Std 686-2017 (Revision of IEEE Std 686-2008), pages 1–54,
September 2017.
[15] Qt Group. This is Qt, 1995–. http://www.qt.io.
[16] E. Jones, et al. SciPy: Open source scientific tools for Python, 2001–. http://www.scipy.org/.
[17] T. Oliphant. NumPy: A guide to NumPy. USA: Trelgol Publishing, 2006–. http://www.numpy.org.
[18] J. D. Hunter. Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3):90–95,
2007.
[19] JetBrains. PyCharm: the python IDE for professional developers, 2010–. https://www.jetbrains.
com/pycharm.
[20] P. Raybaut. SPYDER: the scientific python development environment, 2009–. https://www.
spyder-ide.org.
[21] Appcelerator. Pydev, 2003–. https://www.pydev.org.
Chapter 2
Electromagnetic Fields and Waves
Radar systems make use of the transmission, reflection, and reception of electromag-
netic energy to determine the presence, direction, distance, velocity, and other features
of various types of objects. The electromagnetic energy transmitted by a radar system
interacts with the environment as well as the objects of interest. To properly account
for these interactions requires an understanding of radiation and scattering mechanisms.
This chapter begins with a presentation of Maxwell’s equations, which fully describe
electromagnetic radiation and scattering. Next, the boundary conditions associated with
electric and magnetic fields are studied and solutions to Maxwell’s equations are devel-
oped. This allows for investigation of the reflection and transmission of electromagnetic
energy at interfaces between various types of media. Specific environmental effects such
as refraction, diffraction, rain attenuation, fog attenuation, and atmospheric attenuation
are then covered. The chapter concludes with several Python examples to reinforce the
concepts of electromagnetic fields and waves.
James Clerk Maxwell unified the theories of electricity and magnetism in his profound
work, A Treatise on Electricity and Magnetism, which was first published in 1873 [1].
He presented a set of linear, consistent (although not independent) equations eloquently
showing the relationship between electricity and magnetism. These equations, which
are now known as Maxwell’s equations, were formulated through experiments by other
scientists, but it took the genius of Maxwell to modify them and put them into a consistent
set implying new physical phenomena. The differential form lends itself to the solution
of boundary value electromagnetic problems, such as those arising in the propagation of
radar signals, and is given as
15
16 Introduction to Radar Using Python and MATLAB
~
~ + ∂B = 0
∇×E Faraday’s law, (2.1)
∂t
~
~ − ∂ D = J~
∇×H Ampere’s law, (2.2)
∂t
~ =ρ
∇·D Gauss’s law, (2.3)
~ =0
∇·B no free magnetic charges, (2.4)
where
As can be seen from (2.1)–(2.4), the source of electric and magnetic fields is the electric
~ and the electric charge density, ρ. While it is mathematically useful
current density, J,
to include a fictitious magnetic current, M ~ , and magnetic charge, ρm , in Maxwell’s
equations to aid in the solution of radiation and scattering problems, these will not be
included as it is beyond the scope of this book. For further detailed information on this
subject, the reader is referred to several excellent texts on the matter [2–5].
One of the major contributions from Maxwell is the generalization of Ampere’s
law, which states ∇ · J~ = 0. While this is true for steady-state currents, the general
relationship between charge and current is given by the continuity equation, which is
derived by taking the divergence of (2.2). This gives
~
~
~ ∂ ∇·D
∇· ∇×H =∇·J + . (2.5)
∂t
Since the divergence of the curl of a vector is zero, then
~
~ ∂ ∇·D
∇·J + = 0, (2.6)
∂t
and substituting (2.3) into (2.6) results in
Electromagnetic Fields and Waves 17
∂ρ
∇ · J~ + = 0, (2.7)
∂t
which states that if charge is moving out of a differential volume, then the amount of
charge within the volume is going to decrease, and so the rate of change of charge density
is negative. Therefore, the continuity equation is a conservation of charge. However, this
modification to Ampere’s law (2.2) is of crucial importance as it means a time-varying
electric field causes a magnetic field even in the absence of a current. It is the converse of
Faraday’s law (2.1), and without it there would be no electromagnetic radiation.
In (2.1)–(2.4), the field quantities written in vector notation are functions of space and
time (x, y, z, t). While these equations are valid for arbitrary time dependence, this
book is concerned with electric and magnetic fields having sinusoidal, or harmonic, time
dependence. Therefore, it is convenient to use phasor notation such that all field quantities
will be complex vectors with an implied ejωt time dependence. Using this convention,
the electric and magnetic fields are written as
n o
~
E(x, y, z, t) = Real E(x, y, z)ejωt , (2.8)
n o
~
H(x, y, z, t) = Real H(x, y, z)ejωt . (2.9)
With a time dependence of ejωt , time derivatives are replaced with jω. Considering a
homogeneous medium with the constitutive parameters, µ and , (2.1)–(2.4) are written
as
∇ × E + jωµH = 0, (2.10)
∇ × H − jωE = J, (2.11)
∇ · D = ρ, (2.12)
∇ · B = 0. (2.13)
1
0 = ≈ 8.854 × 10−12 (F/m), (2.14)
c2 µ0
where µ0 is the permeability of free space. The permittivity of a material is often
specified by its relative permittivity, which is its value relative to free space. The absolute
permittivity is given as = r 0 . For linear, homogeneous, isotropic materials, D = E,
where is a scalar.
The permeability is a measure of the ability of a material to support the formation
of a magnetic field. The SI unit for permeability is henries per meter (H/m). The
permeability of vacuum is given as
In practical radar applications, objects of various material composition will exist. To solve
electromagnetic problems involving regions of differing constitutive parameters, µ and ,
it is necessary to know the boundary conditions the fields must satisfy at the interfaces
between the materials. Consider the general plane material interface between two regions
of differing parameters illustrated in Figure 2.1. The integral form of Maxwell’s equations
can be used to deduce the boundary conditions on the normal and tangential components
of the fields at the interface [4]. These results are summarized in the next sections for
various special cases.
At a general material interface, as shown in Figure 2.1, the generalized boundary condi-
tions for the electric and magnetic fields are written as
n̂ × (E1 − E2 ) = 0, (2.16)
n̂ × (H1 − H2 ) = Js , (2.17)
n̂ · (D1 − D2 ) = ρs , (2.18)
Electromagnetic Fields and Waves 19
Region 1
(#$ , &$ , '$ )
Region 2
(#) , &) , ') )
Figure 2.1 A general interface between two regions of differing constitutive parameters.
n̂ · (B1 − B2 ) = 0. (2.19)
From (2.16)–(2.19), the tangential component of the electric field is continuous across
a boundary. The tangential component of the magnetic field is discontinuous across a
boundary. The amount of discontinuity is the surface current Js . The normal component
of the electric flux density is discontinuous across a boundary. The amount of discontinu-
ity is the surface charge density ρs . The normal component of the magnetic flux density
is continuous across a boundary.
n̂ × (E1 − E2 ) = 0, (2.20)
n̂ × (H1 − H2 ) = 0, (2.21)
n̂ · (D1 − D2 ) = 0, (2.22)
n̂ · (B1 − B2 ) = 0. (2.23)
20 Introduction to Radar Using Python and MATLAB
Many problems of interest to radar engineers involve boundaries with good conductors
(e.g., ships, aircraft, automobiles). Most metals are categorized as good conductors,
where σ >> ω. The electric and magnetic fields inside good conductors approach
zero as the conductivity increases, σ → ∞. Therefore, the expressions for the boundary
conditions for a perfect conducting interface become
n̂ × E1 = 0, (2.24)
n̂ × H1 = Js , (2.25)
n̂ · D1 = ρs , (2.26)
n̂ · B1 = 0. (2.27)
The perfect magnetic conductor boundary is a dual to the perfect electric conductor
boundary. For such a boundary, the tangential components of the magnetic field must
vanish. That is, n̂ × H1 = 0. This type of boundary does not exist in practice, and
may only be approximated by other boundaries, such as corrugated surfaces. However,
this idealistic boundary condition is convenient for solving certain types of planar
transmission line problems and is presented here for completeness. The fields at a perfect
magnetic conductor interface satisfy the following
n̂ × E1 = 0, (2.28)
n̂ × H1 = 0, (2.29)
n̂ · D1 = 0, (2.30)
n̂ · B1 = 0. (2.31)
For radiation problems, a boundary condition must also be enforced on the fields at
infinity. This condition is known as the radiation condition, and is a statement of the
Electromagnetic Fields and Waves 21
conservation of energy. As defined by Sommerfeld [6], the fields infinitely far from a
radiating source must be vanishingly small or be outward radiating. No energy may be
radiated from infinity into the field. This is intuitive, since a field coming from infinity
and having a finite amplitude would require an infinite source.
The solutions to Maxwell’s equations give the answers to all classical electromagnetic
problems. This is true because Maxwell’s equations completely describe the relationship
between electric fields, magnetic fields, charges, and current distributions. While this is
true, the solutions to many problems are extremely difficult to obtain. Even with special
analytical and numerical methods, many problems remain intractable. Special techniques
aid in obtaining solutions, but they do not add to nor refine the fundamental structure.
This illustrates the significance of Maxwell’s equations.
Maxwell’s equations can be solved directly as they are written for simple situations. For
more practical problems, it is often convenient to introduce potential functions [2, 3]
to obtain a smaller number of second-order partial differential equations that satisfy
some of Maxwell’s equations identically. Since the magnetic field is always solenoidal
(∇ · B = 0), define B in terms of a vector potential A. The magnetic field will be
represented as the curl of another vector, since the divergence of the curl is always zero,
∇ · (∇ × A) = 0. Therefore
B = ∇ × A. (2.32)
Substituting (2.32) into (2.10) results in
∇ × (E + jωA) = 0. (2.33)
A function of vanishing curl may be written as the gradient of a scalar function. To be
consistent with the electrostatic definition of the scalar electric potential, this is expressed
as
∇ × (−∇V ) = 0. (2.34)
The electric field in terms of scalar and vector potentials is then
These two expressions identically satisfy the two homogeneous Maxwell’s equations,
(2.10) and (2.13). The dynamic behavior of the potentials, A and V , will be determined by
the two inhomogeneous equations, (2.11) and (2.12). Substituting into (2.11) and (2.12),
and making use of the constitutive relations B = µH and D = E gives
∇ × (∇ × A) = ∇(∇ · A) − ∇2 A, (2.37)
results in
A → A + ∇ψ. (2.39)
The magnetic field, B, remains unchanged by this transform. However, for the electric
field to remain unchanged, V must be simultaneously transformed as
V → V − jωψ. (2.40)
From (2.39) and (2.40), there is freedom to choose a set of potentials, (A, V ), satisfying
the Lorenz condition [7],
∇ · A + jωµV = 0. (2.41)
This uncouples the pair of equations and leaves two inhomogeneous equations, one for
V and one for A. This is expressed as
∇2 A + k 2 A = −µJ, (2.42)
∇2 V + k 2 V = −ρ/, (2.43)
where
√ ω 2π
k = ω µ = = , (2.44)
vp λ
is the wavenumber, and vp is the velocity of propagation in the medium. This transform is
known as a gauge transformation, and the invariance of the fields under such a transform
Electromagnetic Fields and Waves 23
is called the gauge invariance. For potentials satisfying the Lorenz condition, there is still
arbitrariness. The so-called restricted gauge transform, expressed as
A → A + ∇ψ, (2.45)
V → V − jωψ, (2.46)
where
∇2 ψ + ω 2 µψ = 0, (2.47)
preserves the Lorenz condition, provided the scalar and vector potentials, (A, V ), initially
satisfy the Lorenz condition. All potentials in this restricted class belong to the Lorenz
gauge. This gauge, which is independent of coordinate system, is commonly used because
it leads to the wave equations in (2.42) and (2.43). There are other useful gauges, such as
• The Coulomb gauge, which is typically used when there are no sources present, is
defined as ∇ · A = 0, V = 0. The fields are then given as
E = −jωA, B = ∇ × A. (2.48)
• The {radiation gauge, also known as the transverse gauge, is defined as ∇ · A = 0.
• The temporal gauge, also known as the Weyl gauge or Hamiltonian gauge, is defined
as V = 0.
• The axial gauge is defined as n̂ · A = 0.
There are also a number of less commonly used gauges, such as Maximal Abelian gauge,
Poincare gauge, FockSchwinger gauge, and Dirac gauge. The reader is referred to [8, 9]
for more information on these and other gauges.
Following the treatment in [4], the solution to the inhomogeneous wave equations given
in (2.42) and (2.43) is
ˆ
1 e−jkr 0
V (r) = ρ dv , (2.49)
4π V0 r
ˆ
µ e−jkr 0
A(r) = J dv . (2.50)
4π V0 r
24 Introduction to Radar Using Python and MATLAB
The equations above represent the scalar and vector retarded potentials for time harmonic
sources. The general procedure for calculating the electric and magnetic fields due to time
harmonic charge and current sources is
1. Calculate the solutions for the scalar and vector potentials, (V, A), from (2.49) and
(2.50).
2. Calculate the solution for the phasor representation of the electric and magnetic
fields, E(r) and B(r) from (2.32) and (2.35).
~ t) and B(r,
3. Calculate the instantaneous electric and magnetic fields, E(r, ~ t) from
(2.8).
In a source free, linear, isotropic, homogeneous medium, Maxwell’s curl equations are
given by
∇ × E + jωµH = 0, (2.51)
∇ × H − jωE = 0. (2.52)
Using (2.51) and (2.52), and following the procedure for obtaining the wave equations
for the scalar and vector potentials, as shown in Section 2.4.1, results in
∇2 E + k 2 E = 0, (2.53)
∇2 H + k 2 H = 0. (2.54)
The equations above are of the form of an elliptic partial differential equation known
as Helmholtz’s equation, named for Hermann von Helmholtz [10], and ∇2 is the vector
Laplacian [11]. Equations (2.53) and (2.54) form the basis for introducing wave behavior.
The solutions to (2.53) and (2.54) represent waves. To simplify the analysis, begin with
waves having one-dimensional spatial dependence. Waves of this type are known as plane
waves. A particular form of this solution, known as uniform plane waves, has an electric
field with uniform direction, magnitude, and phase in infinite planes perpendicular to the
direction of propagation. The same is also true of the magnetic field. Uniform plane waves
Electromagnetic Fields and Waves 25
cannot exist in practice, as it requires a source of infinite extent to create such electric and
magnetic fields. However, if the observer is far enough away from the source, the surfaces
of constant phase wavefronts become nearly spherical. On a very small portion of a very
large sphere, the wavefront then becomes nearly planar. While the properties of uniform
plane waves are simple, their study is of importance both theoretically and practically.
∂ 2 Ex ∂ 2 Ex
= 0 and = 0, (2.56)
∂x2 ∂y 2
which results in
d2 Ex
+ k 2 Ex = 0. (2.57)
dz 2
This is an ordinary differential equation as Ex is a function of only z. The solution to this
equation is easily obtained by substitution, and is of the form
E+ vp
t=0
t= / 2
0 t= /
E+
0 /4 /2 3 /4
Figure 2.2 A wave traveling in the positive z direction for varying values of t.
h i
(ωt − kz) − ωt − k(z + λ) = 2π (rad), (2.62)
2π 2πvp vp
λ= = = (m). (2.63)
k ω f
The second term on the right-hand side of (2.59) represents a wave traveling in the
negative z direction. For now, only consider waves traveling in the positive z direction.
Electromagnetic Fields and Waves 27
As will be shown in later sections, if there are discontinuities in the medium, there will
be reflected waves traveling in the opposite direction, and those must be considered. To
complete the definition of the plane wave, the magnetic field, H, is found from (2.51) as
x̂ ŷ ẑ
1 1 ∂
H= ∇×E= 0 0 , (2.64)
−jωµ −jωµ ∂z
E + (z) 0 0
x
E+
Hy (z, t) = cos(ωt − kz). (2.66)
η
E and H are orthogonal to each other, and both are orthogonal to the direction of
propagation, as shown in Figure 2.3. This is a characteristic of transverse electromagnetic
(TEM) waves.
In a lossy material with conductivity, σ, a conduction current density will be present. This
current is given by
J = σE. (2.67)
This represents Ohm’s law from an electromagnetic field point of view. Substituting
(2.67) into (2.10) and (2.11) results in
∇ × E + jωµH = 0, (2.68)
∇ × H − jωE − σE = 0. (2.69)
Following the approach in Section 2.4.1, the wave equation for the electric field is now
28 Introduction to Radar Using Python and MATLAB
([
YS
]
+\
Figure 2.3 The electric and magnetic field vectors for a uniform plane wave.
σ
∇2 E + ω 2 µ 1 − j E = 0. (2.70)
ω
Comparing (2.70) to the results in (2.53), k 2 = ω 2 µ has been replaced by
h σ i
ω 2 µ 1 − j . (2.71)
ω
Therefore, a complex propagation constant is defined as
r
√ σ
γ = α + jβ = jω µ 1 − j , (2.72)
ω
where α is referred to as the attenuation constant, and β is the phase constant. Following
Section 2.5.1, consider an electric field with only an x component. Also, this field is
uniform in the x and y directions. The wave equation (2.70) becomes
∂ 2 Ex
− γ 2 Ex = 0. (2.73)
∂z 2
Electromagnetic Fields and Waves 29
As before, the solution has waves traveling in both the positive and negative z directions,
A low-loss dielectric medium is defined as a good insulator, but with nonvanishing con-
ductivity. Specifically, a low-loss dielectric has a conductivity meeting the requirement
σ
1. (2.80)
ω
The binomial expansion is used to write the propagation constant as
√ σ 1 σ 2
γ = α + jβ ≈ jω µ 1 − j + . (2.81)
2ω 8 ω
The attenuation constant is
r
σ µ
α= (Np/m), (2.82)
2
30 Introduction to Radar Using Python and MATLAB
Many problems of interest in radar applications involve good, but not perfect, conductors.
A good conductor is defined as a material in which the conductive current is much
larger than the displacement current (i.e., σ ω). Most metals are classified as good
conductors. Table 2.1 shows the conductivity of a few common materials [12]. The
propagation constant is approximated by ignoring the displacement current, which results
in
r
√
r
σ ωµσ
γ = α + jβ ≈ jω µ = (1 + j) . (2.86)
jω 2
This result indicates α and β for a good conductor are approximately equal. The wave
impedance is found to be
r
jωµ ωµ
η= ≈ (1 + j) . (2.87)
γ 2σ
One characteristic of good conductors is the phase angle of the wave impedance is 45o .
The skin depth, or depth of penetration, is defined as the distance through which
the amplitude of the fields decreases by a factor of e−1 or 36.8%. This distance is given
mathematically as
r
1 2
δs = = (m). (2.88)
α ωµσ
Electromagnetic Fields and Waves 31
At microwave frequencies, the skin depth is small, so the fields and currents are confined
to a very thin layer on the surface of the conductor. Tables 2.2 and 2.3 summarize the
parameters for plane wave propagation in various media.
The previous sections examined uniform plane waves propagating in unbounded homo-
geneous media. Practical radar problems involve waves propagating in bounded regions
Table 2.1
Resistivity and Conductivity of Various Materials at 20o C
Table 2.2
Plane Wave Propagation Parameters in Various Media
Table 2.3
Plane Wave Propagation Parameters in Various Media
2
√ p
Phase constant (β) jω µ 1 + (1/8) σ/ω ωµσ/2
p p
Attenuation constant (α) (σ/2) µ/ ωµσ/2
p p
Wave impedance (η) µ/ 1 + jσ/2ω (1 + j) ωµ/2σ
p
Skin depth (δs ) 1/α 2/ωµσ
and interacting with media of differing constitutive parameters. These media may in-
clude the targets of interest to the radar system as well as other regions such as rain,
buildings, trees, and birds. Therefore, it is beneficial to study the reflection and refraction
of electromagnetic waves occurring when a wave traveling in a given medium impinges
on another medium with a different set of constitutive parameters. The general case of
oblique incidence upon a lossy dielectric region will be shown. Other special cases, such
as normal incidence, lossless dielectrics and perfect conductors may then be obtained
from these results.
Consider the geometry shown in Figure 2.4, where the region z > 0 is characterized
by the constitutive parameters µ2 , 2 , σ2 , and the region z < 0 is characterized by µ1 ,
1 , σ1 . There are two canonical cases for the incident fields. The first case is when the
incident electric field is in the x-z plane (parallel polarization). The second case is when
the incident electric field is normal to the x-z plane (perpendicular polarization). Any
arbitrary incident plane wave may then be expressed as a linear combination of these two
cases.
The perpendicular polarization case is defined by an electric field perpendicular to the x-z
plane. This means the electric field only has a component along the y axis. Waves of this
type are also known as transverse electric (TE) waves, as the electric field is transverse to
the plane of incidence. Referring to Figure 2.5, the incident electric field is written as
Electromagnetic Fields and Waves 33
[
(U+U
(W+W
șU
șW
șL ]
(L+L
Figure 2.4 Plane wave obliquely incident on the interface between two lossy dielectrics.
x̂ ŷ ẑ
1 1 ∂ ∂ ∂
Hi = ∇ × Ei = , (2.90)
−jωµ −jωµ ∂x ∂y ∂z
0 Ey (x, z) 0
where Ey (x, z) = E0 e−γ1 (x sin θi +z cos θi ) . Expanding the curl results in
E0 h −γ1 (x sin θi +z cos θi ) i
Hi = e (− cos θi x̂ + sin θi ẑ) . (2.91)
η1
34 Introduction to Radar Using Python and MATLAB
[
+U
(U
(W
șU +W
șW
șL ]
(L
+L
Region 1 (𝜇1 , 𝜖1 , 𝜎1 ) Region 2 (𝜇2 , 𝜖2 , 𝜎2 )
Figure 2.5 Plane wave obliquely incident on the interface between two lossy dielectrics for
perpendicular polarization.
Referring to Figure 2.4, the fields reflected back into Region 1 are seen to propagate along
the direction (x sin θi − z cos θi ). The reflected electric field is then expressed as
transmission coefficient, TT E , is the ratio of the amplitude of the transmitted electric field
to the incident electric field. The transmission coefficient is a measure of how much of
the incident field is transmitted into Region 2. The transmission coefficient, TT E , is often
written as T⊥ . Therefore, the transmitted electric and magnetic fields are written as
1 ΓT E TT E
− cos θi e−γ1 x sin θi + cos θr e−γ1 x sin θr = − cos θt e−γ2 x sin θt . (2.97)
η1 η1 η2
For the tangential components of the electric and magnetic fields to be continuous at the
interface, z = 0, for all x, then the phase terms must have the same x variation on both
sides of (2.96) and (2.97). This is often referred to as the phase matching condition as it
ensures the phase varies with the same rate in x on both sides of the interface. Therefore
1 + ΓT E = TT E , (2.100)
Solving these equations for the reflection and transmission coefficients gives
36 Introduction to Radar Using Python and MATLAB
η2 cos θi − η1 cos θt
ΓT E = , (2.102)
η2 cos θi + η1 cos θt
2 η2 cos θi
TT E = . (2.103)
η2 cos θi + η1 cos θt
The parallel polarization case is described by an electric field in the x-z plane. The
magnetic field is now transverse to the plane of incidence, as shown in Figure 2.6, so
these waves are also known as transverse magnetic (TM) waves. The magnetic field will
only have a y component and is written as
E0 −γ1 (x sin θi +z cos θi )
Hi = e ŷ. (2.104)
η1
The electric field is found from (2.52) as
∇ × Hi − jω1 Ei = 0. (2.105)
x̂ ŷ ẑ
1 1 ∂ ∂ ∂
Ei = ∇ × Hi = , (2.106)
jω1 jω1 ∂x ∂y ∂z
0 Hy (x, z) 0
H0 −γ1 (x sin θi +z cos θi )
where Hy (x, z) = e . Expanding the curl gives
η1
h i
Ei = E0 e−γ1 (x sin θi +z cos θi ) (cos θi x̂ − sin θi ẑ) . (2.107)
Following a procedure similar to the one given in Section 2.6.1, the reflected magnetic
field is written as
E0 ΓT M −γ1 (x sin θr −z cos θr )
Hr = − e ŷ, (2.108)
η1
where ΓT M is the reflection coefficient and is sometimes written as Γk to explicitly
indicate parallel polarization. The reflected electric field is found from (2.52) as
[
(U
+U
(W
+W
șU
șW
șL ]
(L
+L
Figure 2.6 Plane wave obliquely incident on the interface between two lossy dielectrics for
parallel polarization.
The transmitted fields also follow a similar approach to Section 2.6.1 and are given here
as
E0
Ht = TT M e−γ2 (x sin θt +z cos θt ) ŷ. (2.111)
η2
Using Snell’s law results in
1 TT M
(1 − ΓT M ) = . (2.113)
η1 η2
38 Introduction to Radar Using Python and MATLAB
Solving these equations for the reflection and transmission coefficients gives
η2 cos θt − η1 cos θi
ΓT M = , (2.114)
η2 cos θt + η1 cos θi
2 η2 cos θi
TT M = . (2.115)
η2 cos θt + η1 cos θi
For parallel polarization, an incident angle exists where there is no reflection from Region
2 and all waves are absorbed. This angle is known as the Brewster angle and is denoted
as θB . The Brewster angle is found by setting ΓT M = 0 in (2.114) as
η2 cos θt − η1 cos θi
ΓT M = = 0. (2.116)
η2 cos θt + η1 cos θi
This leads to
The critical angle is the angle of incidence corresponding to the threshold of total
reflection and is commonly denoted as θc . When the incident angle is greater than or
equal to the critical angle, then the transmission angle, θt , is equal to 90o , as shown in
Figure 2.8. The critical is found from Snell’s law of refraction as
0.8
0.8
|Reflection Coefficient|
0.6 0.6
0.4 0.4
0.2 0.2
0.0
0.0
0 20 40 60 80
Incident Angle (degrees)
Figure 2.7 Plane wave reflection coefficients for TE and TM waves.
γ2
θc = sin−1 . (2.120)
γ1
For nonmagnetic dielectrics, the critical angle is written as
r !
−1 2
θc = sin . (2.121)
1
Therefore, to have a real valued critical angle, 2 < 1 . If this condition is not true, then
the Poynting vector is purely imaginary, and no real power flows along the z axis in
Region 2 [14].
As illustrated in Section 2.6, a uniform plane wave incident upon the interface of a
medium with different constitutive parameters experiences a change in the direction
40 Introduction to Radar Using Python and MATLAB
(W+W
(U+U
Surface Wave
Reflected Wave
șF
șF ]
Incident Wave
(L+L
of propagation. This change of direction or refraction was studied for various types of
media and incident angles. Since the constitutive parameters of the nonionized lower
layers of the atmosphere vary with altitude, a transmitted radar signal also experiences
a change in the direction of propagation through the atmosphere. The refraction is now
continuous as the constitutive parameters are continuous functions of altitude, although
some approaches treat the atmosphere as stratified. This continuous refraction is often
referred to as ray bending. Generally, only the vertical gradient of the constitutive
parameters is considered, which allows the curvature at a point to be written as
1 cos φ dn
=− , (2.122)
r n dh
where
r = radius of curvature of the path of the wave (m),
φ = angle of the direction of propagation with the horizontal (rad),
n = refractive index of the atmosphere,
h = height above Earth’s surface (m).
Electromagnetic Fields and Waves 41
Therefore, dn/dh represents the vertical gradient of the refractive index of the atmo-
sphere. Convention is to define the ray bending as positive when the path bends towards
the surface of the earth. This refraction is virtually independent of frequency as long as
the gradient does not vary significantly over a wavelength.
As described above, a signal transmitted through the atmosphere bends toward the earth.
In many radar applications, this would require transmission of the signal at a higher
elevation angle in order to have the energy intercept the target, as shown in Figure 2.9.
This angle is referred to as the apparent elevation angle, as the target appears to be at
a different angle than its true position. Following the treatment in [15], the amount of
correction to the true target elevation is
ˆ∞
n0 (z)
∆θ = − dz (deg), (2.123)
n(z) tan φ
h
where
c
cos φ = , c = (re + h) n(h) cos θ. (2.124)
(re + z) n(z)
Refracted Path
Target True Position
𝜃𝑡𝑟𝑢𝑒 𝜃𝑎𝑝𝑝𝑎𝑟𝑒𝑛𝑡
re is the radius of Earth, and h is the height of the target. Since the refraction in the
atmosphere is largely determined by the lower layers, a model based on the exponential
atmosphere for terrestrial propagation allows the index of refraction at some altitude, z,
to be expressed as [16]
θa = θt + ∆θ. (2.126)
Since a wave transmitted through the atmosphere experiences a refractive index that is
a function of altitude, the path length from the transmitter to the target exceeds the
geometrical path length, as shown in Figure 2.9. This difference in range is described
by the integral [15]
ˆB
∆R = (n − 1) dl, (2.127)
A
where l is the length along the path, and (A, B) is the starting and ending points of the
path. This expression is used when the variation of the constitutive parameters along the
integration path are known. A semiempirical method was developed in order to calculate
the apparent range when the temperature, atmospheric pressure, and relative humidity are
known at ground level [15]. This method was derived in 1979 using atmospheric radio
profiles at 500 meteorological stations over the course of one year. The expression for the
difference in range for this method is
∆RV
∆R = p + δ(θ, ∆RV ), (2.128)
sin θ (1 + k cot2 θ)
where
θ = elevation angle at the target (rad),
∆RV = difference in vertical path length (m),
k = corrects for variations of the elevation angle along the path,
δ(θ, ∆RV ) = correction to the effects of refraction (m).
The reader is referred to [15] for further details on this semiempirical method.
Electromagnetic Fields and Waves 43
Since the refractive index is a function of altitude, the antenna beam will spread in the
vertical direction [15]. This is due to the refractive index causing energy at the bottom
of the beam to travel along a slightly different path than energy at the top of the beam.
This beam spreading results in a loss in the peak gain, which is insignificant and may
be ignored for elevation angles greater than 5o . In addition, there is no spreading in the
horizontal direction. If the signal travels through the total atmosphere, then the total loss
is
and θ is the elevation angle in degrees. The expression above is only valid when θ < 10o
and h ≤ 5 km.
2.7.4 Ducting
An atmospheric duct is a region in the lower layers of the atmosphere where the vertical
gradient of the refractive index is such that the propagating waves are ducted or guided
and tend to follow the curvature of the earth, as shown in Figure 2.10. Ducts provide a
mechanism for waves to propagate beyond the line of sight and limit the spread of the
wavefront to only the horizontal dimension [15]. A duct is possible whenever the vertical
refractivity gradient, (dN/dh), is less than about −157 N/km. A first order approximation
of the refractivity is [17]
6 77.6 4810e
N = (n − 1)10 = p+ , (2.131)
T T
where
T = air temperature (K),
p = atmospheric pressure (hPa),
e = the water vapor pressure (hPa).
Atmospheric Duct
s
dM
α= 2 × 10−6 ∆h (rad). (2.132)
dh
M is the modified refractivity defined in [18] as
h
M = N + 106 , (2.133)
re
and ∆h is the height of the duct above the transmitting antenna.
Diffraction is the mechanism by which waves spread out when passing through an
aperture or around the corner of an object and into the shadow region. While diffraction
may be caused by many objects and geometries in a given scenario, those discussions
are covered in Chapter 7, and here the focus is on the diffraction caused by the earth.
Following a procedure similar to the one given in [19], the diffraction loss associated with
wave propagation above a spherical Earth at frequencies above 10 MHz is determined.
Referring to Figure 2.11, begin by calculating a marginal line of sight distance as
√ p p
dlos = 2 re h1 + h2 (m). (2.134)
Electromagnetic Fields and Waves 45
Target Position
Radar Position
KF
K K
G G
Figure 2.11 Geometry for spherical Earth diffraction and clearance height.
For this case, the diffraction is greatly influenced by the electrical characteristics of the
surface of the earth. This influence is determined by calculating a normalized surface
admittance, Y , for both horizontal and vertical polarization given by
−1/3 h i−1/4
2π re
YH = (r − 1)2 + (60 λ σ)2 , (2.135)
λ
h i1/2
YV = YH 2r + (60 λ σ)2 , (2.136)
where
r = relative permittivity,
σ = conductivity (S/m),
λ = wavelength (m).
The field strength including diffraction, relative to the field strength without diffraction is
given by
46 Introduction to Radar Using Python and MATLAB
E
20 log10 = F (dn ) + G(h1n ) + G(h2n ) (dB), (2.137)
E0
where
F = gain term for the distance,
G = gain term for the height,
dn = normalized path length between the transmitter and the target,
h1n = normalized height of the transmitter,
h2n = normalized height of the target.
1/3
π
dn = β d , (2.138)
λ re2
1/3
π2
h1n = 2 β h1 , (2.139)
λ2 re
1/3
π2
h2n = 2 β h2 , (2.140)
λ2 re
where β accounts for the electrical characteristics of the earth. It is related to the
admittance given in (2.135) and (2.136) by the semiempirical formula
1 + 1.6 Y 2 + 0.67 Y 4
β= , (2.141)
1 + 4.5 Y 2 + 1.53 Y 4
where Y is either YH or YV . The gain terms in (2.137) are expressed as
11 + 10 log10 (dn ) − 17.6 dn for dn ≥ 1.6
F (dn ) = (2.142)
−20 log (d ) − 5.6488 d1.425 for dn < 1.6,
10 n n
and
17.6(B − 1.1)1/2 − 5 log10 (B − 1.1) − 8 for B > 2
G(h) = (2.143)
20 log (B + 0.1B 3 ) for B ≤ 2,
10
Electromagnetic Fields and Waves 47
For this case, begin by calculating the smallest clearance height, hc , between the line of
sight path and the curved earth, as shown in Figure 2.11. The clearance height is given by
d2 d2
h1 − 1 d2 + h2 − 2 d1
2 re 2 re
hc = , (2.144)
d
where
r s !!
m+1 π 1 3c 3m
b=2 cos + cos−1 , (2.146)
3m 3 3 2 (m + 1)3
h1 − h2 d2
c= , m= . (2.147)
h1 + h2 4 re (h1 + h2 )
Next calculate the required clearance height for no diffraction loss, h0 , as
r
d1 d2 λ
h0 = 0.552 . (2.148)
d
If the calculated clearance height, hc , is greater than the required clearance height, h0 ,
then there is no diffraction loss for this path. Otherwise, calculate a modified effective
Earth radius by
d
rem = 0.5 √ √ (m). (2.149)
h1 + h2
This modified effective Earth radius is then used in the procedure described in Section
2.8.1, and the loss is designated as Aem . If the calculated loss using the modified effective
Earth radius is negative, then the diffraction loss for this path is zero. Otherwise an
interpolated diffraction loss is used, and is calculated by
A = 1 − h/h0 Aem (dB). (2.150)
48 Introduction to Radar Using Python and MATLAB
Electromagnetic waves are attenuated in the atmosphere primarily due to oxygen (O2 )
and water vapor (H2 O). The first peak in attenuation occurs at approximately 22 GHz
and is due to water vapor. The second peak is located at 63 GHz due to oxygen. For
frequencies up to 1 THz, the attenuation due to dry air and water vapor is most accurately
evaluated by means of a summation of the individual resonance lines from oxygen and
water vapor [22]. Additional factors are added to this result to account for the non-
resonant Debye spectrum of oxygen, pressure-induced nitrogen attenuation, and excess
water vapor absorption. The specific atmospheric attenuation is written as
As = Ao + Aw = 0.1820 f No (f ) + Nw (f ) (dB/km), (2.151)
where
Ao = attenuation due to oxygen and nitrogen (dB/km),
Aw = attenuation due to water vapor (dB/km),
f = the operating frequency (GHz).
The terms No (f ) and Nw (f ) are the imaginary parts of the complex refractivity and are
expressed as
X X
No (f ) = Sio Fio + Nd (f ), Nw (f ) = Siw Fiw , (2.152)
i i
where
Si = strength of the ith oxygen or water vapor line,
Fi = shape factor for the ith oxygen or water vapor line,
Nd (f ) = pressure induced nitrogen absorption.
The reader is referred to [22] for the tables of coefficients for these terms. For terrestrial
paths, the total path attenuation is then found from
For some radar applications, the attenuation in vegetation can be important. However,
there is a wide range of conditions and foliage types making it extremely difficult to
develop generalized prediction methods. Furthermore, there is a lack of experimental
data collected in a single database for use. However, models have been developed for
extensive vegetation such as woodland for particular frequency ranges and different types
of geometry [23]. Two geometries are considered in the following sections. The first is
when the transmitter or the target is located within the vegetation, and the other is when
both the transmitter and target are both located outside of the vegetation.
Consider a signal path where the target is located within extensive vegetation, such
as woodland, as shown in Figure 2.12. The attenuation is characterized by two main
quantities. The first is the specific attenuation rate due to the scattering of energy in
directions away from the target. The second is the maximum total attenuation, which
is limited by mechanisms such as surface wave propagation over the top of the vegetation
and the forward scatter within the vegetation [23]. The attenuation due to the vegetation
is expressed as
h i
Av = Am 1 − e−d γ/Am (dB), (2.154)
50 Introduction to Radar Using Python and MATLAB
Target Position
Radar Position
Figure 2.13 Geometry for both radar and target located outside the vegetation.
where
d = depth within the vegetation (m),
γ = specific attenuation for short vegetation paths (dB/km),
Am = maximum attenuation for the specific type of vegetation (dB).
Am is the clutter loss for targets obstructed by ground clutter. The maximum attenuation
and the specific attenuation depend on the species and density of the vegetation as well as
the polarization of the transmitted signal. Experiments have been conducted on various
species of trees, and those results are given in [23].
Consider a signal path where the target is outside the vegetation and the signal must pass
through the vegetation to reach the target, as shown in Figure 2.13. A model has been
proposed to describe the attenuation along both horizontal and slant foliage paths [23],
and is given here as
where θ is the elevation angle and τ is the polarization tilt angle. The expressions in
(2.158) and (2.159) are seen to be a combination of horizontal and vertical polarization
components and are valid for both linear and circular polarization and for all path
geometries. The terms kH and kV are given in [24] as
4
X 2
log10 k = ai e−β + dk log10 f + ek , (2.160)
i=1
5
X 2
α= ai e−β + dα log10 f + eα , (2.161)
i=1
where
log10 f − bi
β= , (2.162)
ci
52 Introduction to Radar Using Python and MATLAB
Table 2.4
Coefficients for Calculating kH
ai bi ci dk ek
−5.33980 −0.10008 1.13098 −0.18961 0.71147
−0.35351 1.26970 0.45400
−0.23789 0.86036 0.15354
−0.94158 0.64552 0.16817
Table 2.5
Coefficients for Calculating kV
ai bi ci dk ek
−3.80595 0.56934 0.81061 −0.16398 0.63297
−3.44965 −0.22911 0.51059
−0.39902 0.73042 0.11899
0.50167 1.07319 0.27195
The attenuation of electromagnetic waves due to clouds and fog is of particular impor-
tance not only to airborne and ground-based upward-looking radars, but also to vehi-
cle based radars dealing with automatic emergency braking, radar systems for mining,
agriculture, and search and rescue. Many of these sensors operate in higher frequency
regimes where the attenuation due to fog and cloud becomes significant. Following the
recommendation in [25], and considering clouds and fog made up of small droplets less
than 0.01 cm, the Rayleigh approximation allows the attenuation within the cloud or fog
to be written as
Table 2.6
Coefficients for Calculating αH
ai bi ci dα eα
−0.14318 1.82442 −0.55187 0.67849 −1.95537
0.29591 0.77564 0.19822
0.32177 0.63773 0.13164
−5.37610 −0.96230 1.47828
16.1721 −3.29980 3.43990
Table 2.7
Coefficients for Calculating αV
ai bi ci dα eα
−0.07771 2.33840 −0.76284 −0.053739 0.83433
0.56727 0.95545 0.54039
−0.20238 1.14520 0.26809
−48.2991 0.791669 0.116226
48.5833 0.791459 0.116479
This expression is valid for frequencies up to about 200 GHz. Typical values for the
liquid water density in fog is 0.05 g/m3 for medium fog with a visibility of about 300
meters, and 0.5 g/m3 for heavy fog with a visibility of about 50 meters [25]. The model
for the liquid water specific attenuation coefficient, kl , is based on Rayleigh scattering.
The permittivity is modeled as double Debye [26], and is used to calculate kl as
0.819 f
kl = (dB/km)/(g/m3 ), (2.164)
00(1 + η 2 )
where f is the frequency in GHz, and
2 + 0
η= . (2.165)
00
The complex permittivity of water is
54 Introduction to Radar Using Python and MATLAB
f ( − 1 ) f ( − 2 )
00 = h 0 i+ h 1 i, (2.166)
fp 1 + (f /fp )2 fs 1 + (f /fs )2
0 − 1 − 2
0 = h i+h 1 i + 2 , (2.167)
1 + (f /fp )2 1 + (f /fs )2
where
and T is the liquid water temperature in degrees Kelvin [25]. In (2.166) and (2.167),
the frequencies (fp , fs ), represent the principal and secondary relaxation frequencies,
respectively. These are given in GHz as
2.10 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter02 and the matching
MATLAB examples are in the directory mlradar\Chapter02. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
For this example, calculate the plane wave propagation parameters listed in Table 2.2 for
a medium with the following constitutive parameters: r = 4.3, µr = 1.0, σ = 0.05 S/m
at a frequency of 300 MHz. Also, plot the electric and magnetic fields for this case.
Solution: The solution to the above example is given in the Python code plane waves
example.py and in the MATLAB code plane waves example.m. Running the Python
Electromagnetic Fields and Waves 55
example code displays a GUI, allowing the user to enter the constitutive parameters,
and calculates the plane wave parameters as well as creating a plot of the electric
and magnetic fields. Figure 2.14 shows the solution to this example obtained from
plane waves example.py.
Consider an interface between two media where media 1 has the following constitutive
parameters: r = 1.3, µr = 1.0, σ = 0.01 S/m. Media 2 has the following constitutive
parameters: r = 2.8, µr = 1.0, σ = 0.01 S/m. The operating frequency is 300 MHz.
Plot the reflection and transmission coefficients for both parallel and perpendicular polar-
ization. Also calculate the critical and Brewster angles if they exist.
Solution: The solution to the above example is given in the Python code reflec-
tion transmission example.py and in the MATLAB code reflection transmission examp
le.m. Running the example Python code displays a GUI, allowing the user to enter the
constitutive parameters. The code then calculates the critical and Brewster angles, as
shown in Figure 2.15. As seen in this figure, both values are complex, indicating neither
of these angles exist for this interface. Also, reflection transmission example.py generates
56 Introduction to Radar Using Python and MATLAB
Figure 2.15 Critical angle, Brewster angle, transmission and reflection coefficients
calculated by reflection transmission example.py.
the plots of the reflection and transmission coefficients for both parallel and perpendicular
polarization, illustrated in Figure 2.15.
Tropospheric refraction can play a significant role in the manner in which plane waves
propagate, as was shown in Section 2.7. The following sections give examples for
apparent elevation and range, beam spreading loss, and ducting.
For this example, plot the apparent elevation angle due to refraction when the true eleva-
tion in 20o , and the height varies from 0 to 5 km.
Solution: The solution to the above example is given in the Python code appar-
ent elevation example.py and in the MATLAB code apparent elevation example.m. Run-
ning the Python example code displays a GUI, allowing the user to enter the true elevation
angle and the height. The code then produces a plot of the apparent elevation angle as a
function of height, as shown in Figure 2.16.
Electromagnetic Fields and Waves 57
In this example, calculate the apparent range due to refraction when the radar is located
at 34o latitude, 84o longitude, and has an altitude of 120 meters. The target is located at
34o latitude, 80o longitude, and has an altitude of 12 km.
Solution: The solution to the above example is given in the Python code appar-
ent range example.py and in the MATLAB code apparent range example.m. Running
the Python example code displays a GUI, allowing the user to enter the radar location
and the target location as latitude, longitude and altitude. The code then calculates both
the true and apparent range, as shown in Figure 2.17.
For this example, calculate and plot the beam spreading loss due to refraction as the
elevation angle varies from 0 to 5o , and the height varies from 0 to 5 km.
Solution: The solution to the above example is given in the Python code beam spreading
example.py and in the MATLAB code beam spreading example.m. Running the Python
58 Introduction to Radar Using Python and MATLAB
Figure 2.17 True and apparent range calculated by apparent range example.py.
example code displays a GUI, allowing the user to enter the elevation angle and height
and produces a plot of the beam spreading loss, as shown in Figure 2.18.
2.10.3.4 Ducting
In this example, calculate and plot the critical angle for ducting as a function of refrac-
tivity gradient for duct thicknesses of 10, 20, and 50 m. Allow the refractivity gradient to
vary from −150 to −500 N/km.
Solution: The solution to the above example is given in the Python code duct-
ing example.py and in the MATLAB code ducting example.m. Running the Python ex-
ample code displays a GUI, allowing the user to enter the duct thicknesses and creates
a plot of the critical angle for ducting as a function of refractivity gradient, as shown in
Figure 2.19.
The example for Earth diffraction is to calculate and plot the diffraction loss as a function
of frequency for horizontal polarization when the radar is located at 26.5o latitude, 97.0o
longitude and has an altitude of 1.0 km, and the target is located at 31.0o latitude, 96.0o
longitude and has an altitude of 13.0 km. The constitutive parameters are r = 1.3 and
σ = 0.01 S/m. The frequency range is from 1 MHz to 300 MHz.
Electromagnetic Fields and Waves 59
Solution: The solution to the above example is given in the Python code diffrac-
tion example.py and in the MATLAB code diffraction example.m. Running the Python
example code displays a GUI, allowing the user to enter the frequency range, radar lo-
cation, target location, and constitutive parameters. The code then creates a plot of the
diffraction loss as a function of frequency, as shown in Figure 2.20.
2.10.5 Attenuation
From Section 2.9, there are several mechanisms contributing to the attenuation of prop-
agating waves. These can include rain, clouds, fog, the atmosphere, and vegetation. The
following sections give examples for each of these attenuation mechanisms.
2.10.5.1 Atmospheric
As illustrated in Section 2.9.1, the attenuation due to the atmosphere is primarily due to
water vapor, oxygen, and pressure-induced nitrogen attenuation. For this example, plot
the atmospheric attenuation in the frequency range from 0 to 1000 GHz. Use a tempera-
ture of 290o K, a dry air pressure of 1013.25 hPa, and a water vapor density of 7.5 g/m3 .
Electromagnetic Fields and Waves 61
Solution: The solution to the above example is given in the Python code atmo-
sphere example.py and in the MATLAB code atmosphere example.m. Running the
Python example code displays a GUI, allowing the user to enter the frequency range,
temperature, dry air pressure, and water vapor density. The code then calculates and cre-
ates a plot of the atmospheric attenuation as a function of frequency, as shown in Figure
2.21.
2.10.5.2 Vegetation
In this example, consider the target to be located within the vegetation. Calculate and plot
the total attenuation as a function of target distance in the vegetation. Consider vegetation
with a specific attenuation of 0.39 dB/m and a maximum attenuation of 34.10 dB. Allow
the range to vary from 0 to 100 meters.
Solution: The solution to the above example is given in the Python code vegeta-
tion example.py and in the MATLAB code vegetation example.m. Running the Python
example code displays a GUI, allowing the user to enter the specific and maximum atten-
uation of the vegetation and distance within the vegetation. The code then calculates and
creates a plot of the vegetation attenuation as a function of distance within the vegetation,
as shown in Figure 2.22.
62 Introduction to Radar Using Python and MATLAB
2.10.5.3 Rain
For this example, calculate and display the specific attenuation due to rain in the fre-
quency range from 1 to 1000 GHz. Assume the rain rate is 5 mm/hr, the elevation angle
is 10o , and the polarization tilt angle is 45o (circular polarization).
Solution: The solution to the above example is given in the Python code rain example.py
and in the MATLAB code rain example.m. Running the Python example code displays
a GUI, allowing the user to enter the frequency range, rain rate, elevation angle, and
polarization tilt angle. The code then calculates and creates a plot of the rain attenuation
as a function of frequency, as shown in Figure 2.23.
In this example, calculate and create a plot of the specific attenuation due to fog as a
function of frequency. Allow the frequency to vary from 1 to 200 GHz. Assume a heavy
fog with a visibility of about 50 meters. This corresponds to a fog density of 0.5 g/m3 at
a temperature of 290o K.
Electromagnetic Fields and Waves 63
Solution: The solution to the above example is given in the Python code cloud fog ex-
ample.py and in the MATLAB code cloud fog example.m. Running the Python example
code displays a GUI, allowing the user to enter the frequency range, cloud or fog temper-
ature, and cloud or fog density. The code then calculates and creates a plot of the specific
attenuation as a function of frequency, as shown in Figure 2.24.
PROBLEMS
2.1 Describe Maxwell’s equations and their importance in the development of radar
systems.
2.2 Write Maxwell’s equations, given in (2.1)–(2.4), as eight first-order scalar equa-
tions.
2.3 For the electric field given by E = 2.3 cos(3πx) sin(6π109 t − kz) V/m, find the
magnetic field, H, and the propagation constant, k, in air.
2.4 Describe the difference between perfect electric conductors (PEC) and perfect
magnetic conductors (PMC), and the boundary conditions associated with each.
2.5 Using Table 2.3, calculate the wave propagation parameters for seawater at a
temperature of T = 25o C, a salinity of 25 ppt, and a frequency of 1.7 GHz. The
relative permeability is µr = 1.0, the relative permittivity is r ≈ 77.0 + j6.5,
and the conductivity is given by σ = 2.903602 + 8.607 × 10−2 T + 4.738817 ×
10−4 T 2 − 2.991 × 10−6 T 3 + 4.3047 × 10−9 T 4 S/m.
2.6 Describe Snell’s laws of reflection and refraction, and how these are related to the
phase matching condition.
2.7 For a uniform plane wave in air incident on a material interface, calculate the reflec-
tion and transmission coefficients for both parallel and perpendicular polarizations.
The material is defined by r = 4.0, µr = 2.3, σ = 4.0 S/m, and the incident angle
is 60o . Discuss the significance of the resulting quantities.
2.8 Find the Brewster angle (γ = 0) when the material in the first region has a relative
permittivity of r = 1.3, a relative permeability of µr = 1.0, and conductivity
of σ = 0.0 S/m. The material in the second region has a relative permittivity of
r = 2.8, a relative permeability of µr = 1.0, and conductivity of σ = 0.0 S/m.
2.9 Determine the critical angle (total reflection) when the material in the first region
has a relative permittivity of r = 1.3, a relative permeability of µr = 1.0, and
conductivity of σ = 0.0 S/m. The material in the second region is free space.
Electromagnetic Fields and Waves 65
2.10 Calculate the total loss due to beam spreading as a plane wave travels through the
atmosphere at an elevation angle of 3.0o and a height of 4.5 km.
2.11 For an atmospheric duct with a thickness of 15 m, calculate the critical angle when
the refractive gradient is 300 N/km.
2.12 For vegetation with a specific attenuation of 0.4 dB/m and a maximum attenuation
of 31.2 dB, calculate the total attenuation when a target is located at a distance of
40 m.
2.13 Calculate the attenuation due to rain when the rain rate is 4.3 mm/hr, the elevation
angle is 15o , the polarization tilt angle is 0o , and the operating frequency is 10 GHz.
2.14 Calculate the attenuation due to clouds when the cloud density is 0.7 g/m3 , the cloud
temperature is 300o K, and the operating frequency is 75 GHz.
References
[1] J. C. Maxwell. A Treatise on Electricity and Magnetism. Oxford University Press, London, UK, 1873.
[2] C. A. Balanis. Advanced Engineering Electromagnetics, 2nd ed. John Wiley and Sons, New York, 2012.
[3] J. D. Jackson. Classical Electrodynamics, 3rd ed. John Wiley and Sons, New York, 1998.
[4] D. K. Cheng. Field and Wave Electromagnetics, 2nd ed. Addison-Wesley, Reading, MA, 1989.
[5] W. Panofsky and M. Phillips. Classical Electricity and Magnetism, 2nd ed. Addison-Wesley, Reading,
MA, 1962.
[6] A. Sommerfeld. Uber die beugung der rontgenstrahlen. Annalen der Physik, 343(8):473–506, 1912.
[7] L. Lorenz. On the identity of the vibrations of light with electrical currents. Philosophical Magazine,
4(34):287–301, 1867.
[8] J. D. Jackson and L. B. Okun. Historical roots of gauge invariance. Reviews of Modern Physics, 73:663–
680, 2001.
[9] J. D. Jackson. From Lorenz to Coulomb and other explicit gauge transformations. American Journal of
Physics, 70:917, 2002.
[10] Wikipedia Contributors. Hermann von Helmholtz. https://en.wikipedia.org/wiki/Hermann von
Helmholtz.
[11] P. Moon and D.E. Spencer. Field Theory Handbook, Including Coordinate Systems, Differential Equa-
tions, and Their Solutions, 2nd ed. Springer Verlag, New York, 1988.
[12] Wikipedia Contributors. Electrical Resistivity and Conductivity. https://en.wikipedia.org/wiki/
Electrical resistivity and conductivity.
[13] M. Born and E. Wolf. Principles of Optics: Electromagnetic Theory of Propagation, Interference and
Diffraction of Light, 7th ed. Cambridge University Press, Cambridge, UK, 1999.
[14] D. Pozar. Microwave Engineering, 4th ed. John Wiley and Sons, New York, 2012.
[15] ITU-R. Effects of tropospheric refraction on radiowave propagation. Recommendation P.834-9, Interna-
tional Telecommunication Union, Geneva, 2017.
66 Introduction to Radar Using Python and MATLAB
[16] ITU-R. The radio refractive index: Its formula and refractivity data. Recommendation P.453-13,
International Telecommunication Union, Geneva, 2017.
[17] P. Alberoni, et al. Use of the vertical reflectivity profile for identification of anomalous propagation.
Meteorological Applications, 8:257–266, 2001.
[18] ITU-R. Definition of terms relating to propagation in non-ionized media. Recommendation P.310-9,
International Telecommunication Union, Geneva, 1994.
[19] ITU-R. Propagation by diffraction. Recommendation P.526-14, International Telecommunication Union,
Geneva, 2018.
[20] B. van der Pol and H. Bremmer. XIII. The diffraction of electromagnetic waves from an electrical point
source round a finitely conducting sphere, with applications to radiotelegraphy and the theory of the
rainbow. Part I. The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science,
24(159):141–176, 1937.
[21] B. van der Pol and H. Bremmer. LXXVI. The diffraction of electromagnetic waves from an electrical
point source round a finitely conducting sphere, with applications to radiotelegraphy and the theory of the
rainbow. Part II. The London, Edinburgh, and Dublin Philosophical Magazine and Journal of Science,
24(164):825–864, 1937.
[22] ITU-R. Attenuation by atmospheric gasses. Recommendation P.676-11, International Telecommunication
Union, Geneva, 2016.
[23] ITU-R. Attenuation in vegetation. Recommendation P.833-9, International Telecommunication Union,
Geneva, 2016.
[24] ITU-R. Specific attenuation model for rain for use in prediction methods. Recommendation P.838-3,
International Telecommunication Union, Geneva, 2005.
[25] ITU-R. Attenuation due to clouds and fog. Recommendation P.840-7, International Telecommunication
Union, Geneva, 2017.
[26] H. J. Liebe, G. A. Hufford and T. Manabe. A model for the complex permittivity of water at frequencies
below 1 THz. International Journal of Infrared and Millimeter Waves, 12(7):659–675, 1991.
Chapter 3
Antenna Systems
Chapter 2 discussed how radar systems make use of the transmission, reflection, and
reception of electromagnetic energy to determine the presence, direction, distance, veloc-
ity, and other features about targets of interest to the radar. The antenna is the device for
transmitting and receiving electromagnetic energy. Depending on the application, radar
systems use various types of antennas, including single elements, dishes, lenses, and ar-
rays. This chapter introduces the antenna parameters needed to describe the performance
and characteristics of an antenna system. Various types of radiating elements such as
linear wire, loop, and aperture antennas are then analyzed. Combining radiating elements
into antenna arrays is covered, and the chapter concludes with several Python examples
to demonstrate antenna theory and analysis.
This section deals with various parameters describing the performance and characteristics
of an antenna system. Not all of the parameters are independent and may not need to be
specified. In addition, certain parameters will be more important than others depending
on the type of antenna system and the requirements on the system. This section will cover
the more important parameters common across various types of antenna systems.
The antenna pattern or radiation pattern of an antenna is defined as “The spatial dis-
tribution of a quantity that characterizes the electromagnetic field generated by an an-
tenna” [1]. The distribution may be given as an equation, a set of measured data, or a
graphical representation. The quantities most often considered are power density, radia-
tion intensity, gain, and electric field strength. For radar applications, the antenna pattern
is most often found in the far field of the antenna, as discussed in Section 3.1.1.1. The
67
68 Introduction to Radar Using Python and MATLAB
Sidelobes
antenna pattern is usually given in terms of the angular direction coordinates (θ, φ). While
the full three-dimensional antenna pattern may be measured or calculated, a few patterns
as a function of θ, for a few values of φ, often provide the most useful information. These
are referred to as pattern cuts, and an example pattern cut is given in Figure 3.1. The
most important directions, also known as principal directions, are chosen for the pattern
cuts. For linearly polarized antennas, the E-plane and H-plane directions are used. The
E-plane is defined as “the plane containing the electric-field vector and the direction of
maximum radiation,” and the H-plane is “the plane containing the magnetic-field vector
and the direction of maximum radiation” [1].
Referring to Figure 3.1, different angular regions of the antenna pattern are referred
to as lobes. The IEEE defines lobes as “the portion of the antenna pattern bounded by
regions of relatively weak radiation” [1]. While these regions or lobes may be divided
into several subclasses, this book will use the convention of main lobe and sidelobe, as
shown in Figure 3.1. The sidelobes represent energy radiated in an undesired direction.
The relative strength of the sidelobes is expressed as a ratio of the power density or
directivity and is called the sidelobe level. In most radar applications, it is desirable to
reduce the sidelobe level in order to minimize jammers, clutter, and false targets from
Antenna Systems 69
'
0.62 𝐷3 Τ𝜆 2 𝐷 2 Τ𝜆
being introduced through these sidelobes. While it is desirable to have low sidelobe levels
and a narrow beamwidth, lower sidelobes lead to a wider beamwidth and vice versa. This
will be shown in Section 3.2.5.5.
The area surrounding the antenna is broken into three main regions based on the field
behavior in each of the regions. These three regions are the reactive near field, radiating
near field, and far field, as illustrated in Figure 3.2.
The reactive near field region is the region immediately surrounding the antenna. In this
region, kr 1, and the terms varying as 1/kr3 are dominant. The fields in this region
are similar to those of a static electric dipole and to those of a static current element. The
electric and magnetic fields are out of phase and there is no time average power flow, no
radiated power, and all the energy is stored in the near field around the antenna.
The radiating near field is an intermediate region between the near-field and far-field
regions. In this region, kr > 1, and the dominant terms are the ones constant with respect
70 Introduction to Radar Using Python and MATLAB
to kr. The angular field distribution in this region is dependent on the distance from the
antenna. The electric and magnetic fields start to become in phase, and there is a formation
of time average power flow in the outward direction. The distance to the radiating near
field is given by
p
R1 = 0.62 D3 /λ, (m), (3.1)
where D is the largest dimension of the antenna, as shown in Figure 3.2. If the antenna
has a maximum dimension that is not large compared to the wavelength, this region may
not exist.
Far Field
In the far field region, kr 1, and the terms involving 1/r are dominant. In this region,
there are no radial field components and the angular field distribution does not vary with
the distance from the antenna. Furthermore, the radiating fields are transverse electromag-
netic and have properties described in Section 2.5. In many radar applications, the target
is in the far field of the radiating antenna. For antennas larger than a half wavelength, the
distance to the far field is defined by the Fraunhofer distance [2], which is given by
2D2
R2 = (m). (3.2)
λ
3.1.2 Beamwidth
With respect to the main lobe, an important figure of merit is the beamwidth, which is
illustrated in Figure 3.3. The beamwidth gives a measure of the angular resolution of
the antenna. This beamwidth provides information about the radar system’s capability to
distinguish between two adjacent targets. A smaller beamwidth provides more angular
resolution between targets. In other words, a radar system with a smaller beamwidths
may resolve targets that are more closely spaced in angle than a system with a larger
beamwidth. The two quantities most often given are the half-power beamwidth and the
first-null beamwidth, shown in Figure 3.3. The half-power beamwidth is found from the
angle between the two directions where the antenna pattern is one half the maximum
value. Similarly, the first-null beamwidth is the angle between the two directions where
the first nulls from the main lobe of the antenna pattern occur. Other definitions are some-
times used, including the 10-dB beamwidth, which is the angular separation between the
two locations that are 10 dB lower than the peak value. In practice, if the term beamwidth
is used with no other qualifier, it is taken to be the half-power or 3-dB beamwidth.
Antenna Systems 71
Half-Power Beamwidth
10-dB Beamwidth
First-Null Beamwidth
In radar applications, the antenna is used to focus the transmitted power on the target of
interest. The Poynting vector is used to study the power associated with an electromag-
netic wave, and is given here as
~ =E
W ~ ×H
~ (W/m2 ), (3.3)
where
~
E = instantaneous electric field intensity (V/m),
~
H = instantaneous magnetic field intensity (A/m),
~
W = instantaneous Poynting vector (W/m2 ).
Since radar applications involve time-varying fields, it is desirable to calculate the average
power density incident on a target. Considering time harmonic electromagnetic fields, and
using (2.8) and (2.9), the time average Poynting vector is written as
72 Introduction to Radar Using Python and MATLAB
Typically, this surface is taken to be a sphere with a large radius, such that E and H are
far-field values.
The radiation intensity associated with an antenna is defined by the IEEE as, “In a given
direction, the power radiated from an antenna per unit solid angle” [1]. The radiation
intensity is closely related to the power density and is found by multiplying the power
density by the distance squared. This is written as
r2 2
U (θ, φ) = E(θ, φ) (W/sr), (3.7)
2η
where
E(θ, φ) = far zone electric field of the antenna (V/m),
η = intrinsic impedance of the medium (ohms),
U (θ, φ) = radiation intensity (W/sr).
Since the radiation intensity is the power per unit solid angle, the total power radiated by
the antenna is found by integrating the radiation intensity over the entire solid angle of
4π,
‹ ˆ 2π ˆ π
Prad = U (θ, φ) dΩ = U (θ, φ) sin θ dθ dφ (W). (3.8)
0 0
Ω
Antenna Systems 73
3.1.5 Directivity
Radar systems utilize antennas to focus the transmitted energy on the target of interest.
The directivity is a measure of the degree to which an antenna focuses radiation in a
particular direction. Therefore, it is a direct measure of how well a radar system can focus
energy onto a specific target. The IEEE defines directivity as “The ratio of the radiation
intensity in a given direction from the antenna to the radiation intensity averaged over all
directions” [1]. In other words, it is the ratio of the radiation intensity in a given direction
to that of an isotropic radiator. If the direction is not given, it is taken to be the direction of
maximum radiation. The average radiation intensity, or intensity of an isotropic radiator,
is equal to the total power divided by 4π. This is expressed as
U (θ, φ) U (θ, φ)
D(θ, φ) = 4π = 4π ˆ 2π ˆ π . (3.9)
Prad
U (θ, φ) sin θ dθ dφ
0 0
From Section 3.1.2, it is desirable for the antenna beamwidth to be as small as practical in
order to have good angular resolution. Small beamwidths indicate the energy is focused
well in a particular direction and the directivity is large. This is illustrated in Figure 3.4,
where the directivity of an isotropic antenna is compared to the directivity of dipoles
of length λ/2 and λ. For first cut design and analysis purposes, it is convenient to use
approximate expressions for the directivity rather than the exact expression given in (3.9).
The directivity in the maximum direction is [2]
4π
D0 = , (3.10)
Ω
where
D0 = maximum directivity,
Ω = beam solid angle (sr).
The beam solid angle is defined by the IEEE as “The solid angle through which all the
radiated power would stream if the power per unit solid angle were constant throughout
this solid angle and at the maximum value of the radiation intensity” [1]. For antenna
patterns with one main lobe and relatively small sidelobes, the beam solid angle may
be approximated by multiplying the half-power beamwidths in any two perpendicular
planes,
Ω ≈ Θ1 Θ2 (sr), (3.11)
where
Θ1 = half-power beamwidth in one plane (rad),
Θ2 = half-power beamwidth in the perpendicular plane (rad),
Ω = beam solid angle (sr).
74 Introduction to Radar Using Python and MATLAB
D (𝜆) = 2.41
BW = 48o
D (𝜆/2) = 1.64
BW = 78o
D (isotropic) = 1
3.1.6 Gain
For radar applications, a closely related but perhaps more important parameter than
directivity is gain. From Section 3.1.5, the directivity is a measure of how well an antenna
focuses energy in a particular direction. The gain takes into account both the directionality
and the efficiency of the antenna. The antenna efficiency considers losses associated with
the antenna itself. These losses are typically due to mismatch between the feed network
and the antenna, thermal loss due to conductive materials, and dielectric losses. Often,
these are grouped into a single term simply called efficiency. The efficiency relates the
power input to the antenna to the power radiated by the antenna as
The IEEE defines gain as “The ratio of the radiation intensity in a given direction to the
radiation intensity that would be produced if the power accepted by the antenna were
isotropically radiated” [1]. This is written mathematically as
U (θ, φ)
G(θ, φ) = 4π , (3.16)
Pin
where
U (θ, φ) = radiation intensity in the (θ, φ) direction (W/sr),
Pin = power input to the antenna (W),
G(θ, φ) = antenna gain in the (θ, φ) direction.
Gain is a function of direction, and as with directivity, if the direction is not specified, the
gain is taken to be in the direction of maximum radiation. Using the antenna efficiency in
(3.15) allows the gain to be written in terms of the directivity as
3.1.7 Bandwidth
The bandwidth of an antenna is considered to be the range of frequencies over which the
antenna parameters fall within the bounds of some performance metrics. Since antenna
parameters do not vary the same with frequency, there is no single characterization of
bandwidth. For example, the antenna pattern of an electrically short linear dipole varies
far less with frequency than the input impedance. Therefore, the input impedance is the
limiting parameter when considering the antenna operating bandwidth. For narrowband
antennas, the bandwidth is expressed as a percentage of the center operating frequency as
Fupper − Flower
BW = × 100 (%), (3.19)
Fcenter
where
Fcenter = center operating frequency (Hz),
Fupper = upper limit of operation (Hz),
Flower = lower limit of operation (Hz),
BW = antenna operating bandwidth (%).
For broadband antennas, the bandwidth is expressed as a ratio of the upper operating
frequency to the lower operating frequency. The definition of broadband is somewhat
ambiguous and greatly depends on the antenna type. If the antenna pattern and the antenna
input impedance fall within performance limits over a bandwidth of 2:1, the antenna is
typically considered to be broadband.
3.1.8 Polarization
Polarization refers to the orientation of the electric field of an electromagnetic wave. Since
the antenna is the mechanism by which the radar radiates energy, it is the antenna design
that determines the polarization of the transmitted electromagnetic wave. Analogous to
the antenna pattern, the polarization is also a function of (θ, φ) and thus varies with
direction. In general, the electric field traces out an elliptical path as a function of time.
For radar applications, there are two important special cases of elliptical polarization,
namely linear and circular polarization.
3.1.8.1 Linear
For linearly polarized waves, the electric field vector is always in the same plane. Within
linear polarization, consider vertical and horizontal polarization, as shown in Figure 3.5.
Antenna Systems 77
𝑦 𝑦
𝐸
𝑥 𝑥
Vertically polarized waves tend to be less affected by reflections over the transmission
path, while horizontal polarization tends to be less affected by man-made objects. Linear
polarization may be achieved by an electric field that either has a single component or
two orthogonal components either in phase or 180 degrees out of phase.
3.1.8.2 Circular
With circularly polarized waves, the electric field vector traces a circle at a point as a
function of time, completing one full turn per cycle. To achieve circular polarization the
electric field must have two orthogonal components of the same amplitude and a phase
difference that is an odd multiple of π/2. The sense of rotation may be either clockwise
(right hand) or counterclockwise (left hand), as shown in Figure 3.6, and is determined
by the phase leading component of the electric field.
Polarization mismatch occurs when the transmitting antenna and the receiving antenna do
not have the same polarization or they are not aligned. Polarization mismatch results in a
loss in received power and degradation in overall system performance. This is commonly
referred to as the polarization loss factor. The incoming electric field may be written as
𝑦 𝑦
𝐸𝑦 𝐸𝑦
𝐸 𝐸
𝐸𝑥 𝑥 𝐸𝑥 𝑥
and the polarization of the electric field of the receiving antenna is represented by
In radar systems, there are many different types of antennas used for different applica-
tions. These range from simple wire antennas to complex arrays with active elements
capable of digital beamforming and pattern synthesis. The following sections cover some
of the more common types of antennas used for radar applications.
While these types of antennas are some of the oldest, they are still in use in radar systems
today. They have the advantage of being cheap, easy to design, and easy to fabricate. The
treatment of the infinitesimal dipole is saved for Chapter 4, and this analysis begins with
small finite length dipoles.
Consider a small dipole whose length is on the order of λ/50 < l < λ/10. For dipole
antennas of this size, a good approximation of the current distribution is triangular, as
shown in Figure 3.7. The triangular current distribution is written as
2 0
I 0 1 − z ẑ for 0 ≤ z 0 ≤ l/2
l
I(x0 , y 0 , z 0 ) = (3.25)
2
I0 1 + z 0 ẑ for − l/2 ≤ z 0 < 0,
l
where
l = length of the dipole (m),
I0 = peak current at the center of the dipole (A),
z0 = source coordinate along the z direction (m),
I = current distribution on the dipole (A).
Following the procedure of computing the fields from sources given in Section 2.4.2, the
far zone electric and magnetic fields are
k I0 l e−jkr
Er ≈ 0, Eφ ≈ 0, Eθ = jη sin θ (V/m), (3.26)
8πr
k I0 l e−jkr
Hr ≈ 0, Hθ ≈ 0, Hφ = j sin θ (A/m). (3.27)
8πr
80 Introduction to Radar Using Python and MATLAB
] ]
\ ,R &XUUHQW
𝑙
[ [
Figure 3.7 Current distribution on a small dipole of length λ/50 < l < λ/10.
From the fields in (3.26) and (3.27), and using the definitions of Section 3.1, the directivity
is found to be 1.5, and the half-power beamwidth is 90o . The maximum effective aperture
is
3λ2
Ae = (m2 ), (3.28)
8π
and the radiation resistance is
2
l
2
Rr = 20 π (ohms). (3.29)
λ
The analysis of finite length dipole antennas follows the same procedure as the previous
section. However, the current distribution needs to be changed to a sinusoidal form. For
these types of antennas, the length is considered to be much greater than the radius of the
wire. This allows the current distribution on the wire to be written as
l 0
I0 k −z ẑ for 0 ≤ z 0 ≤ l/2
2
I(x0 , y 0 , z 0 ) = (3.30)
l
+ z 0 ẑ for − l/2 ≤ z 0 < 0,
I k
0
2
Using the current distribution of (3.30) and following the procedure given in Section
2.4.2, the far zone electric and magnetic fields are
Antenna Systems 81
" #
kl kl
e−jkr cos 2 cos θ − cos 2
Eθ = j η I0 (V/m). (3.31)
2πr sin θ
" #
kl kl
e−jkr cos 2 cos θ − cos 2
Hφ = j I0 (A/m). (3.32)
2πr sin θ
Using the electric field given in (3.31) and the definition in (3.7), the radiation intensity
for the finite length dipole is
"
kl
kl
#2
|I0 |2 cos 2 cos θ − cos 2
U =η 2 (W/sr). (3.33)
8π sin θ
Using (3.33) and (3.8), the power radiated is
ˆ 2π ˆ π
"
kl
kl
#2
|I0 |2 cos 2 cos θ − cos 2
Prad =η 2 sin θ dθ dφ (W). (3.34)
8π 0 0 sin θ
η|I0 |2 h 1
Prad = γ + ln(kl) − Ci (kl) + sin (kl) Si (2kl) − 2Si (kl)
4π 2
1 i
+ cos(kl) γ + ln(kl/2) + Ci (2kl) − 2Ci (kl) (W), (3.35)
2
where γ is the Euler-Mascheroni constant (≈ 0.5772) and Si , Ci are the sin and cos
integrals given by
ˆ x ˆ x
sin z cos z
Si = dz, Ci = dz. (3.36)
0 z ∞ z
The radiation resistance is then found as
2 Prad η h 1
Rr = 2
= γ + ln(kl) − Ci (kl) + sin (kl) Si (2kl) − 2Si (kl)
|I0 | 2π 2
1 i
+ cos(kl) γ + ln(kl/2) + Ci (2kl) − 2Ci (kl) (ohms). (3.37)
2
82 Introduction to Radar Using Python and MATLAB
The directivity is found from (3.9), (3.33), and (3.35), and the maximum effective
aperture is
λ2 D0
Ae = (m2 ). (3.38)
4π
3.2.2 Loop Antennas
Similar to the linear wire antenna, the loop antenna is also easy to fabricate, easy to
analyze, and inexpensive to build. Loops are generally classified as either electrically
small, where the circumference is less than a tenth of a wavelength, or electrically large,
where the circumference is about a wavelength. Small loops are not effective radiators
and are usually used as probes or other receiving type elements, whereas the large circular
loops are typically used in array configurations. This section covers both small circular
loops and constant current loops.
Assume a small circular loop in the x-y plane, as shown in Figure 3.8. The wire is very
thin such that the current distribution is Iφ = I0 . To determine the fields radiated by
a small circular loop, follow the same procedure as for the linear dipole. The vector
potential for this current distribution is
ˆ
µ e−jkr 0
A= I dl (3.39)
4π r
C
where
C = the contour around the loop,
dl0 = differential length on the loop (m),
I = current distribution on the loop (A),
A = vector potential.
Using (3.39) and (3.41) allows the electric and magnetic fields to be written as
Antenna Systems 83
]
Field Point
U
U’
𝑑𝜙′ \
𝐼𝜙 = 𝐼0
𝑎
𝑑𝑙 ′ = 𝑎 𝑑𝜙′
[
Figure 3.8 Current distribution on a small circular loop.
e−jkr
Eφ = η sin θ I0 (ka)2 (V/m), (3.42)
4r
e−jkr
Hθ = − sin θ I0 (ka)2 (A/m), (3.43)
4r
where
a = radius of the loop (m),
k = wavenumber at the operating frequency (rad/m),
η = wave impedance (ohms),
θ = angle to the field point (rad),
r = distance to the field point (m),
I0 = current on the loop (A),
Eφ = electric field intensity (V/m),
Hθ = magnetic field intensity (A/m).
(ka)4
U = η |I0 |2 sin2 θ (W/sr). (3.44)
32
Integrating the radiation intensity over a closed sphere gives the total radiated power as
π
Prad = η (ka)4 |I0 |2 (W). (3.45)
12
The radiation resistance is found as
2 Prad π
Rr = 2
= η (ka)4 (ohms). (3.46)
|I0 | 6
The radiation resistance in (3.46) is small and makes the small loop inefficient as a
radiating element. The resistance can be increased by adding more turns. For a loop
comprised of N turns, the radiation resistance becomes
π 2
Rr = η (ka)4 N (ohms). (3.47)
6
For example, a loop with a radius equal to λ/30 has a radiation resistance of ≈ 0.38 Ω. A
loop with the same radius and 10 turns has a radiation resistance of ≈ 38 Ω. Using (3.44)
and (3.45) the directivity of a small circular loop is
Umax
D0 = 4π = 1.5, (3.48)
Prad
and its maximum effective aperture is
2
λ 3λ2
Ae = D0 = (m2 ). (3.49)
4π 8π
Since the antenna pattern of the small circular loop is the same as the short linear dipole,
their directivity and maximum effective aperture are identical.
Consider a circular loop antenna with a radius that is not considered small but does have
a constant current distribution. Following the same procedure as for the small circular
loop antenna in Section 3.2.2.1 allows the fields for a constant current loop antenna to be
written as
e−jkr
Eφ = a k η I0 J1 (ka sin θ) (V/m), (3.50)
2r
e−jkr
Hθ = −a k I0 J1 (ka sin θ) (A/m), (3.51)
2r
Antenna Systems 85
where
a = radius of the loop (m),
k = wavenumber at the operating frequency (rad/m),
η = wave impedance (ohms),
θ = angle to the field point (rad),
r = distance to the field point (m),
I0 = current on the loop (A),
J1 = Bessel function of the first kind of order 1,
Eφ = electric field intensity (V/m),
Hθ = magnetic field intensity (A/m).
Using the electric field from (3.50) along with (3.7), the radiation intensity is
|I0 |2 2
U = (a ω µ)2 J (ka sin θ) (W/sr), (3.52)
8η 1
where ω = 2πf , and f is the operating frequency in Hz. The total power radiated is found
by integrating (3.52) over a closed sphere, and is
ˆ π
|I0 |2
Prad = π (a ω µ)2 J 2 (ka sin θ) sin θ dθ (W). (3.53)
4η 0 1
Assuming the radius of the loop is larger than half a wavelength, the integral in (3.53)
may be approximated, and the total power radiated is given by
|I0 |2
Prad ≈ π (a ω µ)2 (W). (3.54)
4ηka
Using the expression in (3.54) the radiation resistance is
2 Prad ka
Rr = 2
= ηπ (ohms). (3.55)
|I0 | 2
The directivity is found to be
Umax
D0 = 4π = 2 ka (0.58)2 . (3.56)
Prad
The maximum of the radiation intensity, Umax , is when ka sin θ = 1.84, and J12 (1.84) ≈
0.58. The maximum effective aperture is
2
λ λ2 ka
Ae = D0 = (0.58)2 (m2 ). (3.57)
4π 4π
86 Introduction to Radar Using Python and MATLAB
While some aperture antennas radiate through an opening, the term aperture has more
to do with the method by which these types of antennas are analyzed rather than their
physical characteristics. For example, open-ended waveguides, horn antennas, microstrip
antennas, reflector antennas, and lens antennas are all considered aperture antennas. In the
previous sections, the radiation from antennas was found from the current distribution.
For aperture antennas however, the radiated fields are not determined from a current
distribution but rather the fields on or in the vicinity of the antenna structure. One method
for accomplishing this is through the use of the equivalence principle, in which the actual
sources are replaced by equivalent sources. These equivalent sources are mathematical
and are equivalent in the sense they produce the same fields as the actual sources within a
defined region. While this is outside the scope of this book, the reader is referred to a few
excellent texts covering the subject [3–5]. Due to size constraints, aperture antennas are
usually found at microwave and millimeter frequencies. In radar applications, the aperture
opening is typically covered to protect from environmental conditions such as moisture
and dirt. The following sections consider rectangular and circular apertures with various
field distributions on the aperture.
The rectangular aperture is one of the most common microwave antennas. Consider a
rectangular aperture with a uniform field distribution on an infinite ground plane, as
illustrated in Figure 3.9. The uniform field distribution in the aperture is given by
E0 ŷ for − a/2 ≤ x0 ≤ a/2, −b/2 ≤ y 0 ≤ b/2
Ea = (V/m), (3.58)
0 otherwise
where E0 is a constant, a is the aperture width, and b is the aperture height. The far-zone
radiated fields from this aperture are found by using the equivalence principle and are
given here as [2]
Er = 0, Hr = 0, (3.59)
e−jkr
sin X sin Y
Eθ = j a b k E 0 sin φ , (3.60)
2πr X Y
e−jkr
sin X sin Y
Eφ = j a b k E 0 cos θ cos φ , (3.61)
2πr X Y
Antenna Systems 87
]
Field Point
U
U’
𝑎
\
Uniform Field 𝑑𝑥′
𝑑𝑦′
𝑏 Ground Plane
[
Figure 3.9 Rectangular aperture with a uniform distribution on an infinite ground plane.
e−jkr
sin X sin Y
Hθ = −j a b k E0 cos θ cos φ , (3.62)
2πηr X Y
e−jkr
sin X sin Y
Hφ = j a b k E0 sin φ , (3.63)
2πηr X Y
where
ka
X = sin θ cos φ,
2
kb
Y = sin θ sin φ,
2
θ, φ = angular direction to the field point (rad),
a = aperture width (m),
b = aperture height (m),
k = wavenumber (rad/m),
η = wave impedance (ohms).
From Section 3.1.1, the principal directions contain the most useful information. For this
case, the E-plane is when φ = π/2, and the H-plane corresponds to φ = 0. As can be seen
in (3.59), the antenna pattern in the E-plane is a function of dimension b, and the H-plane
pattern is a function of the dimension a. These patterns are plotted in Figure 3.10. The
first sidelobe in both the E- and H-plane is −13.26 dB below the peak of the main lobe.
88 Introduction to Radar Using Python and MATLAB
10
Normalized |E| (dB)
20
30
40
50
60
0 20 40 60 80
Theta (degrees)
Figure 3.10 E- and H-plane antenna patterns for a rectangular aperture with a uniform
distribution on an infinite ground plane, with dimensions a = 2λ and b = 1λ.
The maximum effective aperture for this case is simply the physical area of the aperture
and the maximum directivity is
ab
D0 = 4π . (3.64)
λ2
The next rectangular aperture studied has a uniform field distribution but is now in free
space rather than on an infinite ground plane, as illustrated in Figure 3.11. The field
distribution for this case is given by
E0 ŷ for − a/2 ≤ x0 ≤ a/2, −b/2 ≤ y 0 ≤ b/2
Ea = (V/m), (3.65)
0 otherwise
Antenna Systems 89
] Field Point
U U’
𝑎
\
Uniform Field 𝑑𝑥′
𝑑𝑦′
𝑏
[
Ha = η (A/m), (3.66)
0 otherwise
where E0 is a constant, a is the aperture width, and b is aperture height. The far zone
electric and magnetic fields are found to be
Er = 0, Hr = 0, (3.67)
e−jkr
sin X sin Y
Eθ = j a b k E 0 sin φ (1 + cos θ) , (3.68)
4πr X Y
e−jkr
sin X sin Y
Eφ = j a b k E0 cos φ (1 + cos θ) , (3.69)
4πr X Y
e−jkr
sin X sin Y
Hθ = −j a b k E0 cos φ (1 + cos θ) , (3.70)
4πηr X Y
90 Introduction to Radar Using Python and MATLAB
]
Field Point
U
U’
𝑑𝑥′
𝑎 𝑑𝑦′
𝑏 Ground Plane
[
Figure 3.12 Rectangular aperture with a TE10 distribution in an infinite ground plane.
e−jkr
sin X sin Y
Hφ = j a b k E0 sin φ (1 + cos θ) . (3.71)
2πηr X Y
The first sidelobe, in both the E- and H-planes, and the maximum directivity are identical
to that of the aperture in the ground plane given in (3.64).
The final rectangular aperture analyzed has a field distribution of the TE10 waveguide
mode and is in an infinite ground plane, as shown in Figure 3.12. The field distribution
for the TE10 mode is given by
E0 cos πx ŷ
for − a/2 ≤ x0 ≤ a/2, −b/2 ≤ y 0 ≤ b/2
Ea = a (V/m), (3.72)
0 otherwise
where E0 is a constant. The far zone electric and magnetic fields are given by
Er = 0, Hr = 0, (3.73)
Antenna Systems 91
e−jkr
cos X sin Y
Eθ = −j a b k E0 sin φ , (3.74)
4r X 2 − (π/2)2 Y
e−jkr
cos X sin Y
Eφ = −j a b k E0 cos φ cos θ , (3.75)
4r X 2 − (π/2)2 Y
e−jkr
cos X sin Y
Hθ = j a b k E0 cos φ cos θ , (3.76)
4ηr X 2 − (π/2)2 Y
e−jkr
cos X sin Y
Hφ = −j a b k E0 sin φ . (3.77)
4ηr X 2 − (π/2)2 Y
The first sidelobe in the E-plane is −13.26 dB below the peak of the main lobe, and in
the H-plane is −23 dB below the peak. The maximum directivity is
8 ab
D0 = 2 4π . (3.78)
π λ2
The maximum effective aperture for this case is
8ab
Ae = (m2 ). (3.79)
π2
3.2.3.2 Circular Apertures
Circular apertures are quite common as microwave antennas because they are relatively
easy to construct, and closed form expressions exist for all the modes of field distributions
existing on such an aperture. The analysis procedure is the same as for rectangular
apertures, with the field distribution being the main difference.
For this case, consider a circular aperture in an infinite ground plane that has a uniform
field distribution on the aperture, as illustrated in Figure 3.13. The uniform field distribu-
tion in the aperture is given by
E0 ŷ for ρ0 ≤ a
Ea = (V/m), (3.80)
0 otherwise
where E0 is a constant, and a is the radius of the aperture. The far zone electric and
magnetic fields are found to be
Er = 0, Hr = 0, (3.81)
92 Introduction to Radar Using Python and MATLAB
] Field Point
U
U’
𝑎
\
𝑑𝑟′ 𝑟 ′ 𝑑𝜙′
Ground Plane
[
e−jkr
2 J1 (ka sin θ)
Eθ = j k a E0 sin φ , (3.82)
r ka sin θ
e−jkr
J1 (ka sin θ)
Eφ = j k a2 E0 cos θ cos φ , (3.83)
r ka sin θ
e−jkr
J1 (ka sin θ)
Hθ = −j k a2 E0 cos θ cos φ , (3.84)
ηr ka sin θ
e−jkr
2 J1 (ka sin θ)
Hφ = j k a E0 sin φ . (3.85)
ηr ka sin θ
The principal E- and H-planes for this case occur at φ = π/2 and φ = 0, respectively.
The first sidelobe in the E- and H-planes is −17.6 dB below the peak of the main lobe.
The maximum effective aperture for this case is equal to the physical area of the aperture
and the maximum directivity is
2
2π a
D0 = . (3.86)
λ
Antenna Systems 93
Er = 0, Hr = 0, (3.88)
e−jkr
J1 (ka sin θ)
Eθ = j k a E0 J1 (χ011 ) sin φ , (3.89)
r ka sin θ
e−jkr
J1 (ka sin θ)
Hφ = j k a E0 J1 (χ011 ) sin φ . (3.92)
ηr ka sin θ
The first sidelobe in the E-plane is −17.6 dB below the peak of the main lobe and the
first sidelobe in the H-plane is −26.2 dB below the peak. The maximum directivity is
2
2πa
D0 = 0.836 . (3.93)
λ
The maximum effective aperture for this case is
Horn antennas are used in many applications as feed horns for reflector and lens antennas,
as standard gain calibration antennas, and as elements in larger antenna arrays. The pop-
ularity of horn antennas is in part due to their simple design, relatively wide bandwidth,
and moderately high gain. Since horn antennas typically have no resonant structures, they
can operate over bandwidths of 10:1 and higher. Horn antennas can have many different
geometries and are flared out from the waveguide opening, as shown in Figure 3.14. A
sectoral horn has only one pair of sides flared, while the other pair of sides are parallel.
This type of geometry produces a fan-shaped antenna pattern. The pattern is narrower in
the plane of the flared sides. This section covers three of the more basic horn antenna
geometries: E-plane sectoral, H-plane sectoral, and pyramidal.
An E-plane sectoral horn has a flared opening in the direction of the electric field, as
shown in Figure 3.14. Horn antennas are analyzed in the same fashion as the aperture
antennas of Section 3.2.3. In this case, the aperture is taken to be the plane of the horn
𝐸
𝐸
𝐻
𝐻
(a) E-plane sectoral (b) H-plane sectoral
𝐸
𝐸
𝐻
𝐻
(c) Pyramidal (d) Conical
opening, and a common approximation is to assume the fields outside the aperture to be
zero. If the waveguide is operating in the dominant TE10 mode and the length of the horn
is large compared to the waveguide dimensions, then the fields at the aperture of the horn
can be shown to be [2]
Ex = 0, Ez = 0, Hy = 0, (3.95)
0
πx 02
Ey = E0 cos e−jky /(2l) , (3.96)
a
0
E0 πx 02
Hx = − cos e−jky /(2l) , (3.97)
η a
0
π E0 πx 02
Hz = j sin e−jky /(2l) (3.98)
ηka a
where
E0 = constant (V/m),
l = horn effective length (m),
a = waveguide width (m),
Er = 0, (3.99)
√ e−jkr
Eθ = −j a πk l E0
8r
2
jky l/2k cos(kx a/2)
× e sin φ(1 + cos θ)
(kx a/2)2 − (π/2)2
h i
× C(t2 ) − C(t1 )) − j(S(t2 ) − S(t1 ) , (3.100)
√ e−jkr
Eφ = −j a πk l E0
8r
jky2 l/2k cos(kx a/2)
× e cos φ(1 + cos θ)
(kx a/2)2 − (π/2)2
h i
× C(t2 ) − C(t1 )) − j(S(t2 ) − S(t1 ) , (3.101)
where
96 Introduction to Radar Using Python and MATLAB
C and S are the Fresnel sin and cos integrals, which are written as
ˆ x ˆ x
π t2 π t2
C(x) = cos dt, S(x) = sin dt, (3.102)
0 2 0 2
r r
1 kh 1 kh
t1 = − − ky l , t2 = − ky l . (3.103)
πk l 2 πk l 2
The radiation intensity for the E-plane sectoral horn is found from (3.99) and (3.7) as
4 a2 l |E0 |2
2 h 2 h
Umax = C √ +S √ (W/sr). (3.104)
η λ π2 2λ l 2λ l
The total power radiated by the E-plane sectoral horn is then found by integrating (3.104)
over a close sphere, which results in
ah
Prad = |E0 |2 (W). (3.105)
4η
Finally, the directivity for the E-plane sectoral horn is determined by
Umax 64 a l h h
D0 = 4π = C2 √ + S2 √ . (3.106)
Prad πλh 2λ l 2λ l
An H-plane sectoral horn has a flared opening in the direction of the magnetic field, as
shown in Figure 3.14. The analysis procedure is very similar to that of the E-plane horn.
If the waveguide is operating in the dominant TE10 mode and the length of the horn is
large compared to the waveguide dimensions, then the fields at the aperture of the horn
can be shown to be [2]
Ex = 0, Hy = 0, (3.107)
Antenna Systems 97
πx0
02
Ey = E0 cos e−jkx /(2l) , (3.108)
w
0
E0 πx 02
Hx = − cos e−jkx /(2l) , (3.109)
η w
where
E0 = constant (V/m),
l = horn effective length (m),
w = horn width in the flare direction (m).
From the aperture fields, the far zone electric fields found to be
Er = 0, (3.110)
r
−jkr
kl e sin Y
Eθ = j E0 sin φ (1 + cos θ)
π 8r Y
h i
0 2
ejkx l/2k (C(t02 ) − C(t01 )) − j(S(t02 ) − S(t01 ))
00 2
h i
+ ejkx l/2k
(C(t002 ) − C(t001 )) − j(S(t002 ) − S(t001 )) , (3.111)
r
k l e−jkr
sin Y
Eφ = j E0 cos φ (1 + cos θ)
π 8r Y
h i
0 2
ejkx l/2k (C(t02 ) − C(t01 )) − j(S(t02 ) − S(t01 ))
00 2
h i
jkx l/2k 00 00 00 00
+e (C(t2 ) − C(t1 )) − j(S(t2 ) − S(t1 )) , (3.112)
where
kh
Y = sin θ sin φ, (3.113)
2
r r
0 1 kw 0 1 kw
t1 = − − kx l , t02 = − 0
+ kx l , (3.114)
πk l 2 πk l 2
r r
1 kw 1 kw
t001 = − 00
− kx l , t002 = − 00
+ kx l , (3.115)
πk l 2 πk l 2
98 Introduction to Radar Using Python and MATLAB
The radiation intensity for the H-plane sectoral horn is then found to be
h2 l
2 2
Umax = |E0 |2 C(u) − C(v) + S(u) − S(v) (W/sr). (3.117)
4ηλ
where
√ ! √ !
1 λl w 1 λl w
u= √ +√ , v=√ −√ . (3.118)
2 w λl 2 w λl
As before, the total power radiated is found by integrating the radiation intensity over a
closed sphere, which leads to
wh
Prad = |E0 |2 (W). (3.119)
4η
The directivity is then
2 2
4π h l
D0 = C(u) − C(v) + S(u) − S(v) . (3.120)
wλ
3.2.4.3 Pyramidal
A pyramidal horn is flared in both the direction of the electric and magnetic fields, as
shown in Figure 3.14, and is the most widely used horn antenna. A very good approximate
form for the fields in the horn aperture is [2]
πx0
02
/lh +y 02 /le )/2
Ey = E0 cos e−jk(x , (3.121)
w
πx0
E0 02
/lh +y 02 /le )/2
Hx = − cos e−jk(x , (3.122)
η w
where
le = horn effective length in the E-plane (m),
lh = horn effective length in the H-plane (m),
w = horn width (m).
The far zone electric field generated by the aperture fields in (3.121) is
Antenna Systems 99
Er = 0, (3.123)
e−jkr
Eθ = j k E0 sin φ(1 + cos θ) I1 I2 , (3.124)
4πr
e−jkr
Eφ = j k E0 cos φ(1 + cos θ) I1 I2 , (3.125)
4πr
where
r
1 π lh jkx0 , lh /2k
C(t02 ) − C(t01 ) − j S(t02 ) − S(t01 )
I1 = e
2 k
00 2
00 0
jkx lh /2k
00 00
+e C(t2 ) − C(t1 ) − j S(t2 ) − S(t1 ) , (3.126)
and
r
π le jky 2 le /2k
I2 = e C(t2 ) − C(t1 ) − j S(t2 ) − S(t1 ) . (3.127)
k
The radiation intensity for the pyramidal horn is found from (3.123) and (3.7), and is
written as
le lh h 2 2
i
Umax = |E0 |2 (C(u) − C(v)) + (S(u) − S(v))
2η
2 h 2 h
× C +S (W/sr). (3.128)
2 λ le 2 λ le
The total power radiated by the pyramidal horn antenna is found by integrating (3.128)
over a closed sphere, which results in
wh
Prad = |E0 |2 (W). (3.129)
4η
The directivity for the pyramidal horn antennas is then found as
8π le lh h 2 2
i
D0 = (C(u) − C(v)) + (S(u) − S(v))
wh
100 Introduction to Radar Using Python and MATLAB
2 h 2 h
× C +S . (3.130)
2 λ le 2 λ le
For the pyramidal horn antenna, the directivity may also be written as
π λ2
DP = DE DH , (3.131)
32 a b
where
DE = directivity of the E-plane sectoral horn,
DH = directivity of the H-plane sectoral horn,
DP = directivity of the pyramidal horn.
The antenna patterns associated with single elements typically have low values of
directivity and wide beamwidths. In many radar applications it is desirable to have an
antenna with a narrow beamwidth (high directivity). This allows the radar to focus energy
on the target of interest and to increase angular resolution. To increase the directivity
requires an increase in the electrical size, D/λ, of the antenna. While increasing the size
of a single element does increase the directivity, another method is to assemble single-
element antennas into a geometrical pattern, as shown in Figure 3.15. Such a multi-
element antenna is referred to as an array. Arrays are usually constructed of identical
individual elements, although this is not necessary. The total field radiated by an array is
the vector addition of the field radiated by individual elements. It is assumed the current
distribution on each element is the same as if the element were isolated. To provide insight
into the process of calculating the antenna pattern of arrays, a simple two-element array
is first analyzed. This is followed by N -element linear arrays, circular arrays, and finally
planar arrays.
Consider the two-element array shown in Figure 3.16. It consists of two infinitesimal
dipoles along the x axis with a horizontal orientation. Assuming there is no coupling
between the two elements, the total electrical field is found by the vector summation of
the fields from the individual elements given (4.9). This is expressed as
" #
η k I0 l e−j (kr1 −α/2) e−j (kr2 −α/2)
Etotal =j cos θ1 + cos θ2 θ̂ (V/m), (3.132)
4π r1 r2
where α is the phase difference between the two dipoles. Considering the observation
point to be in the far field of the dipoles allows the angles and ranges for amplitude
variations to be approximated as
Antenna Systems 101
𝜃1 𝜃 𝑟
𝑟
𝜃 𝑟2 𝜃
𝑥 𝑟 𝑥
𝑑 𝑑
𝜃2
𝜃
θ1 ≈ θ2 ≈ θ (rad), (3.133)
r1 ≈ r2 ≈ r (m), (3.134)
η k I0 l j(kd cos θ+α)/2 −j(kd cos θ+α)/2
Etotal =j cos θ e +e θ̂
4π
i
η k I0 l h
= j cos θ 2 cos θ (kd cos θ + α)/2 θ̂ (V/m). (3.136)
4π
| {z } | {z }
Single Dipole Pattern Array Factor
From (3.136), the total field of the two element dipole array is equal to the field of a
single dipole at the origin multiplied by a factor. This factor is commonly referred to as
the array factor. More generically, the antenna pattern of an array antenna is
𝑟
𝑧
𝜃 Far Field
𝑁
.
𝑟
.
.
. 𝜃 𝑟
.
3
𝜃
𝑟
2
𝑑 𝜃
𝑥
1
The array factor in (3.139) can be written in an alternate more compact form as [2]
N
sin ψ
1 2
AF = . (3.140)
N 1
sin ψ
2
The factor of 1/N is necessary to normalize the array factor such that the maximum
always has a value of 1. The array factor in (3.140) has a maximum when
ψ = kd cos θmax = 0 →
− α = −kd cos θmax . (3.142)
Therefore, changing the progressive phase shift, α, between the elements points the
maximum radiation (main lobe) to any desired direction. This type of array is known
as a phased array. To steer the beam to any arbitrary angle would require a continuous
104 Introduction to Radar Using Python and MATLAB
phase shift. Often the phase shifters in radar systems have discrete values, which in turn
causes degradation in the antenna pattern.
To study nonuniform linear arrays, the array factor is written in a different form from
(3.140). For a linear array with an even or odd number of elements, the array factor is
N
X N
X +1
AFeven = an cos (2n − 1) u , AFodd = an cos 2(n − 1) u , (3.143)
n=1 n=1
where
πd
u = cos θ,
λ
2N = total elements for even case,
2N + 1 = total elements for odd case,
an = amplitude excitation for each element.
For the binomial array, the excitation coefficient for each element is found using the
binomial expansion as [6]
(m − 1)(m − 2) 2
(1 + x)m−1 = 1 + (m − 1)x + x
2!
(m − 1)(m − 2)(m − 3) 3
+ x + ... (3.144)
3!
The coefficients for various values of m are given by Pascal’s triangle, shown in Table 3.1,
which is named after French mathematician Blaise Pascal [7]. The binomial coefficients
may be calculated in Python using the SciPy implementation scipy.special.binom(n,k)
[8]. For example, in a six-element binomial array, the amplitude coefficients would be
a1 = 10, a2 = 5, a3 = 1. The advantage of the binomial array is very low sidelobes,
especially compared to the uniform array. If the element spacing is half a wavelength
(d = λ/2), then there are no sidelobes at all. The disadvantage of the binomial array is
poor directivity and larger beamwidths compared to the uniform array.
Table 3.1
Pascal’s Triangle
m an
1 1
2 1 1
3 1 2 1
4 1 3 3 1
5 1 4 6 4 1
6 1 5 10 10 5 1
Antenna Pattern
0 Uniform
Tschebyscheff
Kaiser
10 Hanning
20
Array Factor (dB)
30
40
50
60
70
80
0 25 50 75 100 125 150 175
Theta (degrees)
Figure 3.18 Comparison of window functions for antenna sidelobe reduction.
3.2.5.5 Windowing
The Chebyshev coefficients above provide a means of reducing sidelobes in the antenna
pattern. Many other sets of coefficients may be generated, each of which has trade-offs
between sidelobe level and beamwidth. These are often referred to as window functions.
SciPy has a suite of window functions for filtering and spectral estimation, many of which
may be used for finding antenna coefficients [8]. Some of the more important ones for
antenna applications include Hamming, Hanning, Kaiser, and Blackman-Harris. Figure
3.18 shows a comparison between these window functions for an eight-element linear
array with an element spacing of d = λ/2. The uniform window is seen to have the
highest sidelobes, but also the smallest beamwidth. The Kaiser window has the lowest
sidelobes and the largest beamwidth. There is a trade-off between low sidelobes and
narrow beamwidths. The chosen window must meet the performance requirements of the
system in both sidelobe level and beamwidth.
Antenna Systems 107
An extension of the linear array antenna is the planar arrays. Planar arrays are formed by
placing the radiating elements in a grid and may take on various configurations, as shown
in Figure 3.15. Planar arrays are much more versatile than single radiating elements and
linear arrays. Planar arrays are used to scan the main lobe to any point in space, have
lower sidelobes, may have more symmetrical patterns, and have many applications in
search and tracking radars, remote sensing, and communications. Referring to Figure
3.19, the array factor for a rectangular planar array is written as
M X
X N
AF = amn ej(m−1)(k dx sin θ cos φ+αx ) ej(n−1)(k dy sin θ sin φ+αy ) , (3.146)
m=1 n=1
where
dx = element spacing along the x direction (m),
dy = element spacing along the y direction (m),
αx = progressive phase shift along the x direction (rad),
αy = progressive phase shift along the y direction (rad),
amn = excitation coefficient for the (m, n)th element.
The main lobe of the planar array may be steered to any point in space. To have a single
main beam directed toward (θ0 , φ0 ), the progressive phase shift between each element in
the x and y directions is given by
Window functions are also applied to planar arrays in a similar fashion as the linear
arrays. For the planar case, a window function is applied in the x and y directions. The
window function for the two directions may or may not be identical, depending on the
requirements. For a rectangular planar array, using window functions in both the x and
y directions results in very small coefficients in the corner areas of the array. Therefore,
these elements are often not included in the design of the array. Typically, a circular
or elliptical boundary is specified and elements outside this boundary are not used, as
shown in Figure 3.20. To calculate the antenna pattern for this case, use (3.146) and set
the coefficients outside the boundary equal to zero as
window (x ) × window (y) for rmn ≤ rboundary
amn = (3.148)
0 otherwise,
where
108 Introduction to Radar Using Python and MATLAB
𝑧
Far Field
𝜃
1 2 3 𝑁𝑦 𝑦
.
.
.
2 𝜙 .
.
3 . 𝑑𝑥
.
.
.
𝑁𝑥
.
.
.
.
.
𝑥
𝑑𝑦
Another form of the planar array is the hexagonal array with a circular boundary, as
illustrated in Figure 3.21. The array factor for the hexagonal array is written as
N X
X M
AF = amn ejψmn , (3.149)
n=1 m=1
2π n
ψmn = sin θ dx m + cos φ + dy n sin φ (rad). (3.150)
λ 2
Antenna Systems 109
𝑦
𝑑𝑥
𝑑𝑦
The final antenna array type presented is the circular array, shown in Figure 3.22. For
this type of array, the radiating elements are placed on a circular path with spacing of
a ∆φ, where a is the radius, and ∆φ is the angular difference between the elements. The
normalized electric field is written as
N
X e−jkrn
E(r, θ, φ) = an (V/m), (3.151)
n=1
rn
where
p
rn = r2 + a2 − 2 a r cos ψn (m). (3.152)
For phase terms, rn is approximated by
𝑦 𝑑𝑥
𝑑𝑦
2π n
φn = (rad), (3.154)
N
and for amplitude rn ≈ r. The coefficients, an , are represented by an amplitude and
phase as
an = An ejαn , (3.155)
where An is the amplitude and αn is the phase. The array factor for the circular array is
now written as
N
X
AF (θ, φ) = An ej[ka sin θ cos(φ−φn )+αn ] . (3.156)
n=1
Antenna Systems 111
𝑧
Far Field
𝑟𝑛
𝜃
𝑎 3 𝑦
𝜙 𝜙𝑛
2
𝑁
1
3.3 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter03 and the matching
MATLAB examples are in the directory mlradar\Chapter03. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
Solution: The solution to the above example is given in the Python code linear wire
example.py and in the MATLAB code linear wire example.m. Running the Python
example code displays a GUI, allowing the user to enter the length, current, and operating
frequency of the wire antenna. The GUI allows the user to select from infinitesimal, small,
112 Introduction to Radar Using Python and MATLAB
Figure 3.23 The antenna pattern and operating parameters of a finite length dipole
calculated by linear wire example.py.
and finite length dipoles. The code then calculates and displays the total power radiated,
radiation resistance, beamwidth, directivity, and maximum effective aperture. The GUI
also displays a plot of the antenna pattern in polar format, as shown in Figure 3.23.
For this example, calculate the total power radiated, radiation resistance, beamwidth,
directivity, and maximum effective aperture of a circular loop antenna operating at a
frequency of 1 GHz with a radius of 0.1 m and a constant current of 1 A. Also calculate
and display the antenna pattern.
Solution: The solution to the above example is given in the Python code loop example.py
and in the MATLAB code loop example.m. Running the Python example code displays
a GUI, allowing the user to enter the radius, current, and operating frequency of the loop
antenna. The GUI allows the user to select from very small loops and circular loops
with a constant current. The code then calculates and displays the total power radiated,
radiation resistance, beamwidth, directivity, and maximum effective aperture. The GUI
also displays a plot of the antenna pattern in polar format, as shown in Figure 3.24.
Antenna Systems 113
Figure 3.24 The antenna pattern and operating parameters of a circular loop of constant
current calculated by loop example.py.
For this example, calculate the directivity and the E- and H-plane sidelobe levels for a
rectangular aperture in an infinite ground plane with a width of 0.5 m and a height of
0.3 m operating in the dominant TE10 mode at a frequency of 1 GHz. Also, create a 2D
contour plot of the antenna pattern as well as line plots of the principal E- and H-plane
patterns.
Solution: The solution to the above example is given in the Python code rectangu-
lar aperture example.py and in the MATLAB code rectangular aperture example.m.
Running the Python example code displays a GUI, allowing the user to enter the width,
height, and operating frequency of the aperture as well as the field distribution in the
aperture. The code then calculates and displays the directivity and the E- and H-plane
sidelobe levels. The GUI also displays the color and contour plots of the antenna pattern
and line plots of the principal E- and H-plane patterns. The line and contour plots are
shown in Figures 3.25 and 3.26, respectively.
114 Introduction to Radar Using Python and MATLAB
Figure 3.25 The principal E- and H-plane patterns of a rectangular aperture operating in
the dominant TE10 mode calculated by rectangular aperture example.py.
Figure 3.26 The antenna pattern and operating parameters of a rectangular aperture
operating in the dominant TE10 mode calculated by rectangular aperture example.py.
Antenna Systems 115
Figure 3.27 The principal E- and H-plane patterns of a circular aperture operating in the
dominant TE11 mode calculated by circular aperture example.py.
Consider a circular aperture of radius 0.5 m in an infinite ground plane. The field distri-
bution in the aperture is that of the dominant TE11 mode, and the operating frequency is
1 GHz. Calculate the directivity and sidelobe levels in the E- and H-planes. Create a 2D
contour plot of the antenna pattern as well as line plots of the principal E- and H-plane
patterns.
Solution: The solution to the above example is given in the Python code circu-
lar aperture example.py and in the MATLAB code circular aperture example.m. Run-
ning the Python example code displays a GUI, allowing the user to enter the radius and
operating frequency of the aperture as well as the field distribution in the aperture. The
code then calculates and displays the directivity and the E- and H-plane sidelobe levels.
The GUI also displays color and contour plots of the antenna pattern and line plots of the
principal E- and H-plane patterns. The line and contour plots are shown in Figures 3.27
and 3.28, respectively.
116 Introduction to Radar Using Python and MATLAB
Figure 3.28 The antenna pattern and operating parameters of a circular aperture operating
in the dominant TE11 mode calculated by circular aperture example.py.
In this example, calculate the normalized radiated power and directivity for a pyramidal
horn antenna with a waveguide width of 0.2λ, waveguide height of 0.3λ, horn width of
5.5λ, horn height of 2.75λ, E-plane effective length of 6.0λ, and H-plane effective length
of 6.0λ. Also, create a 2D contour plot of the antenna pattern as well as line plots of the
principal E- and H-plane patterns.
Solution: The solution to the above example is given in the Python code horn example.py
and in the MATLAB code horn example.m. Running the Python example code displays
a GUI, allowing the user to enter the parameters specified above as well as choosing
between E-plane sectoral, H-plane sectoral, and pyramidal horn geometries. The code
then calculates and displays the directivity and normalized power radiated. The GUI also
displays color and contour plots of the antenna pattern and line plots of the principal E-
and H-plane patterns. Figures 3.29 and 3.30 show the lines plots and contour plot.
For this example, plot the array factor for a Tschebyscheff linear array consisting of 31
elements with a spacing of λ/4. The desired sidelobe level is −30 dB, and the main lobe
Antenna Systems 117
Figure 3.29 The principal E- and H-plane patterns of a pyramidal horn antenna calculated
by horn example.py.
Figure 3.30 The antenna pattern and operating parameters of a pyramidal horn antenna
calculated by horn example.py.
118 Introduction to Radar Using Python and MATLAB
Figure 3.31 The array factor for a linear Tschebyscheff array calculated by
linear array example.py.
is to be scanned to 125o .
Solution: The solution to the above example is given in the Python code linear array
example.py and in the MATLAB code linear array example.m. Running the Python
example code displays a GUI, allowing the user to enter the parameters specified above
as well as choosing between several window types, including Tschebyscheff. The code
then calculates and displays the array factor for the specified linear array, as shown in
Figure 3.31.
Plot the array factor for a rectangular uniform planar array with 11 elements in the x
direction, 21 elements in the y direction, element spacing of λ/2 in the x direction, λ/4
in the y direction, scan angle of 30o in the θ direction , and 45o in the φ direction.
Solution: The solution to the above example is given in the Python code planar array
example.py and in the MATLAB code planar array example.m. Running the Python
example code displays a GUI, allowing the user to enter the parameters specified above
as well as choosing plot types. The code then calculates and displays the array factor as
Antenna Systems 119
Figure 3.32 The array factor for a rectangular uniform planar array calculated by
planar array example.py.
either a color, contour, or line plot for the specified rectangular uniform planar array. The
contour plot is shown in Figure 3.32.
Plot the array factor for a circular array with 40 elements, radius of 1.1λ, scan angle of
30o in the θ direction, and 30o in the φ direction.
Solution: The solution to the above example is given in the Python code circu-
lar array example.py and in the MATLAB code circular array example.m. Running the
Python example code displays a GUI, allowing the user to enter the parameters specified
above as well as choosing plot types. The code then calculates and displays the array
factor as either a color, contour, or line plot for the specified circular array. The contour
plot is shown in Figure 3.33.
120 Introduction to Radar Using Python and MATLAB
Figure 3.33 The array factor for a circular array calculated by circular array example.py.
PROBLEMS
3.1 Describe the type of antenna pattern, in terms of beamwidth, sidelobe level, directiv-
ity, and gain, that would be suitable for distinguishing closely spaced targets.
3.2 Calculate the distance to the radiating near field and the far field for the WSR-88D
weather radar operating at S-band with an antenna diameter of 8.54 m.
3.3 Find the approximate azimuth and elevation beamwidths for the WSR-88D weather
radar, which uses a center-fed parabolic dish antenna with a gain of 45.5 dB.
3.4 Determine the polarization loss factor when a linearly polarized incoming electric
field, given by Ei = Ei (x̂ + 2ŷ) V/m, is incident on a receiving antenna whose
electric vector is given by Ea = Ea (10x̂ + ŷ) V/m.
3.5 For a small dipole of length 0.25 m operating at a frequency of 100 MHz, calculate
the maximum effective aperture and the radiation resistance.
3.6 Given a small circular loop antenna with four turns of radius 0.1 m operating at a
frequency of 300 MHz, find the radiation intensity, total power radiated, radiation
resistance, and maximum effective aperture.
Antenna Systems 121
3.7 Calculate the radiation intensity, total power radiated, radiation resistance, and
maximum effective aperture for a constant current circular loop antenna with a radius
of 1.5 m operating at a frequency of 900 MHz.
3.8 For a rectangular aperture with a uniform field distribution situated in a ground plane,
find the half-power beamwidths, first-null beamwidths, maximum directivity, and
maximum effective aperture. The aperture dimensions are 0.03 × 0.1 m and the
operating frequency is 1 GHz.
3.9 Determine the maximum directivity and maximum effective aperture for a rectangu-
lar aperture with a TE10 field distribution situated in a ground plane. The aperture
dimensions are 0.07 × 0.2 m and the operating frequency is 10 GHz.
3.10 Calculate the half-power beamwidths, first-null beamwidths and maximum directiv-
ity for a circular aperture with a uniform field distribution in a ground plane. The
aperture radius is 0.15 m and the operating frequency is 2 GHz.
3.11 For a circular aperture with a TE11 field distribution in a ground plane, determine
the half-power beamwidths, first-null beamwidths, and maximum directivity. The
aperture radius is 0.08 m and the operating frequency is 4 GHz.
3.12 Calculate the radiation intensity, total power radiated, and the maximum directivity
for an E-plane sectoral horn antenna with dimensions of 5.5 × 2.75 m fed by a
waveguide of dimension 0.2 × 0.3 m, operating at a frequency of 300 MHz.
3.13 Calculate the radiation intensity, total power radiated, and the maximum directivity
for an H-plane sectoral horn antenna with dimensions of 1.3 × 6.75 m fed by a
waveguide of dimension 0.2 × 0.7 m, operating at a frequency of 600 MHz.
3.14 Calculate the radiation intensity, total power radiated, and the maximum directivity
for a pyramidal horn antenna with dimensions of 1.1 × 1.5 m fed by a waveguide of
dimension 0.2 × 0.1 m, operating at a frequency of 450 MHz.
3.15 Describe the advantages and disadvantages of using an array antenna versus a single-
element antenna for radar applications.
3.16 Using the SciPy implementation for calculating binomial coefficients, create Pascal’s
triangle shown in Table 3.1.
3.17 Calculate the Dolph-Tschebyscheff coefficients for a ten-element array with a side-
lobe level of −30 dB.
3.18 List the advantages and disadvantages of Hanning, Hamming, and Blackman-Harris
windowing functions for radar antenna applications.
122 Introduction to Radar Using Python and MATLAB
3.19 For a planar array with an element spacing of 0.5λ in the x direction and 0.25λ in
the y direction, find the phase shift between each element in the x and y directions
required to steer the main beam in the direction θ0 = 30o , φ0 = 45o .
3.20 Compute the phase shift of each element of a hexagonal planar array consisting of
three rows, and the center row contains three elements. The element spacing along
the x direction is 0.5λ, and the spacing along the y direction is 0.433λ.
References
[1] IEEE. IEEE standard for definitions of terms for antennas. IEEE Std 145-2013 (Revision of IEEE Std
145-1993), pages 1–50, March 2014.
[2] C. A. Balanis. Antenna Theory Analysis and Design, 3rd ed. John Wiley and Sons, New York, 2005.
[3] C. A. Balanis. Advanced Engineering Electromagnetics, 2nd ed. John Wiley and Sons, New York, 2012.
[4] J. D. Jackson. Classical Electrodynamics, 3rd ed. John Wiley and Sons, New York, 1998.
[5] W. C. Gibson. The Method of Moments in Electromagnetics, 2nd ed. CRC Press, Boca Raton, FL, 2015.
[6] J. S. Stone. United States Patents No. 1,643,323 and No 1,715,433.
[7] Wikipedia Contributors. B. Pascal. https://en.wikipedia.org/wiki/Blaise Pascal.
[8] E. Jones, et al. SciPy: Open source scientific tools for Python, 2001–. http://www.scipy.org/.
[9] C. L. Dolph. A current distribution for broadside arrays which optimizes the relationship between
beamwidth and side-lobe level. Proceedings IRE and Waves and Electrons, pages 489–492, May 1946.
[10] D. Barbiere. A method for calculating the current distribution of Tschebyscheff arrays. Proceedings IRE,
pages 78–82, January 1952.
[11] C. J. Drane. Useful approximations for the directivity and beamwidth of large scanning Dolph-Chebyshev
arrays. Proceedings of the IEEE, pages 1779–1787, November 1968.
[12] B. R. Mahafza and A. Elsherbeni. MATLAB Simulations for Radar Systems Design. Chapman and
Hall/CRC, New York, 2003.
Chapter 4
The Radar Range Equation
In its basic form, the radar range equation estimates the power at the input to the receiver
for a target of a given radar cross section at a specified range. While the equation is
simple, it is often misunderstood and used incorrectly. There are numerous versions of
the radar range equation as well as various derivations. Different forms of the radar range
equation allow for studies of particular values of interest, such as maximum detection
range, noise effects, output signal to noise ratio, and others. The derivation of the radar
range equation begins by studying the fields radiated by an infinitesimal dipole. While it is
difficult to physically realize such a radiating element, it provides insight into phenomena
often passed over in other derivations. Next, a basic form of the radar range equation is
examined, and the effects of noise and losses are included. Then a special version of
the radar range equation for search-specific missions is derived. The final special case
considered is for bistatic radar configurations. The chapter concludes with several Python
examples to illustrate the application of various forms of the radar range equation.
The study of the radar range equation begins with the Hertzian dipole. This is a very
simplistic radiating element and is often referred to as an infinitesimal dipole. This type
of radiating element is characterized by a length much less than the wavelength and
has a uniform current distribution as shown in Figure 4.1. While this is very difficult
to implement, there are many advantages to studying this type of radiating element. It
is useful as a building block for analyzing larger wire antennas and for studying the
radar range equation. To solve for the fields radiated from the Hertzian dipole, begin by
calculating the vector potential A. Recall from (2.50) that the vector potential for the
Hertzian dipole is written as
123
124 Introduction to Radar Using Python and MATLAB
] ]
&XUUHQW
\ ,R
ǻ]
[ [
ˆ ˚
µ e−jkr 0 µ e−jkr 0 0 0
A(r) = J(r0 ) dv = J(x0 , y 0 , z 0 ) dx dy dz . (4.1)
4π V0 r 4π r
e−jkr
A(r) = µIo ∆z ẑ. (4.3)
4πr
The magnetic field radiated by the Hertzian dipole is found from (2.32), and is
∇×A
H= (A/m). (4.4)
µ
Expanding the curl of the vector potential gives
e−jkr
jk 1
∇ × A = µIo ∆z sin θ + 2 φ̂. (4.5)
4π r r
The magnetic field is therefore
e−jkr
1
H = Io ∆z sin θ jk + φ̂ (A/m). (4.6)
4πr r
The Radar Range Equation 125
e−jkr
1 j
E = 2η Io ∆z cos θ − 2 r̂
4πr r kr
e−jkr
1 1
+jηk Io ∆z sin θ 1 + − θ̂ (V/m). (4.8)
4πr jkr (kr)2
4.1.1 Radiated Power
To determine the power radiated by the Hertzian dipole, the far-field electric and magnetic
fields must first be found. From Section 3.1.1.1, the terms involving 1/r are dominant in
the far field. Therefore, the electric and magnetic far fields for the Hertzian dipole are
written as
e−jkr
E ≈ j η k Io ∆z sin θ θ̂ (V/m), (4.9)
4πr
e−jkr
H ≈ j k Io ∆z sin θ φ̂ (A/m). (4.10)
4πr
The radiated power density is calculated from the time average complex Poynting vector
as [1]
E × H∗ Eθ Hφ∗
Pd = = r̂ (W/m2 ). (4.11)
2 2
Substituting (4.9) and (4.10) into (4.11) gives
" #2
η k Io ∆z
Pd = sin θ r̂ (W/m2 ). (4.12)
2 4πr
The power density is real-valued and varies as 1/r2 . This means if the distance to the
target is doubled, then the power loss is quadrupled. To compute the total power radiated,
integrate the power density, Pd , over a sphere as
ˆπ ˆ2π
Prad = Pd · r2 sin θ dθ dφ r̂ (W). (4.13)
0 0
126 Introduction to Radar Using Python and MATLAB
Recall from Section 3.1.4, the radiation intensity is a far-field parameter, and is defined
as the power radiated per unit solid angle in a given direction. To calculate the radiation
intensity, multiply the power density by the square of the distance [2]
U = r2 Pd (W/sr). (4.15)
The total power radiated is related to the radiation intensity as
ˆ ˆ ˆ
1
Prad = E × H ∗ · dS = U (θ, φ) sin θ dθ dφ (W). (4.16)
2 S
From this, the radiation intensity for the Hertzian dipole is given by
2
η k Io ∆z
U (θ, φ) = sin θ (W/sr). (4.17)
2 4π
From Section 3.1.5, the directivity of an antenna is a dimensionless unit, and is defined
as the ratio of the radiation intensity in a given direction from the antenna to the radiation
intensity averaged over all directions. Using the radiation intensity for the Hertzian dipole
from the previous section, the directivity is calculated as
4π U (θ, φ) 3
D(θ, φ) = = sin2 θ. (4.18)
Prad 2
Using (3.16), the gain of the Hertzian dipole is written as
U (θ, φ)
G(θ, φ) = ea 4π = ea D(θ, φ). (4.19)
Prad
The power density in terms of the antenna directivity and radiated power is written as
2 2
η k Io ∆z π Io ∆z 3 2 1
Pd = sin θ =η sin θ (W/m2 ). (4.20)
2 4πr 3 λ 2 4πr2
| {z } | {z } | {z }
Power radiated Directivity Area of a sphere
The Radar Range Equation 127
Power density, 𝑃𝑑 , on
the surface of a sphere. Target Position
Radar Position
Therefore, the power density in terms of antenna gain and input power is
From the previous section, the power density at the target at a given distance, as shown
in Figure 4.2, is
Pin G(θ, φ)
Pd = (W/m2 ). (4.22)
4πr2
When the radiated power density from a radar system impinges on a target, the induced
currents on the target reradiate or scatter electromagnetic energy in all directions, as
shown in Figure 4.3. The amount of energy scattered is proportional to the target size,
orientation, shape, material composition, and other factors. The effects from all of these
factors are grouped together into a single target specific parameter know as radar cross
section (RCS), denoted by σ. The radar cross section is defined as the ratio of the power
128 Introduction to Radar Using Python and MATLAB
Scattered Energy
Transmitted Energy
reflected back to the radar to the power density incident on the target [1]. The radar cross
section is written as
|Es |2 Pr
σ = lim 4πr2 i 2
= (m2 ), (4.23)
r→∞ |E | Pd
where
Es = scattered electric field intensity (V/m),
Ei = incident electric field intensity (V/m),
Pr = power reflected from the target (W),
Pd = power density incident upon the target (W/m2 ).
Table 4.1 shows typical radar cross section values of various objects at X-band [2, 3]. The
power scattered by the target is then found by multiplying the power density from (4.22)
by the radar cross section. This gives
Pt G σ
Ptarget = (W), (4.24)
4πr2
where Pt is the radar power input to the antenna. The power density at some distance
from the target is found from (4.21) by replacing Pin G(θ, φ) with Ptarget . The power
density back at the antenna is then
Pt G σ
Pantenna = (W/m2 ). (4.25)
(4πr2 )2
The Radar Range Equation 129
Table 4.1
Typical RCS Values for Objects at X-Band
The radar cross section is analogous to the antenna pattern. The antenna pattern is created
by induced currents on the antenna structure from a transmitter through a feed and
matching network. The radar cross section pattern is created by induced currents on the
target structure as a result of the incident energy transmitted by the radar. The radiation
mechanism for an antenna with associated currents is the same as the radiation from a
target with associated currents. When solving these numerically, the source code is the
same for the two cases; it is the source of the induced currents that is different. To find
the total power received by the radar, multiply the power density at the antenna by the
effective aperture of the antenna, which gives
Pt G σ
Pradar = Ae (W), (4.26)
(4πr2 )2
where Ae is the antenna effective aperture in m2 . The antenna effective aperture is related
to the antenna gain by [2]
λ2 G
Ae = (m2 ). (4.27)
4π
Substituting (4.27) into (4.26) results in
Pt G2 λ2 σ
Pradar = (W). (4.28)
(4π)3 r4
The power received by the radar is proportional to r4 . This means a doubling of the
distance from the radar to the target results in a power loss of a factor of 16, which is
approximately 12 dB. Similarly, to increase the detection range by a factor of 2 would
require 16 times more power.
130 Introduction to Radar Using Python and MATLAB
To determine the maximum detection range, replace the power at the radar with the
minimum detectable signal power, Pmin , which gives
Pt G2 λ2 σ
Pmin = (W). (4.29)
(4π)3 r4
Solving (4.29) for the range gives
" #1/4
Pt G2 λ2 σ
rmax = (m). (4.30)
(4π)3 Pmin
4.2.2 Noise
To this point, the effects of noise have not been considered. Noise corrupts the signal
received by the radar and decreases the maximum detection range. Noise is a random
process and is typically specified by its power spectral density (PSD). The power spectral
density is the power (variance) per frequency interval. It is a measure of a signal’s power
content per frequency. It is typically used to characterize broadband random signals such
as noise. Its units are (watt/Hz → watt · second → joule). For thermal noise, the power
spectral density for a resistive device is [4]
S = kT (J), (4.31)
where k is Boltzmann’s constant, which has a value of 1.38064852 × 10−23 (J/K), and T
is the noise temperature of the device (K). The input noise power for a radar system with
an operating bandwidth, B, is found by multiplying by the power spectral density as
SNR i Pi /Ni
F = = , (4.33)
SNR o Po /No
where SNR i and SNR o are the input and output signal-to-noise ratios respectively. The
input signal power, Pi , may be written in terms of the output signal-to-noise ratio as
where T0 is the reference temperature. T0 has been specified by the IEEE to be 290o K
for defining noise factor. Setting the detection threshold to the minimum output signal-
to-noise ratio required for target detection allows (4.34) to be written as
Pt G2 λ2 σ
SNR o = . (4.37)
(4π)3 k T0 B F r4
4.2.3 Losses
There are losses associated with radar systems that include transmission line loss, receiver
line loss, filter loss, atmospheric loss, integration loss, signal processing loss, and several
others. While some of these were studied in Chapter 2, the remaining ones will be treated
in more detail in Chapter 5. For the purposes of the basic radar range equation, these
effects are grouped together in a single loss term denoted by L. These losses reduce
the overall output signal-to-noise ratio. Including loss, the minimum detectable signal is
written as
Pt G2 λ2 σ
SNR o = . (4.40)
(4π)3 k T0 B F L r4
The radar reference range and radar loop gain are measures used to characterize a radar
system’s sensitivity and therefore its capability to detect and track targets. The radar
reference range is the range at which the radar system achieves a required signal-to-
noise ratio on a target with a specified radar cross section. For example, a radar system
may produce a signal-to-noise ratio of 20 dB on a target with a radar cross section of
132 Introduction to Radar Using Python and MATLAB
−10 dBsm at a range of 500 km. The radar loop gain, which is commonly denoted as C,
combines these into a single value as
r04 SNR 0
C= (m2 ), (4.41)
σ0
where
r0 = reference range (m),
SNR 0 = reference signal to noise ratio,
σ0 = reference radar cross section (m2 ).
Therefore, if the loop gain is known, the signal to noise ratio for a target at a particular
range may be found from
σT σT r4
SNR T = C × 4 = SNR 0 × × 40 , (4.42)
rT σ0 rT
where SNR T is the signal-to-noise ratio for a target located at a range of rT having a
radar cross section of σT . Historically, various techniques have been used at different
test ranges to determine the loop gain, and in some cases these methods have resulted in
inconsistent estimates for loop gain [5].
One of the first tasks a radar system performs is to search a specified volume of space for
a target of interest. Therefore, a modified version of the radar range equation tailored to
the search function of a radar system will be derived. Search volumes are typically given
in terms of a solid angle, Ω, which has units of radians2 or steradians. The power aperture
product is commonly used to characterize a radar system’s capability to perform search
missions. The power aperture product is the product of the time average radiated power
and the antenna effective aperture. If the azimuth and elevation extents, (Θa , Θe ), of the
search volume are relatively small, then Ω may be expressed as
Ω = Θa × Θe (steradian). (4.43)
The result of this expression is the search volume is rectangular in azimuth and elevation
space. While the search volume could be any shape and may be represented in any
coordinate system, a more common search volume is the surface of a sphere bounded
in azimuth and elevation, as shown in Figure 4.4. The angular area of this type of search
sector is given as
Radar Position
Search sector on the
surface of a sphere.
where e0 is the elevation angle corresponding to the center of the search sector. If the
radar antenna has 3-dB beamwidths denoted by θa , θe , then the solid angle coverage for
a single beam may be written as
Ωb = θa × θe (steradian). (4.45)
Then the number of beams required to cover the solid angle is
Ω
Nb = . (4.46)
Ωb
This is a simplistic approach to the number of beams as both the search sector and the
beam coverage is rectangular in this case. A factor, P , known as the packing factor
accounts for the fact the beams are not rectangular and that there is some overlap of
the beams when filling the search sector. The required number of beams is then given by
Ω
Nb = P . (4.47)
Ωb
Typical values for P depend on how the beams are placed and how much they overlap.
For example, a packing factor of 4/3 is typical for hexagonal beam packing with 3 dB
overlap [6].
The relationship between the peak transmit power and average transmit power is
shown in Figure 4.5 and is expressed mathematically as
134 Introduction to Radar Using Python and MATLAB
3W
3DY
W
7
Figure 4.5 Duty cycle, peak, and average power.
T
Pt = Pav (W), (4.48)
τ
where T is the pulse repetition interval and τ is the pulse width. For a continuous wave
pulse, the bandwidth is approximately the inverse of the pulse width,
1
B= (Hz). (4.49)
τ
Using the radar equation (4.40) along with (4.48) and (4.49) results in
Pav G2 λ2 σ T
SNR o = . (4.50)
(4π)3 k Ts F L r4
A requirement is for the radar system to cover the search volume in a specified amount
of time, Tscan . Therefore, the radar must process Nb beams in Tscan . The time for each
beam is then
Tscan Tscan Θa Θe
Tbeam = = (s). (4.51)
Nb Ω
Allowing one beam per pulse results in
Pav G2 λ2 σ Tscan Θa Θe
SNR o = . (4.52)
(4π)3 k T0 F L r4 Ω
Using
4 π Ae 4π
G= =e , (4.53)
λ2 θa θe
in (4.52) gives
Pav Ae σ Tscan
SNR o = , (4.54)
(4π)3 k T0 F L r4 Ω
where Pav Ae is the power aperture product. This is a useful form of the radar range
equation as it provides a means of performing search radar design trade studies without
The Radar Range Equation 135
the need for detailed parameters. However, it is stressed that this provides a first draft
radar design. It gives sizing information about the radar system and should be used as a
starting point for more detailed designs that include parameters not explicitly detailed in
(4.54).
Another useful form of the radar range equation is the bistatic radar range equation. Fig-
ure 4.6 depicts a typical bistatic radar scenario in which the transmitter and receiver are
not collocated as in the monostatic case. Recently, bistatic radar systems have received
attention for their potential to detect stealth targets due to enhanced target forward scat-
ter [7]. These systems have also found use in weather and atmospheric physics appli-
cations. An extension of the bistatic case is multistatic radar where there is typically a
single transmitter and multiple receivers. Furthermore, multiple passive receivers allow
radar receivers to detect and track targets without the need for transmission of a signal.
These types of systems have found use in navigation, air traffic, and surveillance sce-
narios. Bistatic radar systems have properties that offer certain advantages for particular
functions. First, the receiver is completely passive, which reduces its likelihood to be
detected by the electronic measures, and it is safe from attack by antiradiation missiles
or deliberate directional interference and jamming. Second, the receiver may be located
in areas that may not be suitable to place transmitters, such as near humans or flammable
materials. Next, there is no transmit-receive switch or duplexer, which are lossy, expen-
sive, and heavy. Because bistatic systems do not suffer from the same range blindness
as an equivalent monostatic system, less transmitter power and higher pulse repetition
frequencies may be used. Finally, if the target angle can be measured at both sites as well
as the bistatic range, data can be checked for self-consistency to aid in the removal of
false alarms [7]. Referring to Figure 4.6 and recalling from (4.22), the power density at a
target at a distance, rt , from the transmitter is
Pt Gt (θ, φ)
Pd = (W/m2 ), (4.55)
4π rt2
where Gt is the gain of the transmitting antenna and rt is the range from the transmitter
to the target. As before, multiply by the radar cross section to get the power scattered
by the target. The radar cross section is written explicitly as a function of (θ, φ), as the
incident and scattering directions are different for the bistatic case. The power scattered
by the target is written as
Pt Gt (θ, φ) σ(θ, φ)
Ptarget = (W). (4.56)
4π rt2
Following the derivation in Section 4.2, the power density at the receiving antenna is
written as
136 Introduction to Radar Using Python and MATLAB
Target Position
𝑟𝑡
𝑟𝑟
Transmitting Receiving
Radar Position Radar Position
Pt Gt (θ, φ) σ(θ, φ)
Pantenna = (W/m2 ), (4.57)
(4π)2 rt2 rr2
where rr is the range from the target to the receiver. Multiplying the power at the antenna
by the receiving antenna effective aperture gives the total power received by the radar,
which is written as
Pt Gt (θ, φ) σ(θ, φ)
Pradar = Ae (W). (4.58)
(4π)2 rt2 rr2
Substituting the following expression for the antenna effective aperture,
λ2 Gr
Ae = , (4.59)
4π
gives the final expression for the basic bistatic radar range equation,
Target Position
𝑟𝑡 𝑟𝑟
𝜌
Transmitting Receiving
Radar Position 𝜃 Radar Position
where Lt is the loss in the transmitting radar and Lr is the loss in the receiving radar.
In the bistatic case, it is not possible to write a single maximum detection range as there
are now two separate ranges. Instead, a maximum range product is used and is given by
1/2
Pt Gt (θ, φ) Gr (θ, φ) σ(θ, φ) λ2
(rt rr )max = (m2 ). (4.62)
(4π)3 k T0 B F Lt Lr (SNR o )min
In two dimensions, the product in (4.62) belongs to a family of curves known as Cassini
ovals. The Cassini ovals are a family of quartic curves, sometimes referred to as Cassini
ellipses, described by a point such that the product of its distances from two fixed points
a distance apart is a constant [8]. For bistatic systems, the system performance may be
analyzed by plotting the Cassini ovals for various signal-to-noise ratios. With respect to
Figure 4.7, rt and rr are converted to polar coordinates to aid in the plotting of the Cassini
ovals. Using the geometrical relationships for two dimensions gives
rt2 = ρ2 + (D/2)2 + ρ D cos θ, (4.63)
rr2 = ρ2 + (D/2)2 − ρ D cos θ, (4.64)
138 Introduction to Radar Using Python and MATLAB
where
ρ = distance from the origin of the polar coordinates to the target (m),
D = distance between the transmitter and receiver (m),
θ = angle between the vector from the origin to the target and the vector
from the origin to the receiver (rad).
The Cassini ovals are two-dimensional ellipses aiding in the understanding of the detec-
tion range for bistatic radar systems. In reality, the constant signal-to-noise ratio would
be described by surfaces in three dimensions.
4.5 EXAMPLES
The examples in the following sections illustrate the concepts of this chapter with several
Python examples. The examples for this chapter are in the directory pyradar\Chapter04
and the matching MATLAB examples are in the directory mlradar\Chapter04. The
reader should consult Chapter 1 for information on how to execute the Python code
associated with this book.
For this example, calculate and display the electric and magnetic fields, power density,
total power radiated, radiation intensity, and directivity for a Hertzian dipole of length
1 × 10−3 m with a current of 1 A operating at a frequency of 1 GHz. The field point is at
a distance of 10 m from the dipole, and the region surrounding the dipole has a relative
permittivity of 1.3.
Solution: The solution to the above example is given in the Python code hertzian dipole
example.py and in the MATLAB code hertzian dipole example.m. Running the Python
example code displays a GUI, allowing the user to enter the constitutive parameters for
the region, operating frequency, current, length, and distance to the field point. The GUI
allows the user to select which values to plot. The code then calculates and creates a plot
of the selected values, as shown in Figure 4.9.
As illustrated in Section 4.2, a radar system radiates a certain amount of energy that
impinges upon objects in the environment, including targets of interest. The following
subsections give examples to illustrate how this energy interacts with these objects.
For this example, consider a target at some distance from the radar. Calculate and display
the power density generated by a radar system with a peak transmit power of 50 kW and
an antenna gain of 20 dB. For this example, allow the target range to vary from 1 to 5 km.
Solution: The solution to the above example is given in the Python code power density
example.py and in the MATLAB code power density example.m. Running the Python
140 Introduction to Radar Using Python and MATLAB
example code displays a GUI, allowing the user to enter the target minimum and
maximum range, the peak transmitted power, and the antenna gain. The code then
calculates and displays the power density as a function of target range, as shown in Figure
4.10.
Now that the energy incident upon a target has been calculated, find the energy delivered
back to the radar. Calculate and display the power at the radar for a system with a peak
transmit power of 50 kW, an antenna gain of 20 dB, and an operating frequency of 1 GHz.
The target has a radar cross section of 10 dBsm, and the target range varies from 1 to 5 km.
Solution: The solution to the above example is given in the Python code power at radar
example.py and in the MATLAB code power at radar example.m. Running the Python
example code displays a GUI, allowing the user to enter the target minimum and
maximum range, peak transmitted power, antenna gain, operating frequency, and target
radar cross section. The code then calculates and displays the power back at the radar as
a function of target range, as shown in Figure 4.11.
The Radar Range Equation 141
Figure 4.10 The incident power density calculated by power density example.py.
Figure 4.11 The power returned to the radar calculated by power at radar example.py.
142 Introduction to Radar Using Python and MATLAB
In the previous examples, the effects of noise and losses on the radar range were not con-
sidered. Adding these two effects, calculate and display the minimum detectable signal
for a radar system having a system temperature of 290o K, a receiver bandwidth of 10
MHz, a noise figure of 6 dB, losses of 4 dB, and requires a signal-to-noise ratio of 20 dB
for detection.
Solution: The solution to the above example is given in the Python code minimum
detectable signal example.py and in the MATLAB code minimum detectable signal
example.m. Running the Python example code displays a GUI, allowing the user to enter
the radar parameters given above. The code then calculates and displays the minimum
detectable signal, as shown in Figure 4.12.
For this example, calculate and display the maximum detection range as a function of
signal-to-noise ratio for a radar system with a system temperature of 290o K, receiver
bandwidth of 10 MHz, noise figure of 6 dB, losses of 4 dB, peak transmitter power of
50 kW, antenna gain of 20 dB, operating frequency of 1 GHz, and the target has a radar
Solution: The solution to the above example is given in the Python code maxi-
mum detection range example.py and in the MATLAB code maximum detection range
example.m. Running the Python example code displays a GUI, allowing the user to enter
the radar and target parameters. The code then calculates and displays the maximum
detection range as a function of signal-to-noise ratio, as shown in Figure 4.13.
In this example, calculate and display the output signal-to-noise ratio as a function of
target range for a radar system with a system temperature of 290o K, receiver bandwidth
of 10 MHz, noise figure of 6 dB, losses of 4 dB, peak transmitter power of 50 kW, antenna
gain of 20 dB, operating frequency of 1 GHz, and the target has a radar cross section of
10 dBsm. Allow the target range to vary from 1 to 100 km.
Solution: The solution to the above example is given in the Python code output signal to
noise example.py and in the MATLAB code output signal to noise example.m. Running
the Python example code displays a GUI, allowing the user to enter the radar and target
144 Introduction to Radar Using Python and MATLAB
parameters. The code then calculates and displays the output signal-to-noise ratio as a
function of target range, as shown in Figure 4.14.
This example studies radar sensitivity with the radar loop gain. Calculate and display the
radar loop gain for a system that can achieve a signal-to-noise ratio of 20 dB on a target
with a radar cross section of 10 dBsm at a range of 100 km.
Solution: The solution to the above example is given in the Python code loop gain
example.py and in the MATLAB code loop gain example.m. Running the Python ex-
ample code displays a GUI, allowing the user to enter the radar system’s reference range,
reference signal-to-noise ratio, and the reference target radar cross section. The code then
calculates and displays the resulting loop gain, as shown in Figure 4.15.
The subsections below illustrate a special form of the radar range equation, which was
developed for search-specific missions and is described in Section 4.5.3. Python examples
for calculating the power aperture and the output signal-to-noise ratio are given.
The Radar Range Equation 145
Figure 4.15 The radar loop gain calculated by loop gain example.py.
For this example, calculate and display the required power aperture to perform a search
mission as a function of target range. The radar system has a system temperature of 290o
K, noise figure of 6 dB, losses of 4 dB. The system is required to search a volume of 4
steradian in a time of 2 seconds for a target of 10 dBsm and achieves a signal-to-noise
ratio of 20 dB.
Solution: The solution to the above example is given in the Python code power aperture
example.py and in the MATLAB code power aperture example.m. Running the Python
example code displays a GUI, allowing the user to enter the target minimum and
maximum range, system temperature, search volume, noise figure, losses, signal-to-noise,
scan time, and radar cross section. The code then calculates and displays the required
power aperture as a function of target range, as shown in Figure 4.16.
Similar to the basic radar equation, this example shows the output signal-to-noise ratio
for the search form of the radar range equation. Calculate and display the output signal-
to-noise ratio as a function of range for a radar system with a system noise temperature
of 290o K, a search volume of 4 steradian, a noise figure of 6 dB, losses of 4 dB, a power
aperture of 50 kW m2 , and a scan time of 2 seconds. The target has a radar cross section
of 10 dBsm, and the target range varies from 1 to 100 km.
146 Introduction to Radar Using Python and MATLAB
Figure 4.16 The power aperture product calculated by power aperture example.py.
Solution: The solution to the above example is given in the Python code output signal
to noise search example.py and in the MATLAB code output signal to noise search
example.m. Running the Python example code displays a GUI, allowing the user to enter
the target and radar parameters as well as the search parameters. The code then calculates
and displays the output signal-to-noise ratio as a function of target range, as shown in
Figure 4.17.
The subsections below illustrate the bistatic radar range equation that was developed
in Section 4.5.4. Python examples are given for the output signal-to-noise ratio, the
maximum detection range, and the Cassini ovals.
Similar to the monostatic case, this example deals with the power back at the radar.
However, this is now the power at the receiving radar, which is not collocated with the
transmitting radar. Calculate and display the power at the receiving radar as a function of
range product. The transmitting system has a peak power of 50 kW, antenna gain of 20
dB, and an operating frequency of 1 GHz. The receiving system has an antenna gain of
The Radar Range Equation 147
Figure 4.17 The output signal-to-noise ratio for the search equation calculated by
output signal to noise search example.py.
10 dB, and the target has a bistatic radar cross section of 10 dBsm.
Solution: The solution to the above example is given in the Python code power at radar
bistatic example.py and in the MATLAB code power at radar bistatic example.m. Run-
ning the Python example code displays a GUI, allowing the user to enter the transmitting
and receiving system parameters and the target parameters. The code then calculates and
displays the power at the receiving radar as a function of range product, as shown in
Figure 4.18.
For this example, calculate and display the output signal-to-noise ratio for a bistatic radar
scenario in which the transmitting radar has a peak transmit power of 50 kW, antenna gain
of 20 dB, losses of 4 dB, and operates at a frequency of 1 GHz. The receiving radar has
a system temperature of 290o K, bandwidth of 10 MHz, losses of 2 dB, and an antenna
gain of 10 dB. The target has a bistatic radar cross section of 10 dBsm. Plot the output
signal-to-noise ratio as a function of range product.
148 Introduction to Radar Using Python and MATLAB
Figure 4.18 The power at the receiver for bistatic radar configurations calculated by
power at radar bistatic example.py.
Solution: The solution to the above example is given in the Python code output signal
to noise bistatic example.py and in the MATLAB code output signal to noise bistatic
example.m. Running the Python example code displays a GUI, allowing the user to
enter the system parameters for the transmitting and receiving radars as well as the target
parameters. The code then calculates and displays the output signal-to-noise ratio as a
function of range product, as shown in Figure 4.19.
Cassini ovals provide a mechanism for studying the maximum detection range of a
bistatic radar system. The Cassini ovals provide a better understanding than the range
product alone. For this example, calculate and display the Cassini ovals for the three
distinct regions outlined in Section 4.4.1.
Solution: The solution to the above example is given in the Python code ovals of cassini
example.py and in the MATLAB code ovals of cassini example.m. Running the Python
example code displays a GUI, allowing the user to enter the parameters for the trans-
mitting and receiving systems and the target parameters. The code then calculates and
displays the ovals of Cassini for varying signal-to-noise ratios covering the three regions
of Section 4.4.1, as shown in Figure 4.20.
The Radar Range Equation 149
Figure 4.19 The output signal-to-noise ratio for bistatic radar configurations calculated by
output signal to noise bistatic example.py.
PROBLEMS
4.1 Explain the significance of the radar cross-section values in Table 4.1 in relationship
to radar performance and antenna selection.
4.2 Consider a radar system employing a Hertzian dipole of length 0.1 m operating at a
frequency of 100 MHz. Calculate the power density for a target at a range of 3 km
and elevation of 15o above the x − y plane of the antenna. Assume the current on the
dipole is 1 A.
4.3 For the scenario in Problem 4.2, find the power scattered as the target is varied. Use
radar cross-section values for a commercial jet, small fighter aircraft, and surface-to-
air missile given in Table 4.1.
4.4 For each of the targets given in Problem 4.3, calculate the power received at the radar.
4.5 Assume the minimum power required for target detection is 1 µW and then determine
the maximum detection range for each of the targets given in Problem 4.3.
4.6 Calculate the minimum signal power required for target detection when the system
temperature is 290o K, bandwidth is 10 MHz, noise factor is 0.5, and the signal-to-
noise ratio required for detection is 15 dB.
4.7 For a radar system with an operating temperature of 300o K and operating bandwidth
of 10 MHz, find the input noise power.
4.8 Describe the noise factor and how it affects the detection range and received signal-
to-noise ratio.
4.9 Find the maximum detection range for a target with a radar cross section of 10 dBsm.
The radar system has a bandwidth of 20 MHz, noise figure of 6 dB, losses of 4 dB,
antenna gain of 20 dB, transmits a peak power of 50 kW, and operates at a frequency
of 1 GHz. Assume the system temperature is 380o K.
4.10 For the scenario given in Problem 4.9, calculate the output signal-to-noise ratio when
the target is at a range of 10 km.
4.12 A search radar is required to search a volume given by an azimuth extent of π/4
radians, and elevation extent of π/6 radians. Find the total number of beams required
The Radar Range Equation 151
to perform the search. Assume the radar has 3-dB beamwidths of 0.1o and 0.2o in
azimuth and elevation and uses hexagonal beam packing with 3 dB overlap.
4.13 Calculate the power aperture product for a search radar with an operating temperature
of 290o K, noise figure of 3 dB, and losses of 3 dB. The radar is required to search a
volume of 6 steradians in 2.0 s and must produce a signal-to-noise ratio of 12 dB for
a 5 dBsm target.
4.14 For the radar parameters given in Problem 4.13, find the output signal-to-noise ratio
for a target with a radar cross section of 12 dBsm located at a range of 18 km.
4.15 Determine the output signal-to-noise ratio for a bistatic radar system given the
transmitting radar has a peak power of 100 kW, antenna gain of 30 dB, and losses of
6 dB. The receiving radar has an operating bandwidth of 10 MHz, noise figure of 9
dB, losses of 2 dB, and antenna gain of 20 dB. The operating frequency is 10 GHz,
the target has a radar cross section of −3 dBsm, and is located at a range product of
100, 000 m2 .
4.16 Using the radar and target parameters given in Problem 4.15, calculate the maximum
detection range product when the minimum output signal-to-noise ratio required for
detection is 10 dB.
4.17 Describe the ovals of Cassini and their significance in the design of bistatic radar
systems. Also explain the conditions necessary for two separate ovals enclosing the
transmitter and receiver.
References
[1] C. A. Balanis. Advanced Engineering Electromagnetics, 2nd ed. John Wiley and Sons, New York, 2012.
[2] C. A. Balanis. Antenna Theory Analysis and Design, 3rd ed. John Wiley and Sons, New York, 2005.
[3] D. Pozar. Microwave Engineering, 4th ed. John Wiley and Sons, New York, 2012.
[4] A. Doerry. Noise and noise figure for radar receivers. Technical Report SAND2016-9649, Sandia National
Laboratories, Albuquerque, NM, October 2016.
[5] Joint Range Instrumentation Accuracy Improvement Group. Radar loop gain measurements. Technical
Report 754-98, U.S. Army White Sands Missile Range, New Mexico 88002-5110, 1998.
[6] M. C. Budge and S. R. German. Basic Radar Analysis. Artech House, Norwood, MA, 2015.
[7] C. L. Teo. Bistatic radar system analysis and software development. Technical report, Naval Postgraduate
School, Monterey, CA 93943, 2003.
The function of the receiver is to take the signals received by the antenna, amplify, filter,
downconvert, and digitize these signals, and deliver them to the radar signal and data
processors. This chapter discusses how the receiver performs these functions, starting
with common receiver configurations and components that make up the receive chain.
Next, some of the fundamental parameters of receivers, including noise, dynamic range,
and bandwidth, are presented. The filtering of unwanted signals, demodulation of the
radar signal, and analog-to-digital conversion are covered as these steps prepare the
return signal for further digital processing. Finally, a brief review of digital receivers
is presented. The chapter concludes with several Python examples to emphasize the key
functions of radar receivers.
5.1 CONFIGURATIONS
With modern antenna and receiver hardware, the reference boundaries of the radar re-
ceiver can become ambiguous. For example, conventional radar systems make use of a
duplexer to provide the input to the receiver from the antenna. However, active array
antennas include low noise amplifiers prior to forming receive beams. While these ampli-
fiers are part of the antenna system, they are sometimes included as part of the receiver
for analysis. For this book, the components illustrated in Figure 5.1 are considered to be
the radar receiver. While there are many types of receivers, including crystal video, ho-
modyne, and superregenerative, most radar systems employ a superheterodyne receiver,
as shown in Figure 5.1. The superheterodyne receiver was developed by Edwin Arm-
strong [1–3] in 1918 during World War I. It was originally designed as a radio receiver
that converts the received signal to an intermediate frequency (IF), which is useful for
many reasons discussed in the following sections. The superheterodyne receiver adjusts
the local oscillator to follow the tuning of the transmitter without disturbing the filtering
153
154 Introduction to Radar Using Python and MATLAB
STALO
STC
RF Input LNA RF Filter Mixer IF Filter
IF to
AGC To DSP
Video
LNA
COHO
at the intermediate frequency. Since the intermediate frequency filters are all set to a fixed
frequency, this makes their design, fabrication, and tuning simpler. This also allows the
signals to occupy a wider percentage bandwidth, and to have very selective filters. An-
other advantage is transistors operating at lower frequencies generally have higher gain.
To arrive at the final desired intermediate frequency, there may be more than one stage of
conversion. Often double or triple conversion is necessary to avoid image frequency and
spurious frequency problems occurring in the mixing process.
Referring to Figure 5.1, the receiver chain begins with a sensitivity time control
(STC) attenuator. While other types of gain control may be used, their purpose is to
increase the dynamic range over that of a fixed gain system. Radar systems receive
signals of widely varying amplitude due to differences in radar cross section, atmospheric
conditions, clutter, and range. The effect of range on the strength of the return signal
is often much greater than other causes. This effect may be mitigated with the STC
attenuator, which adjusts the attenuation to cause the received signal strength to be
independent of range. The next element in the receiver chain is a low-noise amplifier
(LNA), which provides gain with low noise in order to minimize signal degradation
by subsequent components. Following the LNA is a bandpass filter that rejects out-of-
band signals, including the image frequency. The mixer then uses a highly stable local
oscillator (STALO) to downconvert the received signals to the intermediate frequency.
After downconversion to the intermediate frequency, a bandpass filter is used to reject
unwanted signals arising from the mixing process and to set the receiver processing
Radar Receivers 155
bandwidth. An additional LNA is used to increase the signal level along with automatic
gain control (AGC) attenuators to set the signal levels for analog-to-digital conversion.
Finally, the IF to video conversion takes place, which produces data suitable for digital
signal processing. This conversion makes use of a highly stable coherent oscillator
(COHO) locked to the IF frequency.
5.2 NOISE
As illustrated in Chapter 4, noise is one of the fundamental limiting factors in the radar
range equation. The received signal is often corrupted by noise generated internal to the
receiver. The major source of noise in receivers is thermal noise that can obscure weak
signals [4]. The noise generated in the receiver is random, and statistical techniques are
used to characterize its effect. The noise level at the input to the receiver is primarily
determined by the antenna noise temperature and its associated loss. The noise level is
usually specified by a power spectral density as discussed in Section 4.2.2, or alternatively
as an average power level over a specified bandwidth. The system noise is then the
combined antenna noise and receiver noise:
Ts = Ta + Tr = Ta + Lr T0 (F − 1) (K) (5.1)
where
Ts = total system noise temperature (K),
Ta = antenna noise temperature (K),
Tr = receiver noise temperature (K),
Lr = receiver loss,
T0 = receiver operating temperature (K),
F = receiver noise factor.
The noise due to the receiver is typically small compared to the noise input to the receiver.
Therefore, receiver noise only has a small effect on the total system noise temperature.
This is important when calculating parameters such as signal-to-noise ratio as the SNR
referenced to the receiver noise can be very different from the SNR referenced to the total
system noise [5]. From Section 4.2.2, the noise figure is the ratio of the input signal-to-
noise ratio to the output signal-to-noise ratio. For cascaded networks, the noise figure is
the contribution from each stage in the receive chain as
N
!
X Fi − 1
Ftotal = F1 + Qi−1 . (5.2)
i=2 j=1 Gj
For example, Figure 5.2 shows a five-stage network with the components and their
parameters given in Table 5.1. Expanding (5.2), the total noise factor is then
156 Introduction to Radar Using Python and MATLAB
STALO
Figure 5.2 Five-stage network for noise figure analysis of a cascaded network.
Table 5.1
Receiver Components for Cascaded Noise Figure Analysis
F2 − 1 F3 − 1 F4 − 1 F5 − 1
Ftotal = F1 + + + +
G1 G1 G2 G1 G2 G3 G1 G2 G3 G4
The dynamic range of a receiver is the range of signal strength over which the receiver
is able to perform its functions without distortion [5]. It is the difference between the
maximum and minimum usable signals through the receiver. The strength of the return
signal to the radar can vary widely, and therefore a receiver with a large dynamic range
is desirable. Referring to (4.28), the variation in the received signal strength is caused
by differences in radar cross section of objects in the scene, the distance to the objects,
and the antenna gain in the direction of the objects. The dynamic range is limited by
components in the receive chain such as mixers and amplifiers as well as analog-to-digital
converters. The minimum usable signal strength is limited by the noise floor, while the
upper signal strength is limited by saturation of analog components. The instantaneous
dynamic range is the difference between the maximum and minimum signals the receiver
can discern at the same time (i.e., the greatest signal-to-noise ratio possible). The limiting
component for the instantaneous dynamic range is often the ADC. The total dynamic
range is achieved through programmed gain variations and may be much larger than the
instantaneous dynamic range, as illustrated in Figure 5.3. Modern radar systems make use
of linear receiver channels followed by digital signal processing. The output of a linear
amplifier will increase proportionally to an increase in the amplifier input, as shown in
Figure 5.4. The limit on the usable signal level is the 1-dB compression point, illustrated
in Figure 5.4. It is the input signal level at which the receiver gain is 1 dB less than the
ideal linear signal gain would be. This type of compression may occur in amplifiers and
mixers as well as other components.
The dynamic range of the receiver is also limited by spurious signals. These are
unwanted signals not deliberately created and occupy noninteger multiples of the input
frequency. The spurious free dynamic range is the difference between the maximum
signal strength and the strength of the largest spurious signal created in the receiver
and is shown in Figure 5.5. These spurious signals may appear as false targets or
mask targets with weak return signals, and therefore it is desirable to suppress these
while maintaining a large dynamic range. These spurious signals may be created in
any nonlinear processes in the receiver, including intermodulation in the mixer, spurious
158 Introduction to Radar Using Python and MATLAB
𝑃𝑠𝑎𝑡𝑢𝑟𝑎𝑡𝑖𝑜𝑛
Total Dynamic Range
𝑃𝑚𝑎𝑥
Instantaneous
𝑃𝐴𝐺𝐶
Dynamic Range
𝑃𝑚𝑖𝑛
𝑃𝑚𝑑𝑠
Time Samples
content of the local oscillators, the ADC, and other components. Nonlinear processes in
the receiver result in intermodulation distortion, which generates signals at frequencies
that are combinations of the fundamental frequencies of the input signals. Second- and
third-order intermodulation becomes dominant at the upper end of the receiver output.
Receiver performance is typically specified by the second- and third-order intercept
points. The intercept point is the level at which the power of the intermodulation
distortion equals that of the two fundamental signals, as shown in Figure 5.6. Given two
input frequencies, f1 and f2 , second-order intermodulation distortion creates signals at
frequencies of 0, f1 − f2 , f1 + f2 , 2f1 and 2f2 . Third-order intermodulation distortion
creates signals at frequencies of 2f1 − f2 , 2f2 − f1 , 2f1 + f2 , 2f2 + f1 , 3f1 and 3f2 .
Only the frequencies 2f1 − f2 and 2f2 − f1 are in band for narrowband input signals.
Therefore, third-order intermodulation distortion is the most dominant and is the primary
concern in receivers. The power associated with third-order intermodulation distortion is
given by [5]
where,
Radar Receivers 159
20
15
Dynamic Range
𝑃𝑠𝑎𝑡𝑢𝑟𝑎𝑡𝑖𝑜𝑛
Output Power (dBm)
10
1 dB
-5
𝐼𝑃1
-10
5.4 BANDWIDTH
For radar receivers, a distinction must be made between instantaneous and operating
bandwidth. The instantaneous bandwidth is the range of frequencies over which the re-
ceiver can process two or more signals simultaneously, whereas the operating bandwidth
is the entire range of frequencies the radar receiver may tune, as illustrated in Figure
5.7. For radar systems, the term instantaneous bandwidth may refer to various parameters
such as the RF processing bandwidth, waveform bandwidth, or IF processing bandwidth.
When dealing with the receiver, the instantaneous bandwidth refers to the resulting band-
width primarily set by the IF filtering stages. However, the RF portion cannot be ignored
160 Introduction to Radar Using Python and MATLAB
Maximum Signal
Spurious Free
Dynamic Range
Largest
Spurious Signal
Spurious Signals
as wide bandwidth may have a negative impact on dynamic range. As discussed in Sec-
tion 5.3, there may be out-of-band signals converted to the IF frequency by the spurious
response of a mixer as well as wideband noise that raises the noise floor and thus lowers
the signal to noise ratio.
As discussed in Section 5.3, the strength of the radar return signal can vary widely.
This variation often exceeds the dynamic range of fixed gain systems. One method for
overcoming this limitation is through the use of gain control. The first type of gain
control considered is STC. For targets of constant radar cross section, their return signal
strength decreases with range as 1/r4 , where r is the range from the radar to the target.
Decreasing the attenuation as a function of 1/r4 would maintain a return signal of
constant amplitude versus range. Surface clutter tends to decrease as 1/r3 [7]. Therefore,
the STC attenuator shown in Figure 5.1 is set to reduce the attenuation as 1/r3.5 to
provide a good compromise between the targets and clutter. STC may be used with low
and medium pulse repetition frequency (PRF) waveforms, such as those used for search
and track, but not with high PRF waveforms as distant targets competing with nearby
clutter would be attenuated [6]. With AGC, the attenuation is based on the strength of
Radar Receivers 161
20
15
10
Output Power (dBm)
-5
-10
Operating Bandwidth
Signal Strength
Instantaneous Bandwidth
the return signals. While the overall gain of the system may be set manually by the
operator, this is not ideal for individual targets as this would require frequent adjustment
by the operator. AGC is typically achieved by adjusting the gain through the use of
an IF attenuator. When tracking targets, AGC may be used to continuously adjust the
attenuation to provide a nearly constant output. If the AGC is used to separately adjust
the attenuation for each target separated in range, then the system maintains a constant
angle measurement sensitivity. Gain control may also be used for clutter map gain
control, which is useful when operating in high clutter environments. As an alternative
to STC, clutter map gain control uses a digital map to record the mean amplitude of
the clutter in each cell, and then adjust the attenuation as necessary to ensure the clutter
does not saturate the receiver. Another use for gain control is gain normalization. It is
necessary to have accurate gain control in the receiver for measuring radar cross section,
monopulse angle accuracy, maximizing dynamic range, and controlling the noise level.
However, this can be challenging as the receiver response varies with changes in the
environment, aging of components, and other factors. To overcome these variations in
the receiver, a known test signal is injected and measured at the output of the receiver.
Then calibration coefficients are calculated and stored. The attenuation is then set as a
function of frequency, temperature, humidity, etc. Finally, gain control may be used for
automatic control of the noise level. It is often desired to maintain a certain noise level
input to the ADC. If the noise level is too small compared to the quantization of the ADC
this may cause a reduction in the receiver sensitivity. This is particularly important in
systems employing STC, as the noise level at close range may fall below the quantization
level. Often, a noise source with an attenuator is used to inject noise into the system to
overcome the noise reduction caused by the STC attenuator. To ensure a constant noise
level at the ADC input, the injected noise is synchronized with the STC attenuator.
5.6 FILTERING
The main purpose of filtering in the receiver is to eliminate unwanted interference and
is performed at different stages throughout the receive chain. Filtering is performed
on the radio frequency, intermediate frequency, and baseband signals. As illustrated in
Section 5.3, spurious signals may be generated in the mixing process and translated to
the intermediate frequency. One method for reducing these unwanted spurious signals is
to filter prior to the mixing stage. Filtering may also be performed in the digital signal
processing function and is a key part of generating in-phase and quadrature data, as will
be shown in Section 5.7.
Beginning at the RF level, the main purpose of filtering is to reject the image signal
that is created during the first downconversion. The image frequency is shown in Figure
5.8. The RF carrier frequency is 1, 000 MHz, and the desired IF frequency is 30 MHz.
The frequency of the local oscillator is 970 MHz. The image frequency is located at
Radar Receivers 163
𝑃(𝑑𝐵𝑚)
IF Image LO RF
Many systems employ two- or three-step downconversion to help eliminate the image
signals. This way, the image suppression problem is avoided, and a wide tuning band free
of spurious signals is also achieved. It is also important to filter at the RF level to reject
signals that would cause intermodulation distortion, as shown in Section 5.3. Tunable or
switched RF filtering may be required if the receiver bandwidth is a substantial percentage
of the RF bandwidth, as this would result in the image signal shifting in the receiver band.
Another method for eliminating the image signal is to first upconvert the RF signal. This
allows for the use of a single RF filter covering the entire operating bandwidth.
In receivers employing baseband conversion, the IF filtering sets the receiver band-
width. This is followed by video filtering at an increased bandwidth to prevent an imbal-
ance between the in-phase and quadrature channels. On the other hand, in IF sampling
receivers, the final receiver bandwidth is set by digital filtering. This also prevents aliasing
in the decimation of the in-phase and quadrature data. Digital filtering is advantageous as
it can be customized to the desired passband and stopband characteristics. While many
digital filters are linear phase filters, they may also be used to compensate for the ampli-
tude and phase response of the RF and IF analog filters in the receiver. Figure 5.9 shows a
comparison of common filter types. As can be seen, the filter responses are quite different.
The type of filter chosen depends greatly on the application. For example, Butterworth
filters have quite flat responses in the passband. This type of filter should be used for
cases where minimal distortion of the signal is required, such as filtering a signal prior to
analog-to-digital conversion. Chebyshev filters, on the other hand, should be chosen when
the frequency content of the signal is more important than passband flatness. An example
of this would be trying to separate signals closely spaced in frequency. Elliptic filters are
164 Introduction to Radar Using Python and MATLAB
Filter Response
0 Butterworth
Chebyshev
Bessel
10 Elliptic
20
Amplitude (dB)
30
40
50
60
70
80 1
10 102 103
Frequency (Hz)
Figure 5.9 Comparison of the frequency response of common filter types.
more difficult to design but do have the advantage of providing the fastest roll-off for a
given number of poles.
The filter responses above maybe calculated in Python using the SciPy signal
processing module scipy.signal [8]. For example, the filter response for an analog,
low-pass, fourth-order, Butterworth filter with a critical frequency of 100 Hz is given
in Listing 5.1. In the listing, signal.freqs(b,a) computes the frequency response of an
analog filter given the numerator, b, and denominator, a. The frequency response may
then be displayed using Matplotlib’s [9] plotting functions, as given in Listing 5.2. The
Chebyshev, Bessel, and Elliptic filter responses shown in Figure 5.9 may be calculated in
Python as illustrated in Listing 5.3.
"""
Bessel, 4th order, low pass, analog filter with
critical frequency = 100 Hz.
"""
b, a = signal.bessel(4, 100, 'low', analog=True, norm='phase')
"""
Elliptic, 4th order, low pass, analog filter with maximum
passband ripple = 3 dB, stop band attenuation = 40 dB
and critical frequency = 100 Hz.
"""
b, a = signal.ellip(4, 3, 40, 100, 'low', analog=True)
5.7 DEMODULATION
Prior to the radar return signals being sent to the signal processor, the radar receiver must
downconvert the signals to either baseband or an IF frequency and then perform either
coherent or noncoherent detection. This section examines both coherent and noncoherent
receivers and gives examples of both.
166 Introduction to Radar Using Python and MATLAB
Noncoherent detection does not preserve the phase information contained in the return
signal. Noncoherent detection results in the amplitude-only envelope of the IF signal.
Noncoherent receivers are often found in simplistic radar systems as they do not require
complicated hardware and software. Figure 5.10 shows the simplest of noncoherent
detectors known as a peak detector or envelope detector. It consists of a diode and a
low-pass filter. The diode serves to detect the amplitude modulation of the IF signal, and
the low-pass filter removes the IF frequency component, as shown in Figure 5.10. To
operate properly, the diode current must remain in the square law region. The ideal diode
current is written as
ID = Is eVD /VT − 1 (A), (5.9)
where
Is = reverse bias saturation current (A),
VD = diode voltage (V),
VT = thermal voltage (V),
ID = diode current (A).
+ 𝑉𝐷 -
IF In Video Out
+
𝑉𝑜𝑢𝑡
𝐼𝐷
-
Mixer
𝑋𝐼 (𝑡)
sin(2𝜋𝑓𝑐 𝑡) Lowpass Filter LNA
Power
Divider
IF Input
Mixer
𝑋𝑄 (𝑡)
COHO
90o Hybrid
Using the identity cos(a+b) = cos(a) cos(b)−sin(a) sin(b), the IF signal is then written
as
where
XI (t) = a(t) cos(φ(t)), in-phase component (I),
XQ (t) = a(t) sin(φ(t)), quadrature component (Q).
The baseband in-phase and quadrature signals are then sampled using a pair of ADCs,
providing a representation of the IF signal that preserves the phase information relative to
the transmitted signal. The amplitude, a(t), and phase, φ(t), of the signal may be obtained
from the in-phase and quadrature components by
q
a(t) = XI (t)2 + XQ (t)2 , (5.14)
!
−1 XQ (t)
φ(t) = tan . (5.15)
XI (t)
Modern radar systems are moving away from baseband coherent detectors and are mov-
ing toward sampling the IF signal directly and then employing digital signal processing to
arrive at the baseband signal representation. While baseband coherent detectors are still
common, their use is becoming limited to systems employing wide bandwidth signals, as
the combination of dynamic range and bandwidth required to perform sampling at the IF
frequency is not feasible for current hardware.
Radar Receivers 169
Modern radar systems make use of a large number of digital signal processing techniques,
including those mentioned in Section 5.7. This has led to analog-to-digital converters with
higher sampling rates and improved dynamic range. Also, many systems now directly
sample the signals at IF, thereby reducing the number of analog components in the system
[10]. Modern radar systems operate in various modes employing different bandwidths
and having different requirements on dynamic range. Previously, it was common to have
different ADCs in different stages of the system. State-of-the-art ADCs are also capable
of operating in different modes with programmable sampling times, varying number
of channels, interleaving of data, and others. The analog-to-digital conversion process
transforms continuous time analog signals into discrete time digital signals by sampling
in the time domain and then quantizing the signal levels, as shown in Figure 5.12.
Analog-to-Digital Converter
𝑥(𝑡) 𝑥[𝑛]
Sampler Quantizer
Analog Input Digital Output
(Continuous time (Discrete time
and amplitude) and amplitude)
5.8.1 Sampling
The requirements on the sampling rate of the ADC is primarily determined by the IF
bandwidth. For baseband sampling, illustrated in Figure 5.13, if the IF signal is band-
limited with a bandwidth of B, then XI (t) and XQ (t) are band-limited with a bandwidth
of B/2. Therefore, ADC sampling of these two signals at a frequency of fs ≥ B meets
the Nyquist criteria [11–13]. For IF sampling, shown in Figure 5.14, a sampling frequency
of twice the IF bandwidth is required to avoid aliasing. However, a higher sampling
rate is common as this reduces the requirements on alias rejection filtering. This also
reduces the effects of quantization noise [5]. When directly sampling the IF signal, it
is often intentionally aliased by under sampling with respect to the IF frequency, which
places the signal in one of the Nyquist zones [14], as shown in Figure 5.14. Random
jitter in the clocks used by the ADC for sampling introduces noise on the ADC output,
thereby reducing the signal-to-noise ratio. When sampling at the IF level, clock jitter also
170 Introduction to Radar Using Python and MATLAB
𝐵 0 𝐵 𝐹𝑠 𝐹𝐼𝐹
−
2 2 2
Aliased Band-Limited
Signal IF Signal
𝐵 𝐵
0 𝐹𝐼𝐹 − 𝐹𝑠 𝐹𝑠 𝐹𝑠 𝐹𝐼𝐹 3
𝐹
2 2 𝑠
Figure 5.14 The resulting spectra for receiver IF sampling with Nyquist zones.
introduces phase error in the ADC output, which becomes predominant at high sampling
rates [15].
5.8.2 Quantization
The full-scale voltage of an ADC is the difference between the maximum and minimum
input voltages, as
VFS
Q = LSB = (V). (5.17)
2N −1
Since the output of the ADC is quantized, there is a difference between the input analog
signal level and the output level of the ADC. This difference is known as quantization
error and is illustrated in Figure 5.15. The signal-to-noise ratio of an ADC is the ratio
of the root mean square (RMS) values of the signal amplitude to the RMS value of the
noise power. For an ideal ADC, the only error present is the quantization error. For a
sinusoidal waveform, an approximation to the RMS value of the quantization error is
given as [16, 17]
Q
E=√ (V). (5.18)
12
The RMS voltage for a sinusoidal waveform is
VFS Q (2N − 1)
VRMS = √ = √ (V). (5.19)
2 2 2 2
Using (5.18) and (5.19), the SNR is found to be
172 Introduction to Radar Using Python and MATLAB
2 p 2
VRMS
N
SNR = = (2 − 1) 3/2 . (5.20)
E2
For N > 5, the SNR is approximated in logarithmic form as
SNR − 1.76
Neff = . (5.22)
6.02
Table 5.2
Brief Survey of Analog-to-Digital Converters
of directly sampling at the radar RF frequency. In digital receivers, a single ADC is used
to sample the IF signal, and downconversion to baseband in-phase and quadrature signals
is performed in digital signal processing. One of the main advantages of direct digital
sampling is the virtual elimination of the amplitude and phase imbalance between the in-
phase and quadrature channels. Other advantages include reduction of DC offset errors,
improved linearity, flexibility of bandwidth, improved filtering, and reduction in size,
weight, and power [5]. There are two main methods for using digital signal processing
to generate baseband in-phase and quadrature signals from the sampled IF data. The first
is through a process known as direct digital downconversion, and the second method is
through the use of the Hilbert transform [18].
The process of direct digital downconversion is illustrated in Figure 5.16. The first
step is to directly sample the band-limited IF signal discussed in Section 5.8.1. Next,
the sampled signal is frequency shifted to zero frequency by complex multiplication
with e−jω0 n , as shown in Figure 5.16. This step is typically accomplished through the
use of a numerically controlled oscillator [5]. After this translation to baseband, the
signals are passed through two low-pass digital filters to remove the unwanted image
frequency. These low-pass filters are often implemented as finite impulse response (FIR)
filters [19, 20]. SciPy provides various functions to aid in the design of FIR filters,
including scipy.signal.firls(), scipy.signal.firwin(), and scipy.signal.firwin2() [8]. At this
point in the receiver chain there is a complex baseband representation that may be used
in the signal processor. However, to reduce the amount of data and computational burden,
the signals are decimated by a factor that ensures the signals are still suitable for signal
processing.
174 Introduction to Radar Using Python and MATLAB
sin[𝜔0 𝑛]
Image Filter Decimation
𝑥ො𝐼 [𝑚]
𝑥(𝑡) 𝑥[𝑛]
ADC
IF Input
𝑥ො𝑄 [𝑚]
Image Filter Decimation
cos[𝜔0 𝑛]
The second method for producing baseband I and Q signals employs the Hilbert transform
[19, 21, 22], and is shown in Figure 5.17. The Hilbert transform has a phase shift property
of π/2 to the digital signal. The Hilbert transform is implemented as two filters h[n] and
g[n], as shown in Figure 5.17, with their frequency responses given as [5]
H(ω) ≈ G(ω) ≈ 1, (5.23)
H(ω) −j for |ω − ω0 | ≤ B
= (5.24)
G(ω) +j for |ω + ω0 | ≤ B.
Referring to (5.23) and (5.24), this method of digital filtering produces outputs that
form the complex I and Q representation of the signal centered at ω0 and rejects the
signal at −ω0 . The final step in this type of receiver is to shift the spectrum of the
signal located at ω0 to zero frequency by decimation. For example, a signal spectrum
centered at ω0 = 2πn/D, is shifted to zero frequency by decimating by a factor of
D, as shown in Figure 5.18. The Hilbert transform of a periodic sequence x[n] may
be calculated using the SciPy implementation scipy.fftpack.hilbert(x). Also, the Hilbert
transform of an analytic signal x(t) may be computed with scipy.signal.hilbert(x). Note
the two transforms above differ in sign. The transform of the periodic sequence does
not have a factor −1 often found in the definition of the Hilbert transform, whereas the
transform of the analytic signal does contain this factor [8].
Radar Receivers 175
𝑥(𝑡) 𝑥[𝑛]
ADC
IF Input
𝑥ො𝑄 [𝑚]
෨
𝑋(𝜔)
Sampled IF Signal
−𝜋 0 2𝜋𝑛 𝜋
𝜔0 =
𝐷
෨
𝑌(𝜔)
Decimated Signal
−𝜋 0 𝜋
Figure 5.18 Signal spectra associated with the Hilbert transform receiver.
176 Introduction to Radar Using Python and MATLAB
5.10 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter05 and the matching
MATLAB examples are in the directory mlradar\Chapter05. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
For this example, calculate and display the normalized attenuation for a transmitted wave-
form with a pulsewidth of 1µs and a pulse repetition frequency of 30 KHz.
Solution: The solution to the above example is given in the Python code sensitiv-
ity time control example.py and in the MATLAB code sensitivity time control exam-
ple.m. Running the Python example code displays a GUI allowing the user to enter the
pulsewidth and pulse repetition frequency. The code then calculates and creates a plot
of the normalized attenuation versus range, as shown in Figure 5.19. This figure illus-
trates the attenuation is at maximum value during the transmitting period to help prevent
receiver saturation.
Referring to Section 5.2, calculate the total noise figure for the five-stage network with
component values given in Table 5.1.
Solution: The solution to the above example is given in the Python code noise figure
example.py and in the MATLAB code noise figure example.m. Running the Python
example code displays a GUI allowing the user to enter the gain and noise figure values
for each component in the network. The code then calculates and displays the total noise
figure for the network, as shown in Figure 5.20. As expected, the Python results match
those given in Section 5.2.
Referring to Section 5.6, calculate the filter response of a fourth-order, low-pass, Cheby-
shev filter with a critical frequency of 100 Hz, and a maximum passband ripple of 3 dB.
Solution: The solution to the above example is given in the Python code low pass filter
example.py and in the MATLAB code low pass filter example.m. Running the Python
example code displays a GUI allowing the user to select a filter type and enter the filter
order, critical frequency, maximum passband ripple, and minimum required attenuation.
Figure 5.20 The total noise figure for a cascaded network calculated by
noise figure example.py.
178 Introduction to Radar Using Python and MATLAB
The code then calculates and displays the frequency response of the selected filter, as
shown in Figure 5.21.
For the simplistic envelope detector given in Figure 5.10, calculate and display the IF
input signal and video output signal. The input signal is an amplitude modulated linear
frequency modulated (chirp) waveform with a starting frequency of 20 Hz and an ending
frequency of 80 Hz. The amplitude modulation has a relative amplitude of 0.1 and a
modulation frequency of 4 Hz.
Solution: The solution to the above example is given in the Python code enve-
lope detector example.py and in the MATLAB code envelope detector example.m. Run-
ning the Python example code displays a GUI allowing the user to enter the parameters
for the amplitude modulated chirp waveform. The code then calculates and displays the
original IF signal along with the output video signal, as shown in Figure 5.22.
Radar Receivers 179
Figure 5.22 The input IF and output video signal of the simple diode envelope detector
calculated by envelope detector example.py.
For the coherent detector given in Figure 5.11, calculate and display the resulting base-
band in-phase and quadrature signals for an amplitude modulated linear frequency modu-
lated (chirp) waveform with a starting frequency of 20 Hz and an ending frequency of 80
Hz. The amplitude modulation has a relative amplitude of 0.1 and a modulation frequency
of 4 Hz.
Solution: The solution to the above example is given in the Python code coher-
ent detector example.py and in the MATLAB code coherent detector example.m. Run-
ning the Python example code displays a GUI allowing the user to enter the parameters
for the amplitude modulated chirp waveform. The code then calculates and displays the
baseband in-phase and quadrature signals, as shown in Figure 5.23.
In this example, calculate and display the digital signal resulting from the analog-to-
digital conversion of an amplitude modulated linear frequency modulated (chirp) wave-
form with a starting frequency of 1 Hz and an ending frequency of 4 Hz. The amplitude
modulation has a relative amplitude of 0.1 and a modulation frequency of 4 Hz. Use a
180 Introduction to Radar Using Python and MATLAB
Figure 5.23 The baseband in-phase and quadrature signals from a coherent detector
calculated by coherent detector example.py.
Solution: The solution to the above example is given in the Python code adc example.py
and in the MATLAB code adc example.m. Running the Python example code displays
a GUI allowing the user to enter the parameters for the ADC and for the amplitude
modulated chirp waveform. The code then calculates and displays the original analog
signal, the resulting sampled and quantized signal, and the associated quantization error
output by the ADC, as shown in Figure 5.24.
Referring to (5.21) and (5.22), calculate the signal-to-noise ratio for an ideal analog-to-
digital converter with 12 bits of resolution. Also, calculate the effective number of bits
for an analog-to-digital converter with a measured signal-to-noise ratio of 63 dB.
Solution: The solution to the above example is given in the Python code adc resolution
example.py and in the MATLAB code adc resolution example.m. Running the Python
example code displays a GUI allowing the user to enter the number of bits for the ideal
ADC and the measured SNR for a practical ADC. The code then calculates and displays
the ideal SNR, and the resulting effective number of bits, as shown in Figure 5.25.
Radar Receivers 181
Figure 5.24 The sampled and quantized ADC output, and associated error calculated by
adc example.py.
Figure 5.25 The ideal SNR and effective number of bits calculated by
adc resolution example.py.
182 Introduction to Radar Using Python and MATLAB
PROBLEMS
5.1 Describe the major components of the superheterodyne receiver and explain its signif-
icance in the development of modern radar systems.
5.3 Consider a cascaded network composed of four components; a low noise amplifier with
a gain of 10 dB and noise figure of 2 dB, an RF filter with a gain of −1 dB and noise
figure of 0.5 dB, a mixer with a gain of −3 dB and noise figure of 4 dB, and an IF filter
with a gain of −0.5 dB and noise figure of 1 dB. Calculate the total noise figure for
this cascaded network.
5.4 Given two input frequencies, f1 = 100 MHz and f2 = 125 MHz, find the second- and
third-order intermodulation distortion frequencies.
5.5 Referring to Problem 5.4, the power associated f1 is 1W, the power associated with
f2 is 10W and the third-order intercept point is 2W. Find the power associated with
third-order intermodulation distortion.
5.6 Suppose the RF carrier frequency is 2 GHz and the local oscillator has a frequency of
1.9 GHz. Calculate the image frequency created during the first downconversion step.
5.7 Describe the difference in the filter responses shown in Figure 5.9 and explain the
advantages and disadvantages of each.
5.8 Explain the difference between coherent and noncoherent detection and give examples
of when it is advantageous to use each one.
5.9 Find the size of the least significant bit for the Texas Instruments - AD9224R analog-
to-digital converter when the input signal is a sine wave with a full-scale voltage of
1.4V.
5.10 For a sine wave input signal, calculate the ideal signal-to-noise ratio for the Analog
Devices - AD9697 analog-to-digital converter. Assuming the achieved signal to noise
ratio is 3 dB less than the ideal value, calculate the effective number of bits.
5.11 Describe the process of direct digital downconversion and explain when this technique
is desirable.
Radar Receivers 183
References
[1] E. H. Armstrong. Some recent developments in the audion receiver. Proceedings of the Institute of Radio
Engineers, 3(3):215–238, September 1915.
[3] E. H. Armstrong. The super-heterodyne - its origin, development, and some recent improvements.
Proceedings of the Institute of Radio Engineers, 12(5):539–552, October 1924.
[4] D. Pozar. Microwave Engineering, 4th ed. John Wiley and Sons, New York, 2012.
[6] M. C. Budge and S. R. German. Basic Radar Analysis. Artech House, Norwood, MA, 2015.
[7] M. A. Richards, J. A. Scheer and W. A. Holm. Principles of Modern Radar - Basic Principles. SciTech
Publishing, Raleigh, NC, 2010.
[8] E. Jones, et al. SciPy: Open source scientific tools for Python, 2001–. http://www.scipy.org/.
[9] J. D. Hunter. Matplotlib: A 2D graphics environment. Computing in Science & Engineering, 9(3):90–95,
2007.
[10] P. E. Pace. Advanced Techniques for Digital Receivers. Artech House, Norwood, MA, 2000.
[11] H. Nyquist. Certain factors affecting telegraph speed. Transactions of the American Institute of Electrical
Engineers, XLIII:412–422, Jan 1924.
[12] H. Nyquist. Certain topics in telegraph transmission theory. Transactions of the American Institute of
Electrical Engineers, 47(2):617–644, April 1928.
[13] C. E. Shannon. A mathematical theory of communication. The Bell System Technical Journal, 27(3):379–
423, July 1948.
[14] P. Poshala. Why oversample when undersampling can do the job? 2013. Texas Instruments Application
Report: SLAA594A.
[15] R. Zeijl, R. van Veldhoven and P. Nuijten. Sigma-Delta ADC clock jitter in digitally implemented receiver
architectures. Proceedings of the 9th European Conference on Wireless Technology, September 2006.
[16] W. Kester. The Data Conversion Handbook. Newnes, New York, 2005.
[18] S. Hahn. Hilbert Transforms in Signal Processing. Artech House, Norwood, MA, 1996.
[19] R. Lyons. Understanding Digital Signal Processing, 2nd ed. Prentice Hall, Upper Saddle River, NJ, 2004.
[20] S. Smith. The Scientist and Engineer’s Guide to Digital Signal Processing. California Technical
Publishing, San Diego, CA, 1997.
[21] R. N. Bracewell. The Fourier Transform and Its Applications, 3rd ed. McGraw-Hill, New York, 1999.
[22] H. Urkowitz. Signal Theory and Random Processes. Artech House, Dedham, MA, 1983.
Chapter 6
Target Detection
The radar detection process is a key part of any radar system as it distinguishes targets
in the presence of noise. Also, the detection measurements resulting from this process
are used for further processing such as tracking, synthetic aperture imaging, and clutter
mitigation. In Chapter 4, the calculation of the maximum target detection range, given
in (4.36), was based on the minimum signal-to-noise ratio required for detection. This
chapter further investigates the selection and effect of the required signal-to-noise ratio
on radar detection performance. The chapter begins with single pulse detection for
both coherent and noncoherent receivers, where much of the early work in this area
was performed by Rice [1]. Next, the improvement in radar detection performance
resulting from the integration of multiple received pulses is studied. This area was
largely influenced by Marcum [2], who extended the work of Rice for pulse integration.
The detection of targets with fluctuating radar cross section is then analyzed. These
concepts were originally developed by Swerling [3] and later extended for various target
types [4]. The treatment of radar detection is extended to include constant false alarm
rate processing. The chapter concludes with several Python examples to strengthen the
ideas behind radar detection theory and processing. For readability, exp(x) is used for ex
notation in this chapter.
As illustrated in Section 5.7.1, the noncoherent diode detector is one of the simplest radar
receivers and is used as the starting point for discussions on target detection. The input
signal to the receiver is the backscattered signal, x(t), from the target, and the noise
signal, n(t). For now, it is assumed the noise is Gaussian, with zero mean and has a
power (variance) of σ 2 . The probability density function for a Gaussian distribution is
given by [5]
185
186 Introduction to Radar Using Python and MATLAB
(x − µ)2
1
p(x) = √ exp − , (6.1)
σ 2π 2σ 2
where µ is the mean and σ is the standard deviation. This probability density function may
be calculated using the SciPy implementation scipy.stats.norm.pdf(x, loc, scale), where
the keyword loc is the mean and keyword scale is the standard deviation [6]. The noise is
also assumed to be spatially incoherent and uncorrelated with the radar return signal. For
each input signal, x(t), the envelope detector produces an output, y(t), which is passed
through a detection process with one of two possible outcomes. These two hypotheses
are denoted as H0 and H1 , and their associated detection results and probability densities
are given in Table 6.1, where N0 is the noise level and a(t) is the envelope of the radar
return signal.
The design and implementation of detection algorithms is mainly focused on ma-
nipulating these two probability density functions to achieve radar detection performance
that is in some sense optimal. Most radar designs make use of the Neyman-Pearson cri-
terion [7], which specifies the probability of false alarm, Pfa , that is acceptable, and then
maximizes the probability of detection, Pd , with respect to the signal-to-noise ratio. This
leads to a detection threshold procedure, as shown in Figure 6.1. This threshold may be
constant or dynamic and each sample in the radar data is compared to this threshold.
If the sample is above the threshold level, then it is considered to be a target detection.
On the other hand, if the sample is below the threshold, it is considered to be noise
only. However, there are situations where these assumptions are incorrect. For example,
the target return signal may be weak and below the detection threshold, and therefore a
missed detection with probability 1 − Pd . Also, a large spike in the noise may be above
the detection threshold and therefore a false alarm with probability Pfa . This leads to
four possible outcomes shown in Table 6.2. The false alarm rate (FAR) is defined as the
number of false alarms per unit time, and is expressed as
Table 6.1
Target Detection Hypotheses
Detected
Targets
Table 6.2
Basic Target Detection Hypotheses
and possibly operator resources, to make the determination that no target is present. Pfa
values in the range of 10−4 to 10−8 are quite common.
The Neyman-Pearson lemma was introduced in 1933 by Jerzy Neyman and Egon Pearson
[7–9] and results in the most powerful test for detection hypotheses. The previous section
showed the output of the detection process, Y , according to one of two distributions
p(y|H0 ) and p(y|H1 ). Based on the observation of Y , a testing procedure, T , is desired
to be optimal in choosing between the hypotheses. Let RT be a subset of the range of Y
where the test chooses H1 . The probability of false alarm is then
188 Introduction to Radar Using Python and MATLAB
ˆ
Pfa = p(y|H0 ) dy, (6.3)
RT
H1
p(y | H1 ) >
λ. (6.5)
p(y | H0 ) <
H0
The subset of the range of Y where the test decides H1 is denoted as
It is apparent the set R(λ) will vary with λ, and therefore the threshold can be set
to achieve the desired probability of false alarm. For the likelihood ratio test given in
(6.5), with the threshold, λ, chosen such that the probability of false alarm in (6.7)
is at a significance level of α, another test does not exist with Pfa (RT ) ≤ α and
Pd (RT ) > Pd (R(λ)). In other words, the likelihood ratio test of (6.5) is the most
powerful test with a probability of false alarm less than or equal to the significance level
α. Proof of the Neyman-Pearson lemma may be found in various texts [7–9].
Figure 6.2 shows the probability density function for Gaussian noise given in (6.1) along
with the detection threshold. The probability of false alarm is then the shaded area under
the curve. To calculate the probability of false alarm for the Gaussian noise and given
detection threshold, start with (6.7) and make use of (6.1) to give
ˆ ˆ∞
y2
1
Pfa = p(y|H0 ) dy = √ exp − 2 dy. (6.8)
σ 2π 2σ
R(λ) Vt
Target Detection 189
𝑝(𝑦|𝐻0 )
Threshold
𝑃𝑓𝑎
𝑉𝑇
Figure 6.2 Gaussian probability density function with detection threshold and probability
of false alarm.
The integral in (6.8) above may be found in various look-up tables and online calculators
[10, 11], and is given here as
1 VT
Pfa = 1 − erf √ , (6.9)
2 2σ
where erf is the error function [10]. The error function may be calculated using the SciPy
implementation given in scipy.special.erf() [6]. A similar derivation for the probability of
detection is followed. Assume the amplitude of the signal from the envelope detector is
A, which allows the probability of detection to be written as
ˆ ˆ∞
−(y − A)2
1
Pd = p(y|H1) dy = √ exp dy. (6.10)
σ 2π 2σ 2
R(λ) VT
Threshold
𝑝(𝑦|𝐻1 )
𝑝(𝑦|𝐻0 )
𝑃𝑑
𝑃𝑓𝑎
𝑉𝑇
Figure 6.3 Gaussian probability density functions with detection threshold, probability of
false alarm, and probability of detection.
Figure 6.3 shows both the probability of false alarm and the probability of detection for
the case of a simple envelope detector with Gaussian distributions. The goal is for the
probability of false alarm to be as small as possible and the probability of detection to be
as large as possible. As can be seen in this figure, raising the detection threshold would
lower probability of false alarm, but also lower the probability of detection for a given
signal-to-noise level. Figure 6.4 illustrates an increase in the signal-to-noise ratio, which
results in a higher probability of detection for a given detection threshold or probability
of false alarm.
The previous section examined the probability of false alarm and the probability of
detection for the envelope detector with Gaussian noise. For coherent detectors, illustrated
in Figure 5.11, the noise is modeled at the output of the in-phase and quadrature channels
as Gaussian, with zero mean and noise power of σ 2 /2. The magnitude of the in-phase
and quadrature channels is
q
z = XI2 + XQ 2, (6.12)
Target Detection 191
𝑆𝑁𝑅 ≈ 17 𝑑𝐵
𝑃𝑑 ≈ 1
𝑆𝑁𝑅 ≈ 5 𝑑𝐵
𝑝(𝑦|𝐻0 )
𝑃𝑑 ≈ 0.93
𝑃𝑓𝑎 ≈ 0.16
𝑉𝑇
Figure 6.4 Probability of false alarm and probability of detection for various
signal-to-noise ratios.
then the resulting probability density function follows a Rayleigh distribution given
by [9, 12, 13]
2
z −z
p(z) = 2 exp . (6.13)
σ 2σ 2
Figure 6.5 shows a comparison between the Gaussian and Rayleigh probability density
functions for a variance of σ 2 = 1. Following the procedure in Section 6.1.2, the
probability of false alarm for the coherent detector is written as
ˆ∞
z2 VT2
z
Pfa = exp − dz = exp − . (6.14)
σ2 2σ 2 2σ 2
VT
𝜎=1
𝜇=0
𝜎=1
Figure 6.5 Probability density functions for Gaussian and Rayleigh distributions with
σ 2 = 1.
ˆ∞ "r #
z 2 + A2 A2
z zA
q
Pd = I0 exp − dz = Q , −2 ln (Pfa ) , (6.16)
σ2 σ2 2σ 2 σ2
VT
where Q is Marcum’s Q function [15], and I0 is the modified Bessel function [10]. For a
A2
sinusoidal waveform, SNR = , which results in
2σ 2
√
q
Pd = Q 2SNR, −2 ln (Pfa ) . (6.17)
Marcum’s Q function comes about frequently in radar detection problems, and while
there is no known closed form expression for this integral, there are several numerical
algorithms for its calculation [13, 16, 17]. Also, Cantrell and Ojha [18] give a comparison
of several numerical algorithms used to calculate Marcum’s Q function. Figure 6.6 shows
the probability of detection versus signal-to-noise ratio for varying probability of false
alarm.
Target Detection 193
Figure 6.6 Probability of detection vs signal-to-noise ratio for varying probability of false
alarm.
As expected, the probability of detection increases with signal-to-noise ratio for a fixed
detection threshold, which is set by the probability of false alarm. Lowering the detection
threshold lowers the signal-to-noise ratio required to produce the same probability of
detection. However, this results in an increased probability of false alarm. The general
procedure is to set the detection threshold based on (6.15) for a desired probability of
false alarm and then compute the probability of detection versus signal-to-noise ratio for
the associated probability of false alarm.
The previous sections were concerned with the detection of a measurement, y, from
a single radar return or pulse. One method for improving detection performance is
to integrate multiple pulses. A target may reflect several pulses during a single scan.
Integrating the return signals increases the signal-to-noise ratio, and therefore improves
detection probability. The number of return signals that may be integrated depends on
194 Introduction to Radar Using Python and MATLAB
several factors, including pulse repetition frequency, antenna scan rate, target motion,
and relative velocity. Pulse integration may be performed coherently or noncoherently.
While there are semicoherent integration schemes, these will not be discussed here. The
reader is referred to two good resources on the subject [14, 17].
The first type of integration considered is coherent integration, which preserves the phase
relationship between the received pulses. The integration is performed on the complex
signals before being passed to the detector, as shown in Figure 6.7.
𝑥1
Coherent Magnitude Squared Threshold Detector
𝑥2
Summation
𝑁 2 2
...
𝑁 𝑁
1 >
𝑥𝑖 𝑥𝑖 𝑥𝑖 𝑇
𝑁 <
𝑖=1 𝑖=1 𝑖=1
𝑥𝑁
However, integration loss always occurs in practical systems and this ideal value is not
achieved. Integration loss may be due to component instability, environmental changes,
target and platform motion, and fluctuations in target scattering [19]. Coherent integra-
tion is generally not employed over long time frames, especially for targets with quickly
changing radar cross section or in the case of correlated clutter. Ideally, coherent integra-
tion may be achieved through direct summation of the signals. However, a more practical
approach is through the use of the Fourier transform to determine the unknown initial
phase [14].
The next type of integration is noncoherent integration shown in Figure 6.8. As shown
in Section 5.7.1, noncoherent processing does not make use of phase information. Pulse
Target Detection 195
integration is performed after the signal amplitude of each pulse has been found (i.e.,
after the signal has passed through the envelope detector).
𝑥1 Noncoherent
𝑥2 Magnitude Squared Threshold Detector
𝑥1 2 Summation
𝑁
...
...
𝑁
𝑥2 2 1 2 >
2 𝑥𝑖 𝑇
...
𝑥𝑖 𝑁 <
𝑖=1
2 𝑖=1
𝑥𝑁 𝑥𝑁
Noncoherent integration is less efficient than coherent integration and much work has
been performed in this area to characterize the degradation in performance. While
closed-form expressions generally do not exist, there are some empirical approximations
[20, 21]. One approach is to write the degradation as a loss factor compared to coherent
integration as
SNR ci
SNR nci = , (6.19)
Lnci
where SNR nci is the signal-to-noise ratio resulting from noncoherent integration and
Lnci is the loss in integration as compared to coherent integration. One approximation
for this loss factor is given as [21]
1 + SNR 0
Lnci = , (6.20)
SNR 0
where SNR 0 is the required single pulse signal-to-noise ratio for noncoherent detection.
An expression for finding the single pulse signal-to-noise ratio given the number of pulses
and signal-to-noise required to produce a specific probability of detection and probability
of false alarm is written as [21]
s
SNR nci SNR 2nci SNR nci
SNR 0 = + + . (6.21)
2N 4N 2 N
Another approach is to express the signal-to-noise ratio for noncoherent integration as a
gain over the single pulse signal-to-noise ratio. Sometimes in literature this is referred to
as the noncoherent integration improvement factor [13]. In this case, the signal-to-noise
ratio is
where Gnci is the noncoherent integration gain, and SNR 0 is the single pulse signal-to-
noise ratio. An approximation for Gnci which has been shown to be accurate within 0.8
dB [21] is
log10 (1/Pfa )
Gnci = 6.79 (1 + 0.235 Pd ) 1 + log10 (N )
46.6
Figure 6.9 shows a comparison of the single pulse signal-to-noise ratio required for co-
herent integration and noncoherent integration. The figure includes both approximations
for noncoherent integration. As illustrated in the figure, coherent integration outperforms
noncoherent integration for increasing N . However, as the number of pulses becomes
exceedingly large, coherent integration will start to degrade.
Figure 6.9 Comparison of the required single pulse signal-to-noise ratio for coherent and
noncoherent pulse integration (Pf a = 10−9 , Pd = 0.99).
Target Detection 197
𝑥1
𝑥2 Magnitude Squared Threshold 2nd Threshold
𝑥1 2 𝑁
𝑥𝑖 2 > 𝑇 → 𝑚𝑖 = 1 >
...
...
𝑥2 2
...
𝑚𝑖 𝑀
2 <
...
𝑥𝑖 < 𝑇 → 𝑚𝑖 = 0
𝑖
𝑥𝑁 2
𝑥𝑁
The probability of detection for binary integration is written as [5, 22, 23]
N
X
PMN = CkN · pk · (1 − p)N −k , (6.24)
k=M
where p is the single pulse probability of detection, and CkN is the binomial coefficient
given by
N!
CkN = . (6.25)
k! (N − k)!
Similarly, the probability of false alarm is
N
X
FMN = CkN · f k · (1 − f )N −k , (6.26)
k=M
where f is the single pulse probability of false alarm. For binary integration, some
optimum value of M exists that minimizes the required signal-to-noise ratio for given
probabilities of detection and false alarm, and a given N [22, 23]. Richards [19] provides
a nice approximation for M for various target fluctuations, which is given here as
Table 6.3
Optimum M for Binary Integration
Target Type α β
Swerling 0 0.8 −0.02
Swerling I 0.8 −0.02
Swerling II 0.91 −0.38
Swerling III 0.8 −0.02
Swerling IV 0.873 −0.27
Pc = 1 − (1 − p)N , (6.28)
where p is the single pulse probability of detection, and N is the total number of pulses
considered. This may also be found using (6.24) with M = 1. Figure 6.11 gives a com-
parison between binary and cumulative integration. As shown in this figure, cumulative
integration requires the lowest signal-to-noise ratio for detection, while increasing M
also increases the required signal-to-noise ratio. Figure 6.12 gives a comparison between
coherent, noncoherent, binary, and cumulative integration. As expected, coherent integra-
tion provides the best performance.
The previous sections were concerned with the detection of targets with constant radar
cross section. Statistical noise models were developed that allowed the probability of
detection and probability of false alarm to be determined. As will be shown in Chapter
7, complex targets have various scattering mechanisms that can interfere destructively or
constructively. Therefore, the energy backscattered from a target may vary from pulse to
pulse or from scan to scan. This effect may be caused by small changes in the viewing
aspect angle or frequency changes in the transmitted waveform. To more accurately
predict radar detector performance, fluctuating target models are needed. A statistical
model of the radar cross section, including both a probability density function and a
decorrelation measure, are used along with the statistical noise model to determine the
probability of detection, probability of false alarm and the signal-to-noise ratio. Swerling
Target Detection 199
Binary Integration (M of N)
1.0
1 of 4
2 of 4
3 of 4
0.8 4 of 4
Probability of Detection
0.6
0.4
0.2
0.0
4 6 8 10 12 14 16
Signal to Noise (dB)
Figure 6.11 Comparison of probability of detection for binary and cumulative pulse
integration (Pfa = 10−6 ).
models [3] are an often-used set of statistical target models that are special cases of
the chi-squared target models with specific degrees of freedom [5, 12]. Table 6.4 gives
the four Swerling target models. Often the terms Swerling 0 or Swerling V will be
used to represent the constant radar cross-section model. The statistics associated with
Swerling I and Swerling II target models are consistent with targets composed of several
small scatterers of similar amplitude, while Swerling III and Swerling IV models are
representative of targets comprised of a single dominant scatterer along with many small
scatterers [3]. The probability density function for Swerling I and Swerling II target
models is given as
1 σ
p(σ) = exp − , (6.29)
σavg σavg
where σavg is the average radar cross section of the target. The probability density
function for Swerling III and Swerling IV target models is
200 Introduction to Radar Using Python and MATLAB
1.0
Coherent
Noncoherent
Binary 3 of 4
0.8 Cumulative
Probability of Detection
0.6
0.4
0.2
0.0
0.0 2.5 5.0 7.5 10.0 12.5 15.0 17.5 20.0
Signal to Noise (dB)
Figure 6.12 Comparison of probability of detection for binary and cumulative pulse
integration (Pfa = 10−6 ).
Table 6.4
Swerling Target Models
Decorrelation
Scattering RCS Model Scan to Scan Pulse to Pulse
Small similar scatterers chi-squared (2 DOF) Swerling I Swerling II
4σ 2σ
p(σ) = 2
exp − . (6.30)
σavg σavg
Target Detection 201
1.5
Probability p(x)
1.0
0.5
0.0
0.0 0.5 1.0 1.5 2.0 2.5
x
Figure 6.13 Weibull distribution for various values of shape parameter k.
Noncoherent integration can be applied to all five Swerling models. However, the target
radar cross section decorrelates from pulse to pulse for Swerling II and Swerling IV.
This means phase coherency is lost and coherent integration cannot be employed for
those models. Other types of probability density functions may be used to develop
statistical target models. These often include lognormal and Weibull distributions, which
have long tails, as illustrated in Figure 6.13. For high-resolution radar systems, these
types of distributions often give a better match to empirical data than the Swerling
models [24]. The Weibull distribution may be calculated using the SciPy implementation
in scipy.stats.weibull min() and scipy.stats.weibull max() [6].
For calculation of detection statistics when coherent integration in employed, the
signal-to-noise ratio is replaced with the ideal value of N · SNR. For example, the
probability of detection for Swerling 0 targets given in (6.17) becomes
√
q
Pd = Q 2N · SNR, −2 ln (Pfa ) . (6.31)
!
ln(Pfa )
Pd = exp , (6.32)
N · SNR + 1
and for Swerling III
! !
2N · SNR ln(Pfa ) 2 ln(Pfa )
Pd = 1− 2 exp . (6.33)
2 + N · SNR 2 + N · SNR
6.3.1 Swerling 0
In Section 6.1.3 the probability of detection and probability of false alarm was derived
for coherent detection in the presence of Gaussian noise. Those results are now extended
for noncoherently integrating a number of pulses, N , from targets with constant radar
cross section. For N > 1, the resulting probability density function p(y|H0 ) is the Erlang
density [12]. This is given as
y (N −1) e−y
p(y|H0 ) = . (6.34)
(N − 1)!
Note that y now represents a sample of the squared magnitude. The expression in (6.34)
reduces to the exponential probability density function. The probability of false alarm is
then obtained by integrating (6.34) from the threshold to infinity as
ˆ∞
y (N −1) e−y
Pfa = dy = 1 − Γ N, SNRT , (6.35)
(N − 1)!
SNRT
where Γ is the incomplete gamma function [10], and SNRT is the signal-to-noise ratio
of the detection threshold. Therefore, specifying a probability of false alarm sets the
detection threshold as
The probability of detection for this Swerling case is found from the probability density
function for p(y|H1 ) as [3, 19]
y (N −1)/2
p(y|H1 ) = exp (−y − N · SNR)
N · SNR
p
× IN −1 2 N · SNR · y , (6.37)
where IN −1 is the modified Bessel function of the first kind of order N − 1. The
modified Bessel function may be found using the SciPy function scipy.special.iv() [6].
The probability of detection for this Swerling case is then found by integrating (6.37)
from the threshold to infinity, which results in
h√ p i
Pd = Q 2N · SNR, 2 · SNRT + exp − SNRT − N · SNR
N (n−1)/2
X SNRT p
× In−1 2 N · SNR · SNRT . (6.38)
n=2
N · SNR
0.6
0.4
0.2
0.0
0.0 2.5 5.0 7.5 10.0 12.5 15.0 17.5
Signal to Noise (dB)
Figure 6.14 Probability of detection versus signal-to-noise ratio for Swerling 0 type targets
(Pfa = 10−6 ).
6.3.2 Swerling I
The detailed derivation of the probability density function for a measurement, y, under
H1 for Swerling I type targets is beyond the scope of this book. The reader is referred
to [19, 25] for these details, and the result is given here as
(N −2)
1 1 −y
p(y|H1 ) = 1+ exp
N · SNRavg N · SNRavg 1 + N · SNRavg
y
×Γ √ , N −2 , (6.39)
(1 + 1/(N · SNRavg )) N − 1
Target Detection 205
where SNR avg is the average signal-to-noise ratio over the N pulses. As before, integrate
the probability density function in (6.39) from the voltage threshold to infinity to obtain
the probability of detection. Performing the integration yields the following approximate
expression [19, 25, 26]
(N −1)
1
Pd = 1−Γ N − 1, SNRT + 1 +
N · SNRavg
SNRT −SNRT
Γ N − 1, exp . (6.40)
1 + 1/(N · SNRavg ) 1 + N · SNRavg
Since the noise model is the same in this case as for the Swerling 0 case, the probability
of false alarm is given in (6.35). Figure 6.15 illustrates the probability of detection versus
signal-to-noise ratio for Swerling I type targets. As in the Swerling 0 case, noncoherently
integrating pulses reduces the requirement on the single pulse signal-to-noise ratio.
6.3.3 Swerling II
The probability density function for a measurement, y, under H1 for Swerling II type
targets is written as [19, 25]
y
y (N −1) exp
(1 + SNRavg )
p(y|H1 ) = . (6.41)
(1 + SNRavg )N (N − 1)!
As before, performing the integration of the probability density function in (6.41) results
in the probability of detection for Swerling II type targets, given here as [19, 25, 26]
SNRT
Pd = 1 − Γ N, . (6.42)
1 + SNRavg
Again, the noise model is the same in this case as for the Swerling 0 case, and the
probability of false alarm is given in (6.35). Figure 6.16 shows the probability of
detection versus signal-to-noise ratio for Swerling II type targets. As in the previous cases,
noncoherently integrating pulses reduces the requirement on the single pulse signal-to-
noise ratio.
The derivation of the probability of detection for Swerling III type targets follows the
same procedure as the Swerling I type targets except the probability density function
for the target radar cross section follows a chi-squared probability with four degrees of
206 Introduction to Radar Using Python and MATLAB
0.6
0.4
0.2
0.0
0 5 10 15 20 25
Signal to Noise (dB)
Figure 6.15 Probability of detection versus signal-to-noise ratio for Swerling I type targets
(Pfa = 10−6 ).
freedom rather than two. The details of this derivation may be found in [25, 27], and the
result is given here as
−SNRT
× exp . (6.43)
1 + (N · SNRavg )/2
The expression in (6.43) is exact for N = 1, 2 and approximate for Pfa 1 and
(N · SNRavg )/2 > 1. These conditions on the approximation are highly likely to be
valid in practical situations. As in the previous cases, the noise model is the same in this
case as for the Swerling 0 case, and the probability of false alarm is given in (6.35).
Target Detection 207
0.6
0.4
0.2
0.0
0 5 10 15 20 25
Signal to Noise (dB)
Figure 6.16 Probability of detection versus signal-to-noise ratio for Swerling II type
targets (Pfa = 10−6 ).
Figure 6.17 shows the probability of detection versus signal-to-noise ratio for Swerling
III type targets. As in the previous cases, noncoherently integrating pulses reduces the
requirement on the single pulse signal-to-noise ratio.
6.3.5 Swerling IV
The derivation of the probability of detection for Swerling IV type targets follows the
same procedure as the Swerling II type targets except the probability density function for
the radar cross section follows a chi-squared probability with four degrees of freedom
rather than two. The details of this derivation may be found in [19, 25], and the results
are given here as
208 Introduction to Radar Using Python and MATLAB
N
N X −k
SNRavg N! SNRavg
Pd = 1 −
SNRavg + 2 k!(N − k)! 2
k=0
" #
2SNRT
× Γ 2N − k, . (6.44)
SNRavg + 2
Figure 6.18 shows the probability of detection versus signal-to-noise ratio for Swerling
IV type targets. As in the previous cases, noncoherently integrating pulses reduces the
requirement on the single pulse signal-to-noise ratio. Figure 6.19 provides a comparison
between the five Swerling target types for 10 pulses. Swerling 0 has the lowest required
signal-to-noise ratio compared to the other target models. This is expected since the target
Figure 6.17 Probability of detection versus signal-to-noise ratio for Swerling III type
targets (Pfa = 10−6 ).
Target Detection 209
0.6
0.4
0.2
0.0
0 5 10 15 20 25
Signal to Noise (dB)
Figure 6.18 Probability of detection versus signal-to-noise ratio for Swerling IV type
targets (Pfa = 10−6 ).
is constant for each pulse. Swerling I and III require the highest signal-to-noise ratio as
these models fluctuate from scan to scan.
As shown in the previous sections, the resulting analytical forms for the signal-to-
noise ratio, probability of detection and probability of false alarm can become quite
complicated. Shnidman [28] developed a set of equations, based on empirical data, for
calculating the required signal-to-noise ratio for a specified probability of detection and
probability of false alarm. These equations are applicable to all of the Swerling target
models for either a single pulse or the noncoherent integration of N pulses. Shnidman’s
equation proceeds as follows. First, the parameter K is chosen based on the Swerling
target type, then the parameter α is chosen based on the number of pulses as
210 Introduction to Radar Using Python and MATLAB
∞ Swerling 0
1
Swerling I (
0 N < 40
K= N Swerling II , α= 1
. (6.45)
2 4 N ≥ 40
Swerling III
2N Swerling IV
Then the two parameters η and X are computed from
q p
η= −0.8 ln(4Pfa (1 − Pfa )) + sign(Pd − 0.5) −0.8 ln(4Pd (1 − Pd )) (6.46)
and
Target Detection 211
" r #
N 1
X =η η+2 + α− . (6.47)
2 4
The following constants are now computed
C1 = (17.7006Pd − 18.4496)Pd + 14.5339 Pd − 3.525 /K, (6.48)
1
C2 = exp 27.31PD − 25.14 + Pd − 0.8
K
−5
10 (2N − 20)
× 0.7 ln + , (6.49)
Pfa 80
C1 for 0.1 ≤ Pd ≤ 0.872,
CdB = (6.50)
C + C
1 2 for 0.872 ≤ Pd ≤ 0.99,
1 ≤ N ≤ 10. (6.55)
Figure 6.20 shows the error in the signal-to-noise calculation when using Shnidman’s
equation for all five Swerling target types. As can be seen, Shnidman’s equation provides
accurate results for first cut type of radar system calculations.
212 Introduction to Radar Using Python and MATLAB
1.00
Shnidman's Approximation
Swerling 0
Swerling 1
0.75 Swerling 2
Swerling 3
Swerling 4
0.50
Signal to Noise Error (dB)
0.25
0.00
0.25
0.50
0.75
1.00
0.2 0.4 0.6 0.8 1.0
Probability of Detection
Figure 6.20 Error in the approximate signal-to-noise ratio using Shnidman’s equation
(Pfa = 10−6 , N = 5).
The previous sections were concerned with the calculation of detection statistics based
on a chosen probability density function for the noise. A voltage threshold based on
the probability of false alarm for a single pulse was calculated, as given in (6.15).
Also calculated was the signal-to-noise ratio threshold using noncoherent integration
of a number of pulses, given in (6.36). These types of fixed value thresholds satisfy
the condition on the probability of false alarm as long as the noise power is constant.
However, in practical systems, factors such as clutter, interfering sources, and nearby
targets cause the noise level to change both spatially and temporally. Therefore, a
continuously changing threshold is needed where the threshold is raised or lowered to
maintain a constant probability of false alarm. This is typically referred to as constant
false alarm rate (CFAR) processing. CFAR lowers the number of false alarms the radar
system must process but may also prevent the detection of some targets. A fundamental
circuit for CFAR processing was first described in 1968 by Finn and Johnson [29]. While
the term CFAR processing refers to a common form of adaptive algorithms used to detect
Target Detection 213
target returns against a background of noise, clutter, and interference, there are several
approaches to accomplish this. The following sections present some of the more common
CFAR techniques.
Cell averaging CFAR (CA-CFAR) is one of the simplest CFAR processing schemes. The
estimated noise level around the cell under test (CUT) is found by taking a block of range
and/or Doppler cells around the CUT and computing the average power level, as shown
in Figure 6.21. The average noise power level for CFAR processing on one-dimensional
measurements may be expressed as
Range Cells
Guard Cells
Range Cells Cell Under Test
(CUT)
N
1 X
Z= Xn , (6.56)
N n=1
where
N = number of range cells in CFAR average,
Xn = signal power in the nth cell,
Z = local estimate of the noise power.
The cells immediately surrounding the CUT are omitted from the calculation to avoid
corruption of the noise estimate with power from the CUT. These cells are commonly
referred to as guard cells. The local estimate of the noise power is generally increased
to account for limited sample sizes. Consider the conventional cell averaging CFAR
processing block diagram shown in Figure 6.22. A detection is declared in the CUT when
214 Introduction to Radar Using Python and MATLAB
X ≥ CZ, (6.57)
where C is the CFAR bias. This bias is added to the local noise estimate due to limited
sample sizes. The CFAR threshold is generally not computed for each cell in the range
and/or Doppler window. Typically, a minimum detection threshold is first set. For each
cell with an amplitude above this minimum detection threshold, a CFAR threshold is then
calculated and applied. Cells with amplitudes above the CFAR threshold are considered
detections, as shown in Figure 6.23. For illustration purposes, the CFAR threshold is
calculated and plotted for every cell in the range data. This can be thought of as allowing
the CFAR computation window, which consists of the cell under test, guard cells, and
reference cells, to slide through the range data, as shown in Figure 6.24. Figure 6.25
shows the CFAR threshold calculated for every range cell in the range window. As can
be seen, the CFAR threshold is not constant but varies with the input signal. Also, the
CFAR threshold is larger on either side of the cells containing target returns. This helps
to reduce the detections from range sidelobes or spillover from the cell under test. One
disadvantage of CA-CFAR is that sharp clutter or interference boundaries tend to increase
the number of false alarms.
Conventional cell averaging CFAR estimates the local noise power by averaging over
all the reference cells. In the case of cell averaging greatest of CFAR (CAGO-CFAR),
the local noise power is estimated by first computing the average of the lead and trail
reference cells separately, as shown in Figure 6.26. Then the CFAR threshold value is
Target Detection 215
Detections
Above CFAR
Threshold
Noise Spike
CFAR Thresholds
Above CFAR
Minimum Detection Threshold
Threshold
Figure 6.25 Cell averaging CFAR threshold computed over all range cells.
taken to be the maximum of these two separate averages. The estimated value of the
noise power is then written as
" N/2 # " N
#!
2 X X
Z= max Xn , Xn . (6.58)
N n=1 n=N/2+1
Again, for illustration, the CAGO-CFAR threshold for every range cell is calculated and
shown in Figure 6.27. The main advantage of CAGO-CFAR, as compared to CA-CFAR,
is improved performance for sharp clutter boundaries in nonhomogeneous environments.
However, the CAGO-CFAR threshold can still mask two adjacent targets.
One method to help alleviate the masking problem and improve detection performance
is to compute the estimate for the local noise in the same fashion as the CAGO-CFAR
case but remove the largest M samples before computing each average, as illustrated in
Figure 6.28.
Target Detection 217
Range Data
CFAR Threshold
0
Signal Strength (dBm)
-10
-20
-30
-40
0 200 400 600 800 1000
Range (m)
Figure 6.27 Cell averaging greatest of CFAR (CAGO-CFAR).
218 Introduction to Radar Using Python and MATLAB
Range Cells X X X
𝑋
... (CUT) ...
Lead Average Trail Average Threshold
Comparison
Output
Max of Lead and Trail Average
𝑍 𝐶𝑍
Cell averaging small of CFAR (CASO-CFAR) is very similar to CAGO-CFAR except the
minimum of the two averages is used rather than the maximum. This is expressed as
" N/2 # " N
#!
2 X X
Z= min Xn , Xn . (6.59)
N n=1 n=N/2+1
The CASO-CFAR threshold for each range cell is shown in Figure 6.29. The main
difference between CASO-CFAR and CAGO-CFAR is a reduced chance of masking from
two adjacent targets.
The CFAR methods of the previous sections do not set a threshold that deals with ho-
mogeneous and nonhomogeneous interference equally well. Therefore, the method of or-
dered statistic CFAR (OS-CFAR) was developed [30]. In this method, the measurements
from the reference cells are rank ordered by decreasing magnitude. As in the censored
CFAR case presented in Section 6.4.3, the largest M samples are removed prior to further
processing. For OS-CFAR, the arithmetic mean of (6.56) is replaced by a single rank, k,
of the ordered statistic
X1 ≤ · · · ≤ Xk ≤ · · · ≤ XN . (6.60)
OS-CFAR can also be applied to the lead and trail reference gates by replacing the mean
calculations in (6.58) and (6.59) with the ordered statistic k. The OS-CFAR threshold
Target Detection 219
Range Data
CFAR Threshold
0
Signal Strength (dBm)
-10
-20
-30
-40
0 200 400 600 800 1000
Range (m)
Figure 6.29 Cell averaging smallest of CFAR (CASO-CFAR).
for each range cell is shown in Figure 6.30. There are many advantages to OS-CFAR as
it does not assume homogeneous clutter in the reference windows. It almost completely
eliminates the masking problem associated with CA-CFAR. Unlike the CA-CFAR, which
is based on the square law detector, OS-CFAR can be applied to both linear and square
law detectors simultaneously without adaptation. Also, it is not necessary to have test and
guard cells that are omitted from the reference window, and the window length itself is
much less important. However, OS-CFAR does have high processing requirements mostly
due to the sorting algorithm. Also, this processing must be completed in real time in the
radar signal processing as the threshold must be calculated before target detection.
The cell averaging statistic Hofele (CASH-CFAR) is a statistical method based on a series
of summing elements associated with each set of L storage cells. This is followed by a
maximum-minimum process that selects a value, Sr , representative of the background
interference, from the set of sums, S1 , S2 , ...SN , as shown in Figure 6.31 [31]. The
CASH-CFAR method has many advantages over other CFAR approaches. It is a much
better fit to the clutter scenario based on the quality factor given by [31]
220 Introduction to Radar Using Python and MATLAB
Range Data
0 CFAR Threshold
-10
Signal Strength (dBm)
-20
-30
-40
0 200 400 600 800 1000
Range (m)
Figure 6.30 Ordered statistic CFAR (OS-CFAR).
1 2 𝑁/2 𝑁 Τ2 + 1 𝑁−1 𝑁
Range Cell
Groups
𝐿 𝐿 ... 𝐿 𝐿 ... 𝐿 𝐿
(CUT)
... ...
Minimum 𝛽 𝑇
𝛼 Multiplication Addition
N h
X i
q= s(i) − c(i) , (6.61)
i=1
where s(i) is the background interference for the scenario and c(i) is the CFAR threshold.
Also, the CASH-CFAR handles quick changes in the background interference without
long delays. The range sidelobes resulting from pulse compression techniques are cov-
ered by the threshold as there is no alternate covering and aggregation of objects. Finally,
the processing required by the CASH-CFAR is significantly less than that of rank selec-
tion type algorithms, including OS-CFAR and CAOS-CFAR.
6.5 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter06 and the matching
MATLAB examples are in the directory mlradar\Chapter06. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
For this example, calculate and display the probability distribution function for a chi-
squared random variable with a location of 2, scale of 1, and shape factor equal to 10.
Solution: The solution to the above example is given in the Python code prob-
ability distributions example.py and in the MATLAB code probability distributions
example.m. Running the Python example code displays a GUI allowing the user to select
from Gaussian, Rayleigh, Rice, Weibull, and chi-squared distributions. The GUI also
allows the user to enter the location, scale, and shape factor for each distribution. The
code then calculates and displays the probability density function spanning the 0.001 to
0.999 confidence interval for the selected distribution. Figure 6.32 shows the probability
distribution function for the chi-squared example. The user is encouraged to study the
distribution of other random variables available in this code and SciPy [6].
Referring to Section 6.1.2, calculate and display the probability of detection for a non-
coherent receiver with Gaussian distributed noise. The probability of false alarm is 10−6
and the signal-to-noise ratio spans −3 to 18 dB.
Solution: The solution to the above example is given in the Python code gaus-
sian noise pd example.py and in the MATLAB code gaussian noise pd example.m. Run-
ning the Python example code displays a GUI allowing the user to enter the range of
222 Introduction to Radar Using Python and MATLAB
Figure 6.32 The probability density function for a chi-squared random variable with
location = 2, scale = 1, and shape factor = 10 calculated by
probability distributions example.py.
signal-to-noise values and the probability of false alarm. The code then calculates and
displays the probability of detection over the signal-to-noise range and for the specified
probability of false alarm, as shown in Figure 6.33.
In the previous example of Section 6.5.2, the probability of detection for a noncoherent
receiver was examined. This example deals with the probability of detection for a co-
herent receiver with Rayleigh distributed noise. Calculate and display the probability of
detection when the probability of false alarm is 10−6 and the signal-to-noise ratio spans
−3 to 18 dB.
Solution: The solution to the above example is given in the Python code rayleigh noise
pd example.py and in the MATLAB code rayleigh noise pd example.m. Running the
Python example code displays a GUI allowing the user to enter the range of signal-to-
noise values and the probability of false alarm. The code then calculates and displays the
probability of detection over the signal-to-noise range and for the specified probability of
false alarm, as shown in Figure 6.34.
Target Detection 223
Figure 6.33 The probability of detection for a noncoherent receiver with Gaussian noise
and Pfa = 10−6 calculated by gaussian noise pd example.py.
Figure 6.34 The probability of detection for a coherent receiver with Rayleigh noise and
Pfa = 10−6 calculated by rayleigh noise pd example.py.
224 Introduction to Radar Using Python and MATLAB
Figure 6.35 The single pulse signal-to-noise ratio required to produce Pfa = 10−6 and
Pd = 0.99 for both coherent and noncoherent integration calculated by
single pulse snr example.py.
For this example, calculate and display the required single pulse signal-to-noise ratio
for both coherent and noncoherent integration of 25 pulses when the probability of false
alarm is 10−6 and probability of detection is 0.99.
Solution: The solution to the above example is given in the Python code single pulse snr
example.py and in the MATLAB code single pulse snr example.m. Running the Python
example code displays a GUI allowing the user to enter the probability of detection,
probability of false alarm, and the number of pulses to be integrated. The code then
calculates and displays the single pulse signal-to-noise ratio required to meet the specified
detection parameters, as shown in Figure 6.35. For noncoherent integration, the code
calculates and display both approximations from (6.21) and (6.22).
In this example, calculate and display the probability of detection for 3 of 5 binary in-
tegration with a probability of false alarm of 10−6 . The signal-to-noise ratio spans 0 to
Target Detection 225
Figure 6.36 The probability of detection resulting from 3 of 5 binary integration with
Pfa = 10−6 calculated by binary integration example.py.
20 dB.
Solution: The solution to the above example is given in the Python code binary inte-
gration example.py and in the MATLAB code binary integration example.m. Running
the Python example code displays a GUI allowing the user to enter the probability of
detection, range of signal-to-noise values, and the M of N values for binary integration.
The code then calculates and displays the probability of detection for the specified pa-
rameters, as shown in Figure 6.36. The reader is encouraged to vary both M and N to see
the effects of these parameters on the probability of detection.
In the previous example of Section 6.5.5,the probability of detection for a given choice of
M and N was studied. This example shows the optimum choice for the parameter M for
a specified N and Swerling target type. Calculate and display the optimum choice for the
parameter M for a Swerling I type target. Allow the number of pulses, N , to vary from 1
to 10.
Solution: The solution to the above example is given in the Python code optimum binary
example.py and in the MATLAB code optimum binary example.m. Running the Python
226 Introduction to Radar Using Python and MATLAB
Figure 6.37 The optimum choice for the parameter M for a given number of pulses and
Swerling target type calculated by optimum binary example.py.
example code displays a GUI allowing the user to enter the number of pulses and
Swerling target type. The code then calculates and displays the optimum choice for M ,
as shown in Figure 6.37. The reader is encouraged to use this tool in conjunction with
binary integration example.py from the previous example to further study the probability
of detection for binary integration.
For this example, calculate and display the probability of detection for coherently inte-
grating 10 pulses for a Swerling I type target with a probability of false alarm of 10−9 .
Allow the signal-to-noise ratio to vary from −4 to 20 dB.
Solution: The solution to the above example is given in the Python code coher-
ent integration example.py and in the MATLAB code coherent integration example.m.
Running the Python example code displays a GUI allowing the user to enter the range
of signal-to-noise values, the number of pulses, probability of false alarm, and Swerling
target type. As discussed earlier, coherent pulse integration may only be applied to Swer-
ling 0, Swerling I or Swerling III type targets. The code then calculates and displays the
probability of detection over the signal-to-noise range, as shown in Figure 6.38.
Target Detection 227
In the previous example in Section 6.5.7, the probability of detection resulting from co-
herent pulse integration was examined. This example studies the probability of detection
resulting from noncoherent pulse integration. Calculate and display the probability of
detection for noncoherently integrating 10 pulses for a Swerling II type target with a
probability of false alarm of 10−9 . Allow the signal-to-noise ratio to vary from 0 to 12
dB.
Solution: The solution to the above example is given in the Python code non coherent
integration example.py and in the MATLAB code non coherent integration example.m.
Running the Python example code displays a GUI allowing the user to enter the range of
signal-to-noise values, the number of pulses, probability of false alarm, and Swerling
target type. In the previous example only Swerling 0, Swerling I, and Swerling III
type targets were allowed. For the noncoherent case, all five Swerling target types are
permissible. The code then calculates and displays the probability of detection over the
signal-to-noise range, as shown in Figure 6.39.
228 Introduction to Radar Using Python and MATLAB
For this example, calculate and display the error for Shnidman’s approximation for the
required single pulse signal-to-noise ratio, as given in Section 6.3.6. Display the error for
a Swerling III target type, probability of false alarm of 10−6 , 10 pulses, and allow the
probability of detection to vary from 0.1 to 0.99.
Solution: The solution to the above example is given in the Python code shnid-
man example.py and in the MATLAB code shnidman example.m. Running the Python
example code displays a GUI allowing the user to enter the range of probability of detec-
tion, number of pulses, probability of false alarm, and the Swerling target type. The code
then calculates and displays the error in the required single pulse signal-to-noise ratio, as
shown in Figure 6.40.
Target Detection 229
Figure 6.40 The error in the required single pulse signal-to-noise ratio using Shnidman’s
equation for a Swerling III type target with Pfa = 10−9 calculated by shnidman example.py.
For this example, calculate and display the CFAR threshold for CA-CFAR, CAGO-
CFAR, CASO-CFAR, and OS-CFAR as described in Section 6.4. In each case, use 8
guard cells, 15 reference cells, and a bias of 4 dB.
Solution: The solution to the above example is given in the Python code cfar example.py
and in the MATLAB code cfar example.m. Running the Python example code displays a
GUI allowing the user to enter the number of guard cells, number of reference cells, bias,
and the CFAR type. The code then calculates and displays the CFAR threshold along with
the reference signal. The four CFAR thresholds for the example are shown in Figures 6.41
- 6.44.
230 Introduction to Radar Using Python and MATLAB
Figure 6.42 The cell averaging greatest of CFAR threshold (CAGO-CFAR) calculated by
cfar example.py.
Target Detection 231
Figure 6.43 The cell averaging smallest of CFAR threshold (CASO-CFAR) calculated by
cfar example.py.
PROBLEMS
6.1 Calculate the false alarm rate given a probability of false alarm of 10−6 and a pulse
repetition frequency of 10 kHz.
6.2 Explain why the Neyman-Pearson lemma results in the most powerful test for detection
hypotheses. Why is this significant to the radar detection process?
6.3 For noncoherent detection, calculate the probability of false alarm given a voltage
threshold of 0.7V. Assume the noise is represented by a zero mean Gaussian distri-
bution with a variance of 2 V2 .
6.4 Suppose a signal has an amplitude of 1.3V; find the probability of detection when
the voltage threshold is 1.1V and the noise is represented by a zero mean Gaussian
distribution with a variance of 1 V2 .
6.5 For coherent detection, determine the voltage threshold required for a probability
of false alarm of 10−9 . Assume the noise is represented by a zero mean Gaussian
distribution with a variance of 4 V2 .
6.6 Given the noise and voltage threshold in Problem 6.5, calculate the probability of
detection when the signal-to-noise ratio is 10 dB.
6.7 Calculate the probability of detection for both Gaussian noise and Rayleigh noise and
compare the results. The probability of false alarm is 10−4 and the signal-to-noise ratio
is 10 dB.
6.8 Describe the process of pulse integration for coherent and noncoherent detection and
give the advantages and disadvantages of each.
6.9 Compare the signal-to-noise ratio for coherent and noncoherent pulse integration of 20
pulses.
6.10 For binary integration (M of N ), find the optimum value of M that minimizes the
required signal-to-noise ratio for 10 pulses and a Swerling II type target.
6.11 What is the difference between binary pulse integration and cumulative pulse integra-
tion? Describe a situation where cumulative pulse integration would be advantageous.
6.12 Describe the difference between the five Swerling fluctuating target models and give
examples of practical radar targets each model represents.
6.13 Calculate the probability of detection for Swerling III type target model using both
coherent and noncoherent integration of 32 pulses. The probability of false alarm is
Target Detection 233
10−9 and the signal-to-noise ratio is 18 dB. Compare the two results and explain the
differences.
6.14 Determine the required single pulse signal-to-noise ratio to achieve a probability
of false alarm of 10−6 with a probability of detection of 0.99 when noncoherently
integrating 20 pulses for a Swerling II type target model. Compare this result with the
Shnidman approximation.
6.15 Describe the purpose of guard cells in constant false alarm rate processing and explain
how the number of guard cells affects CFAR performance.
6.16 Explain the major differences between cell averaging CFAR and censored greatest of
CFAR.
6.17 Describe the conditions, and give an example scenario, where it is advantageous to use
CASH-CFAR over OS-CFAR.
References
[1] S. O. Rice. Mathematical analysis of random noise. Technical Report 24, Bell System Technical Journal,
1945.
[2] J. I. Marcum. A statistical theory of target detection by pulsed radar. Technical report, RAND Corporation,
RM-754, Santa Monica, CA, 1947.
[3] P. Swerling. Probability of detection for fluctuating targets. IRE Transaction on Information Theory,
pages 269–308, April 1960.
[4] P. Swerling. Radar probability of detection for some additional fluctuating target cases. IEEE Transactions
on Aerospace and Electronic Systems, pages 698–708, April 1997.
[5] S. Ross. A First Course in Probability, 9th ed. Pearson Education, Inc., Boston, MA, 2006.
[6] E. Jones, et al. SciPy: Open source scientific tools for Python, 2001–. http://www.scipy.org/.
[7] R. Nowak. Neyman-Pearson detectors. ECE 830 Statistical Signal Processing, University of Wisconsin -
Madison.
[8] P. B. Hoel, S. C. Port and C. J. Stone. Testing Hypotheses. Houghton Mifflin, New York, 1971.
[10] M. Abramowitz and I. A. Stegun. Handbook of Mathematical Functions: with Formulas, Graphs, and
Mathematical Tables. U.S. National Bureau of Standards, Applied Mathematics Series, Washington, DC,
1964.
[12] A. Papoulis and S. U. Pillai. Probability, Random Variables, and Stochastic Processes, 4th ed. McGraw-
Hill, New York, 2002.
[13] B. R. Mahafza. Radar Systems Analysis and Design Using MATLAB, 3rd ed. CRC Press, Boca Raton,
FL, 2013.
[14] C. Yang, et al. Comparative study of coherent, non-coherent, and semi-coherent integration schemes for
GNSS receivers. Technical report, Air Force Research Lab, Wright-Patterson Air Force Base, OH, April
2007.
[15] J. I. Marcum. Table of Q functions. Technical report, U.S. Air Force RAND Research Memorandum
M-339, Santa Monica, CA, January 1950.
[16] S. Parl. A new method of calculating the generalized Q function. IEEE Transactions on Information
Theory, 32:121–124, January 1980.
[17] S. M. Kay. Fundamentals of Radar Signal Processing. McGraw-Hill, New York, 2005.
[18] P. E. Cantrell and A. K. Ojha. Comparison of generalized Q-function algorithms. IEEE Transactions on
Information Theory, 33(4):591–596, July 1987.
[19] M. A. Richards. Coherent integration loss due to white Gaussian phase noise. IEEE Signal Processing
Letters, 10(7), July 2003.
[20] D. K. Barton. Modern Radar System Analysis. Artech House, Norwood, MA, 1988.
[21] G. R. Curry. Radar System Performance Modeling. Artech House, Norwood, MA, 2001.
[22] M. Schwartz. A coincidence procedure for signal detection. IRE Transactions on Information Theory,
pages 135–139, December 1956.
[23] T. J. Frey. An approximation for the optimum binary integration threshold for Swerling II targets. IEEE
Transactions on Aerospace and Electronic Systems, 32(3):1181–1185, July 1996.
[24] M. A. Richards, J. A. Scheer and W. A. Holm. Principles of Modern Radar - Basic Principles. SciTech
Publishing, Raleigh, NC, 2010.
[25] D. P. Meyer and H. A. Mayer. Radar Target Detection. Academic Press, New York, 1973.
[26] M. C. Budge and S. R. German. Basic Radar Analysis. Artech House, Norwood, MA, 2015.
[27] J. V. DiFranco and W. L. Rubin. Radar Detection. Artech House, Dedham, MA, 1980.
[28] D. A. Shnidman. Determination of required SNR values. IEEE Transactions on Aerospace and Electronic
Systems, 38(3):1059–1064, July 2002.
[29] H. M. Finn and R. S. Johnson. Adaptive detection mode with threshold control as a function of spatially
sampled clutter level estimates. RCA Review, 29(3):414–464, September 1968.
[30] H. Rohling. Ordered statistic CFAR technique - an overview. 2011 12th International Radar Symposium
(IRS), pages 631–638, 2011.
[31] F. H. Hofele. An innovative CFAR algorithm. 2001 CIE International Conference on Radar Proceedings,
pages 329–333, October 2001.
Chapter 7
Radar Cross Section
Chapters 4 and 6 showed how the radar cross section plays an important role in received
signal power, probability of detection, and probability of false alarm. The radar cross
section also influences tracking accuracy, classification, and discrimination. Therefore,
the study of radar cross section is fundamental to the understanding of radar system
analysis and design. The chapter begins with the definition of radar cross section and
some of its dependencies. Next, the scattering matrix is introduced along with some of
the dominant scattering mechanisms for complex targets. Various methods for predicting
the radar cross section from various objects are presented. Finally, techniques for reducing
the radar cross section of a given target are discussed, and a brief overview of electronic
countermeasures is given. The chapter concludes with several Python examples to further
illustrate the concepts of radar cross section theory, prediction, and measurement.
7.1 DEFINITION
|Es |2 Pr
σ = lim 4πr2 = (m2 ). (7.1)
r→∞ |Ei |2 Pd
where
Es = scattered electric field intensity (V/m),
Ei = incident electric field intensity (V/m),
Pr = power reflected from the target (W),
Pd = power density incident on the target (W/m2 ).
235
236 Introduction to Radar Using Python and MATLAB
The incident electric field intensity, Ei , is determined by the waveform transmitted by the
radar. The scattered electric field intensity, Es , must be found in order to calculate the
radar cross section. From Section 2.4.2, the scattered electric field intensity may be found
by first calculating the scalar and vector potentials of (2.49) and (2.50) and then solving
for the scattered fields by (2.32) and (2.35). The analytic solution of these equations
quickly becomes intractable for complex targets of interest to radar systems. However,
the radar cross section for simple canonical shapes may be calculated, and this topic is
covered in Section 7.4. This leads to other methods for predicting the radar cross section
of complex targets such as numerical methods, scale model measurements, and other
techniques in Section 7.4.
The incident and scattered electric field intensities in (7.1) are, in general, functions
of range, angle, frequency, and polarization. Each of these parameters is dependent on the
radar system being used, the geometry of the scenario, as well as the target itself. Also,
these parameters affect the resulting radar cross section differently in different situations.
For example, the radar cross section of a particular target as a function of angle tends to
vary more rapidly at higher frequencies.
The radar transmitter and receiver may be collocated by using the same antenna for
transmit and receive or they may be separated, and each have their own antenna. These
two cases are referred to as monostatic and bistatic, as discussed in Section 4.5.4 and
shown in Figure 7.1. The angles formed by the direction of the transmitted waveform and
the target orientation are referred to as the incident angles (θi , φi ). Similarly, the angles
formed by the direction of the scattered energy and the target orientation are referred to
as the observation angles (θo , φo ). For objects other than an ideal point target or a perfect
sphere, the monostatic scattered energy is a function of incident angle. For the bistatic
case, the scattered energy is a function of both the incident and observation angles. Figure
7.2 illustrates the radar cross section as a function of angle for the bistatic scattering from
a flat rectangular plate. As can be seen, the radar cross section is highly dependent on
both the angle of incidence and observation.
The radar cross section variation of a fixed object as a function of frequency may gener-
ally be broken into three regions. These regions are referred to as Rayleigh, resonance,
and optical. While the term Rayleigh region or Rayleigh scattering is often used in
the field of radar cross section, there is much ambiguity surrounding its meaning. The
Rayleigh region is generally considered to be the region where the frequency of the in-
cident energy is low, and the therefore the wavelength is long. Here, the term “long” is
in reference to the largest dimension of the object. Born and Wolf [1] define a Rayleigh
Radar Cross Section 237
Target Position
𝛼
𝑟𝑡
𝑟𝑟
Receiving
Transmitting
Radar Position
Radar Position
scatterer as one that does not change the frequency of the incident energy and where the
far-field scattering is linearly polarized and varies with the inverse of the square of the
wavelength. Twersky [2] provides a broader definition of Rayleigh scattering which is not
just limited to electromagnetic phenomena. Kleinman [3] gives a rigorous mathematical
definition of the Rayleigh region as the range of wavelengths for which the quantity
of interest may be expanded in a convergent series in positive integral powers of the
wavenumber. This type of expansion is known as a Rayleigh series, and in all practical
radar scattering problems such expansions exist and have finite radii of convergence.
However, there is still no precise definition and care must be taken when using approxi-
mate solutions in these regions to ensure accurate results. Similar to the Rayleigh region,
the resonance region is also somewhat ambiguous. It is the region where the frequency of
the incident energy is medium. The radar cross section in this region tends to vary rapidly
with changes in the frequency of the incident energy. In the optical region, the frequency
of the incident energy is considered high, and the wavelength is small compared to the
238 Introduction to Radar Using Python and MATLAB
20
RCS (dBsm)
10
10
20
75 50 25 0 25 50 75
Observation Angle (deg)
Figure 7.2 Bistatic radar cross section for a 3λ × 5λ rectangular plate with an incident
angle of θi = −15o .
dimension of the object. In the optical region, the radar cross section becomes less de-
pendent on the frequency of the incident energy. Figure 7.3 illustrates these regions for a
perfectly conducting sphere.
For a given aspect angle and frequency, objects reflect incident energy in a particular
manner depending on the polarization. For many objects, the polarization of the scattered
energy will be different from the polarization of the incident energy. This depolarization
of the electromagnetic field is often measured by radar systems and is referred to as cross
polarization. For example, Beckman [4] presented the depolarization of electromagnetic
waves backscattered from the lunar surface. From Section 2.6, the polarization of the
reflected and transmitted electromagnetic energy from a material interface depends the
material, the aspect angle and the incident polarization. For example, a right-hand
circularly polarized incident wave is left-hand circularly polarized upon reflection by
Radar Cross Section 239
a planar perfect conductor. Furthermore, a complete definition of the radar cross section
of a target would require a radar capable of transmitting and receiving both orthogonal
polarizations. This will be examined further in the following sections.
As discussed in the previous section, the radar cross section is dependent on polarization
and requires the full orthogonal polarization information for a complete definition. Begin
with the vector scattered electric field as this provides more information about the nature
of the scattering, such as relative phase, than the scalar radar cross section. The incident
and scattered electric field intensities may be decomposed into spherical components as
where
240 Introduction to Radar Using Python and MATLAB
These spherical components are illustrated in Figure 7.4. When a θ̂-polarized electric
field is incident upon a target, the backscattered electric field can have nonzero θ̂-
and φ̂-polarized components. This is also true for a φ̂-polarized incident electric field.
Therefore, the θ̂- and φ̂-polarized components form a basis to define the electric field, and
the scattering of the target is fully described by the scattering matrix. This is expressed as
" s# " #" #
Eθ Sθθ Sθφ Eθi
= , (7.4)
Eφs Sφθ Sφφ Eφi
where
Sθθ = θ̂-polarized incident wave and θ̂-polarized scattered wave,
Sθφ = φ̂-polarized incident wave and θ̂-polarized scattered wave,
Sφθ = θ̂-polarized incident wave and φ̂-polarized scattered wave,
Sφφ = φ̂-polarized incident wave and φ̂-polarized scattered wave.
This matrix can be thought of as a transformation of the incident electric field to the
scattered electric field. The scattering matrix gives a complete definition of the scattering
𝐸𝜙
𝜃
𝐸𝜃 𝑦
𝑥
Figure 7.4 Electric field spherical components.
Radar Cross Section 241
properties of an object. The components of the scattering matrix are complex and may
be obtained from the magnitudes and phases measured by a polarimetric radar system.
A single instance of the scattering matrix is valid for the incident and observation
angles and frequency. Once the scattering matrix is determined, the scattered electric
field intensity may be computed for any combination of viewing angles, frequency, and
polarization using (Eθi , Eφi ) as the basis. For monostatic radar systems, the scattering
matrix is reciprocal for most targets. However, this is not true for bistatic systems. Using
the definition of radar cross section in (7.1) results in
" 2
Sθφ 2
" # #
σθθ σθφ Sθθ
2
= 4πr . (7.5)
σφθ σφφ Sφθ 2 Sφφ 2
Given the scattering matrix for a particular target, Mikulski’s theorem [5] may be used
to determine the combination of transmit and receive polarization that maximizes the
received signal power. Mikulski’s theorem states the polarization is found by first forming
A = S∗ S. The polarization is then determined by the eigenvector of A corresponding to
the largest eigenvalue of A.
A scattering matrix may be transformed from one coordinate system to another by
a unitary transformation. Also, the scattering matrix may be transformed from one set
of orthogonal polarizations to another set of orthogonal polarizations through a similar
procedure. In many radar applications it is convenient to define the scattering matrix in
terms of linear or circular polarizations, which is expressed as
" s# " #" i #
EH SHH SHV EH
s
= , (7.6)
EV SV H SV V EVi
and
" s
# " #" i #
ER SRR SRL ER
= . (7.7)
ELs SLR SLL ELi
The subscripts (V, H) represent vertical and horizontal polarization, and the subscripts
(R, L) represent right-hand circular and left-hand circular polarization. The linear and
circular field components are related to each other through
" # " #" # " #
ER 1 1 −j EH EH
=√ = T , (7.8)
EL 2 1 +j EV EV
and
" # " #" # " #
EH 1 1 1 ER −1 ER
=√ = T . (7.9)
EV 2 +j −j EL EL
242 Introduction to Radar Using Python and MATLAB
Using (7.8) and (7.9), the circularly polarized scattering matrix is written in terms of the
linear scattering matrix as
" # " #" #
SRR SRL SHH SHV 1 0 −1
= T T . (7.10)
SLR SLL SV H SV V 0 −1
Similarly, the linearly polarized scattering matrix is written in terms of the circular
scattering matrix as
" # " #" #
SHH SHV −1 SRR SRL 1 0
= T T . (7.11)
SV H SHH SLR SLL 0 −1
When describing the propagation of electromagnetic energy in a three-dimensional
space, one must account for the coordinate system changing the handedness upon
reflection from a target. Therefore, the coordinate space has to be defined for the incident
and scattered energy, which has led to two conventions. The first is the forward scattering
alignment (FSA) in which the positive z axis is in the same direction as the direction of
propagation for both the incident and the scattered wave. The second is the back scattering
alignment (BSA), where the positive z axis points toward the target for both the incident
and scattered waves. The BSA convention is more commonly used for monostatic radar
systems. This difference in convention leads to a slightly different form in the scattering
matrix. In the FSA convention, the scattering matrix is the Jones matrix, while in the BSA
convention, the scattering matrix is the Sinclair matrix.
As discussed in previous sections, the energy backscattered from an object may be found
from the currents induced on the object. The mechanism by which these currents are
induced and reradiate energy is quite complicated. Referring to Figure 7.5, complex
targets have several scattering mechanisms resulting in different signal strengths and
the scattered energy may be thought of as a coherent sum of the contributions of the
individual scattering mechanisms. A few of the more important scattering mechanisms
for radar targets are
1. Specular reflection, sometimes referred to as regular reflection, is a mirror-like reflec-
tion of incoming energy. From Chapter 2, this scattering mechanism obeys Snell’s
law as each incident wave is reflected at the same angle on the opposite side of the
surface normal. At the frequencies of interest to radar systems, returns from specular
reflections tend to be very large.
2. Diffraction is generally the second greatest contributor to the radar cross section and
occurs when the incident energy encounters discontinuities such as edges. Unlike
specular reflection, the scattered energy from diffraction travels in many directions.
Radar Cross Section 243
Surface Waves
Edge Diffraction
Multi Bounce
Specular Cavities
Creeping Waves
Figure 7.5 Radar target scattering mechanisms (NASA).
3. Creeping waves act as continuous diffraction around a smooth section of the object.
Creeping waves and diffracted waves both allow energy to interact with portions of the
target that may otherwise be shadowed from the incident energy.
4. Surface waves occur when the object acts like a transmission line and guides waves
along surface. These waves will continue until a discontinuity is encountered and may
set up as standing waves on the object. Surface waves can reduce the energy of the
return signal as the conductivity of the object will attenuate the signal.
5. Cavities on an object act as resonators and produce extended returns. Much research
has been conducted in prediction of cavity returns, and in the reduction of these
returns [6–8].
6. Multibounce scattering occurs when the reflections are due to the interaction of the
incident energy with multiple parts of the body. Multibounce scattering plays a large
role in the polarization of the backscattered energy.
The following sections study various radar cross-section prediction techniques. These
will include analytic techniques, numerical methods, and measurement techniques. The
advantages and disadvantages of each method will be examined, along with target types,
geometries, and frequency ranges best suited for each method.
While the analytical solution for complex targets of interest to radar systems remains
intractable, there are approximate solutions for many objects that are in good agreement
244 Introduction to Radar Using Python and MATLAB
with measured results [9]. Also, superposition of simple objects may be used to form
more complex composite objects. However, with advances in numerical techniques and
computing power, superposition techniques are quickly being replaced. The following
sections present the analytic solution to several objects. Table 7.1 gives the approximate
radar cross section for simple shapes with axial incidence. These expressions are in the
optical region (D λ), where D is a characteristic dimension of the object. While these
expressions are good for back-of-the-envelope type calculations and first cut analysis,
more rigorous prediction techniques are needed for more detailed system analysis.
For two-dimensional geometries, where the object is infinitely long in one dimension, the
scattering parameter is sometimes referred to as the scattering width or as the radar cross
section per unit length. For this book, this is simply referred to this as the two-dimensional
radar cross section denoted by σ2D . The two-dimensional radar cross section is defined
as
|Es |2 Ps
σ2D = lim 2πr i 2
= lim 2πr di (m). (7.12)
r→∞ |E | r→∞ Pd
where
Es = scattered electric field intensity (V/m),
Ei = incident electric field intensity (V/m),
Pds = scattered power density (W/m),
Pdi = incident power density (W/m).
Note that the units for the two-dimensional radar cross section is meters. Consider the
geometry of an infinitely long conducting strip of width w, illustrated in Figure 7.6. The
incident fields for TMz polarized waves are written as
The two-dimensional bistatic radar cross section for the TMz polarization is given by [10]
" !#2
2πw2 sin 0.5 kw(cos φo + cos φi
σ2D = sin φi (m), (7.15)
λ 0.5 kw(cos φo + cos φi
where
Radar Cross Section 245
Table 7.1
RCS of Simple Shapes with Axial Incidence
Dipole (l = λ) 0.93λ2 𝑙
Sphere πa2 𝑎
(πa2 )2 𝑎
Circular disc 4π
λ2
(ab)2 𝑎
Rectangular plate 4π
λ2
𝑏
(πa2 )2 𝑎
Circular reflector 4π
λ2
(ab)2 𝑎
Corner reflector 8π
λ2
𝑏
246 Introduction to Radar Using Python and MATLAB
a4 𝑎
Triangular reflector 4π
λ3
𝑏
ab2
Cylinder 4π
λ 𝑎
λ2 𝜃 𝑏
Simple ogive tan4 (θ) 𝑎
16π
k = wavenumber (rad/m),
w = strip width (m),
φo = observation angle (rad),
φi = incident angle (rad).
The two-dimensional bistatic radar cross section for the TEz polarization is given by [10]
" !#2
2πw2 sin 0.5 kw(cos φo + cos φi
σ2D = sin φo (m). (7.18)
λ 0.5 kw(cos φo + cos φi
The difference in the bistatic two-dimensional radar cross section for the TMz and TEz
polarizations is the sin2 φi term is replaced with sin2 φo . For the monostatic case, the
expressions in (7.15) and (7.18) reduce to the same equation, given here by
Radar Cross Section 247
𝐸 𝑖 , 𝐻𝑖
𝐸𝑠, 𝐻𝑠
𝜙𝑖
𝜙𝑜
𝑥
𝑧
𝑤
" !#2
2πw2 sin kw cos φi
σ2D = sin φi (m). (7.19)
λ kw cos φi
As the width of the strip increases, the maximum value of the radar cross section also
increases, as does the number of lobes in the radar cross section pattern.
Cylinders are commonly used to represent scatterers such as the fuselage of missiles,
airplanes, and other objects. This makes circular cylinders a particularly important class
of objects for radar cross-section investigation. The solution of the scattering from
circular cylinders is given in terms of Bessel and Hankel functions, for which there
are numerous tabulated values [11] as well as libraries such as SciPy [12] for their
calculation. For example, the Hankel function of the second kind of real order, v, and
complex argument, z, may be found with scipy.special.hankel2(v,z). Beginning with the
two-dimensional conducting circular cylinder shown in Figure 7.7, the incident electric
field for TMz polarized waves is written as
𝐸𝑠, 𝐻𝑠
𝐸 𝑖 , 𝐻𝑖 𝜙𝑜
𝑥
∞ 2
2λ X Jn (ka)
σ2D = n (2) cos(n φo ) (m), (7.21)
π n=0 Hn (ka)
where
n = 1 for n = 0, 2 for n 6= 0,
k = wavenumber (rad/m),
a = cylinder radius (m),
Jn = Bessel function of order n,
(2)
Hn = Hankel function of the second kind of order n,
φo = observation angle (rad).
∞ 2
2λ X Jn0 (ka)
σ2D = n (2)0 cos(n φo ) (m). (7.23)
π n=0 Hn (ka)
The difference in the two-dimensional radar cross section for the TMz and TEz polariza-
tions is the first derivative of the Bessel and Hankel functions for the TEz case.
For finite length cylinders with normal incidence, the three-dimensional radar cross
section is related to the two-dimensional radar cross section by
2L2
σ3D ≈ σ2D (m2 ), (7.24)
λ
where L is the cylinder length. The three-dimensional radar cross section for the TMz
and TEz polarizations is then
2
∞
4L2 X Jn (ka)
σT M ≈ n (2) cos(n φo ) (m2 ), (7.25)
π
n=0 Hn (ka)
and
∞
2
4L2 X Jn0 (ka)
σT E ≈ n (2)0 cos(n φo ) (m2 ). (7.26)
π
n=0 Hn (ka)
Section 7.4.1.2 examined infinitely long cylinders with normal incidence. This section
studies the scattering from infinite length cylinders with oblique incidence, as shown in
Figure 7.8. The incident electric field for TMz polarized waves is given by
Again, the wave is incident at φ = 270o . The two-dimensional bistatic radar cross section
for the TMz polarization is given by [10]
2
∞
2λ X Jn (ka sin θi )
σ2D = n (2) cos(n φo ) (m), (7.28)
π sin θi n=0 Hn (ka sin θi )
where
250 Introduction to Radar Using Python and MATLAB
𝐸𝑠, 𝐻𝑠
𝜙𝑜
𝑥
𝐸 𝑖 , 𝐻𝑖
𝜃𝑖
n = 1 for n = 0, 2 for n 6= 0,
k = wavenumber (rad/m),
a = cylinder radius (m),
Jn = Bessel function of order n,
(2)
Hn = Hankel function of the second kind of order n,
θi = incident theta angle (rad),
φo = observation angle (rad).
The two-dimensional bistatic radar cross section for the TEz polarization is given by [10]
∞ 2
2λ X Jn0 (ka sin θi )
σ2D = n (2)0 cos(n φo ) (m). (7.30)
π sin θi n=0 Hn (ka sin θi )
Radar Cross Section 251
∞ 2
4L2 sin2 θo X Jn (ka sin θi )
σT M ≈ n (2) cos(n φo )
π sin θi
n=0 Hn (ka sin θi )
" #2
sin 0.5kL(cos θi + cos θo )
× (m2 ), (7.31)
0.5kL(cos θi + cos θo )
and
∞ 2
4L2 X Jn0 (ka sin θi )
σT E ≈ sin θi n (2)0 cos(n φo )
π
n=0 Hn (ka sin θ i )
" #2
sin 0.5kL(cos θi + cos θo )
× (m2 ). (7.32)
0.5kL(cos θi + cos θo )
The previous sections were concerned with two-dimensional scatterers, where the object
is infinitely long in one dimension. Now consider the scattering from a three-dimensional
object; specifically, a rectangular conducting plate, as shown in Figure 7.9. The incident
fields for TEx polarized waves are written as
Note that the incident wave is from φi = 270o . For TEx polarization, the bistatic radar
cross section can be written as [10]
2 2 2
ab sin(X) sin(Y )
σ = 4π (cos2 θo sin2 φo + cos2 φo ) (m2 ), (7.35)
λ X Y
where
252 Introduction to Radar Using Python and MATLAB
𝐸𝑠, 𝐻𝑠
𝐸 𝑖 , 𝐻𝑖 𝜃𝑜
𝜃𝑖
𝜙𝑖
𝑦
𝜙𝑜
2
ab
cos2 θi ( cos2 θo cos2 φo + sin2 φo )
σ = 4π
λ
2 2
sin(X) sin(Y )
× (m2 ), (7.38)
X Y
For the monostatic case, the expressions in (7.35) and (7.38) reduce to the same equation,
given here as
2 2
ab sin(kb sin θi )
σ = 4π cos2 θi (m2 ), (7.39)
λ kb sin θi
For the TMx polarization, the maximum of scattered field always occurs at the specular
angle. However, this is not true for the TEx polarization, although it does approach the
specular angle as the dimensions of the plate become large compared to the wavelength.
As well, the monostatic radar cross section for the flat plate is the same for both TMx and
TEx polarizations. This is also true for the two-dimensional plate. Measurements have
shown that these two values are slightly different.
Mie gives the exact solution for scattering from a sphere [13]. The solution is composed
of vector wave functions defined in a spherical coordinate system. The terms of the Mie
series are obtained from boundary value techniques. Therefore, the Mie formulation may
be employed regardless of the composition of the sphere. This section examines the
scattering from a radially stratified sphere, as shown in Figure 7.10. The incident field
is a plane wave traveling in the negative z direction, as illustrated in Figure 7.10, and the
electric and magnetic fields are given by
E0 −jkz
Hi = − e ŷ (A/m). (7.41)
η
To calculate the radar cross section of a sphere, use the Mie formulation along with far
field approximations to give
∞ h P 1 (cos θ )
X o d 1 i
S1 (θo ) = (j)n+1 An n − jBn Pn (cos θo ) , (7.42)
n=1
sin θo dθo
254 Introduction to Radar Using Python and MATLAB
𝑧
𝐸 𝑖 , 𝐻𝑖
𝑎2
𝑎𝑁 𝑦
𝑎1
𝐸𝑠, 𝐻𝑠
𝑥 (𝜃𝑜 , 𝜙𝑜 )
∞
X h d Pn1 (cos θo ) i
S2 (θo ) = (j)n+1 An − jBn Pn1 (cos θo ) , (7.43)
n=1
dθo sin θo
where Pn1 is the associated Legendre polynomial and may be calculated using the SciPy
implementation scipy.special.lpmn(m, n, z) . S1 (θo ) and S2 (θo ) are the complex far-field
scattered radiation values for the θ̂ and φ̂ directions. The radar cross section for the θ̂ and
φ̂ polarization states is then found to be
4π
σθ = S1 (θo ) cos2 (φ0 ) (m2 ), (7.44)
k02
Radar Cross Section 255
4π
σφ = S2 (θo ) sin2 (φ0 ) (m2 ). (7.45)
k02
For the N -layer concentric sphere, use the Mie coefficients of the following form [9]
Ruck et al. showed that the modal surface impedance and admittance can be derived using
an iterative technique similar to the method used for transmission lines [9]. To begin,
the impedance at the interface between the core and the first layer, ZnN , is determined
independently. Then, the impedance at the second interface, ZnN −1 , is determined from
ZnN . This process continues until the impedance at the outermost surface, Zn0 , is found.
Then Zn (k0 a0 ) = j(Zn0 /η). Following the same process for the admittance, Yn (k0 a0 )
may also be calculated. The impedance and admittance are used in the Mie coefficients
of (7.46) for the scattering radiation calculation in (7.42). Finally, the radar cross section
is obtained from (7.44).
7.4.1.6 Cone
This section deals with the monostatic radar cross section for conducting, right circular
cones based on the geometrical theory of diffraction. The reader is referred to Keller [14]
for a detailed analysis of this problem, and Bechtel [15], who gives corrections to Keller’s
original work. The geometry of the right circular cone is given in Figure 7.11. For axial
incidence, the radar cross section is independent of polarization, and is written as
2
ka sin(π/n)
λ2 n
σ= 2 (m2 ), (7.48)
π
cos(π/n) − cos(3π/n)
256 Introduction to Radar Using Python and MATLAB
&
'
!
(#
" # , %#
where
k = wavenumber (rad/m),
a = base radius (m),
λ = wavelength (m),
n = 3/2 + α/π (rad),
α = half angle of the cone (rad).
Equation (7.48) is for first-order diffraction only, which is valid when ka 1. Taking
double diffraction into account, a more accurate expression for the axial radar cross
section is
2
λ2
ka sin(π/n) 1
σ=
π n cos(π/n) − cos(3π/n) 2
sin(π/n) exp j(2ka − π/4) 2
+ √ (m2 ). (7.49)
2
n πka cos(π/n) − cos(3π/2n)
If the angle of the incident energy is normal to the generator of the cone, θi = 90o − α,
then the geometrical theory of diffraction equations are no longer valid. Instead, an
expression based on the asymptotic expansion of the physical optics equation is used.
This is written as
8λ2 π a 3
σ= (m2 ). (7.50)
9 sin2 α cos α λ
The other special case is when the cone is viewed from the base, θi = 180o . For this case,
the physical optics expression for a circular disc is used; see Table 7.1, and repeated here
as
Radar Cross Section 257
λ2 (ka)4
σ= (m2 ). (7.51)
4π
For all other incident angles, the radar cross section depends on the polarization of the
incident energy, and is given by the following equations [15]
2
λ2 ka
−1
sin(π/n) h π ih π
σ= 2 × exp − j(2ka sin θi − ) cos − 1
4π sin θi n 4 n
π 3π − 2θi −1 i h π ih π −1
± cos − cos + exp j(2ka sin θi − ) cos − 1
n n 4 n
2
π 3π + 2θi −1 i
± cos − cos , 0 < θi < α; (7.52)
n n
2 "
λ2 ka
−1
sin(π/n) π
σ= cos −1 ±
4π 2 sin θi n n
#2
π 3π − 2θi −1
cos − cos , α < θi < π/2; (7.53)
n n
2
λ2 ka
−1
sin(π/n) h π ih π
σ= 2 × exp − j(2ka sin θi − ) cos − 1
4π sin θi n 4 n
π 3π − 2θi −1 i h π ih π −1
± cos − cos + exp j(2ka sin θi − ) cos − 1
n n 4 n
2
π 2θi − π −1 i
± cos − cos , π/2 < θi < π. (7.54)
n n
The positive sign is used for horizontal polarization and the negative sign is used
for vertical polarization in (7.52), (7.53), and (7.54). For comparison of the above
approximate equations with measured data, the reader is referred to [15].
For cones with rounded nose tips, as shown in Figure 7.12, the physical optics
approximation with axial incidence is given by [9]
"
2 sin 2kb(1 − sin α) 1 + cos4 α
σ = πb 1− 2
+
kb cos α 4(kb)2 cos4 α
258 Introduction to Radar Using Python and MATLAB
𝑎
𝛼
𝑧
𝜃𝑖 𝑏
𝐸 𝑖 , 𝐻𝑖
#
cos 2kb(1 − sin α)
− (m2 ), (7.55)
2(kb2 ) cos2 α
where b is the radius of the rounded nose tip. For incident angles other than axial, but less
than the cone angle (θi ≤ α),
1 + θi2 h
σ = πb2
2
A1 + A2 cos 2k cos θi (1 − sin α)
4(kb)
i
+ A3 sin 2k cos θi (1 − sin α) (m2 ), (7.56)
where
− 8(kb)3 θi2 + (kb)2 θi4 + 6(kb)2 α2 θi2 + 8(kb)3 θi4 + 13(kb)4 θi4 , (7.57)
A2 = − 2 − 2α2 + 2θi2 + α2 θi2 − 0.5θi4 − 6(kb)2 θi2 + 8(kb)4 θi3 + 3(kb)2 θi4 , (7.58)
7.4.1.7 Frustum
Considering the frustum geometry shown in Figure 7.13, an approximation for the radar
cross section due to linearly polarized incident energy is given by [16]
Radar Cross Section 259
bλ
σ= tan2 (θi − α) (m2 ), (7.60)
8π sin θi
where
a = small end radius (m),
b = large end radius (m),
α = half angle of the cone (tan−1 (b − a)/L) (rad),
L = length of the frustum (m).
As shown in the previous sections, analytic solutions are only available for a small set
of canonical objects. While there are approximate solutions for many objects, which
are in good agreement with measured results, these are still quite limited compared to
the complex targets of interest to radar systems. In the past, the design and analysis
of electromagnetic scattering from objects was largely experimental. However, with
the computing power and programming languages currently available, computational
electromagnetics has seen ever-increasing usage. There have been many advances in
the area of computational electromagnetics, allowing the solution of larger and more
complex problems [17, 18]. While measured results provide valuable data and insight into
the scattering of complex objects, they are quite costly in terms of hardware, labor, and
time. Numerical techniques allow for the prediction of the radar cross section of complex
objects before they are constructed. This provides the opportunity to optimize certain
parameters, and for the evaluation of “what if” scenarios, which would be prohibitive if
done experimentally.
Exact methods are numerical techniques without any implicit approximation in their
treatment of the problem. Therefore, they solve Maxwell’s equations in an exact sense and
can be highly accurate. This is desirable since many radar systems make use of the radar
cross section for target classification and discrimination. However, these methods are
260 Introduction to Radar Using Python and MATLAB
𝜃𝑖 𝐸 𝑖 , 𝐻𝑖
𝑏
𝑧2
𝑎
𝑧1
often limited to objects of small electrical size due to computer memory and computation
time constraints. Exact methods are often termed low-frequency techniques, as their
practical application is limited to low-frequency regimes for targets of interest to radar
systems, such as tanks, aircraft, and ships. Exact methods include the finite difference
time domain (FDTD) method, finite element method (FEM), and method of moments
(MOM). Each of these has their own advantages and disadvantages discussed in the
following sections.
The FDTD method is one of the simplest of the exact methods [19–21]. It is straightfor-
ward in its concept and implementation. FDTD uses finite differences as approximations
Radar Cross Section 261
to both the spatial and temporal derivatives in Maxwell’s equations. Penetrable dielec-
tric and magnetic materials are handled in FDTD as well as complex geometries. Since
FDTD is a time domain technique, it can produce wideband responses rather than single
frequency responses of other techniques. Also, the FDTD method is highly paralleliz-
able [22], which greatly improves run times.
Yee first proposed an FDTD algorithm in 1966 employing second-order central
differences [23]. The algorithm is summarized as
For illustration, the FDTD update equations in one dimension are derived. Fields with
variations only in the x direction, and an electric field which only has a z component are
considered. Faraday’s law (2.1) for this case may be written as
∂H ∂Ez
−µ =∇×E=− ŷ. (7.62)
∂t ∂x
Similarly, Ampere’s law (2.2) for this case is written as
∂E ∂Hy
=∇×H= ẑ. (7.63)
∂t ∂x
Next, replace the derivatives in (7.62) and (7.63) with finite differences. Figure 7.14
illustrates the offset of the electric and magnetic fields in both space and time. This allows
(7.62) to be written as
t+1/2 t−1/2
Hy (n + 1/2) − Hy (n + 1/2) Ezt (n + 1) − Ezt (n)
µ = , (7.64)
∆t ∆x
which leads to the update equation for the magnetic field, given by
∆t t
Hyt+1/2 (n + 1/2) = Hyt−1/2 (n + 1/2) + Ez (n + 1) − Ezt (n) . (7.65)
µ∆x
Starting with (7.63) and following a similar procedure results in the update equation for
the electric field as
262 Introduction to Radar Using Python and MATLAB
∆𝑡
∆𝑥
𝐸𝑧𝑡 [𝑛 − 1] 𝐸𝑧𝑡 [𝑛] 𝐸𝑧𝑡 [𝑛 + 1]
Position
Figure 7.14 Electric and magnetic fields in time and space for the Yee algorithm.
∆t t+1/2
Ezt+1 (n) = Ezt (n) + Hy (n + 1/2) − Hyt+1/2 (n − 1/2) . (7.66)
∆x
In the update equations (7.65) and (7.66), there are two terms, ∆x and ∆t, which
are the spatial and time discretization. The fundamental constraint on the spatial cell
size is that it must be much less than the smallest wavelength. The constraint has to
do with reducing the dispersion error in the grid. One figure often given in literature
is a cell size of λ/10 for accurate results. However, for very accurate determination of
radar cross section, a cell size of λ/20 or smaller may be necessary. Also, the cell size
must be appropriate to accurately model the geometry being considered. For example,
the modeling of a smooth surface with a rectangular cell may result in staircase errors
and may require very small cells. Once the spatial step size has been determined, the
maximum time step, ∆t, needs to be found. While it is desirable for the time step to
be large to reduce the required number of calculations, if the time step too large the
algorithm is unstable, and results tend to infinity. Much work has been performed in the
area of stability conditions for the FDTD method and the reader is referred to several
good references on the subject [24–27]. For the purposes of this book, the fields are not
allowed to propagate more than one spatial step, in one time step, which leads to the
stability condition, vp ∆t ≤ ∆x, where vp is the maximum velocity of propagation of
light in any medium in the problem geometry.
Radar Cross Section 263
The FDTD computational volume is finite in size, and when the fields reach the
outer boundary they are reflected back into the computational domain. For scattering
problems, such as the computation of the radar cross section, this causes errors in the
results. One approach is to make the computational volume very large and stop the
time stepping before the reflections cause significant error. However, this approach is not
practical as the number of spatial cells required would be prohibitive. A more appealing
approach is to terminate the FDTD volume with some type of reflectionless boundary.
Much work has been performed in the area of absorbing type boundaries [28–30],
with perfectly matched layers (PML) being considered state of the art. The PML was
first proposed by Berenger in 1994 [31]. While there are many different formulations
for PMLs, the basic idea is for the layers to act as lossy material and absorb energy
traveling away from the interior of the FDTD volume. The PML is constructed such
that it is anisotropic and there is no loss tangential to the interface but is always lossy
in the direction normal to the interface. A highly attractive PML formulation is the
convolutional-PML [28]. This formulation constructs the PML from an anisotropic,
dispersive material that has a straightforward implementation.
FEM is a numerical technique for solving boundary value problems in engineering and
mathematical physics. It was first proposed in the early 1940s by Hrennikoff [32] and
Courant [33] and began being used for aircraft design in the 1950s. The method was
developed and used extensively in the 1960s and 1970s, with NASA sponsoring the
original version of NASTRAN for the aerospace industry [34]. Since then, the finite
element method has seen much interest in areas such as structural analysis, heat transfer,
fluid flow, mass transport, and electromagnetics [35–37]. The basic steps for solving
boundary value problems with the finite element method are
Figure 7.15 Traditional finite elements for one-, two-, and three-dimensional problem
domains.
The choice of basis functions depends on a few factors, including the problem
domain, complexity, relative error, and numerical dispersion. Basis functions are usually
chosen to be either linear, quadratic, or higher-order polynomials. While the higher-
order basis functions produce quite accurate solutions, the formulation becomes more
complicated. Entire domain basis functions, including wavelet and wavelet-like functions,
have also been examined by the Harrison et al. [41–46]. Once the basis functions have
been chosen, the unknown solution in an element is written as
M
X
φ̃e = Nie φei , (7.67)
i=1
where
N = number of nodes in the element,
φei = the value of φ at node i,
Nie = the basis function for node i.
The next step in the finite element process is the formulation of the system of
equations. Boundary value problems may be expressed as
Lφ = f, (7.68)
where L is a differential operator, and f if the forcing function. This is subject to
boundary condition Γ on problem domain Ω, as shown in Figure 7.16. The form of L and
f for scattering and radiation type problems can be the scalar wave equation of (2.43)
or the vector wave equation of (2.42). The boundary condition, Γ, for the scattering
problems is typically an impedance or radiation condition. The two most widely used
approximate methods for solving (7.68) are the Ritz variational and Galerkin methods
[37].
The final step in the finite element procedure is solving the system of equations,
which may take on one of two forms, given as
Radar Cross Section 265
𝑛ො
𝜇1 , 𝜖1 , 𝜎1 Boundary
Γ Conditions
Ω
Computational
Domain
𝐽Ԧ𝑖
𝜇2 , 𝜖2 , 𝜎2
A x = b, (7.69)
or
A x = λ B x. (7.70)
The form given in (7.69) is deterministic and results from open radiation and scattering
type problems. The second form, given in (7.70), is an eigenvalue system resulting from
waveguide and resonant cavity type problems. There are generally two categories of
methods used to solve linear equations of the form (7.69), direct and iterative. There
are many direct methods, which are based on Gaussian elimination. Decomposition
methods, such as LU decomposition, are best suited for finite element systems of
equations. The direct solution by LU decomposition may be calculated with the SciPy
implementation, scipy.linalg.lu factor(), which performs the LU decomposition, and
scipy.linalg.lu solve(), which solves the matrix equation given the LU factorization [12].
Iterative methods for solving problems of the form given in (7.69) do not modify the
system matrix, but rather begin with an initial approximation of the solution vector, x,
and minimize the residual vector
ri = A x̃i − b, (7.71)
where x̃i is the approximate solution at each iteration. There are a few iterative solvers,
including conjugate gradient, biconjugate gradient, and generalized minimum residual
[37], suitable for use in the solution of finite element systems of equations. These iterative
266 Introduction to Radar Using Python and MATLAB
methods, along with a few others, are available in the SciPy module scipy.sparse.linalg.
The iterative solvers in SciPy also accept a preconditioner matrix as an input.
As an example of the direct and iterative methods, consider the code given in
Listing 7.2. This demonstrates the solution to (7.69) with the direct LU decomposition
method and the iterative conjugate gradient method. The two solutions differ slightly,
which is a result of the convergence criteria based on the residual in (7.71) for the
conjugate gradient method.
MOM is a powerful numerical technique for solving boundary value problems in electro-
magnetics. It was first applied to electromagnetics problems in the mid-1960s [47–49],
and Harrington unified the formulation of the method in 1968 [50]. In 1982, Rao, Wilton,
and Glisson presented the electromagnetic scattering by surfaces of arbitrary shape using
MOM [51]. Gibson’s excellent text is a bridge between the theory and software imple-
mentation of the method and provides many implementation details [52]. The basic idea
of MOM is to convert a set of integro-differential equations into a system of equations
that can be solved numerically. Consider again the boundary value problem
Lφ = f. (7.72)
Expanding φ in terms of basis functions results in
N
X
φ= cn vn , (7.73)
n=1
where vn are the basis functions, and cn are the unknown coefficients. Substituting (7.73)
into (7.72) results in
N
X
cn L vn = f. (7.74)
n=1
To find cn , take the inner product of (7.74) with a set of testing functions wn , which
results in
N
X
cn < wm , L vn >=< wm , f > m = 1, 2, · · · M. (7.75)
n=1
Ax = b, (7.76)
where
Radar Cross Section 267
# System matrix
A = array([[1, 2], [3, 4]])
# RHS vector
b = array([10, -7])
# Perform factorization
lu, piv = lu_factor(A)
The matrix equation in (7.76) may be solved through direct or iterative solvers. However,
there are powerful fast solvers for use with MOM discussed in the later sections. There
are four basic steps to solving boundary value problems in electromagnetics with the
method of moments:
268 Introduction to Radar Using Python and MATLAB
𝑛ො
𝐸0 , 𝐻0
𝐸1 , 𝐻1 𝐽Ԧ𝑖
Region 1
𝜇1 , 𝜖1 , 𝜎1 Free Space
𝜇0 , 𝜖0
∇ × ∇ × E − k 2 E = −jωµJ, (7.79)
∇ × ∇ × H − k 2 H = ∇ × J. (7.80)
The three-dimensional Green’s function [10] satisfies the Helmholtz equation,
˚
1 0
Ei = −jωµ JG + ∇ · J G dV 0 , (7.83)
V k2
˚
i
H =− J × G dV 0 . (7.84)
V
‹
1 0
L(x) = jk xG + 2
∇ · x∇G dS 0 , (7.85)
S k
‹
K(x) = x × ∇G dS 0 . (7.86)
S
Recalling the electromagnetic boundary conditions from Section 2.3, the equivalent
surface currents are
Js = n̂ × H, (7.87)
Ms = E × n̂. (7.88)
1
Ms − n̂ × L(Js ) + n̂ × K̃(Ms ) = −n̂ × Ei , (7.89)
2
1
Js + n̂ × K̃(Js ) + n × L(Ms ) = n̂ × Hi . (7.90)
2
K̃ is the same operator as (7.86), except the singular point (r = r0 ) has now been removed.
The expression in (7.89) is known as the electric field integral equation (EFIE), and (7.90)
is known as the magnetic field integral equation (MFIE).
When using the method of moments, a common discretization of the surface is
through the use of triangular elements. A popular choice for expanding the surface current
is the Rao-Wilton-Glisson (RWG) basis function [51], illustrated in Figure 7.18. The
RWG basis function is defined over two triangular elements joined at a common edge,
and is given here as
270 Introduction to Radar Using Python and MATLAB
`
n +
+ ρn r ∈ Tn+ ,
2A n
Λn = `n − (7.91)
− ρn r ∈ Tn− ,
2A
n
0 otherwise
where
`n = length of the common edge between two triangular elements,
Tn± = two triangular elements with the common edge ln ,
A±n = area of the two triangular elements,
ρ±
n = vectors associated with each element.
𝜌𝑛− 𝜌𝑛+
The RWG basis function guarantees the continuity of current flow over all edges, as
the normal component of the basis function at edge ln is a constant and the normal
components of the basis function to the other edges is zero. As with the finite element
method, MOM requires a well-constructed and well-connected mesh.
The final step in the MOM process is the solution of the system matrix equation of
the form A x = b. Unlike FEM, the MOM system matrix is fully populated. To solve the
MOM matrix equation with a direct solver, such as LU decomposition, the operation
count is O(N 3 ) and the memory requirement is O(N 2 ). To solve the MOM matrix
equation with an iterative solver, both the operation count and memory requirements are
O(N 2 ). If the number of iterations required for convergence is relatively small, then the
iterative methods are faster than the direct solvers. However, the iterative solution must
be repeated for each right-hand side (forcing function), whereas the LU decomposition
may be performed once, and the forward and backward substitutions are performed
for each forcing function. Such computational complexity limits the size of problems
Radar Cross Section 271
feasible with either of the solution techniques. However, much work has been performed
to reduce the complexity from O(N 2 ) to O(N 1.5 ) and even O(N log N ). To this end,
the fast multipole method (FMM), first proposed by Greengard and Rohklin for particle
simulations [55], was extended to solve problems acoustic wave scattering and eventually
electromagnetic problems. The memory requirement and computational complexity are
both O(N 1.5 ). Both of these can be reduced to O(N log N ) by using the multilevel fast
multipole method (MLFMM) [17]. Another method for reducing the time are memory
requirement for MOM is the adaptive cross approximation (ACA) method, which was
first proposed by Bebdndorf [56]. In MLFMM, the formulation, implementation, and
sometimes performance depend on a priori knowledge of the integral equation kernel.
ACA is purely algebraic in nature and is therefore independent of the integral equation
kernel. This allows ACA to be modular and easily implemented into existing MOM code.
The computational complexity of ACA has been shown to be O(N log N ) for electrically
small problems [37]. Lee et al. showed the memory requirement and computation
complexity of ACA to be O(N 1.5 log N ) for moderately sized problems.
Objects of interest to radar systems are often very large compared to the wavelength
of the incident energy. In order to solve the scattering from electrically large objects,
many approximate techniques have been developed. These methods are largely based
on edge diffraction and physical optics and provide accurate results for many classes
of objects. Many of the approximate methods, when used in combination, can produce
results accurate to within a few decibels of the true scattering result. These methods can
be used for first cut design and analysis problems. Since these methods are used for
electrically large objects, they are often referred to as high-frequency techniques. These
methods include physical theory of diffraction (PTD), geometrical theory of diffraction
(GTD), geometrical optics (GO), physical optics (PO), and shooting and bouncing rays
(SBR).
This section begins with the basic concepts of the well-known geometrical optics method
for solving electromagnetic problems. The Luneburg-Kline [57] form of the solutions for
the electric and magnetic fields are given by
∞
−jkφ(r)
X En (r)
E(r, ω) ≈ e n
, (7.92)
n=0
(jω)
272 Introduction to Radar Using Python and MATLAB
∞
X Hn (r)
H(r, ω) ≈ e−jkφ(r) . (7.93)
n=0
(jω)n
These represent the expansion of the fields in inverse powers of ω. As the frequency
approaches ∞, the only terms remaining are for n = 0, and the fields are written as
These are the geometrical optic rays and play an important role in solving high-frequency
problems. If (7.92) and (7.93) are placed into Maxwell’s equations, relationships between
the coefficients of En and Hn may be obtained. Geometrical optic rays are defined as
curves tangent to the direction of power flow. The fields E and H are required to be
orthogonal to one another and to `. ˆ Recall from Chapter 2 that this is the same as the
field relationship for a plane wave. The geometrical optic ray does not need to be a plane
wave, but at every point the orthogonality holds. For example, the geometrical optic ray
fields can be diverging from the source, as shown in Figure 7.19. Important properties of
geometrical optic rays are
Phase Fronts
Rays
Rays
Phase Fronts
Figure 7.19 Geometrical optic ray fields for plane and spherical waves.
In the geometrical optic method, the surface currents introduced by the incident wave
were never considered. In physical optics, it is assumed the field at the surface of the
scattering body is the geometrical optic field. This implies the scattering occurs at each
point as if there were an infinite tangent plane at that point. For a perfect electrical
conductor, the physical optics surface current is
n̂ × Htotal illuminated,
J= (7.100)
0 shadowed.
274 Introduction to Radar Using Python and MATLAB
From image theory, the scattering body is replaced by equivalent currents in free space,
and the tangential component of the magnetic field at a prefect electrical conductor are
twice those from the source. This is written as
J = 2n̂ × Hi . (7.101)
The scattered magnetic field is written as
¨
Hs = ∇ × J ψ dS 0 , (7.102)
S0
where ψ is the free space Green’s function given in (7.82). Mathematical manipulation
results in
¨
jk jkr̂·r0 0
Hs = e−jkr J × r̂ e dS . (7.103)
S0 4πr
Writing the radar cross section in terms of the magnetic field gives
¨ 2
|Hs |2 4π j2kr̂·r0 0
σ= lim 4πr2 i 2 = 2 r̂ · n̂ e dS (m2 ). (7.104)
r→∞ |H | λ S0
a − `0
ẑ · n̂ = , (7.105)
a
ẑ · r̂ = a − `0 , (7.106)
where `0 is the distance along z from a point on the sphere surface, as shown in Figure
7.20. Substituting (7.105) and (7.106) into (7.104) results in
ˆ a 2
4π 2π ej2ka
−j2k`0 0
0
σ= 2 e (a − ` ) d` (m2 ). (7.107)
λ
0
Performing the integration leads to
2
4π aλ j j
σ = 2 1+ ej2ka − (m2 ). (7.108)
λ 2j 2ka 2ka
𝐸 𝑖 , 𝐻𝑖 𝜃
𝑧 𝑎−
Physical optics and geometrical optics were concerned with backscattering. In the for-
ward scattering direction, geometrical optics is incapable of predicting a nonzero field in
the shadow region. Therefore, geometrical optics is extended with diffraction rays that
do permit the calculation of scattering fields in the shadow region. Keller’s geometrical
theory of diffraction treats wedge diffraction and is an important extension of geometrical
optics [14]. Consider the scattering by an infinitely thin infinitely long half plane illus-
trated in Figure 7.21. Using Huygen’s principle, each point on the primary wavefront at
z = 0 is the source of a secondary wave [1]. Therefore,
ˆ∞
E(P ) = dE, (7.109)
x=a
𝑑𝑥
𝛿(𝑥)
𝑎 𝐸𝑖 , 𝐻𝑖
0
𝑧 𝑝
Conducting
Half Plane
ˆ∞
E0 2
E(P ) ≈ √ ej(π/4) e−jk` e−jπ/2u du, (7.111)
2
γa
where γ 2 = 2/λ`. The diffracted field in the vicinity of the shadow boundary is shown
in Figure 7.22.
While there are complex diffraction scattering mechanisms, including vertex diffraction,
tip diffraction, and others, GTD may be divided into two basic problems: wedge diffrac-
tion and curved surface diffraction. The uniform theory of diffraction (UTD) accurately
predicts the diffracted field in transition regions and near edges without the need to handle
each type of incident field separately. UTD applies to all situations consistent with the
postulates of GTD. Kouyoumjian et al. developed a generalized version of the scalar
diffraction coefficients for parallel and perpendicular polarization [58], which are given
here as
Radar Cross Section 277
Shadow Boundary
Figure 7.22 The diffracted electric field near the shadow boundary.
"
−e−jπ/4 π + (φ − φ0 )
F kLa+ (φ − φ0 )
D⊥,k = √ 0
cot
2n 2πk sin γ0 2n
π − (φ − φ0 )
F kLa− (φ − φ0 )
+ cot
2n
(
π + (φ + φ0 )
F kLa+ (φ + φ0 )
± cot
2n
)#
π − (φ + φ0 )
− 0
+ cot F kLa (φ + φ ) , (7.112)
2n
ˆ∞
√ 2
F (x) = 2j| x| e−jτ dτ, (7.113)
√
| x|
2nπN ± − (φ ± φ0 )
± 0 2
a (φ ± φ ) = 2 cos , (7.115)
2
where the integers, N ± , satisfy
1
√ for plane and cylindrical incident waves,
s
A(s) = s (7.118)
s0
s(s0 + s)
for spherical incident waves.
Shadow Boundary
𝑛ො1 𝑛ො 2
𝐸 𝑑 , 𝐻 𝑑 Diffracted
𝐸𝑖 , 𝐻𝑖 𝑃1 𝑃2
Fields
Incident 𝑠′
Fields 𝑆
Curved
Diffracting
Surface
ˆ
E(s0 ) = E i (P1 )D(P1 )G(s0 ) exp − γ(s0 )ds0 , (7.119)
where
E(s0 ) = field of the creeping wave along the path,
D(P1 ) = diffraction coefficient at P1 ,
G(s0 ) = ray divergence factor along the path,
γ(s0 ) = propagation factor α(s0 ) + jβ(s0 ) along the path,
s0 = arc length along the surface of the scattering object.
|Es |2
a
σ = lim 2πρ i 2 = lim 2πρ = πa (m2 ). (7.122)
ρ→∞ |E | ρ→∞ 2ρ
Next, the fields from the creeping waves are included. At the point P1 ,
There is no transverse spreading of the waves on the cylinder surface, which leads to
G(s0 ) = 1. Therefore, the field at the point Q2 is expressed as
ˆ πa
E(P2 ) = E i (P1 )D(P1 )e−jkπa exp − αds0
0
i −jkπa −απa
= E (P1 )D(P1 )e e . (7.124)
Multiplying (7.124) by D(P2 ) results in the fields radiated by the creeping wave. By
reciprocity, D(P1 ) = D(P2 ), which results in
" # " #" #2
Ekc Eki Dk
r
a
c
= i
e−jkπa e−πaα . (7.125)
E⊥ E⊥ D⊥ 2ρ
Since there are shadow boundaries at the top and bottom of the cylinder, the fields from
the creeping wave are doubled, and the total backscattered field becomes
" s# " r# " c#
Ek Ek Ek
s
= r
+ 2 c
(7.126)
E⊥ E⊥ E⊥
Hybrid techniques typically use one method for solving a particular portion of the
problem domain and a different method for the remaining portion. One example is the
finite element boundary integral (FE-BI) method. This method has been widely used in
the analysis of unbounded electromagnetic scattering and radiation from complicated
structures and composite materials [59]. This method combines the capability of the
finite element method in modeling highly complicated geometries and inhomogeneous
materials with the efficiency of integral equations for open radiation and scattering.
Recently, Jin et al. demonstrated an accurate and efficient GPU-accelerated multilevel
fast multipole algorithm (MLFMA) FE-BI method for the three-dimensional analysis of
complex objects in free space [60]. Figure 7.24 illustrates the typical domain computation
for the FE-BI method.
As shown in previous sections, analytic and numerical methods all suffer some limita-
tions, some of which are only overcome by experimental techniques or measurement
methods. Along with this is the need to verify new prediction techniques and theories.
While radar cross-section measurement is very costly in terms of hardware, labor, and
time, it provides valuable insight into scattering from complex targets not otherwise
Radar Cross Section 281
achievable. Measurement techniques for radar cross section may be performed with full-
size targets or with scaled model targets. For scaled model targets, certain other parame-
ters must also be scaled, as shown in Table 7.2, where s is the scale factor. While there
are ranges designed to perform scaled model measurements [61], one of the drawbacks
is the scaling of the parameters, particularly the frequency and the conductivity. How-
ever, with advances in materials and electronic equipment, more reliable scaled model
measurements are becoming available. For radar cross-section measurements performed
with full-size targets, an indoor or outdoor range may be used. Indoor ranges have the
advantage of being a controlled space for both privacy and security as well as not being
affected by the environment. However, they are often limited in size, which limits the
types of targets that can be measured.
One problem of early outdoor ranges involved mounting a large target and isolating it
from nearby clutter, especially ground reflections. This makes the accurate measurement
of low RCS targets very difficult. Some designs include the use of fences to reduce the
ground reflections, while others make use of the ground as a method of illuminating
the target, as shown in Figure 7.25. The advantage of a ground reflection range is
the elimination of the ground as clutter, and the addition of up to 12 dB in signal
strength as there are four paths of the direct and reflected signals. However, there are
also disadvantages associated with ground reflection ranges. The first is the need for a
perfectly flat site for the range. Another disadvantage is that the height of the transmitting
282 Introduction to Radar Using Python and MATLAB
Table 7.2
Scaled Model Radar Cross-Section Measurement Parameters
Parameter Full-Scale Sub-Scale
Dimension D Ds = D/s
Frequency F Fs = s F
Time t ts = t/s
Permittivity s =
Permeability µ µs = µ
Conductivity C Cs = s C
RCS σ σs = σ/s2
Target
Antenna
Support Pylon
antenna system is highly dependent on the operating frequency as the signals from the
direct path and the reflected paths must arrive in phase at the target. Even with these
difficulties, ground reflection ranges are still common. Another source of interference
is the mounting structure for the target being measured. The structure must be capable
of supporting and rotating targets weighing thousands of pounds while producing very
little backscatter. Pylons have been developed that have very low backscatter. Typical
backscatter values are −25 to −45 dBsm [62]. These pylons are often tapered and are
ogive in shape. Many are also titled to further reduce the scattering in the direction of the
measuring equipment.
For indoor ranges, there are three typical designs; far-field chambers, tapered chambers,
and compact ranges. Indoor far-field ranges, illustrated in Figure 7.26, are problematic
due to size limitations as the transmitting antenna and the target under test must be
sufficiently separated such that good plane wave conditions exist. Recalling from Chapter
Radar Cross Section 283
Target
Signal Path Antenna
Support Pylon
2 the far-field condition of R ≥ 2D2 /λ and assuming a target of dimension 3 meters and
a frequency of 10 GHz requires a distance of R = 600 meters. This is prohibitively large
for indoor far-field ranges. For tapered chambers, illustrated in Figure 7.27, the tapered
region acts as a horn antenna. These types of indoor ranges are most effective at low
frequencies. The typical design of a compact range is shown in Figure 7.28. It is designed
such that a plane wave is generated by an offset reflector. These allow for much shorter
distances between the transmitting antenna and the target under test. The main reflector
is a large paraboloid surface fed by a horn antenna at the focus. The power at the receiver
is [62]
4
σ λ
Pr = Pt G2f (W), (7.127)
(4π)3 λ2 R0
where
Pr = power at receiver (W),
Pt = transmit power (W),
Gf = gain of the feed horn,
R0 = range from feed horn to reflector (m).
The expression in (7.127) is similar to the radar range equation in (4.28), except the range
term in the denominator is now the range from the feed horn to the reflector. Single-
feed compact ranges have proven difficult to implement as the feed horn needs to have a
very wide beamwidth to achieve uniform amplitude in the quite zone and possess a wide
bandwidth, nonringing response. Therefore, some compact ranges operate with a smaller
hyperboloid reflector to illuminate the large primary reflector. Sources of error in compact
range measurements are shown in Figure 7.29. These errors are represented in time in
284 Introduction to Radar Using Python and MATLAB
Wedge Absorber
Target
Antenna
Support Pylon
Reflector
Signal Path
Target
Support Pylon
Feed Antenna
Reflector
Target Scattering
Pylon Wall
Scattering Tx Leakage Scattering
Figure 7.30. One method of alleviating some of these errors is through time domain
gating with a pulsed transmit signal. This requires a large instantaneous bandwidth and
the requirement for the pulsewidth is [62]
Also, the height of the target is chosen such that the reflected pulse does not illuminate
the target during the period of time the direct pulse is illuminating the target.
1
height ≥ (2Ltarget + τmeas ) (m). (7.129)
2
Another method for reducing the errors in compact ranges is through vector subtraction
of the background. First, a calibration target of known scattering is used to calibrate
the measurement equipment. The calibration target is then removed and the background
signal with no target is measured. Next, the scattering of the desired target is measured.
Finally, the background signal is coherently subtracted from the scattering measurements
with the target present. This method does not account for interactions between the target
and the chamber, but these are usually considered second-order effects.
286 Introduction to Radar Using Python and MATLAB
Target
Signal Strength
Reflector
Wall
Leakage
Time
Figure 7.30 Time response of errors in compact ranges.
An important aspect of all indoor ranges is absorbing material placed in areas pro-
ducing large unwanted scattering, such as walls, floors, doors, and mounting structures.
The design of the absorber may be pyramidal, wedge, truncated pyramidal, convoluted,
ferrite tile, and others [63]. Each has its own advantages and disadvantages. For example,
wedge absorbers reduce scattering in areas where high incident angles occur, whereas
convoluted absorbers are very effective in minimizing front face reflections at higher
frequencies [63]. Typical values of reflectivity are from −20 to −50 dB, depending on
the design, bandwidth, and application [63].
The desire to reduce the radar cross section of a target has been around since the
early days of radar in World War II. As shown in Chapter 6, reducing the radar cross
section, and therefore the signal-to-noise ratio in the radar receiver, can greatly reduce the
probability of detection. Initial attempts to reduce the radar cross section were through
the use of wood and other materials less reflective than metal. This quickly led to the idea
of shaping as a method of reducing the radar cross section.
Radar Cross Section 287
7.5.1 Shaping
A prime example of shaping is the F-117 stealth aircraft. The body and edges are angled
to direct energy in directions other than the backscatter direction. There are special shape
design ideas implemented on the seams, bay doors, and engine duct. This contrast in
shape, compared to traditional aircraft design, led to considerable reduction in the radar
cross section. Shaping is generally most effective at high frequencies where the energy
is reflected in specular directions. Also, diffraction from edges and corners contribute
to large radar cross section values. These effects can be reduced by rounding the edges,
or sometimes applying a sawtooth design to the edge. Finally, care must be taken when
designing low radar cross-section targets as they must still meet other requirements such
aerodynamics, weight, structural, and thermal.
Radar absorbing material (RAM) coatings have been in use since the 1950s [64]. The ba-
sic idea of RAM materials is to reduce the backscattered energy by converting the incident
energy into heat. Since RAM materials have relatively high conductivity, a change in the
polarization of the reflected wave can occur. RAM coatings should be lightweight, anti-
corrosive, temperature invariant, wideband, and effective in all directions. While these
requirements are difficult to achieve simultaneously, advances have been made in chem-
ical composition and production methods for these materials [63]. RAM is typically ap-
plied with robotic sprayers that can very accurately control the thickness of the material.
Aerobotix, Inc. provides a range of integrated robotic systems capable of coating fully
assembled aircraft [65]. Each system is equipped with precision fluid handling equipment
to accurately apply performance coatings to all areas of the aircraft’s outer mold line. The
robotic systems can be outfitted with noncontact sensors to examine and verify coating
thickness. The constitutive parameters of the material must also be tightly controlled to
ensure maximum effectiveness.
The main idea of passive cancellation is to place scatterers on the target to reflect the
incident energy in such a way as to cancel the reflected energy from a different scatterer
on the target. There have also been attempts to add parasitic elements and lumped
impedance elements to passively dissipate the incident energy [64]. Passive techniques
are limited to narrow frequency bands and small angular sectors. Furthermore, complex
targets have many sources of scattering, making passive cancellation of very limited use
and effectiveness.
288 Introduction to Radar Using Python and MATLAB
While the goal of the methods above is to lower the radar cross section of a target, there
are much more advanced countermeasure techniques, including self-screening jammers,
stand-off jammers, cross-eye jamming, range gate pull-off, and velocity gate pull-off.
The methods in the sections above are also narrowband in nature, and more advanced
techniques must be employed for wideband radar waveforms. Chapter 11 provides more
details on jamming, and the reader is referred to several good sources on electronic
countermeasures for further reading [16, 64, 66].
7.6 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter07 and the matching
MATLAB examples are in the directory mlradar\Chapter07. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
As a first example, consider the two-dimensional strip of Figure 7.6. Calculate and display
the two-dimensional radar cross section for a strip of width 3 meters at a frequency of 300
MHz with an incident angle of 60o .
Solution: The solution to the above example is given in the Python code infinite strip
example.py and in the MATLAB code infinite strip example.m. Running the Python
example code displays a GUI allowing the user to enter the width of the strip, the
incident angle, and the operating frequency. The code then calculates and displays the
two-dimensional bistatic radar cross section as a function of observation angle, as shown
Radar Cross Section 289
Figure 7.31 The two-dimensional bistatic radar cross section of an infinite strip calculated
by infinite strip example.py.
in Figure 7.31. The user is encouraged to vary the parameters to see how this affects the
radar cross section.
For this example, consider the two-dimensional circular cylinder of Figure 7.7. Calculate
and display the two-dimensional bistatic radar cross section for a cylinder of radius 3
meters at a frequency of 300 MHz.
Solution: The solution to the above example is given in the Python code infinite cylinder
example.py and in the MATLAB code infinite cylinder example.m. Running the Python
example code displays a GUI allowing the user to enter the radius and length of the
cylinder and the operating frequency. The code then calculates and displays the two-
dimensional bistatic radar cross section as a function of observation angle, as shown in
Figure 7.32. The user is encouraged to vary the parameters to see how this affects the
radar cross section.
290 Introduction to Radar Using Python and MATLAB
Figure 7.32 The two-dimensional bistatic radar cross section of an infinite cylinder
calculated by infinite cylinder example.py.
Solution: The solution to the above example is given in the Python code infinite cylinder
oblique example.py and in the MATLAB code infinite cylinder oblique example.m.
Running the Python example code displays a GUI allowing the user to enter the radius
and length of the cylinder, the operating frequency, and the angle of incidence. The code
then calculates and displays the two-dimensional bistatic radar cross section as a function
of observation angle, as shown in Figure 7.33. The user is encouraged to vary the angle
of incidence to see how this affects the radar cross section.
The previous examples studied two-dimensional radar cross section. For this example,
the three-dimensional radar cross section of a rectangular plate, as shown in Figure 7.9,
is studied. Calculate and display the three-dimensional bistatic radar cross section for a
Radar Cross Section 291
Figure 7.33 The two-dimensional bistatic radar cross section of an infinite cylinder with
oblique incidence calculated by infinite cylinder oblique example.py.
rectangular plate of width 3 meters and length 5 meters. The frequency is 300 MHz and
the incident angle is 15o .
Solution: The solution to the above example is given in the Python code rectangu-
lar plate example.py and in the MATLAB code rectangular plate example.m. Running
the Python example code displays a GUI allowing the user to enter the width and length
of the plate, the operating frequency, and the angle of incidence. The code then calculates
and displays the three-dimensional bistatic radar cross section as a function of observa-
tion angle, as shown in Figure 7.34. The user is encouraged to vary the width, length,
frequency, and angle of incidence to see how these affect the radar cross section.
For this example, consider a stratified sphere, as shown in Figure 7.10. Calculate and
display the three-dimensional bistatic radar cross section for a stratified sphere with a
perfectly conducting core, and a dielectric outer layer with a relative permittivity of 4.
Solution: The solution to the above example is given in the Python code strati-
fied sphere example.py and in the MATLAB code stratified sphere example.m. Running
292 Introduction to Radar Using Python and MATLAB
Figure 7.34 The three-dimensional bistatic radar cross section of a rectangular plate
calculated by rectangular plate example.py.
the Python example code displays a GUI allowing the user to enter the relative permit-
tivity, relative permeability, and conductivity of each layer. The GUI also allows the user
to enter the frequency and select whether or not the core is conducting. The code then
calculates and displays the three-dimensional bistatic radar cross section as a function of
observation angle, as shown in Figure 7.35. The user is encouraged to vary the parameters
of the sphere and the number of layers to see how these affect the radar cross section.
Next, consider the right circular cone, as shown in Figure 7.11. Calculate and display the
three-dimensional monostatic radar cross section for a right circular cone with a half cone
angle of 15o , a base radius of 1.4 meters, at a frequency of 1 GHz.
Solution: The solution to the above example is given in the Python code right circular
cone example.py and in the MATLAB code right circular cone example.m. Running the
Python example code displays a GUI allowing the user to enter the frequency, cone half
angle, and the base radius. The code then calculates and displays the three-dimensional
monostatic radar cross section as a function of observation angle, as shown in Figure
7.36. The user is encouraged to vary the parameters of the cone to see how these affect
the radar cross section.
Radar Cross Section 293
Figure 7.35 The three-dimensional bistatic radar cross section of a stratified sphere
calculated by stratified sphere example.py.
Figure 7.36 The three-dimensional monostatic radar cross section of a circular cone
calculated by right circular cone example.py.
294 Introduction to Radar Using Python and MATLAB
Figure 7.37 The three-dimensional monostatic radar cross section of a rounded nose cone
calculated by rounded nose cone example.py.
For this example, consider the rounded nose cone, as shown in Figure 7.12. Calculate
and display the three-dimensional monostatic radar cross section for a rounded nose cone
with a half cone angle of 20o , a nose radius of 1.4 meters, at a frequency of 1 GHz.
Solution: The solution to the above example is given in the Python code rounded nose
cone example.py and in the MATLAB code rounded nose cone example.m. Running the
Python example code displays a GUI allowing the user to enter the frequency, cone half
angle, and the nose radius. The code then calculates and displays the three-dimensional
monostatic radar cross section as a function of observation angle, as shown in Figure
7.37. The user is encouraged to vary the parameters of the cone to see how these affect
the radar cross section.
7.6.8 Frustum
In this next example, consider the frustum, as shown in Figure 7.13. Calculate and display
the three-dimensional monostatic radar cross section for a frustum with a base radius of
0.2 meters, a nose radius of 0.1 meters, a length of 0.8 meters, at a frequency of 1 GHz.
Radar Cross Section 295
Figure 7.38 The three-dimensional monostatic radar cross section of a frustrum calculated
by frustum example.py.
Solution: The solution to the above example is given in the Python code frustum example
.py and in the MATLAB code frustum example.m. Running the Python example code
displays a GUI allowing the user to enter the frequency, base radius, nose radius, and
length. The code then calculates and displays the three-dimensional monostatic radar
cross section as a function of observation angle, as shown in Figure 7.38. As seen in the
figure, this is a simple approximation and overestimates the scattering in the specular
region. The user is encouraged to vary the parameters of the frustum to see how these
affect the radar cross section.
In this section, the physical optics scattering for a few targets is covered; namely, the
rectangular plate, right circular cone, frustum, and double ogive. The code for this section
depends on the target surfaces being discretized with triangular facets. The scattering for
each facet is calculated and coherently added to the total scattering.
Solution: The solution to the examples in this section is given in the Python code
po example.py and in the MATLAB code po example.m. Running the Python example
code displays a GUI allowing the user to select the desired target and enter the frequency,
296 Introduction to Radar Using Python and MATLAB
Figure 7.39 The three-dimensional bistatic radar cross section of a rectangular plate
calculated by po example.py.
incident angles, and observation angles. The GUI allows the user to select either mono-
static or bistatic calculations. The GUI also displays the target facet model or wireframe
model with or without surface normals.
Begin with the rectangular plate, as given in the example of Section 7.6.4. The
solution using po example.py is shown in Figure 7.39. This result matches with the result
shown in Figure 7.34, which is expected since the solution given in Section 7.4.1.4 is
based on physical optics.
Next, the right circular cone, as given in the example of Section 7.6.6, is examined.
The solution using po example.py is shown in Figure 7.40. Comparing this result to
Figure 7.36 shows some differences, especially in the nose region. The intensity of the
specular and base regions matches reasonably well.
The next physical optics example is the frustum, as given in the example of Section
7.6.8. The solution using po example.py is shown in Figure 7.41. This result shows some
large differences from the result in 7.38. The nose and base scattering matches well,
but the specular region is overestimated in the approximation of (7.61). This also shows
(7.60) is a simple approximation of the radar cross section as there is little structure to
the scattering.
The final physical optics example is the double ogive, as defined by the Electro-
magnetic Code Consortium (EMCC). One function of the EMCC is the generation and
Radar Cross Section 297
Figure 7.40 The three-dimensional monostatic radar cross section of a circular cone
calculated by po example.py.
Figure 7.41 The three-dimensional monostatic radar cross section of a frustum calculated
by po example.py.
298 Introduction to Radar Using Python and MATLAB
Double Ogive
0.125
0.100
0.075
0.050
Z
0.025
0.000
0.025
0.050
0.125
0.1250.100 0.100
0.075
0.0750.050 0.050
0.025
Y0.0250.000 0.025 0.000 X
0.025
0.050 0.050
Figure 7.42 The three-dimensional monostatic radar cross section of a double ogive
calculated by po example.py.
management of electromagnetics code benchmark geometries and data along with asso-
ciated measurement efforts [67]. The geometry for the double ogive is displayed with
po example.py and is shown in Figure 7.42. For details of the geometry, the reader is
referred to [52, 67]. The monostatic radar cross section for the double ogive is given in
Figure 7.43.
As the final Python example, consider the scattering by a two-dimensional dielectric rect-
angular cylinder calculated by the finite difference time domain method. Calculate and
display the total electric field in the presence of a two-dimensional rectangular cylinder
of dimension 2 mm by 2 mm. The number of PML layers is 10, the incident angle is 90o ,
and the pulse width is 10 time steps and has an amplitude of 1. The relative permittivity
of the cylinder is 4.
Radar Cross Section 299
Figure 7.43 The three-dimensional monostatic radar cross section of a double ogive
calculated by po example.py.
Solution: The solution to the examples in this section is given in the Python code
fdtd example.py and in the MATLAB code fdtd example.m. Running the Python example
code displays a GUI allowing the user to select either TE or TM mode, the incident
angle, the number of time steps, the Gaussian pulse width and amplitude, and the number
of PML layers. The solution using fdtd example.py is shown in Figures 7.44, 7.45, 7.46,
and 7.47. In these figures, the wave can be seen propagating through the computational
domain. The interaction of the incident wave with the rectangular dielectric cylinder is
also demonstrated. Figure 7.44 shows the incident wave before it reaches the rectangular
dielectric cylinder. Figure 7.45 illustrates the wave initially interacting with the cylinder.
Figure 7.46 shows the fields as the incident wave has just passed the cylinder. Finally,
Figure 7.47 is after the wave has completely passed through the computational domain.
300 Introduction to Radar Using Python and MATLAB
Incident Wave
Rectangular Dielectric
Cylinder
Figure 7.44 The two-dimensional scattering from a rectangular dielectric cylinder after 50
time steps calculated by fdtd example.py.
Figure 7.45 The two-dimensional scattering from a rectangular dielectric cylinder after 80
time steps calculated by fdtd example.py.
Radar Cross Section 301
Figure 7.46 The two-dimensional scattering from a rectangular dielectric cylinder after
120 time steps calculated by fdtd example.py.
Figure 7.47 The two-dimensional scattering from a rectangular dielectric cylinder after
175 time steps calculated by fdtd example.py.
302 Introduction to Radar Using Python and MATLAB
PROBLEMS
7.1 For an incident electric field given by Ei = E0 e−jkρ cos φ ẑ (V/m) and a scattered
field given as
∞
X Jn (ka)
Es = −E0 j −n (2)
Hn(2) (kρ) ejnφ ẑ (V/m),
n=−∞ Hn (ka)
7.2 Describe how the radar cross section of a rectangular plate varies as a function of aspect
angle, frequency, and polarization.
7.3 Explain why the scattering matrix for monostatic radars is reciprocal for most targets
and give an example when this is not true.
7.4 Convert the scattering matrix below from linear polarization to circular polarization.
" # " #
SHH SHV 30.0 + j10.0 0.8 − j2.0
=
SV H SV V 0.8 − j2.0 23.0 + j17.0
7.5 Describe the difference between the forward-scattering alignment and back-scattering
alignment conventions for incident and scattered waves.
7.6 Explain the main scattering mechanisms for a rectangular plate and a sphere.
7.7 What is the major drawback of analytic techniques for radar cross-section prediction?
7.8 Using the expressions in Table 7.1, compare the radar cross section of a circular
reflector of radius 0.7 m and a corner reflector of dimension 0.2 × 0.8 m.
7.9 Compare the bistatic radar cross section of a two-dimensional strip of width 0.75m
with a rectangular plate of dimension 0.6 × 1.2 m at a frequency of 12 GHz with an
incident angle of 35o .
7.10 Calculate the bistatic radar cross section of a two-dimensional cylinder of radius 1.1
m at a frequency of 8 GHz. Compare the result to a cylinder of length 25 m with an
oblique incidence angle of 15o .
Radar Cross Section 303
7.11 For a half cone angle of 18o , base radius of 1.2 m, and frequency of 3 GHz, compare
the radar cross section of right circular cone with a rounded-nose cone with a nose
radius of 0.2 m.
7.12 Explain the difference between exact or low-frequency numerical methods and ap-
proximate or high frequency methods. Give examples of situations where it would be
advantageous to use an approximate method rather than an exact method.
7.13 Describe the difference between tapered chambers and compact ranges and give
examples of practical targets that would be suitable for measurement in each.
7.14 Calculate the power at the receiver in a compact range for a transmit power of 2.5W,
feed horn gain of 0 dB, and frequency of 1 GHz. The target radar cross section is
−3 dB, and the range from the feed horn to reflector is 10 m.
7.15 What are the major disadvantages of scale model radar cross section measurements?
7.16 Describe methods for reducing radar cross-section measurement errors in compact
ranges.
7.17 Describe methods for radar cross-section reduction and give practical examples of
each.
References
[1] M. Born and E. Wolf. Principles of Optics: Electromagnetic Theory of Propagation, Interference and
Diffraction of Light, 7th ed. Cambridge University Press, Cambridge, UK, 1999.
[3] R. E. Kleinman. The Rayleigh region. Proceedings of the IEEE, pages 848–856, August 1965.
[4] P. Beckman. Depolarization of electromagnetic waves backscattered from the lunar surface. Journal of
Geophysical Research, 73(2):649–655, January 1968.
[5] J. J. Mikulski. The scattering matrix, polarization, power and periodic bodies from the viewpoint of matrix
theory. Technical Report 38, Lincoln Laboratory-MIT, March 1960.
[6] G. Bao and J. Lai. Radar cross section reduction of a cavity in the ground plane. Global Science Preprint,
8(3), June 2015.
[7] H. Ling, S. Lee and R. Chou. High-frequency RCS of open cavities with rectangular and circular cross
sections. IEEE Transactions on Antennas and Propagation, 37:648–654, May 1989.
304 Introduction to Radar Using Python and MATLAB
[8] H. Ammari, G. Baoand and A. W. Wood. Analysis of the electromagnetic scattering from a cavity. Japan
Journal of Industrial Applied Mathematics, 19:301–310, 2002.
[9] G. T. Ruck, et al. Radar Cross Section Handbook. Plenum Press, New York, 1970.
[10] C. A. Balanis. Advanced Engineering Electromagnetics, 2nd ed. John Wiley and Sons, New York, 2012.
[11] M. Abramowitz and I. A. Stegun. Handbook of Mathematical Functions: with Formulas, Graphs, and
Mathematical Tables. U.S. National Bureau of Standards, Applied Mathematics Series, Washington, DC,
1964.
[12] E. Jones, et al. SciPy: Open source scientific tools for Python, 2001–. http://www.scipy.org/.
[13] G. Mie. Beitrage zur optik truber medien, speziell kolloidaler metallosungen. Annalen der Physik,
25(330):377–445, 1908.
[14] J. B. Keller. Geometrical theory of diffraction. Journal of the Optical Society of America, 52:116–130,
February 1962.
[15] M. E. Bechtel. Application of geometric diffraction theory to scattering from cones and disks. Proceedings
of the IEEE, pages 877–882, August 1965.
[16] B. R. Mahafza. Radar Systems Analysis and Design Using MATLAB, 3rd ed. CRC Press, Boca Raton,
FL, 2013.
[17] J. Song, C. C. Lu and W. C. Chew. Multilevel fast multipole algorithm for electromagnetic scattering by
large complex objects. IEEE Transactions on Antennas and Propagation, 45(10):1488–1493, 1997.
[18] K. Zhao, M. N. Vouvakis and J. F. Lee. The adaptive cross approximation algorithm for accelerated
method of moments computations of EMC problems. IEEE Transactions on Antennas and Propagation,
47(4):763–773, 2005.
[19] K. S. Kunz and R. J. Luebbers. The Finite Difference Time Domain Method for Electromagnetics. CRC
Press, Boca Raton, FL, 1993.
[21] A. Z. Elsherbeni and V. Demir. The Finite Difference Time Domain Method for Electromagnetics with
MATLAB, 2nd ed. SciTech Publishing, Edison, NJ, 2015.
[22] X. Chen, et al. An efficient implementation of parallel FDTD. 2007 IEEE International Symposium on
Electromagnetic Compatibility, 4:1–5, 2007.
[23] K. Yee. Numerical solution of initial boundary value problems involving Maxwell’s equations in isotropic
media. IEEE Transactions on Antennas and Propagation, 14(3):302–307, 1966.
[24] S. Benkler, N. Chavannes and N. Kuster. A new 3-D conformal PEC FDTD scheme with user defined
geometric precision and derived stability criterion. IEEE Transactions on Antennas and Propagation,
54(6):1843–1849, 2006.
[25] F. Zhen, Z. Chen and J. Zhang. Toward the development of a three-dimensional unconditionally
stable finite-difference time-domain method. IEEE Transactions on Microwave Theory and Techniques,
48(9):1550–1558, 2000.
Radar Cross Section 305
[26] F. Zhen and Z. Chen. Numerical dispersion analysis of the unconditionally stable 3-D ADI-FDTD method.
IEEE Transactions on Microwave Theory and Techniques, 49(5):1006–1009, 2001.
[27] I. Ahmed, et al. Development of the three-dimensional unconditionally stable LOD-FDTD method. IEEE
Transactions on Antennas and Propagation, 56(11):3596–3600, 2008.
[28] J. A. Roden and S. D. Gedney. Convolution PML (CPML): An efficient FDTD implementation of the
CFS-PML for arbitrary media. Microwave and Optical Technology Letters, 27(5):334–339, 2000.
[29] D. S. Katz, E. T. Thiele and A. Taflove. Validation and extension to three dimensions of the Berenger PML
absorbing boundary condition for FDTD meshes. IEEE Microwave and Guided Wave Letters, 4(8):268–
270, 1994.
[30] C. E. Reuter, et al. Ultrawideband absorbing boundary condition for termination of waveguiding structures
in FDTD simulations. IEEE Microwave and Guided Wave Letters, 4(10):344–346, 1994.
[31] J. P. Berenger. A perfectly matched layer for the absorption of electromagnetic waves. Journal of
Computational Physics, 114(2):185–200, 1994.
[32] A. Hrennikoff. Solution of problems of elasticity by the framework method. Journal of Applied
Mechanics, 8(4):169–175, 1941.
[33] R. Courant. Variational methods for the solution of problems of equilibrium and vibrations. Bulletin of
the American Mathematical Society, 49:1–23, 1943.
[34] NASA Langley Research Center. NASTRAN - NASA Structural Analysis. http://software.nasa.gov/
software/LAR-16804-GS.
[35] R. D. Cook. Concepts and Applications of Finite Element Analysis. Wiley, New York, 1981.
[36] S. S. Rao. The Finite Element Method in Engineering. Pergamon Press, Oxford, 1982.
[37] J. Jin. The Finite Element Method in Electromagnetics, 2nd ed. Wiley, New York, 2002.
[38] C. Geuzaine and J. F. Remacle. Gmsh: A three-dimensional finite element mesh generator with built-in
pre- and post-processing facilities. http://gmsh.info.
[41] L. A. Harrison, et al. Error reduction using Richardson extrapolation in the finite element solution of
partial differential equations using wavelet-like basis functions. USNC/URSI National Radio Science
Meeting 1998 Digest, page 202, 1998.
[42] L. A. Harrison, et al. The use of Richardson extrapolation in the finite element solution of partial
differential equations using wavelet-like basis functions. Proceedings of the 30th Southeastern Symposium
on System Theory, pages 98–101, 1998.
[43] L. A. Harrison, et al. The numerical solution of elliptic problems using compactly supported wavelets.
Proceedings of the 30th Southeastern Symposium on System Theory, pages 102–106, 1998.
[44] L. A. Harrison and R. K. Gordon. The use of wavelet-like basis functions in the finite element analysis
of heterogeneous one-dimensional regions. Proceedings of the IEEE Southeastcon 1996, pages 301–304,
1996.
306 Introduction to Radar Using Python and MATLAB
[45] L. A. Harrison and R. K. Gordon. Finite element analysis of boundary value problems using wavelet-like
basis functions. Proceedings of the 28th Southeastern Symposium on System Theory, pages 103–107,
1996.
[46] L. A. Harrison and R. K. Gordon. Investigation of the properties of wavelet-like basis functions in the
finite element analysis of elliptic problems. Proceedings of The Twelfth Annual Review of Progress in
Applied Computational Electromagnetics, pages 375–382, 1996.
[47] K. K. Mei and J. Van Bladel. Scattering by perfectly conducting rectangular cylinders. IEEE Transactions
on Antennas and Propagation, 11:185–192, March 1963.
[48] M. G. Andreasen. Scattering from parallel metallic cylinders with arbitrary cross section. IEEE
Transactions on Antennas and Propagation, 12:746–754, November 1964.
[49] F. K. Oshiro. Source distribution techniques for the solution of general electromagnetic scattering
problems. Proceedings of the First GISAT Symposium, Mitre Corporation, 1:83–107, 1965.
[50] R. F. Harrington. Field Computation by Moment Methods. Macmillan, New York, 1968.
[51] S. M. Rao, D. R. Wilton and A. W. Glisson. Electromagnetic scattering by surfaces of arbitrary shape.
IEEE Transactions on Antennas and Propagation, 30(3):409–418, 1982.
[52] W. C. Gibson. The Method of Moments in Electromagnetics, 2nd ed. CRC Press, Boca Raton, FL, 2015.
[53] J. D. Jackson. Classical Electrodynamics, 3rd ed. John Wiley and Sons, New York, 1998.
[54] W. Panofsky and M. Phillips. Classical Electricity and Magnetism, 2nd ed. Addison-Wesley, Reading,
MA, 1962.
[55] L. Greengard and V. Rohklin. A fast algorithm for particle simulations. Journal of Computational Physics,
73:325–348, 1987.
[57] W. L. Stutzman and G. A. Thiele. Antenna Theory and Design, 3rd ed. Wiley, New Jersey, 2013.
[58] R. G. Kouyoumjian and P. H. Pathak. A UTD of diffraction for an edge in a perfectly conducting surface.
Proceedings of the IEEE, 62(11):1448–1461, 1974.
[59] T. Eibert and V. Hansen. Calculation of unbounded field problems in free space by a 3D FEM/BEM-hybrid
approach. Journal of Electromagnetic Waves and Applications, 10(1):61–78, 1996.
[60] J. Guan, S. Yan and J. M. Jin. An accurate and efficient finite element-boundary integral method with
GPU acceleration for 3-D electromagnetic analysis. IEEE Transactions on Antennas and Propagation,
62(12):6325–6336, 2014.
[61] M. J. Coulombe, et al. A 585 GHz compact range for scale model RCS measurements. Antenna
Measurements and Techniques Association Proceedings, 1993.
[62] D. W. Hess. Introduction to RCS measurements. Antennas and Propagation Conference, pages 37–44,
2008.
[64] H. Singh and R. M. Jha. Active Radar Cross Section Reduction Theory and Applications. Cambridge
University Press, India, 2015.
[65] Aerobotix, Inc. Robotic Coating and Paint Application Systems. https://www.aerobotix.net.
[66] J. C. Toomay and P. J. Hannen. Radar Principles for the Non-Specialist, 3rd ed. SciTech Publishing,
Rayleigh, NC, 2004.
[67] U.S. Air Force Virtual Distributed Laboratory. Electromagnetic Code Consortium. https://www.vdl.
afrl.af.mil/emcc/.
Chapter 8
Pulse Compression
In order to detect closely spaced targets, a radar system must be capable of transmit-
ting large average power while simultaneously producing good range resolution. Pulse
compression techniques achieve this by transmitting waveforms with long pulsewidths,
which are then processed to produce effective pulsewidths much less than the transmit-
ted pulsewidths. This chapter begins with an overview of range resolution and simple
waveforms. Next, the stepped frequency waveform, which is an interpulse compression
technique, is studied. Then, the matched filter and stretch processor for intrapulse com-
pression are examined. The ambiguity function and its associated properties are pre-
sented. This is followed by the derivation of the ambiguity function for various wave-
forms, including pulse trains and phase coded waveforms. The chapter concludes with
several Python examples to reinforce the mechanism of pulse compression as well as the
ambiguity function.
The ability of a radar system to resolve targets in the range dimension is a key feature
of the system. As targets become more closely spaced, finer range resolution is required.
This is achieved by decreasing the effective pulsewidth of the waveforms used by the
radar. Consider the situation in Figure 8.1, where there are two targets, T1 and T2 , located
at ranges r1 and r2 , respectively. The difference in range is ∆r = r2 − r1 . The range to
the target is found from the round-trip time as
ct
r= (m), (8.1)
2
where c is the speed of light, and t is the two-way time delay from the radar to the target
and back to the radar. For the scenario in Figure 8.1, the difference in range is written as
309
310 Introduction to Radar Using Python and MATLAB
T1 T2
r1 r2
Radar Position
c (t2 − t1 ) c ∆t
∆r = = (m). (8.2)
2 2
The pulsewidth required to achieve this resolution is then, τ = ∆t. Therefore, to have
high range resolution requires a narrow pulsewidth. However, the consequence of a
narrow pulsewidth is low average power, which degrades radar performance. Ideally,
a system would simultaneously have large average power and high range resolution.
Pulse compression techniques produce an effective pulsewidth much less than the trans-
mitted pulsewidth by increasing the bandwidth of the waveform. This smaller effective
pulsewidth provides an increase in the range resolution. This improves the detection of
closely spaced targets as well as enhancing target detection in clutter environments. Vari-
ous techniques for increasing the bandwidth of the radar waveform are available and may
be classified into four groups. These groups are ultrawideband (UWB), super-resolution,
intrapulse compression, and interpulse compression. This chapter focuses on intrapulse
and interpulse techniques.
Ultrawideband techniques achieve range resolution by transmitting extremely nar-
row pulses. This requires sophisticated transmitting and receiving hardware that have
very large instantaneous bandwidths. Also, UWB systems transmit a low average power,
resulting in lower signal-to-noise ratio and probability of detection, as shown in Chapter
6. Super-resolution techniques make use of the covariance matrix of the received signal to
perform optimal estimation using an eigenstructure method [1]. Intrapulse compression
methods increase the instantaneous bandwidth of the waveform through frequency and/or
Pulse Compression 311
"# + 2∆"
∆"
"# + ∆"
PRI
...
"#
1 2 3
Pulse Number
... N
phase coding. The coded waveform is then passed through a matched filter to produce
the compressed signal with the effective pulsewidth. Interpulse compression techniques
vary the carrier frequency of successively transmitted pulses to synthetically increase the
instantaneous bandwidth. The effective bandwidth is achieved by coherently integrating
a number of pulses with differing center frequencies.
fi = f0 + (i − 1) ∆f (Hz), (8.3)
where f0 is the carrier frequency, and ∆f is the frequency step size between successive
pulses. The instantaneous bandwidth of each transmitted pulse is approximately 1/τ Hz.
However, the effective bandwidth is much larger, and is written as
Signal Strength
...
15
20
25
30
35
40
0 500 1000 1500 2000 2500 3000
Range (m)
Figure 8.4 Stepped frequency output for Listing 8.1.
code is given in Figure 8.4. As seen in the figure, the peak of the output occurs at r = 2
km, corresponding to the target location. The inverse Fourier transform acts as a matched
filter for stepped frequency waveforms. The phase shift due to radial velocity causes a
mismatch in the inverse Fourier transform, which lowers the peak scatterer level, reduces
the range resolution, and shifts the peak of the scatterer. This mismatch is often referred
to as dispersion, and the amount of dispersion is given as
vN T
D= . (8.7)
∆r
For practical applications, D should be kept below 3 [3]. The number of bins the peak of
the scatterer is shifted is given by
L = fd N T, (8.8)
where fd is the Doppler frequency. This may also be written as
314 Introduction to Radar Using Python and MATLAB
fc0 D
L= , (8.9)
Beffective
where
Beffective
fc0 = fc + (Hz). (8.10)
2
If the radial velocity of the target is accurately measured, the mismatch may be reduced
by multiplying the target returns by a correction factor, which is written as
4π
ci (t) = exp j (f0 + (i − 1)∆f ) (i − 1) v T . (8.11)
c
The major difficulty with applying this correction factor is the velocity must be known a
priori, or accurately measured in a continuous fashion.
ℎ(𝑡)
𝑛𝑖 (𝑡) 𝑛𝑜 (𝑡)
and the symbol (∗) represents linear convolution. Since the input and output noise signals
are random processes, statistical methods are employed. The output noise power is
assumed to be stationary. Specifically, its variance is the same regardless of the time
the measurement is taken. The average noise power at the output of the matched filter is
represented by
so (t0 )2
Psignal
SNR = = . (8.18)
Pnoise E |no (t)|2
For convenience, treatment of the matched filter continues in the frequency domain. Using
the Fourier transform results in
So (f ) = H(f ) Si (f ). (8.22)
Since the input and output noise are random processes, the Fourier transform of the
expected value is
and
2
No (f ) = H(f ) Ni (f ). (8.25)
The expression in (8.25) is a power spectral density, and the average noise power is found
by integrating over all frequencies as
ˆ∞ ˆ∞
H(f )2 Ni (f )df.
Pnoise = No (f )df = (8.26)
−∞ −∞
2 ˆ∞
2
−1
Psignal = F {S0 (f )}|t=t0 = Si (f )H(f ) ej2πf t0 df . (8.27)
−∞
Assuming ni (t) is white noise with power spectral density of kT0 F G gives
2
´∞
Si (f )H(f ) ej2πf t0 df
Psignal −∞
SNR = = ´
∞ . (8.29)
Pnoise H(f )2 df
kT0 F G
−∞
´b ´b
! !
Si (f )2 df
H(f )2 df
´b
Si (f )2 df
a a a
SNR ≤ ´∞ ≤ . (8.31)
H(f )2 df
kT0 F G
kT0 F G
−∞
The expression in (8.31) provides an upper bound for the signal-to-noise ratio for all
H(f ). The filter response required to achieve the maximum value in (8.31) is found from
the Cauchy-Schwarz inequality, and is written as
Therefore, h(t), is the conjugate of a scaled, time reversed, and time shifted version
of transmitted signal, s(t). This correspondence of the filter response to the transmitted
signal gives rise to the name matched filter. The matched filter may be implemented by
using the Fourier transform and inverse transform from the SciPy module fftpack. This
module includes various functions for computing discrete and fast Fourier transforms
along with a number of helper functions. Employing the frequency domain form of (8.22)
allows the output of the matched filter to be written as
n o
so (t) = F −1 F{h(t)} × F{si (t)} , (8.35)
where
si (t) = matched filter input signal,
h(t) = matched filter impulse response,
s0 (t) = matched filter output.
Pulse Compression 319
The expression in (8.35) is implemented in the code shown in Listing 8.2. The target is
located at a time delay of 0.2 seconds, and the output of this code is given in Figure 8.6.
As seen in the figure, the peak of the matched filter output occurs at t = 0.2 seconds,
corresponding to the target location.
An important aspect of pulse compression is the time-bandwidth product, given
by B τ , where B is the bandwidth in Hz, and τ is the pulsewidth in seconds. The time-
bandwidth product is a figure of merit representing the increase in the signal-to-noise ratio
at the output of the matched filter compared to the input. It is sometimes referred to as
compression gain or matched filter gain. Bandwidth limited waveforms, such as a Gaus-
sian pulse, have the lowest time-bandwidth products. The time-bandwidth product for
unmodulated pulses approaches 1 as B ≈ 1/τ for these waveforms. The time-bandwidth
product of binary phase coded waveforms then depends on the length of the code. For
example, Barker codes would be limited to a maximum time-bandwidth product of 13 [7].
320 Introduction to Radar Using Python and MATLAB
0.8
Relative Amplitude
0.6
0.4
0.2
0.0
1.00 0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
Time Delay (s)
Figure 8.6 Matched filter output for Listing 8.2.
Linear frequency modulated waveforms, often referred to as chirp waveforms, may have
extremely large time-bandwidth products of 100, 000 or more. Perfect matching to the
transmitted waveform can be difficult, which reduces the compression gain compared
to the theoretical value of B τ . Also, radar systems often have stringent requirements
on time sidelobes that may be achieved by using a modified version of the transmitted
waveform, resulting in a lower compression gain.
Mixer
𝑠𝑟 (𝑡) 𝑠𝑜 (𝑡) 𝑆𝑜 (𝑓)
𝐹(𝑠[𝑛])
LFM
Figure 8.7 Block diagram of a stretch processor.
The factor, A, is a constant related to the target’s radar cross section, antenna gain, path
loss, and other factors. The reference signal is written as
322 Introduction to Radar Using Python and MATLAB
𝑠𝑟𝑒𝑓 (𝑡)
Frequency
𝑓0
𝑠𝑟 (𝑡)
𝜏𝑝
𝜏𝑟𝑒𝑓
𝑡𝑟𝑒𝑓 𝑡0 Time
Figure 8.8 The return and reference signals for stretch processing.
β 2
sref (t) = exp j 2π f0 (t − tref ) + (t − tref ) , (8.38)
2
where tref is the reference time of the signal, which must closely match t0 . Figure 8.8
illustrates the relationship between the return signal, sr (t), and the reference signal,
sref (t). As shown in the Figure 8.8, τref is chosen such that sref (t) completely overlaps
sr (t) in time. In other words, the pulsewidth of the reference signal is greater than the
pulsewidth transmitted signal, τref > τp , for the expected values of t0 relative to tref .
These conditions result in a signal-to-noise ratio close to that of the matched filter [2, 9].
If sref (t) does not completely overlap sr (t) in time, there will be a loss in the resulting
signal-to-noise ratio as well as a degradation of the range resolution. This leads to the
following requirement on the pulsewidth of the reference signal,
h i
so (t) = A exp j 2πf0 (t0 − tref ) + j 2πβ(t0 − tref )t + j πβ(t2ref − t20 ) . (8.40)
The instantaneous frequency is the time derivative of the phase, which is written as
Pulse Compression 323
1 dφ(t)
fi = (Hz), (8.41)
2π dt
where φ(t) is the phase of the signal in (8.40), which is simply
𝑠𝑜 (𝑡) 𝑓2
𝐹{𝑠𝑜 𝑡 }
𝑓1
Time 𝑟1 𝑟2 Range
0.8
Relative Amplitude
0.6
0.4
0.2
0.0
40 20 0 20 40
Range (m)
Figure 8.10 Stretch processor output for Listing 8.3.
# Number of samples
number_of_samples = ceil(4 * bandwidth * range_window_length / c)
# Time sampling
t, dt = linspace(-0.5 * pulsewidth, 0.5 * pulsewidth,
number_of_samples, retstep=True)
# Fourier transform
so = fftshift(fft(so, 512))
# FFT frequencies
frequencies = fftshift(fftfreq(512, dt))
# Range window
range_window = 0.5 * frequencies * c * pulsewidth / bandwidth
1
∆f = (Hz). (8.49)
τp
The two point scatterers may be resolved if their associated ranges are such that the in-
stantaneous frequencies are greater than the frequency resolution of the stretch processor.
This may be expressed as
1
fi2 − fi1 = β(t2 − tref ) − β(t1 − tref ) ≥ (Hz). (8.50)
τp
This leads to the following time resolution
1
t2 − t1 ≥ (s), (8.51)
B
which gives a range resolution of
c
∆r = r2 − r1 = (m). (8.52)
2B
This is the same as the range resolution for the matched filter and the effective range
resolution for stepped frequency waveforms. While the stretch processor provides a
reduction in sampling requirements compared to the matched filter, it is limited to a
small range window relative to the pulsewidth, as shown in Figure 8.8, whereas the
matched filter tests for the presence of a target over the entire pulse repetition interval.
This is sometimes referred to as all-range processing. Clearly, stretch processing would
not be very effective for radar search functions as the range window would be of limited
extent. Stretch processing is sometimes used to update an established track, when more
accurate range measurements are desired for a precision track. However, the range of
bandwidths requiring stretch processing tends to be excessive for tracking purposes.
The two most common applications for stretch processing are target discrimination and
synthetic aperture radar. In each case, it is necessary to identify individual scatterers on a
target or in the scene, which requires waveforms of very wide bandwidth.
8.5 WINDOWING
No Windowing
Figure 8.12 shows the low-intensity target detected when a Hamming window is applied
to the data.
As shown in Section 8.3, matched filtering results in the maximum achievable signal-to-
noise ratio at the output of the receiver. However, there may be interference from targets
at different ranges and velocities than the target of interest. One method for representing
this interference is through the use of the ambiguity function. The ambiguity function
is the output of the matched filter when the signal is received with a time delay, τ , and
a Doppler shift, f , with respect to the nominal values expected by the matched filter.
The return from the target of interest is located at the origin of the ambiguity function
(τ = 0, f = 0), and the shape of the ambiguity function is determined by the properties of
the transmitted waveform and the matched filter. Studying the resulting shape reveals the
waveform’s range and Doppler resolution as well as the interference from other targets.
The interference from other targets results in ambiguities for the radar system. The
ambiguity function provides the radar designer valuable insight into which waveforms
would be best suited for various scenarios and applications. This makes the ambiguity
328 Introduction to Radar Using Python and MATLAB
Hamming Window
function a useful tool for both analyzing and designing radar waveforms. While there are
inconsistencies in the definition of the ambiguity function, the definition from [10] is used
to write the ambiguity function as the magnitude squared of the output of the matched
filter. This is expressed as
ˆ
∞ 2
2
s(t) s∗ (t − τ ) ej2πf t dt .
|χ(τ, f )| = (8.53)
−∞
The different definitions of the ambiguity function result in essentially the same physical
meaning. However, this makes it difficult to be confident that specific properties hold for
different definitions. For the definition given in (8.53), there are several useful properties
for examining radar waveforms [11, 12]:
ˆ∞ ˆ∞
2
|χ(τ, f )| dτ df = E 2 . (8.54)
−∞ −∞
2 2
4. The ambiguity function is symmetric, |χ(τ, f )| = |χ(−τ, −f )| .
5. The time shift property states if v(t) = s(t − δt), then
1
χv (τ, f ) = χs (aτ, f /a). (8.56)
|a|
χv (τ, f )2 = χs (τ, f + βτ )2 .
(8.58)
As a first example, consider the ambiguity function of a single unmodulated pulse. The
complex envelope of this waveform is expressed as
t
s(t) = rect , (8.59)
τp
where τp is the pulsewidth, and the unit rectangular function is given by
(
1 for 0 ≤ t ≤ 1,
rect[t] = (8.60)
0 otherwise.
Using (8.59) and (8.53) allows the ambiguity function to be written as
ˆ∞ 2
2 t t − τ
ej2πf t dt .
χ(τ, f ) = rect rect
(8.61)
τp τp
−∞
330 Introduction to Radar Using Python and MATLAB
0.8
Relative Amplitude
0.6
0.4
0.2
0.0
1.00 0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
Time (s)
Figure 8.13 Zero-Doppler cut through the unmodulated single-pulse ambiguity function.
For τ > 0, the overlap of the unit rectangular functions changes the limits of integration
to (τ, τp ). In the case τ < 0, the limits become (0, τp + τ ). Carrying out the integration
for both cases and combining the results gives
2
χ(τ, f )2 = (τp − |τ |)2 sinc [f (τp − |τ |)]
for |τ | ≤ τp . (8.62)
Figure 8.13 shows the zero-Doppler cut through the ambiguity function. This cut corre-
sponds to f = 0, and is expressed as
0.8
Relative Amplitude
0.6
0.4
0.2
0.0
2.0 1.5 1.0 0.5 0.0 0.5 1.0 1.5 2.0
Doppler (Hz)
Figure 8.14 Zero-time delay cut through the unmodulated single-pulse ambiguity function.
The ambiguity function along the Doppler axis extends (−∞ , ∞), with the first null
occurring at f = ±1/τp Hz. This indicates targets separated in Doppler by 1/τp Hz can
be detected without any ambiguity. The two-dimensional contour plot for the ambiguity
function of the unmodulated single pulse is given in Figure 8.15. This figure demonstrates
the range and Doppler resolutions are determined by the pulsewidth, τp .
Next, consider the ambiguity function of a single LFM pulse. The complex envelope of
this waveform is expressed as
t 2
s(t) = rect ejπβt . (8.65)
τp
As before, τp is the pulsewidth. Using (8.65) and (8.53), the ambiguity function is written
as
ˆ∞ 2
2
χ(τ, f ) = t t − τ jπβt 2
−jπβ(t−τ )2
j2πf t
rect rect e e e dt . (8.66)
τp τp
−∞
332 Introduction to Radar Using Python and MATLAB
2.0
Unmodulated Pulse Ambiguity Function
1.5
1.0
0.5
Doppler (Hz)
0.0
0.5
1.0
1.5
2.0
1.00 0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
Time (s)
Figure 8.15 Two-dimensional contour plot of the unmodulated single-pulse ambiguity
function.
As in the unmodulated single pulse case, the limits of integration due to the unit
rectangular functions are (τ, τp ) for τ > 0, and (0, τp + τ ) for τ < 0. Performing both
integrations and combining the results leads to
2
χ(τ, f )2 = (τp − |τ |) sinc τp (f + βτ )(τp − |τ |)
for 0 ≤ |τ | ≤ τp . (8.67)
Figure 8.16 shows the zero-Doppler cut through the ambiguity function. The ambiguity
function along the time axis is a sinc function with the first null located at τ = ±1/B
seconds. Therefore, targets will be unambiguous in time if they are separated by 1/B
seconds. This shows the range resolution for a single LFM pulse is c/2B meters.
Similarly, taking a cut along the zero-time axis allows for the study of the Doppler
resolution and ambiguity. Figure 8.17 shows the zero-time cut through the ambiguity
function. The ambiguity function along the Doppler axis extends (−∞, ∞), with the first
null occurring at f = ±1/τp Hz. This indicates targets separated in Doppler by 1/τp
Hz can be detected without any ambiguity. The two-dimensional contour plot for the
ambiguity function of the single LFM pulse is given in Figure 8.18. This figure illustrates
Pulse Compression 333
0.8
Relative Amplitude
0.6
0.4
0.2
0.0
1.00 0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
Time (s)
Figure 8.16 Zero-Doppler cut through the single LFM pulse ambiguity function.
the Doppler resolution is determined by the pulsewidth just as it was for the unmodulated
pulse. The range resolution for the LFM pulse is determined by the bandwidth rather than
the pulsewidth. The effective pulsewidth is 1/B seconds, and the ambiguity function is
narrower than the unmodulated pulse by τp B, which is the time-bandwidth product.
The previous sections examined the ambiguity function for simple waveforms. As wave-
forms become more complicated, the integral in (8.53) becomes increasingly difficult to
evaluate analytically and to implement in code. Therefore, a straightforward numerical
approach for calculating the ambiguity function of generic waveforms is presented. The
approach is based on the frequency domain representation of the ambiguity function,
which is written as
ˆ
∞ 2
2 ∗ −j2πf t
|χ(τ, fd )| =
S(f ) S (f − fd ) e df . (8.68)
−∞
334 Introduction to Radar Using Python and MATLAB
0.8
Relative Amplitude
0.6
0.4
0.2
0.0
2.0 1.5 1.0 0.5 0.0 0.5 1.0 1.5 2.0
Doppler (Hz)
Figure 8.17 Zero-time delay cut through the single LFM pulse ambiguity function.
The following steps are used to numerically evaluate the ambiguity function:
1. Create a sampled version of s(t). The number of samples must meet the Shannon
requirements [13], N > 2F T , where F is the highest frequency in the signal and T is
the time duration of the signal.
2. Compute S(f ) by taking the Fourier transform of s(t). Performing the Fourier
transform with a zero-padded version of s(t) results in more detailed range cuts.
SciPy’s fftpack has efficient functions for radix {2, 3, 4, 5}, and the helper function,
next fast len(N), returns the next composite of the prime factors 2, 3, and 5, which
is greater than or equal to N . These are also known as 5-smooth numbers, regular
numbers, or Hamming numbers.
3. Choose the Doppler mismatch frequency, fd , and create a sampled version of
s(t) exp(j2πfd t). The sampling requirements are the same as above.
2.0
LFM Pulse Ambiguity Function
1.5
1.0
0.5
Doppler (Hz)
0.0
0.5
1.0
1.5
2.0
1.00 0.75 0.50 0.25 0.00 0.25 0.50 0.75 1.00
Time (s)
Figure 8.18 Two-dimensional contour plot of the single LFM pulse ambiguity function.
6. Steps 3-5 are repeated for various Doppler frequencies, fd , and the results stored in a
two-dimensional array.
Phase-coded waveforms are waveforms in which the phase is changed in discrete steps
rather than continuously, as in the LFM case. A phase-coded waveform can be considered
as a single pulse which is divided into subpulses, as illustrated in Figure 8.19. The
subpulses are often referred to as chips. Phase-coded waveforms may be expressed as
336 Introduction to Radar Using Python and MATLAB
𝜏𝑝 = 𝑁 𝜏𝑛
Amplitude
𝜙1 𝜙2 𝜙3 ... 𝜙𝑛 ... 𝜙𝑁
Time
𝜏𝑛
N −1
X t − n τn
s(t) = ejφn rect , (8.70)
n=0
τn
where,
N = total number of chips,
φn = phase of each chip (rad),
τn = width of each chip (s).
Binary phase coding is the case where φn takes on one of two values, 0 or π. One
common set of binary phase codes for radar applications is Barker codes, which have
several unique properties. The time sidelobe level of the normalized ambiguity function
is 1/N , where N is the length of the code. The ambiguity function has a length of 2N τn ,
the main lobe has a width of 2τn , and there are (N − 1)/2 sidelobes on either side of the
main lobe. There are only seven known Barker codes, and these are given in Table 8.1.
While these are the only known Barker codes, much research has been performed to find
longer binary phase codes with low time sidelobe levels. Although the time sidelobe
levels are not 1/N as with the Barker codes, some codes have been found to have
quite small sidelobe levels. The reader is referred to several excellent sources on these
waveforms for further reading [14–17]. A Barker code of length 4 is illustrated in Figure
8.20. Another approach to obtain longer codes is to combine or embed one code within
another. For example, a Barker code of length 5 may be used with a Barker code of length
3 to give
BM N = [ 0 0 0 π 0 , 0 0 0 π 0 , π π π 0 π ]. (8.71)
Pulse Compression 337
Amplitude
𝜙1 = 0 𝜙2 = 0 𝜙3 = 𝜋 𝜙4 = 0
Time
Amplitude
Time
Figure 8.20 Barker phase-coded waveform of length 4.
The compression ratio of the combined Barker code is M N . However, the sidelobe level
of the combined code is not 1/M N . When using combined Barker codes, a number of
sidelobes may be reduced to zero if the matched filter is followed by a linear transversal
filter [10].
Table 8.1
Barker Codes
Length Phase Shift Sidelobe Level (dB)
2 [0 π ] or [ 0 0 ] −6.02
3 [0 0 π] −9.54
4 [0 0 π 0 ] or [ 0 0 0 π ] −12.04
5 [0 0 0 π 0] −13.98
7 [0 0 0 π π 0 π] −16.90
11 [0 0 0 π π π 0 π π 0 π] −20.83
13 [0 0 0 0 0 π π 0 0 π 0 π 0] −22.28
338 Introduction to Radar Using Python and MATLAB
Unlike binary phase coding, Frank codes are polyphase codes representing a quadratic
phase shift in a discrete manner [18]. To generate a Frank code, a single pulse is divided
into N groups. Next, each group is divided into N subpulses. Therefore, the length of
Frank codes are perfect squares, L = N 2 . Frank codes may be represented as a matrix of
the form
0 0 0 ... 0
0 1 2 ... N −1
2π
0 2 4 ...
2(N − 1)
FN = (rad), (8.72)
N ..
.. .. .. ..
. . . . .
0 N −1 2(N − 1) ... (N − 1)2
where each row is the phase shift associated with the subpulses in that group. Frank codes
may also be expressed more compactly as
2π
FN = (m − 1)(n − 1) for m, n = 1 . . . N (rad). (8.73)
N
For example, the Frank code for N = 3 is
2π 2π 4π 4π 2π
F3 = [0 0 0 0 1 2 0 2 4]= 0 0 0 0 0 . (8.74)
3 3 3 3 3
For phase shifts larger than 2π, the phase wraps and the modulo with 2π is used. The
phase shift associated with each subpulse for Frank code F3 is illustrated in Figure 8.21.
As illustrated in Section 8.8.10, the ambiguity function of Frank code waveforms is
similar to that of LFM waveforms. This is expected as the Frank code is a discrete version
of a quadratic phase shift. For very long Frank codes, the phase shift between subpulses
becomes small. This can be problematic as phase instability of the system degrades the
phase shift associated with each subpulse and reduces the performance of the waveform.
Other discrete polyphase waveforms have been developed to approximate quadratic phase
shifts, and the reader is referred to several references on this subject [19–21].
4𝜋 4𝜋
3 3
Phase (rad)
2𝜋 2𝜋
3 3
0 0 0 0 0
1 2 3 4 5 6 7 8 9 Chip
Figure 8.21 Phase shift of each subpulse for Frank code F3 .
Storage Buffer
Feedback Modulo 2
Addition
statistical randomness. However, PRN codes have a deterministic sequence that repeats
after its period [22, 23]. A type of PRN sequence commonly used in radar applications
is the maximum length sequence. These are sequences generated using maximal linear
feedback shift registers, as shown in Figure 8.22. The generation of a maximum length
sequence consists of the following steps:
Table 8.2
Feedback Taps for Generating Maximum Length Sequences
2. Perform modulo 2 addition and place the result in the storage buffer.
3. Shift the contents of the register one bit to the right.
These sequences are periodic and reproduce every binary sequence that can be repre-
sented by the shift registers. For a register of length N , the sequence is of length 2N − 1.
The feedback connections shown in Figure 8.22 determine whether or not the sequence
will be maximum length. Only certain feedback configurations lead to a maximum length
sequence, as given in Table 8.2. Table 8.2 is not a comprehensive list of feedback con-
nections and more combinations may exist for a given register. However, the number of
different feedback combinations becomes very large as the number of bits in the register
increases. A more thorough list is given in [24].
Maximum length shift registers are often described by their characteristic polyno-
mial. For example, if feedback taps i, j, and k are used, then the characteristic polynomial
is written as
xi + xj + xk + 1. (8.75)
The characteristic polynomial of a linear feedback shift register generating a maximum
length sequence is a primitive polynomial. If the characteristic polynomial is known, then
the associated sequence can easily be calculated. As in the shift register, the additions in
(8.75) are modulo 2. The determination of the characteristic polynomial continues to
be a research area for radar systems, digital communication systems, optical dielectric
multilayer reflector design, and in the design of magnetic resonance imaging experiments
[25]. Maximum length sequences have several interesting properties [22]. The balance
property deals with the number of ones and zeros in a given sequence. Specifically, there
Pulse Compression 341
are 2N −1 ones and 2N −1 −1 zeros in a maximum length sequence. The number of zeros is
one less than the number of ones since the state containing all zeros cannot occur. The run
property is concerned with the number of consecutive ones or zeros in a given sequence,
and states that 1/2 of the runs are of length one, 1/4 of the runs are of length two, 1/8 of
the runs are of length three, and so on. The correlation property shows that the circular
autocorrelation of a maximum length sequence is the Kronecker delta function [26], and
may be written as
XN N if n = 0,
R(n) = s[m] s∗ [m + n]N = (8.76)
−1 if 0 < n < N.
m=1
8.8 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter08 and the matching
MATLAB examples are in the directory mlradar\Chapter08. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
Solution: The solution to the above example is given in the Python code stepped
frequency example.py and in the MATLAB code stepped frequency example.m. Run-
ning the Python example code displays a GUI allowing the user to enter the waveform
parameters and the target parameters. The GUI also allows the user to select a windowing
function (Hanning, Hamming, Kaiser, or Blackman-Harris). The code then calculates and
displays the range profile for the scenario, as illustrated in Figure 8.23. The figure shows
the peaks in the range profile corresponding to the target locations, the range resolution,
342 Introduction to Radar Using Python and MATLAB
Figure 8.23 The range profile using a stepped frequency waveform calculated by
stepped frequency example.py.
and the sidelobe levels. The user is encouraged to change both the waveform and target
parameters to visualize how these parameters affect the range profile.
Solution: The solution to the above example is given in the Python code matched filter
example.py and in the MATLAB code matched filter example.m. Running the Python
example code displays a GUI allowing the user to enter the waveform parameters and
the target parameters. The GUI also allows the user to select a windowing function. The
code then calculates and displays the range profile for the scenario, as illustrated in Figure
8.24. The figure shows the peaks in the range profile corresponding to the target locations,
the range resolution, and the sidelobe levels. The user is encouraged to change both the
waveform and target parameters to visualize how these parameters affect the range profile.
Pulse Compression 343
While the matched filter may be used for narrow and medium bandwidth waveforms, the
stretch processor is required for very large bandwidths due to sampling requirements.
Consider a radar system transmitting an LFM waveform with a pulsewidth of 1 ms and
a bandwidth of 1 GHz. Calculate and plot the output of the stretch processor with a pro-
cessing window of 50m when there are two targets in the scene. The targets are located
at relative ranges of 5 and 15m and their associated radar cross section values are 20 and
10 m2 .
Solution: The solution to the above example is given in the Python code stretch
processor example.py and in the MATLAB code stretch processor example.m. Running
the Python example code displays a GUI allowing the user to enter the waveform pa-
rameters and the target parameters. The GUI also allows the user to select a windowing
function. The code then calculates and displays the range profile for the scenario, as illus-
trated in Figure 8.25. The figure shows the peaks in the range profile corresponding to the
target locations, the range resolution, and the sidelobe levels. The user is encouraged to
change both the waveform and target parameters to visualize how these parameters affect
the range profile.
344 Introduction to Radar Using Python and MATLAB
Solution: The solution to the above example is given in the Python code single pulse am-
biguity example.py and in the MATLAB code single pulse ambiguity example.m. Run-
ning the Python example code displays a GUI allowing the user to enter the pulsewidth
and select a plot type. The 2D contour, zero-Doppler, and zero-time delay plots of the
ambiguity function are shown in Figures 8.26, 8.27, and 8.28. Note that the ambiguity
function, and therefore the range and Doppler resolution for a single unmodulated pulse
is controlled only by the pulsewidth, as discussed in Section 8.6.1.
The next ambiguity function example is of a single LFM pulse. Calculate and display the
ambiguity function for single LFM pulse with a pulsewidth of 1 ms and a bandwidth of
Pulse Compression 345
Figure 8.26 The 2D contour of the single pulse ambiguity function calculated by
single pulse ambiguity example.py.
Figure 8.27 The zero-Doppler cut of the single pulse ambiguity function calculated by
single pulse ambiguity example.py.
346 Introduction to Radar Using Python and MATLAB
Figure 8.28 The zero-time delay cut of the single pulse ambiguity function calculated by
single pulse ambiguity example.py.
2 kHz.
Solution: The solution to the above example is given in the Python code lfm pulse am-
biguity example.py and in the MATLAB code lfm pulse ambiguity example.m. Running
the Python example code displays a GUI allowing the user to enter the pulsewidth and
bandwidth of the LFM, and to select a plot type. The 2D contour, zero-Doppler, and zero-
time delay plots of the ambiguity function are shown in Figures 8.29, 8.30, and 8.31. In
this case, the ambiguity function is controlled by both the pulsewidth and the bandwidth,
as illustrated in Section 8.6.2
Now consider the ambiguity function of a train of unmodulated coherent pulses. Calculate
and display the ambiguity function for a train of 8 coherent pulses transmitted with a pulse
repetition interval of 0.5s, each with a pulsewidth of 0.1s.
Solution: The solution to the above example is given in the Python code pulse train
ambiguity example.py and in the MATLAB code pulse train ambiguity example.m. Run-
ning the Python example code displays a GUI allowing the user to enter the number of
pulses, the pulsewidth, the pulse repetition frequency, and to select a plot type. The 2D
Pulse Compression 347
Figure 8.30 The zero-Doppler cut of the LFM ambiguity function calculated by
lfm pulse ambiguity example.py.
348 Introduction to Radar Using Python and MATLAB
Figure 8.31 The zero-time delay cut of the LFM ambiguity function calculated by
lfm pulse ambiguity example.py.
contour, zero-Doppler, and zero-time delay plots of the ambiguity function are shown in
Figures 8.32, 8.33, and 8.34. The range and Doppler resolutions are controlled by the
pulsewidth as in the single pulse case. However, there are now several ambiguities in
range and Doppler. Note that there are N –1 sidelobes on either side of the main lobe in
the range dimension, and each sidelobe is separated by one PRI. The Doppler sidelobes
are separated by 1/τ , where τ is the pulsewidth.
This example will consider a train of LFM pulses. Calculate and display the ambiguity
function for a train of 6 LFM pulses transmitted with a pulse repetition interval of 1s,
each with a pulsewidth of 0.4s and a bandwidth of 10 Hz.
Solution: The solution to the above example is given in the Python code lfm train am-
biguity example.py and in the MATLAB code lfm train ambiguity example.m. Running
the Python example code displays a GUI allowing the user to enter the number of pulses,
the pulsewidth, the bandwidth, the pulse repetition frequency, and to select a plot type.
The 2D contour, zero-Doppler and zero-time delay plots of the ambiguity function are
shown in Figures 8.35, 8.36, and 8.37. The range and Doppler resolutions are controlled
by the pulsewidth and bandwidth as in the single LFM pulse case. However, there are
Pulse Compression 349
Figure 8.32 The 2D contour of the coherent pulse train ambiguity function calculated by
pulse train ambiguity example.py.
Figure 8.33 The zero-Doppler cut of the coherent pulse train ambiguity function
calculated by pulse train ambiguity example.py.
350 Introduction to Radar Using Python and MATLAB
Figure 8.34 The zero-time delay cut of the coherent pulse train ambiguity function
calculated by pulse train ambiguity example.py.
now several ambiguities in range and Doppler. In comparison with the coherent pulse
train case, there is also a difference in the ambiguity pattern due to the slope of the LFM.
The next few examples are focused on phase-coded waveforms, beginning with Barker-
coded waveforms. Calculate and display the ambiguity function for a Barker-coded wave-
form of length 13 and a chip width of 0.1s.
Solution: The solution to the above example is given in the Python code barker ambiguity
example.py and in the MATLAB code barker ambiguity example.m. Running the Python
example code displays a GUI allowing the user to enter the chip width, choose a Barker
code length, and to select a plot type. The 2D contour, zero-Doppler, and zero-time delay
plots of the ambiguity function are shown in Figures 8.38, 8.39, and 8.40. The user is
encouraged to select other Barker code lengths in the GUI to further illustrate the sidelobe
structure and resolution discussed in Section 8.7.1.
Pulse Compression 351
Figure 8.35 The 2D contour of the LFM pulse train ambiguity function calculated by
lfm train ambiguity example.py.
Figure 8.36 The zero-Doppler cut of the LFM pulse train ambiguity function calculated by
lfm train ambiguity example.py.
352 Introduction to Radar Using Python and MATLAB
Figure 8.37 The zero-time delay cut of the LFM pulse train ambiguity function calculated
by lfm train ambiguity example.py.
Figure 8.39 The zero-Doppler cut of the B13 ambiguity function calculated by
barker ambiguity example.py.
Figure 8.40 The zero-time delay cut of the B13 ambiguity function calculated by
barker ambiguity example.py.
354 Introduction to Radar Using Python and MATLAB
The next ambiguity function example is for PRN-coded waveforms. Calculate and display
the ambiguity function for a PRN-coded waveform with a chip width of 0.1s. The PRN
code is generated with a register of length 4, which results in a sequence of length 15.
Solution: The solution to the above example is given in the Python code PRN ambiguity
example.py and in the MATLAB code PRN ambiguity example.m. Running the Python
example code displays a GUI allowing the user to enter the chip width, choose a register
length, and to select a plot type. The 2D contour, zero-Doppler, and zero-time delay plots
of the ambiguity function are shown in Figures 8.41, 8.42, and 8.43. Note the seemingly
random pattern in the sidelobe structure. While the initial state of the linear feedback
shift register has an effect on the sidelobe structure, there is no systematic method for
determining the best initial state. The user is encouraged to select other register lengths
in the GUI to further illustrate the sidelobe structure and resolution discussed in Section
8.7.3.
Pulse Compression 355
Figure 8.43 The zero-time delay cut of a PRN15 ambiguity function calculated by
PRN ambiguity example.py.
356 Introduction to Radar Using Python and MATLAB
The Barker code and PRN code examples are both binary phase-coded waveforms. As a
last example, consider the ambiguity function of a polyphase-coded waveform, specifi-
cally the Frank codes. Calculate and display the ambiguity function for an N -phase Frank
code waveform with a chip width of 0.1s and N = 3, which results in a code length of
L = 9.
Solution: The solution to the above example is given in the Python code frank ambiguity
example.py and in the MATLAB code frank ambiguity example.m. Running the Python
example code displays a GUI allowing the user to enter the chip width, choose a register
length, and to select a plot type. The 2D contour, zero-Doppler, and zero-time delay
plots of the ambiguity function are shown in Figures 8.44, 8.45, and 8.46. The ambiguity
function is very similar to the LFM ambiguity function as discussed in Section 8.7.2. The
user is encouraged to choose Frank codes of varying lengths to compare the LFM case.
Pulse Compression 357
Figure 8.46 The zero-time delay cut of the F9 ambiguity function calculated by
frank ambiguity example.py.
358 Introduction to Radar Using Python and MATLAB
PROBLEMS
8.1 Calculate the effective bandwidth and range resolution of a stepped frequency wave-
form consisting of 64 steps of 30 kHz each.
8.2 For the stepped frequency waveform given in Problem 8.1, find the dispersion for a
target traveling at 50 m/s. Assume the pulse repetition interval is 0.1s.
8.3 Find the number of bins that the peak of the target scattering is shifted for the waveform
and target parameters given in Problem 8.2.
8.4 Explain why the matched filter is the optimal linear filter for maximizing the signal-to-
noise ratio in the presence of additive stochastic noise.
8.5 What is the increase in the signal-to-noise ratio at the output of the matched filter
compared to the input for a waveform with a pulsewidth of 1 ms and bandwidth of 500
MHz?
8.6 Describe the major advantages of stretch processing and give practical examples of
when stretch processing should be employed.
8.7 For a linear frequency modulated waveform with a bandwidth of 500 MHz and a
pulsewidth of 0.5 ms, find the instantaneous frequency for stretch processing when
the target is at a range of 100 km and the reference signal time delay is 0.6 ms.
8.9 Prove the eight properties of the ambiguity function given in Section 8.6.
8.10 Describe the difference in the ambiguity function for an unmodulated pulse and a linear
frequency modulated pulse.
8.11 For a Barker phase-coded waveform of N = 11, what is the length of the ambiguity
function, the number of sidelobes, the sidelobe level, and the main lobe width?
8.12 Explain the difference in the ambiguity function between a Frank phase-coded wave-
form and a linear frequency modulated waveform.
Pulse Compression 359
8.13 Give the phase of each chip of a Barker phase-coded waveform consisting of a Barker
code of length seven embedded in a Barker code of length four.
8.14 Give the phase of each chip for a Frank phase-coded waveform for N = 4.
8.15 What is the sequence length of a maximal length sequence generated with a shift
register of length N = 10?
8.16 For the maximal length sequence given in Problem 8.15, how many ones and zeros,
and how many runs of length four are in the sequence?
References
[1] S. D. Blunt, K. Gerlach and T. Higgins. Aspects of radar range super-resolution. 2007 IEEE Radar
Conference, pages 683–687, April 2007.
[3] A. Paulose. High radar range resolution with the step frequency waveform. Master’s thesis, Naval Post
Graduate School, Monterey, CA, June 1994.
[4] D. O. North. An analysis of the factors which determine signal/noise discrimination in pulsed carrier
systems. Technical Report PPR-6C, RCA Laboratories, Princeton, NJ, 1943.
[5] P. M. Vasic and D. S. Mitrinovic. Analytic Inequalities. Springer-Verlag, New York, 1970.
[6] W. Kaplan. Advanced Calculus, 4th ed. Addison-Wesley, Reading, MA, 1992.
[7] G. W. Stimson. Stimson’s Introduction to Airborne Radar, 3rd ed. SciTech Publishing, Stevenage, UK,
2014.
[8] W. J. Caputi, Jr. Stretch: A time-transformation technique. IEEE Transactions on Aerospace and
Electronic Systems, 7(2):269–278, March 1971.
[9] M. C. Budge and S. R. German. Basic Radar Analysis. Artech House, Norwood, MA, 2015.
[10] B. R. Mahafza. Radar Systems Analysis and Design Using MATLAB, 3rd ed. CRC Press, Boca Raton,
FL, 2013.
[11] J. Mulcahy-Stanislawczyk. Properties of ambiguity functions. Master’s thesis, Purdue University, West
Lafayette, IN, May 2014.
[12] P. M. Woodward. Probability and Information Theory with Applications to Radar. Pergamon Press,
London, 1953.
[13] C. E. Shannon. A mathematical theory of communication. The Bell System Technical Journal, 27(3):379–
423, July 1948.
360 Introduction to Radar Using Python and MATLAB
[14] M. N. Cohen, M. R. Fox and J. M. Baden. Minimum peak sidelobe pulse compression codes. Proceedings
of the 1990 IEEE International Radar Conference, pages 633–638, May 1990.
[15] J. Linder. Binary sequences up to length 40 with best possible autocorrelation function. Proceedings of
the IEEE Electronic Letters, 11(21):507, October 1975.
[16] G. Coxson and J. Russo. Efficient exhaustive search for optimal peak sidelobe binary codes. IEEE
Transactions on Aerospace and Electronic Systems, 41(1):302–308, January 2005.
[17] A. N. Leukhin and E. N. Potekhin. Optimal peak sidelobe level sequences up to length 74. 2013 European
Radar Conference, pages 495–498, October 2013.
[18] R. L. Frank. Polyphase complementary codes. IEEE Transactions on Information Theory, 26(6):641–647,
November 1980.
[19] S. A. Zadoff. Phase coded communication system, July 1963. United States Patent No. 3,099,796.
[20] D. C. Chu. Polyphase codes with good periodic correlation properties. IEEE Transactions on Information
Theory, 18(4):531–532, July 1972.
[21] M. Antweiler and L. Bomer. Merit factor of Chu and Frank sequences. Electronic Letters, 26(25):2068–
2070, December 1990.
[23] S. W. Golomb and G. Gong. Signal Design for Good Correlation: For Wireless Communication,
Cryptography, and Radar. Cambridge University Press, Cambridge, UK, 2005.
[26] M. Abramowitz and I. A. Stegun. Handbook of Mathematical Functions: with Formulas, Graphs, and
Mathematical Tables. U.S. National Bureau of Standards, Applied Mathematics Series, Washington, DC,
1964.
[27] D. J. Rabideau and P. Parker. Ubiquitous mimo multifunction digital array radar. The Thirty-Seventh
Asilomar Conference on Signals, Systems and Computers, November 2013.
[28] M. Inggs, et al. Multistatic radar: System requirements and experimental validation. 2014 International
Radar Conference, October 2014.
Chapter 9
Target Tracking
There are many applications for tracking with a radar system, including target location,
autonomous navigation, weather prediction, air traffic control, and military applications.
The chapter begins with simple alpha-beta and alpha-beta-gamma tracking filters. The
Kalman filter is then introduced in one dimension and later extended to the multivariate
formulation. Next, adaptive filtering techniques for maneuvering targets are presented.
Multiple target tracking techniques are then studied. These include global nearest neigh-
bor, joint probabilistic data association, multiple hypothesis tracking, and random finite
sets. Finally, a method for generating radar pseudomeasurements for input to tracking
algorithms is given. The chapter concludes with several Python examples to demonstrate
the various techniques associated with target tracking.
One of the main purposes of the tracking filter is to provide an accurate and precise
estimation of the position, velocity, and acceleration of a target in the presence of
uncertainty. As illustrated in previous chapters, the measurement uncertainties depend on
many factors such as thermal noise, atmospheric effects, quantization, and interpolation.
There are also uncertainties in the model representing the motion of the target. A radar
system transmits energy in the direction of the target at a given pulse repetition interval.
Based on the return signal, the radar estimates the target’s current position, velocity, and
acceleration. Also, the radar predicts the target state for the next update. The target’s
predicted position is calculated using Newton’s equations of motion as [1]
1
x = x0 + v0 ∆t + a∆t2 (m), (9.1)
2
where
361
362 Introduction to Radar Using Python and MATLAB
1
x = x0 + vx0 ∆t + ax ∆t2 (m), (9.2)
2
1
y = y0 + vy0 ∆t + ay ∆t2 (m), (9.3)
2
1
z = z0 + vz0 ∆t + az ∆t2 (m). (9.4)
2
The target position, velocity, and acceleration (x, y, z, vx , vy , vz , ax , ay , az ) are often
referred to as the system state, and (9.2)–(9.4) is called the state space model. The current
or measured state is the input to the tracking algorithm, and the predicted future state
is one of the outputs of the algorithm. The prediction of the future state can be difficult
to calculate as radar measurements have random errors and uncertainty, often referred
to as measurement noise. Also, the target motion does not strictly follow (9.1) due to
wind, drag, maneuvering targets, and so on. The uncertainty in the state space model is
referred to as process noise. Both the process noise and measurement noise could result
in a poor estimate of the target position. Therefore, a tracking algorithm accounting for
these uncertainties is required. A few different tracking algorithms are presented in the
following sections.
The alpha-beta filter, sometimes referred to as the g-h filter, is a simplified filter for
parameter estimation and smoothing [2]. The alpha-beta filter is related to Kalman filters
but does not require a detailed system model. It presumes that the system is approximated
by two internal states. The first state is determined by integrating the second state over
time. The radar measurements are the observations of the first model state. This is a low-
order approximation and may be adequate for simple tracking problems, such as tracking
a target’s position where the position is found from the time integral of the velocity.
Assuming the velocity remains fixed over the time interval between measurements, the
position is projected forward in time to predict its value at the next sampling time as
The velocity is assumed to be constant, so the predicted value is equal to the current value
as
The alpha-beta filter uses selected constants, α and β, to adjust the position and velocity
estimates as
β
vk,k = vk,k−1 + rk (m/s), (9.9)
∆t
where
α, β = user selected constants for the filter,
rk = residual at update k (m),
xk,k−1 = predicted position at update k (m),
vk,k−1 = predicted velocity at update k (m/s),
xk,k = filtered position at update k given measurements up to
and including k (m),
vk,k = filtered velocity at update k given measurements up to
and including k (m/s).
The adjustments in (9.8) and (9.9) are small steps along the estimated gradient direction.
As more measurements are taken, and the adjustments accumulate, the error in the filtered
364 Introduction to Radar Using Python and MATLAB
state is reduced. The values of α and β are usually found through experiment. In general,
larger values of α and β result in quicker response to transient changes, while smaller
values of α and β reduce the noise level in the estimated state. Therefore, the values of
α and β should be positive and small for good convergence and stability [3]. Typical
selections for α and β are
0 < β ≤ 2, (9.11)
0 < 4 − 2α − β. (9.12)
Note that noise is amplified if β ≥ 1, and reduced if 0 < β < 1. The algorithm for the
alpha-beta filter proceeds as follows:
A simple simulation for the alpha-beta filter using the steps outlined above is given in
Listing 9.1. The filtered position is shown in Figure 9.1, the filtered velocity in Figure
9.2, and the residual in Figure 9.3. The measurement noise variance in this example is
large, as seen in the measurement values in Figure 9.1. This leads to large residual values
shown in Figure 9.3. The filtered velocity in Figure 9.2 is slowly converging and may be
improved with different values of α and β. However, care must be taken as this may lead
to larger noise in the filtered position. The optimal choice of α and β for a given sampling
interval, process noise variance, and measurement noise variance has been researched,
and the reader is referred to [4, 5] for more information.
Target Tracking 365
# Time (s)
t, dt = linspace(0, 10, 200, retstep=True)
# Filter parameters
alpha = 0.1
beta = 0.001
Alpha-Beta Filter
True
40 Measurement
Filtered
30
Position (m)
20
10
0 2 4 6 8 10
Time (s)
The previous section dealt with the alpha-beta filter where the velocity is assumed to
remain constant over long periods of time. However, if the velocity is changing due
to target acceleration, the filter needs to be extended to also include the acceleration.
This leads to the alpha-beta-gamma filter, also referred to as the g-h-k filter [2]. In this
extension, the velocity is obtained from integrating the acceleration. An equation for the
acceleration must then be added to the state equations, and a third parameter, γ, is chosen
to apply adjustments to the new state estimates. Assuming the acceleration remains fixed
over the time interval between measurements, the position is projected forward in time to
predict its value at the next sampling time as
∆t2
xk,k−1 = xk−1,k−1 + vk−1,k−1 ∆t + ak−1,k−1 (m), (9.13)
2
Target Tracking 367
Alpha-Beta Filter
3.5
3.0
2.5
Velocity (m/s)
2.0
1.5
1.0
0.5
True
0.0 Filtered
0 2 4 6 8 10
Time (s)
where
xk−1,k−1 = filtered position at update k − 1 given measurements up to
and including k − 1 (m),
vk−1,k−1 = filtered velocity at update k − 1 given measurements up to
and including k − 1 (m/s),
ak−1,k−1 = filtered acceleration at update k − 1 given measurements up to
and including k − 1 (m/s2 ),
∆t = measurement update interval (s),
xk,k−1 = predicted position at update k given measurements up to
and including k − 1 (m).
Alpha-Beta Filter
6
2
Residual (m)
0 2 4 6 8 10
Time (s)
The acceleration is assumed to be constant, so the predicted value is equal to the current
value as
β
vk,k = vk,k−1 + rk (m/s), (9.17)
∆t
2γ
ak,k = ak,k−1 + rk (m/s2 ), (9.18)
∆t2
Target Tracking 369
where
α, β, γ = selected constants for the filter,
rk = residual at update k (m),
xk,k−1 = predicted position at update k (m),
vk,k−1 = predicted velocity at update k (m/s),
ak,k−1 = predicted acceleration at update k (m/s2 ),
xk,k = filtered position at update k given measurements up to
and including k (m),
vk,k = filtered velocity at update k given measurements up to
and including k (m/s),
ak,k = filtered acceleration at update k given measurements up to
and including k (m/s2 ).
While one may extend the alpha-beta-gamma filter to higher orders, there tends to be
significant interactions among multiple states. Therefore, approximating the dynamics
as a simple integrator chain is less useful. Typical selections for α, β, and γ are found
from [5]:
α = 1 − s2 , (9.19)
β2
γ= , (9.21)
2α
0 ≤ s < 1. (9.22)
Other choices for the parameters in the alpha-beta and the alpha-beta-gamma filter may
be found in [4, 5]. The algorithm for the alpha-beta-gamma filter proceeds the same as
the alpha-beta filter, and a simple simulation for the alpha-beta-gamma filter is given in
Listing 9.2. The filtered position, velocity, and acceleration are shown in Figures 9.4, 9.5,
and 9.6, respectively. The residual is given in Figure 9.7. While the measurement noise
variance for this example is large, it is not apparent in Figure 9.4. However, the residual
in Figure 9.7 clearly illustrates this large variance. The convergence of the velocity and
acceleration in Figures 9.5 and 9.6 is somewhat slow and may be improved with choices
of the filter parameters α, β, and γ. As with the alpha-beta filter, changes in these
parameters may lead to faster convergence of acceleration at the cost of more noise in
the filtered position.
370 Introduction to Radar Using Python and MATLAB
Alpha-Beta-Gamma Filter
16000
True
Measurement
14000 Filtered
12000
10000
Position (m)
8000
6000
4000
2000
0
0 20 40 60 80 100
Time (s)
The Kalman filter is named after Rudolph E. Kalman and is of the most important
and often-used estimation algorithms [6]. Kalman’s original paper presented a recursive
solution to the discrete-data linear filtering problem. The Kalman filter follows the
predict and correct construct presented in Section 9.1.1 and is optimal in the sense the
estimated error uncertainty is minimized when some specific conditions are met [7].
While these conditions are not often met, the Kalman filter still performs quite well
for many applications, including radar tracking, location and assisted navigation, control
systems, interactive computer graphics, and multisensor fusion [8–12].
To simplify the equations and facilitate understanding, the Kalman filter will first be
presented in one dimension. To begin, the state update equation is written as
372 Introduction to Radar Using Python and MATLAB
Alpha-Beta-Gamma Filter
300 True
Filtered
250
200
Velocity (m/s)
150
100
50
0
0 20 40 60 80 100
Time (s)
where Kk is the Kalman gain at update k. From (9.23), the Kalman gain is the weight
given to the measurement, zk , and one minus the Kalman gain is the weight given to the
predicted state, xk,k−1 . In other words, the Kalman gain is an indicator of how much the
estimate is changed due to a given measurement. The Kalman gain is the uncertainty in
the predicted value of the state divided by the uncertainty in the predicted state, plus the
uncertainty in the measurement. This is expressed as
Pk,k−1
Kk = , (9.24)
Pk,k−1 + Rk
where Pk,k−1 is the predicted state uncertainty, and Rk is the measurement uncertainty.
From (9.24), if the predicted state uncertainty is small and the measurement uncertainty
is large, the predicted state is heavily weighted, and the measurement is given a small
Target Tracking 373
Alpha-Beta-Gamma Filter
True
Filtered
4
3
Acceleration (m/s/s)
0
0 20 40 60 80 100
Time (s)
weight. However, if the predicted state uncertainty is large and the measurement un-
certainty is small, the predicted state is given a small weight and the measurement is
weighted heavily. Figures 9.8 and 9.9 illustrate this with the two cases of large and small
Kalman gain. The state uncertainty update equation is written as
Alpha-Beta-Gamma Filter
15
10
Residual (m)
10
0 20 40 60 80 100
Time (s)
x x v
Pk,k−1 = Pk−1,k−1 + Pk−1,k−1 ∆t (m2 ), (9.28)
v v
Pk,k−1 = Pk−1,k−1 (m/s)2 , (9.29)
where P x is the uncertainty in the position, and P v is the uncertainty in the velocity.
Practical targets of interest to radar systems do not exactly follow the dynamic model,
which creates associated uncertainties. Recall that the process noise is the uncertainty of
the dynamic model. For example, the dynamic model for aircraft tracking may have large
uncertainties due to possible maneuvers. When tracking ballistic targets, the uncertainties
may be smaller as random accelerations due to environmental factors should be small.
If using a Kalman filter to estimate the position of a stationary object from radar
measurements, the uncertainty associated with the dynamic model would be zero, as the
Target Tracking 375
Current
𝑅" Measurement
Current
𝑃","#$ Estimate
Previous
𝑃"#$,"#$ Estimate
Figure 9.8 Illustration of the effect of Kalman gain on updated state estimate.
target does not move. The variance of the process noise, denoted by Qk , is added to the
predicted uncertainty as
This section presents the Kalman filter equations in vector form to be used in a general
framework. It follows the same iterative method of predicting the next state and uncer-
tainty followed by an update of the current state estimate and uncertainty. The system is
assumed to be modeled by the state transition equation given by
376 Introduction to Radar Using Python and MATLAB
Previous
Estimate
𝑃"#$,"#$
Current
𝑃
Estimate ","#$
Current
𝑅
Measurement "
Figure 9.9 Illustration of the effect of Kalman gain on updated state estimate.
xk = Ak xk−1 + Bk uk + wk , (9.31)
where
xk−1 = state at update k − 1,
Ak = state transition matrix,
uk = input control vector,
Bk = relates the input control to transition matrix,
wk = process noise,
xk = state at update k.
It is also assumed the measurements of the state can be represented by a linear equation
written as
zk = Hk xk + vk , (9.32)
Target Tracking 377
14
Position (m)
12
10
8
0.0 0.2 0.4 0.6 0.8 1.0
Time (s)
Figure 9.10 Filtered position for one-dimensional Kalman filter with constant dynamics
given in Listing 9.3.
where
xk = state at update k,
Hk = relates the state to the measurement,
vk = measurement noise,
zk = measurement at update k.
The first step is to determine the values of A, B, and H that make the problem
fit the model given in (9.31) and (9.32). Typically, these matrices are constant. Once
these are determined, the noise parameters and initial state and uncertainty values must
be determined. These may be found through a priori information or through experiment.
From this point, there are two distinct sets of equations, prediction and update. Both
sets of equations are applied at each time step k, for which there is a measurement. The
prediction equations for the state and uncertainty are
378 Introduction to Radar Using Python and MATLAB
where
Pk,k−1 = predicted uncertainty at update k,
Pk−1,k−1 = uncertainty estimate at update k − 1,
Qk = process noise variance at update k.
Target Tracking 379
Once predicted the state and uncertainty are calculated, the measurement value is used
to update the estimated state and uncertainty. For the update, the Kalman gain is first
calculated as
−1
Kk = Pk,k−1 HTk Hk Pk,k−1 HTk + Rk , (9.35)
where
Pk,k−1 = predicted uncertainty at update k,
Hk = relates the state to the measurement,
Rk = measurement noise variance at update k,
Kk = Kalman gain at update k.
The Kalman gain in (9.35) is then used to update the current state and uncertainty as
where I is the identity matrix. Figure 9.11 illustrates the iterative process of Kalman
filtering.
The previous sections considered the tracking of targets that closely follow the process
model. Now consider the problem of tracking a maneuvering target, such as a ship,
Sensor
Measurement
0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.12 Filtered position of a constant velocity Kalman filter with a maneuvering
target.
results using the σ k method. Note that both methods respond to the maneuver quickly
and have low noise during the nonmaneuvering time periods. Varying the threshold in
each method changes the response to the maneuver and the noise in the output.
To this point, tracking of only a single target has been analyzed. Now consider the
problem of jointly estimating the state and uncertainty of some number of targets based on
radar measurements. In addition to the measurement and process uncertainty, multitarget
tracking must consider other uncertainties, including false alarms, missed detections,
origin of the measurements, and targets entering and exiting the field of regard. Consider
the scenario given in Figure 9.22, consisting of a single radar and four targets, T1 , T2 ,
T3 , and T4 . Three measurements are created z1 due to target T1 , z2 due to a false alarm,
z3 due to T2 and T3 located in the same resolution cell, and no measurement for T4 . As
illustrated, measurements may be due to targets, clutter, and false alarms. In addition,
382 Introduction to Radar Using Python and MATLAB
0.5
0.4
Residual (m)
0.3
0.2
0.1
0.0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.13 Residual of a constant velocity Kalman filter with a maneuvering target.
the number of measurements may vary from scan to scan due to noise variance, target
variance, unresolved targets, extended targets, and targets entering or exiting the field
of regard. For each scan, a set of measurements, {z1 , ..., zn }, is sent to the tracker. The
tracking filters presented in the previous sections do not apply directly to the multitarget
tracking problem as there is no information as to the source of the measurement.
Therefore, the two key elements of a multitarget tracker are data association, and state
estimation and prediction.
Over the past several decades, numerous formulations for solving the multitarget
tracking problem have emerged. However, the most commonly used techniques are the
multiple hypothesis tracker (MHT) [17], joint probabilistic data association filter (JPDA)
[18], and random finite set (RFS) [19]. The MHT and JPDA methods are widely used,
and the RFS-based technique is a growing field of study. The following sections provide
a summary of these methods as well as a global nearest neighbor (GNN) approach as an
introduction to the multitarget problem.
Target Tracking 383
0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.14 Filtered position of a constant acceleration Kalman filter with a maneuvering
target.
Mij i j j T −1 i j j
k = (zk − Hk xk ) Sk (zk − Hk xk ), (9.41)
where
0.6
Residual (m)
0.4
0.2
0.0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.15 Residual of a constant acceleration Kalman filter with a maneuvering target.
and
Mij k = Mahalanobis distance for measurement i and track j,
zik = the ith measurement,
xjk = state for track j,
Hjk = state to measurement matrix for track j,
Pjk = uncertainty for track j,
Rik = uncertainty for measurement i.
The cost matrix formed in (9.41) is then passed to an assignment algorithm such as
Munkres [21] or Jonker-Volgenant-Castanon [22]. However, there are issues with this
method as large uncertainties can lead to incorrect associations [23]. Also, GNN only
considers the most likely measurement to each target. Therefore, it only performs well
in situations with a low number of false alarms and widely spaced targets. Once the
measurement to track associations have been made, each track is updated with the
associated measurement using standard filtering techniques such as Kalman filtering.
Target Tracking 385
0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.16 Filtered position of a constant velocity Kalman filter with a maneuvering
target and large process noise.
Due to the limitations of the GNN approach, it is desirable to perform data association
in a probabilistic fashion. For multitarget tracking, JPDA is the most well-known method
for probabilistic data association [24]. The idea of JPDA is to enumerate all possible
associations to calculate the marginal association probability [25]. To avoid conflicts in
the measurement to track assignment, JPDA uses joint association events and joint asso-
ciation probabilities. As the number of measurements and number of targets increases,
the complexity of JPDA is exponential [24]. To reduce the computational load, approx-
imations of JPDA have been recently developed [26–28]. Moreover, the basic form of
JPDA is only for a fixed and known number of targets. Several extensions of JPDA have
been proposed to handle an unknown and time varying number of targets [24].
To begin, a validation matrix, V, is created and indicates the possible sources of
each measurement. The elements of the validation matrix are given as
386 Introduction to Radar Using Python and MATLAB
0.4
0.3
0.2
0.1
0.0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.17 Residual of a constant velocity Kalman filter with a maneuvering target and
large process noise.
1 if measurement i in validation region of target j,
Vij = (9.43)
0 otherwise,
for i = 1, . . . , M and j = 0, . . . , N . Here, M is the number of measurements and N
is the number of targets. The exception is j = 0, which corresponds to false alarms or
clutter, and is filled with all ones. Once the validation matrix in (9.43) has been formed,
the feasible joint association events, e, are obtained by choosing one entry per row and
one entry per column, except column 0, which has no limitations. This corresponds to a
measurement having only one source and at most one measurement originating from a
target. Next, the joint association probabilities are found from [24]
0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.18 Filtered position of a constant velocity adaptive Kalman filter based on k
(9.38).
These probabilities assume the measurements originating from targets are Gaussian
distributed, false alarms are uniformly distributed, and the number of false alarms is
distributed according to Poisson prior (parametric JPDA) or diffuse prior (nonparametric
JPDA). To update the state and uncertainties, the marginal association probabilities need
to be calculated. These are found from the joint probabilities by summing over all the joint
388 Introduction to Radar Using Python and MATLAB
0.4
0.3
0.2
0.1
0.0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.19 Residual of a constant velocity adaptive Kalman filter based on k (9.38).
events in which the marginal event of interest occurs. This is expressed mathematically
as [24]
X
βkij = P e|Zk .
(9.46)
e:eij ∈e
The target state is updated similar to (9.36), where now the residual is replaced with the
combined residual. The combined residual is the summation of the individual residuals
weighted by the marginal association probabilities. This is written as
0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.20 Filtered position of a constant velocity adaptive Kalman filter based on σ k
(9.40).
j
h i
Pjk,k = Pjk,k−1 + βkij − 1 Kjk Sjk Kjk T + P̂k , (9.49)
Mk
!
j X h ih iT
P̂k = Kk βkij zik − Hjk xjk,k−1 i j j j jT
zk − Hk xk,k−1 − rk rk KTk . (9.50)
i=1
Due to advances in computing power, multiple hypothesis tracking has become a widely
used multitarget tracking technique. Unlike JDPA, MHT is a deferred decision approach
that makes use of a number of consecutive scans to solve the data association problem and
is known as a maximum a posteriori estimator [24, 25]. For each scan, the MHT approach
propagates a set of association hypotheses with high posterior probabilities. A new set of
390 Introduction to Radar Using Python and MATLAB
0.6
0.5
Residual (m)
0.4
0.3
0.2
0.1
0.0
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Time (s)
Figure 9.21 Residual of a constant velocity adaptive Kalman filter based on σ k (9.40).
hypotheses is created from the existing hypotheses, and the posterior probabilities are
updated. With this type of approach, the initiation and termination of tracks is accounted
for and the unknown and time varying number of targets is handled inherently [24, 25].
Standard filtering techniques, such as Kalman or Bayes, may be used to estimate the
state and uncertainty of each track using the measurements from the best hypothesis. In
the MHT approach, the number of hypotheses increases exponentially with time, and
some form of pruning and merging of hypotheses is required [13]. Many extensions and
variations of the MHT technique have been developed in recent years to reduce this
computational burden, and the reader is referred to several excellent sources on these
techniques [26–28].
In general, there are two main types of MHT, hypothesis-oriented and track-
oriented. Hypothesis-oriented MHT creates and grows a large number of hypotheses to
solve the data association problem [25]. In contrast, a tree-based track-oriented MHT
forms branches, which represent track hypotheses, and prunes these branches based on
the best global hypothesis [24]. The generation of the global hypotheses is an important
step in both types of MHT. For hypothesis-oriented MHT, an efficient method is to
Target Tracking 391
Unresolved
False Alarm 𝑧3
Targets
Scan Volume 𝑇2,3
Missed
𝑧2
Detection
𝑇4
𝑧1
𝑇1 Resolution Cell
consider only the n-best hypotheses using Murty’s ranking algorithm [26]. For track-
oriented MHT, multiple dimensional assignment (MDA) is the widely accepted method
for implementation. Approximate methods such as Lagrangian relaxation are typically
used to obtain solutions [29]. Figure 9.23 illustrates the tree-based target-oriented MHT
technique. To begin, measurements from an individual scan are used to create potential
measurement to track associations. This is typically performed in two steps, first with
a coarse gating, followed by a method using the position and uncertainty, such as
the Mahalanobis distance. For each measurement in the scan, a new track is initiated.
Information about the new tracks and existing tracks is used to update the track score
and find the global best hypothesis. Based on the global best, unreliable hypotheses
are removed from the tree, and the remaining tracks are updated with standard filtering
techniques. As an example, consider the scenario shown in Figure 9.24, where there are
three frames, k − 2, k − 1, and k. There are two established tracks, T1 and T2 , at scan
k − 2. During scan k − 1, the tracker receives two measurements, z1 and z2 . For scan k,
a single measurement, z3 , is received. Following the steps in the MHT process results in
the formation of eight tracks, {t1 , . . . , t8 }, as shown in Figure 9.24. Let N be the number
of tracks at scan k and M be the number of resolved tracks at the root node. For this
example, N = 8 and M = 5. This is a multidimensional assignment problem, and the
global best hypothesis is determined by solving the binary programming problem shown
in Figure 9.25, where a is the assignment vector. Lagrangian relaxation may be used to
solve the multidimensional assignment.
392 Introduction to Radar Using Python and MATLAB
Measurements
Potential Track scoring
Measurement Established Tracks and Global
to Track Hypothesis
Associations Formation
Predicted
Tracks
Track Update / Track Pruning
Prediction / Merging Tracks - Best
Hypothesis
𝑘−2 𝑇1 𝑇2
𝑇3 𝑇4
𝑘 −1 𝒛1 0 𝒛2 0 𝒛1 𝒛2
𝑇5
𝑘 𝒛3 0 0 0 𝒛3 0 0 𝒛3
𝑡1 𝑡2 𝑡3 𝑡4 𝑡5 𝑡6 𝑡7 𝑡8
𝑨𝒂 = 𝒃,
𝑏𝑗 = 1, 𝑗 = 1, … , 𝑀
𝑎𝑖 ∈ 0, 1 , 𝑖 = 1, … , 𝑁
1 1 0 0 0 0 0 0 𝑇1
0 0 1 1 0 0 0 0 𝑇2
𝑨= 1 0 0 0 1 0 0 0 𝒛1
0 0 1 0 1 0 0 1 𝒛2
1 0 0 0 1 0 0 1 𝒛3
𝑡1 𝑡2 𝑡3 𝑡4 𝑡5 𝑡6 𝑡7 𝑡8
The multitarget tracking methods presented in the previous sections make a number of
approximations and have limitations when dealing with clutter, false alarms, and the
initiation of new tracks. Therefore, a method for treating the tracking problem as a whole
is desired. The RFS method is such an approach as it provides the full Bayes filter, which
gives the probability density function for the system state, xk , as
k
p (zk |xk ) p xk |Zk−1
p xk |Z = . (9.51)
p (Zk |Zk−1 )
The term, p (zk |xk ), is the probability the state, xk , would generate the measurement, zk .
This requires a model for how the measurements are generated, and therefore a model
of the sensor itself. The next term, p xk |Zk−1 , is the probability
of the state, xk , given
all the previous measurements. The final term, p Zk |Zk−1 , is for normalization and
ensures the integral of the probability density function is one. Extending the expression
in (9.51) to the multitarget paradigm results in
k
p (Zk |Xk ) p Xk |Zk−1
p Xk |Z = . (9.52)
p (Zk |Zk−1 )
In the RFS method, the state of the targets and the measurements are comprised of a
random number of sets whose members are random variables. Suppose there are m targets
with states given by x1 , . . . , xm , which generate n measurements expressed as z1 , . . . , zn .
In the multitarget formulation of (9.52), Xk = {x1 , . . . , xm }, Zk = {z1 , . . . , zn },
394 Introduction to Radar Using Python and MATLAB
and Zk = {Zi |i = 1, . . . , k}. To deal with (9.52), Mahler [19] defined a calculus for
random finite sets. This is significant as it allows for the full Bayes filter of a wide range
of measurement and dynamic system behavior, including targets entering and exiting
the field of regard, targets spawning from existing targets, extended targets, unresolved
targets, missed detections, false alarms, and clutter. However, the closed-form solution of
Bayes theorem deals with multidimensional integrals with no known analytic solutions.
Numerical techniques such as grid-based solutions and particle filters are not tractable for
this problem. Therefore, some approximation methods must be employed.
The probability hypothesis density, Dk,k , is the first moment of the of multitarget
Bayes filter. Dk,k is propagated forward in time, and the integral of the probability
hypothesis density over a volume is equal to the expected number of targets in the volume.
Suppose the integral is calculated and gives some number of expected targets, N . The
targets are localized by finding the N largest local peaks of Dk,k [30]. The cardinalized
probability hypothesis density (CPHD) propagates the probability hypothesis density as
well as the full probability distribution of the random variable for the number of targets
[31]. This results in a lower variance in the calculation of the number of targets. There
are two methods for practical implementation of the CPHD filter. The first method uses
particles and is known as the sequential Monte Carlo method [32]. The second method
uses a Gaussian mixture technique and is more computationally efficient [33]. For typical
tracking scenarios, JPDA, MHT, and RFS methods show similar performance with the
RFS being the least computationally complex. However, the multitarget Bayes filter is
designed to deal with nonstandard tracking scenarios [34].
While detailed radar system simulations may be used to generate measurements as input
to radar tracking algorithms, a less rigorous method for generating pseudomeasurements
is desired. Rather than implementing the details of the antenna elements, beam patterns,
beam steering, receiver channels, signal processing, detection algorithms, complex target
orientation, and radar cross section, some basic radar parameters may be used to gen-
erate sensor representative pseudomeasurements suitable for studying various tracking
algorithms. The measurement model for generating range, azimuth, and elevation pseu-
domeasurements is expressed as [35]
The measurement model has three terms contributing to the accuracy of the radar
measurements. The noise term is dependent on the signal-to-noise ratio, the fixed term is
independent of the signal-to-noise ratio, and the last term is the sensor bias.
The noise term varies with the signal-to-noise ratio and contributes to each mea-
surement value. Therefore, a new random draw is taken for each measurement. This term
is modeled as a zero mean Gaussian distribution with the standard deviation given as [35]
r
σr = √res (m), (9.56)
Kr 2 SNR
θres
σθ = √ (rad), (9.57)
Kθ cos α 2 SNR
φres
σφ = √ (rad), (9.58)
Kφ cos β 2 SNR
where
rres = 3-dB range resolution (m),
θres = 3-dB θ resolution (rad),
φres = 3-dB φ resolution (rad),
Kr = sensor-specific range factor,
Kθ = sensor-specific θ factor,
Kφ = sensor-specific φ factor,
α = off-boresight angle θ direction (rad),
β = off-boresight angle φ direction (rad),
SNR = signal-to-noise ratio,
σr = standard deviation for noise range error term (m),
σθ = standard deviation for noise θ error term (rad),
σφ = standard deviation for noise φ error term (rad).
If there is no sensor specific data available for the factors Kr , Kθ , and Kφ , these are
typically taken to be Kr ≈ 1 and Kθ , Kφ ≈ 1.6.
The fixed term is independent of the signal-to-noise ratio and contributes to each
measurement value. Therefore, a new random draw is taken for each measurement
value. These types of errors arise from many different sources, including quantization,
interpolation, and tropospheric and ionospheric fluctuations. This term is modeled as a
zero mean Gaussian distribution with the standard deviation given by
rres
σr = (m), (9.59)
Lr
θres
σθ = (rad), (9.60)
Lθ cos α
396 Introduction to Radar Using Python and MATLAB
φres
σφ = (rad), (9.61)
Lφ cos β
where
rres = 3-dB range resolution (m),
θres = 3-dB θ resolution (rad),
φres = 3-dB φ resolution (rad),
Lr = sensor-specific range factor,
Lθ = sensor-specific θ factor,
Lφ = sensor-specific φ factor,
α = off-boresight angle θ direction (rad),
β = off-boresight angle φ direction (rad),
σr = standard deviation for fixed range error term (m),
σθ = standard deviation for fixed θ error term (rad),
σφ = standard deviation for fixed φ error term (rad).
If there is no sensor-specific data available for the factors Lr , Lθ , and Lφ , these are
typically taken to be ≈ 20.
True biases, which do not change over very long time frames, are removed during
radar calibration. The remaining biases, which remain constant over the time frame the
measurements are taken, are the ones considered in the measurement model. Since the
true biases are assumed to have been removed, the remaining biases are distributed about
the true measurement values with a zero mean Gaussian distribution. A single random
draw from the distribution is used for all measurement values. A new random draw would
be taken for each instance in a Monte Carlo simulation. The most common source of this
type of bias is uncompensated atmospheric refraction.
9.4 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter09 and the matching
MATLAB examples are in the directory mlradar\Chapter09. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
For this example, use an alpha-beta filter to track a target with an initial position of 5.0m
and a velocity of 0.5 m/s. The radar has an update rate of 0.1s and a measurement variance
of 2.0 m2 . The filter parameters are α = 0.1 and β = 0.001. Track the target from 0 to
20s, and plot the resulting position, velocity, and residual compared to the true position,
velocity, and measurements.
Target Tracking 397
Figure 9.26 The true position, measurement position, and filtered position calculated by
alpha beta example.py.
Solution: The solution to the above example is given in the Python code alpha beta ex-
ample.py and in the MATLAB code alpha beta example.m. Running the Python example
code displays a GUI allowing the user to enter the filter parameters, the target trajectory
parameters, the radar parameters, and to choose a plot type. The code then performs the
alpha-beta filtering and displays the results. The resulting filtered position, along with the
true position and measurement position, is shown in Figure 9.26. The filtered velocity
and true velocity are shown in Figure 9.27. Finally, the residual for this example is shown
in Figure 9.28. The reader is encouraged to vary the filter and trajectory parameters to see
how these affect the tracking performance.
For the next example, use an alpha-beta-gamma filter to track a target with an initial
position of 1.3m, an initial velocity of 3.5 m/s, and an acceleration of 3.0 m/s2 . The radar
has an update rate of 0.1s and a measurement variance of 10.0 m2 . The filter parameters
are α = 0.06, β = 0.0018, and γ = 2.75×10−5 . Track the target from 0 to 100s, and plot
the resulting position, velocity, acceleration, and residual compared to the true position,
velocity, acceleration, and measurements.
398 Introduction to Radar Using Python and MATLAB
Figure 9.27 The true and filtered velocity calculated by alpha beta example.py.
Figure 9.29 The true position, measurement position, and filtered position calculated by
alpha beta gamma example.py.
Solution: The solution to the above example is given in the Python code alpha beta
gamma example.py and in the MATLAB code alpha beta gamma example.m. Running
the Python example code displays a GUI allowing the user to enter the filter parameters,
the target trajectory parameters, the radar parameters, and to choose a plot type. The
code then performs the alpha-beta-gamma filtering and displays the results. The resulting
filtered position, along with the true position and measurement position, is shown in
Figure 9.29. The filtered velocity and true velocity are shown in Figure 9.30. The filtered
acceleration and true acceleration are given in Figure 9.31. Finally, the residual for this
example is shown in Figure 9.32. The reader is encouraged to vary the filter and trajectory
parameters to see how these affect the tracking performance.
As the first Kalman filter example, use a constant velocity dynamic model to track a
target with an initial position of (1.0, 11.0, 3.2) m and a velocity of (1.0, 2.0, 1.5) m/s.
The radar has an update rate of 0.1s and a measurement variance of 10.0 m2 . Using a
process noise variance of 1.0−6 , track the target from 0 to 40s, and plot the resulting y
component of the position and velocity as well as the total residual. Compare these with
400 Introduction to Radar Using Python and MATLAB
Figure 9.30 The true and filtered velocity calculated by alpha beta gamma example.py.
Solution: The solution to the above example is given in the Python code kalman cv ex-
ample.py and in the MATLAB code kalman cv example.m. Running the Python example
code displays a GUI allowing the user to enter the filter parameters, the target trajectory
parameters, the radar parameters, and to choose a plot type. The code then performs
the Kalman filtering with a constant velocity dynamic model and displays the results.
The resulting filtered position, along with the true position and measurement position, is
shown in Figure 9.33. The filtered velocity and true velocity are shown in Figure 9.34.
Finally, the residual for this example is shown in Figure 9.35. The reader is encouraged to
vary the filter and trajectory parameters to see how these affect the tracking performance.
This Kalman filter example uses a constant acceleration dynamic model to track a target
with an initial position of (7.0, 11.0, 21.0) m, an initial velocity of (10.0, 20.0, 15.0) m/s,
and an acceleration of (0.5, 1.0, 0.75) m/s2 . The radar has an update rate of 0.1s and a
measurement variance of 10.0 m2 . Using a process noise variance of 1.0−6 , track the
target from 0 to 20s, and plot the resulting x component of the position, velocity, and
acceleration as well as the total residual. Compare these with the true x component of the
402 Introduction to Radar Using Python and MATLAB
Figure 9.33 The true y position, measurement position, and filtered position calculated by
kalman cv example.py.
Figure 9.34 The true and filtered y velocity calculated by kalman cv example.py.
Target Tracking 403
Solution: The solution to the above example is given in the Python code kalman ca
example.py and in the MATLAB code kalman ca example.m. Running the Python ex-
ample code displays a GUI allowing the user to enter the filter parameters, the target
trajectory, the radar parameters, and to choose a plot type. The code then performs the
Kalman filtering with a constant acceleration dynamic model and displays the results.
The resulting filtered position, along with the true position and measurement position, is
shown in Figure 9.36. The filtered velocity and true velocity are shown in Figure 9.37. The
filtered acceleration and true acceleration are shown in Figure 9.38. Finally, the residual
for this example is shown in Figure 9.39. The reader is encouraged to vary the filter and
trajectory parameters to see how these affect the tracking performance.
In this example, use an adaptive Kalman filter with a constant velocity dynamic model
and an adjustable process noise. The process noise will be adjusted using the k method
presented in Section 9.1.3.3. The target has an initial position of (2.0, 1.0, 5.0) m and
an initial velocity of (10.0, 20.0, 15.0) m/s. The target makes a maneuver at 20s and
the new velocity is (100.0, 20.0, 15.0) m/s. The radar has an update rate of 0.1s and a
404 Introduction to Radar Using Python and MATLAB
Figure 9.36 The true x position, measurement position, and filtered position calculated by
kalman ca example.py.
Figure 9.37 The true and filtered x velocity calculated by kalman ca example.py.
Target Tracking 405
Figure 9.38 The true and filtered x acceleration calculated by kalman ca example.py.
Figure 9.40 The true x position, measurement position, and filtered position calculated by
kalman epsilon example.py.
Solution: The solution to the above example is given in the Python code kalman epsilon
example.py and in the MATLAB code kalman epsilon example.m. Running the Python
example code displays a GUI allowing the user to enter the filter parameters, the target
trajectory, the radar parameters, and to choose a plot type. The code then performs
the adaptive Kalman filtering with a constant velocity dynamic model and displays the
results. The resulting filtered position, along with the true position and measurement
position, is shown in Figure 9.40. The filtered velocity and true velocity are shown in
Figure 9.41. Finally, the residual for this example is shown in Figure 9.42. The reader is
encouraged to vary the filter and trajectory parameters to see how these affect the tracking
performance.
Target Tracking 407
Figure 9.41 The true and filtered x velocity calculated by kalman epsilon example.py.
In this example, use an adaptive Kalman filter with a constant velocity dynamic model
and an adjustable process noise. The process noise will be adjusted using the σk method
presented in Section 9.1.3.3. The target has an initial position of (2.0, 1.0, 5.0) m and
an initial velocity of (10.0, 20.0, 15.0) m/s. The target makes a maneuver at 20s, and
the new velocity is (100.0, 20.0, 15.0) m/s. The radar has an update rate of 0.1s and a
measurement variance of 10.0 m2 . Using an initial process noise variance of 1.0−6 , a
threshold of 0.08, and a scale of 1.0 × 103 , track the target from 0 to 100s, and plot the
resulting x component of the position and velocity as well as the total residual. Compare
these with the true x component of the position and velocity.
Solution: The solution to the above example is given in the Python code kalman sigma
example.py and in the MATLAB code kalman sigma example.m. Running the Python
example code displays a GUI allowing the user to enter the filter parameters, the target
trajectory, the radar parameters, and to choose a plot type. The code then performs
the adaptive Kalman filtering with a constant velocity dynamic model and displays the
results. The resulting filtered position, along with the true position and measurement
position, is shown in Figure 9.43. The filtered velocity and true velocity are shown in
Figure 9.44. Finally, the residual for this example is shown in Figure 9.45.
Figure 9.43 The true x position, measurement position, and filtered position calculated by
kalman sigma example.py.
Target Tracking 409
Figure 9.44 The true and filtered x velocity calculated by kalman sigma example.py.
PROBLEMS
9.1 Describe the purpose of tracking filters in radar systems and give practical examples of
the use of tracking filters.
9.2 Explain the system model in alpha-beta filters and describe how these type of filters
are related to Kalman filters.
9.3 What is the residual or innovation, and how is it used to update the filter?
9.4 How does the choice of α and β affect the performance of alpha-beta filters?
9.5 Describe the major differences between alpha-beta and alpha-beta-gamma filters.
9.8 What are the conditions under which the Kalman filter is optimal in the sense the
estimated error uncertainty is minimized?
9.9 Describe the role of the Kalman gain in the update of the state and uncertainty. How
does the state and uncertainty differ between large and small Kalman gain?
9.10 In the Kalman filter, what does the process noise represent? Give practical examples of
systems with large process noise.
9.11 Explain the need for adaptive filtering and give practical examples of situations where
this type of filtering could be beneficial.
9.12 Describe the difference in performance between constant acceleration and constant
velocity Kalman filter models for maneuvering targets.
9.13 Characterize the differences between the σ and methods of adaptive filtering.
9.14 Describe the major disadvantages of the GNN approach to multitarget tracking and
give an example scenario where this method would not perform well.
9.15 Outline the basic steps in the RFS technique for multitarget tracking and list the major
advantages of JPDA and MHT.
Target Tracking 411
9.16 How does the computational complexity of MHT compare to JPDA in their standard
forms? Give examples of techniques to reduce the computational complexity of both
methods.
References
[1] H. Ohanian and J. Markert. Physics for Engineers and Scientist, 3rd ed. W. W. Norton and Company,
New York, 2007.
[2] E. Brookner. Tracking and Kalman Filtering Made Easy. John Wiley and Sons, New York, 1998.
[3] F. Asquith. Weight selection in first-order linear filters. Technical Report AD859332, Army Inertial
Guidance and Control Laboratory Center, Redstone Arsenal, Alabama, 1969.
[4] P. Kalata. The tracking index: A generalized parameter for alpha-beta and alpha-beta-gamma target
trackers. IEEE Transactions on Aerospace and Electronic Systems, 20(2):174–181, 1984.
[5] J. E. Gray and W. J. Murray. A derivation of an analytic expression for the tracking index for the alpha-
beta-gamma filter. IEEE Transactions on Aerospace and Electronic Systems, 29:1064–1065, 1993.
[6] R. Kalman. A new approach to linear filtering and prediction problems. Transaction of the ASME-Journal
of Basic Engineering, pages 35–45, March 1960.
[7] J. Crassidis and J. Junkins. Optimal Estimation of Dynamic Systems. CRC Press, Boca Raton, FL, 2011.
[8] R. Azuma. Improving static and dynamic registration in an optical see-through HMD. Computer Graphics
Conference Proceedings, pages 197–204, 1994.
[9] E. Foxlin, M. Harrington and G. Pfeifer. ConstellationTM : A wide-range wireless motion-tracking system
for augmented reality and virtual set applications. Computer Graphics Conference Proceedings, pages
371–378, 1998.
[10] J. Van Pabst and P. Krekel. Multi sensor data fusion of points, line segments and surface segments in 3D
space. 7th International Conference on Image Analysis and Processing, pages 174–182, 1993.
[11] A. Azarbayejani and A. Petland. Recursive estimation of motion, structure, and focal length. Technical
report, Massachusetts Institute of Technology, Cambridge, MA, 1994.
[12] S. Emura and S. Tachi. Sensor fusion based measurement of human head motion. 3rd IEEE International
Workshop on Robot and Human Communication, 1994.
[13] Y. Bar-Shalom, L. Xiao-Rong and T. Kirubarajan. Estimation with Applications to Tracking and
Navigation. John Wiley and Sons, New York, 2001.
[14] P. Zarchan and H. Musoff. Fundamentals of Kalman Filtering: A Practical Approach, 4th ed. American
Institute of Aeronautics and Astronautics, Reston, VA, 2013.
412 Introduction to Radar Using Python and MATLAB
[15] G. Marks. Multiple model adaptive estimation (MMAE) based filter banks for interception of maneuver-
ing targets. AIAA Guidance, Navigation and Control Conference and Exhibit, 2007.
[16] H. Blom and Y. Bar-Shalom. The interacting multiple model algorithm for systems with Markovian
switching coefficients. IEEE Transactions on Automatic Control, AC-8(8):780–783, 1998.
[17] A. S. Gilmour. Design and Analysis of Modern Tracking Systems. Artech House, Norwood, MA, 1999.
[18] Y. Bar-Shalom, P. Willett and X. Tian. Tracking and Data Fusion: A Handbook of Algorithms. YBS
Publishing, Storrs, CT, 2011.
[19] R. Mahler. Advances in Statistical Multisource-Multitarget Information Fusion. Artech House, Norwood,
MA, 2014.
[20] R. Altendorfer and S. Wirkert. A complete derivation of the association log-likelihood distance for multi-
object tracking. arXiv:1508.04124, August 2015.
[23] Y. Bar-Shalom, X. Li and T. Kirubarajan. Estimation with Applications to Tracking and Navigation.
Wiley, New York, 2001.
[25] S. He, Hyo-Sang Shin and A. Tsourdos. Track-oriented multiple hypothesis tracking based on Tabu search
and Gibbs sampling. IEEE Sensors Journal, 18(1):328–339, January 2018.
[26] R. J. Fitzgerald. Development of practical PDA logic for multitarget tracking by microprocessor.
American Control Conference, pages 889–898, 1986.
[27] J. A. Roecker and G. L. Phillis. Suboptimal joint probabilistic data association. IEEE Sensors Journal,
29(2):510517, 1993.
[28] J. A. Roecker. A class of near optimal JPDA algorithms. IEEE Transactions on Aerospace and Electronic
Systems, 30(2):504510, 1994.
[29] D. Bertsimas and J. Tsitsiklis. Introduction to Linear Optimization. Athena Scientific, 1997.
[30] O. Erdinc, P. Willett and Y. Bar-Shalom. Probability hypothesis density filter for multitarget multi-sensor
tracking. 7th International Conference on Information Fusion, page 146153, 2005.
[31] B.T. Vo, B. Vo and A. Cantoni. The cardinalized probability hypothesis density filter for linear Gaussian
multi-target models. 40th Annual Conference on Information Sciences and Systems, page 681686, 2006.
[32] B. Vo, S. Singh, and A. Doucet. Sequential Monte Carlo methods for multi-target filtering with random
finite sets. IEEE Transaction on Aerospace and Electronic Systems, pages 1224–1245, 2005.
[33] B. Vo and W. Ma. The Gaussian mixture probability hypothesis density. IEEE Transactions on Signal
Processing, pages 4091–4104, 2006.
[34] T. Wood. Random Finite Sets for Multitarget Tracking with Applications. PhD thesis, University of
Oxford, 2011.
[35] D. K. Barton. Modern Radar System Analysis. Artech House, Norwood, MA, 1988.
Chapter 10
Tomographic Synthetic Aperture Radar
10.1 TOMOGRAPHY
10.1.1 History
413
414 Introduction to Radar Using Python and MATLAB
𝑃𝜃1
𝜃መ2
𝑃𝜃2
𝜃መ1
Figure 10.1 Two projections for an object consisting of a circular and elliptical cylinder.
the plane. The value of the Radon transform for a particular line is found by integrating
the density function over that line. In his original work, Radon also showed the inverse
transform and thus the mathematical basis for tomographic reconstruction. Radon further
included formulas for the transform in three dimensions, in which the integral is taken
over planes rather than lines as in two dimensions. The Radon transform has since been
generalized to higher dimensional Euclidean spaces. The complex analog of the Radon
transform is known as the Penrose transform [2–4].
While Radon’s work was purely mathematical, Allan Cormack introduced a more
practical inversion formula using the eigenfunctions from a rotational operator in 1963
and 1964 [5, 6], which provided the theoretical mathematics for a computerized recon-
struction, which became known as computed tomography (CT). In 1971, Sir Godfrey
Hounsfield built the X-ray computer scanner for medical work, for which Cormack and
Hounsfield shared a Nobel prize [7, 8]. The device was installed at Atkinson Morely hos-
pital. In 1972, EMI Ltd. publicly announced the EMI scanner, which was for brain scans
only. Afterward, in 1975, Hounsfield built a whole-body scanner. Hounsfield’s original
Tomographic Synthetic Aperture Radar 415
Table 10.1
Applications of Tomographic Imaging
Figure 10.2 Original sketch from Hounsfield’s notebook (Creative Commons Share Alike
3.0).
sketch is shown in Figure 10.2, and Figure 10.3 shows his first CT scanner prototype. CT
scanning performance has grown at a remarkable rate since Hounsfield’s first scanner.
Table 10.2 gives some examples of today’s CT scanners.
416 Introduction to Radar Using Python and MATLAB
Figure 10.3 First CT scanner prototype by Hounsfield at EMI (Creative Commons Share
Alike 3.0).
Table 10.2
Tomographic Scanners
Consider the basic geometry for two-dimensional X-ray tomography shown in Figure
10.4, where the object’s two-dimensional density function is given by f (x, y). Pθ (t) is
Tomographic Synthetic Aperture Radar 417
P (t )
t
y f ( x, y )
s
t
x
X-ray paths
the value of the Radon transform of the density function, f (x, y), and is found by forming
a set of line integrals. Mathematically, the Radon transform is expressed as
ˆ ˆ∞ ˆ∞
Pθ (t) = f (x, y) ds = f (x, y) δ(x cos θ + y sin θ − t) dx dy. (10.1)
` −∞ −∞
Once the Radon transform is found, a method for reconstructing the original density
function is needed. The following sections demonstrate the reconstruction with the use of
the Fourier slice theorem and the filtered backprojection algorithm.
The Fourier slice theorem, illustrated in Figure 10.5, states the one-dimensional Fourier
transform of a parallel projection is equal to a slice of the two-dimensional Fourier
418 Introduction to Radar Using Python and MATLAB
1D Fourier Transform
P (t )
t
v
y 𝑆𝜃 (𝜔)
s
t u
x
f ( x, y ) f ( u, v )
2D Fourier Transform
transform of the original function. To demonstrate the Fourier slice theorem, start by
defining the two-dimensional Fourier transform of the object’s density function as
ˆ∞ ˆ∞
F (u, v) = f (x, y) e−j2π(ux+vy) dx dy, (10.2)
−∞ −∞
Since no assumption has been made about the object’s orientation, θ is set to 0 without
loss of generality. This leads to v = 0, and allows the two-dimensional Fourier transform
to be written as
ˆ∞ ˆ∞
F (u, 0) = f (x, y) e−j2πux dx dy. (10.4)
−∞ −∞
Note that the phase term is now a function of x only, and the double integral may be
written as
Tomographic Synthetic Aperture Radar 419
ˆ∞ ˆ∞
The term inside the brackets is an expression for the projection along lines of constant x.
This may be written as
ˆ∞
Pθ=0 (x) = f (x, y) dy. (10.6)
−∞
Recalling the definition of the one-dimensional transform in (10.3), the relationship be-
tween the one-dimensional projection function and the two-dimensional Fourier trans-
form of the object’s density function is
v
𝑆𝜃𝑖 (𝜔)
𝑆𝜃2 (𝜔)
𝑆𝜃1 (𝜔)
u
𝑆𝜃𝑁 (𝜔)
elements over all projection angles. While the SIRT reconstruction method does result
in increased image quality compared to standard ART, the time to convergence is sig-
nificantly increased. The second version is called simultaneous algebraic reconstruction
technique (SART). This method seeks to find a middle ground between standard ART
and SIRT [11] by updating pixels with the average weighted differences from all sensor
elements in a single projection. The last version is the multiplicative algebraic recon-
struction technique (MART) [9]. While most iterative solutions are additive in nature,
MART is multiplicative. Although the MART algorithm converges faster than the additive
techniques, it magnifies noise, and a pixel value of zero halts progress of the algorithm
and leads to incorrect results. Researchers began using Fourier transforms in the solution,
leading to a method known as filtered backprojection [12]. This is the most common
image reconstruction method and will be presented in the following sections.
To illustrate the filtered backprojection algorithm, begin by taking the inverse Fourier
transform of the object’s two-dimensional spatial frequency domain representation as
Tomographic Synthetic Aperture Radar 421
ˆ∞ ˆ∞
f (x, y) = F (u, v) ej2π(xu+yv) du dv. (10.10)
−∞ −∞
Since the projection functions fill in the spatial frequency domain in a polar fashion, make
the following substitutions
u = ω cos θ, (10.11)
v = ω sin θ, (10.12)
du dv = ω dω dθ, (10.13)
which results in
ˆ2πˆ∞
f (x, y) = F (w, θ) ej2πω(x cos θ+y sin θ) ω dω dθ. (10.14)
0 0
ˆπ ˆ∞
f (x, y) = F (w, θ) ej2πω(x cos θ+y sin θ) ω dω dθ
0 0
ˆπ ˆ∞
+ F (w, θ + π) ej2πω[x cos(θ+π)+y sin(θ+π)] ω dω dθ. (10.15)
0 0
Making use of the relation, F (ω, θ + π) = F (−ω, π), allows (10.15) to be written as
ˆπ ˆ∞
f (x, y) = F (w, θ) ej2πω(x cos θ+y sin θ) |ω| dω dθ. (10.16)
0 −∞
The inner integral represents the convolution of the projection with a filter as
ˆ∞
Pθ (t) ∗ h(t) = F (w, θ) ej2πω(x cos θ+y sin θ) |ω| dω. (10.17)
−∞
The filtered projection function in (10.17) is then projected onto the image space along a
line in the same direction as the projection was obtained. This is expressed as
422 Introduction to Radar Using Python and MATLAB
ˆπ
f (x, y) = Pθ (t) ∗ h(t) dθ. (10.18)
0
Table 10.3
Overview of SAR Systems
theorem as before, the projection data is used to fill in the reflectivity function’s two-
dimensional spatial frequency domain. The filtered backprojection algorithm is then
used to reconstruct the reflectivity function from this two-dimensional spatial frequency
data. As a simple example, consider a SAR imaging scenario consisting of three point
scatterers located at (0, 0), (−3, −3), and (3, 3) m relative to the center of the area to
be imaged, as illustrated in Figure 10.9. The targets have radar cross-section values of
10, 5, and 20 m2 , respectively. The azimuth angular span is 3o and the bandwidth is
300 MHz. Figure 10.10 shows the image after the backprojection process with a single
pulse. The resolution in the range dimension is c/2B, and as expected, the cross-range
resolution is very poor and limited only by the beamwidth of the radar antenna. Figure
10.11 shows the image after 10 pulses have been backprojected. The range resolution
is the same, and there is quite an improvement in the cross-range resolution. Figure
10.12 shows the reconstructed image after 100 pulses have been backprojected. Finally,
Figure 10.13 illustrates the image after two pulses, separated by a wide angular span,
have been backprojected. Aliasing is clearly present in this image and is caused by the
projection functions being collected at angles with too large of a separation. The sampling
requirement in the angular domain is [13, 15]
424 Introduction to Radar Using Python and MATLAB
Area illuminated
𝑦 by the radar
beam.
𝑥
𝑃𝜃 (𝑡)
2π
∆θ ≤ 0 0 , (10.19)
kmax − kmin
where k 0 is the instantaneous angular frequency.
When extending the Fourier slice theorem to three dimensions, two different versions
may be obtained. The first is the planar slice version, which relates planar projection
functions to planar Fourier transform slices. This version is commonly used in optical
and infrared imaging applications. The second is the linear trace version, which relates
linear projection functions to traces of the three-dimensional Fourier transform. This is
the version used for radar applications as it deals with pulse-compressed radar returns.
Tomographic Synthetic Aperture Radar 425
𝑃𝜃𝑛 (𝑡)
𝑃𝜃1 (𝑡)
𝑥
Figure 10.8 Projections collected at various angles with sensor or target motion (NASA).
To show the linear trace theorem, start by defining the three-dimensional Fourier trans-
form of the target’s reflectivity function as
ˆ∞ ˆ∞ ˆ∞
F (u, v, w) = f (x, y, z) e−j2π(ux+vy+wz) dx dy dz, (10.20)
−∞ −∞ −∞
6
Three Point Targets
2
Y (m)
6
6 4 2 0 2 4 6
X (m)
Figure 10.9 Simple SAR imaging scenario consisting of three point scatterers.
As in the two-dimensional case, no assumption has been made about the target’s orien-
tation, allowing θ = 0 and ψ = π/2 without loss of generality. This leads to v = 0 and
w = 0, and the three-dimensional Fourier transform is
ˆ∞ ˆ∞ ˆ∞
F (u, 0, 0) = f (x, y, z) e−j2πux dx dy dz. (10.22)
−∞ −∞ −∞
Note that the phase factor is now a function of x only, and the triple integral may be
written as
ˆ∞ ˆ∞ ˆ∞
The term inside the brackets is an expression for the projection along planes of constant
x. This may be expressed as
Tomographic Synthetic Aperture Radar 427
6 0
4 5
2 10
Cross Range (m)
0 15
(dB)
2 20
4 25
6 30
6 4 2 0 2 4 6
Range (m)
Figure 10.10 Simple SAR imaging scenario after backprojecting a single pulse.
ˆ∞ ˆ∞
Pθ=0,ψ=π/2 (x) = f (x, y, z) dy dz. (10.24)
−∞ −∞
6
Back Projection 0
4 5
2 10
Cross Range (m)
0 15
(dB)
2 20
4 25
6 30
6 4 2 0 2 4 6
Range (m)
For the three-dimensional filtered backprojection algorithm, begin by taking the inverse
Fourier transform of the object’s three-dimensional spatial frequency domain representa-
tion as
ˆ∞ ˆ∞ ˆ∞
f (x, y, z) = F (u, v, w) ej2π(xu+yv+zw) du dv dw. (10.28)
−∞ −∞ −∞
Tomographic Synthetic Aperture Radar 429
6
Back Projection 0
4 5
2 10
Cross Range (m)
0 15
(dB)
2 20
4 25
6 30
6 4 2 0 2 4 6
Range (m)
Figure 10.12 Simple SAR imaging scenario after backprojecting 100 pulses.
Since the projection functions fill in the spatial frequency domain in a spherical fashion,
make the following substitutions
which results in
ˆπ ˆ2πˆ∞ h i
f (x, y, z) = F (ω, θ, ψ) ej2πω(x cos θ sin ψ+y sin θ sin ψ+z cos ψ)
0 0 0
× ω 2 sin ψ dω dθ dψ. (10.33)
430 Introduction to Radar Using Python and MATLAB
6
Back Projection 0
4 5
2 10
Cross Range (m)
0 15
(dB)
2 20
4 25
6 30
6 4 2 0 2 4 6
Range (m)
ˆπ ˆ2π ˆ∞
where t = x cos θ sin ψ + y sin θ sin ψ + z cos ψ. The inner integral represents the
convolution of the projection function with a filter as
ˆ∞
Pθ,ψ (t) ∗ h(t) = F (ω, θ, ψ) ej2πωt ω 2 dω. (10.35)
0
The filtered projection function in (10.35) is then projected onto the image space along a
line in the same direction as the projection was obtained. This is expressed as
Tomographic Synthetic Aperture Radar 431
1D Fourier Transform
𝑃𝜃,𝜙 (𝑡) t
v 𝑆𝜃,𝜙 (𝜔)
y
u
x
w
z
𝑓(𝑥, 𝑦, 𝑧) 𝑓(𝑢, 𝑣, 𝑤)
3D Fourier Transform
Figure 10.14 Three-dimensional spatial frequency domain from one-dimensional
projection functions.
ˆπ ˆ2π
f (x, y, z) = Pθ,ψ (t) ∗ h(t) sin ψ dθ dψ. (10.36)
0 0
10.2 EXAMPLES
The sections below illustrate the concepts of this chapter with several Python examples.
The examples for this chapter are in the directory pyradar\Chapter10 and the matching
MATLAB examples are in the directory mlradar\Chapter10. The reader should consult
Chapter 1 for information on how to execute the Python code associated with this book.
432 Introduction to Radar Using Python and MATLAB
10.2.1 Two-Dimensional
This section presents examples of two-dimensional SAR imaging using the backprojec-
tion method, beginning with simple point targets, and then moving on to vehicles. The
effects of elevation, polarization, and angular span on the resulting images is shown.
As a first example, consider an imaging scenario consisting of five point scatterers located
at (3, 3), (3, −3), (0, 0), (−3, −3), and (−3, 3) meters relative to the center of the area
to be imaged. The targets have radar cross-section values of 10, 20, 30, 40, and 50 m2 ,
respectively. The azimuth angular span is −10o to 10o , the starting frequency is 1 GHz,
and the bandwidth is 500 MHz. Calculate and display the two-dimensional SAR image
for a 10m × 10 m image with 1000 × 1000 bins, a dynamic range of 40 dB, and use a
Hanning window.
Solution: The solution to the above example is given in the Python code back projection
example.py and in the MATLAB code back projection example.m. Running the Python
example code displays a GUI allowing the user to enter the parameters for the point
targets as well as the imaging parameters. The code then calculates and creates a plot of
the backprojected image, as shown in Figure 10.15. The location and relative scattering
strength of each point target is easily seen in this figure. The user is encouraged to change
the target and imaging to parameters to see how each one affects the resulting image.
For this example, consider the two-dimensional SAR imaging of a Toyota Camry. The
data was simulated at X-band with a high-frequency electromagnetic scattering code and
provided by the U.S. Air Force Sensor Data Management System (SDMS) [16]. Calculate
and display the two-dimensional SAR image of the automobile for two cases. The first
is for vertical polarization, an elevation of 30o , and an azimuth span of 0o to 90o . The
second case is also for vertical polarization, an elevation of 30o , and the azimuth span is
now 0o to 360o . The image should span 10m × 10m and have 1000 × 1000 bins. Display
the image with a dynamic range of 50 dB and use a rectangular window.
Solution: The solution to the above example is given in the Python code back projection
cv example.py and in the MATLAB code back projection cv example.m. Running the
Python example code displays a GUI allowing the user to enter the imaging parameters
and choose the data set to be used. The code then calculates and creates a plot of the
backprojected image. The image for the 90o azimuth span is given in Figure 10.16, and
the image for the 360o azimuth span is shown in Figure 10.17. As expected, the image
for the full 360o azimuth span gives much more detail than the 90o span. The user is
Tomographic Synthetic Aperture Radar 433
encouraged to change the imaging to parameters to see how each one affects the resulting
image.
10.2.1.3 Jeep
The previous example demonstrated the effect of changing the azimuth span. In this
example, the elevation angle will be varied to show how this affects the resulting image.
The data set is again from the SDMS and is for a 1999 Jeep. Calculate and display the
two-dimensional SAR image of the automobile for two cases. The first is for vertical
polarization, an elevation of 30o , and an azimuth span of 0o to 360o . The second case is
also for vertical polarization, an azimuth span of 0o to 360o , and now the elevation is 40o .
The image should span 10m × 10m and have 1000 × 1000 bins. Display the image with
a dynamic range of 50 dB and use a rectangular window.
Solution: The solution to the above example is given in the Python code back projection
cv example.py and in the MATLAB code back projection cv example.m. Running the
Python example code displays a GUI allowing the user to enter the imaging parameters
and choose the data set to be used. The code then calculates and creates a plot of the
backprojected image. The image for the 30o elevation is given in Figure 10.18, and the
image for the 40o elevation is shown in Figure 10.19. The image for the 40o elevation
shows the Jeep covering more of the image space. This is the expected difference between
434 Introduction to Radar Using Python and MATLAB
slant plane images, in which distances are measured between the sensor and the target,
and ground plane images, where distances are measured between the sensor ground track
and the target [13]. The user is encouraged to select other elevation angles and imaging
to parameters to see how these affect the resulting image.
This example will study the effect of polarization on the resulting SAR images. The
data set is for a Toyota Tacoma, which includes full polarization information, and was
provided by the SDMS. Calculate and display the two-dimensional SAR image of this
automobile for three polarizations, VV, HH, and HV. Recall from Chapter 7 that VV is
for transmit vertical and receive vertical, HH is transmit horizontal and receive horizontal,
and HV is transmit vertical and receive horizontal. All three cases use an elevation of
30o and an azimuth span of 0o to 360o . The image should span 10m × 10m and have
1000×1000 bins. Display the image with a dynamic range of 50 dB and use a rectangular
window.
Solution: The solution to the above example is given in the Python code back projection
cv example.py and in the MATLAB code back projection cv example.m. Running the
Python example code displays a GUI allowing the user to enter the imaging parameters
Tomographic Synthetic Aperture Radar 435
and choose the data set to be used. The code then calculates and creates a plot of the
backprojected image. The images for VV, HH, and HV polarizations are given in Figures
10.20, 10.21 and 10.22, respectively. The HH polarization provides slightly stronger
returns at this elevation angle, and the HV polarization is the weakest. Chapter 2 and
Chapter 7 showed some of the conditions for strong cross-polarization scattering, which
are limited for this target.
10.2.2 Three-Dimensional
This section deals with examples of three-dimensional SAR imaging using the back-
projection method, beginning with simple point targets and the more complex case of a
backhoe.
For the first three-dimensional example, consider an imaging scenario consisting of four
point scatterers located at (3, 3, −3), (−3, −3, −3), (3, −3, 3), and (−3, 3, 3) meters
relative to the center of the area to be imaged. The targets have radar cross-section values
of 10, 10, 20, and 20 m2 respectively. The azimuth angular span is 0o to 10o , the elevation
angular span is 0o to 10o , the starting frequency is 5 GHz, and the bandwidth is 1 GHz.
Tomographic Synthetic Aperture Radar 437
Calculate and display the two-dimensional SAR image for a 10m × 10m × 10m image
with 100 × 100 × 100 bins, a dynamic range of 30 dB, and use a Hanning window.
Solution: The solution to the above example is given in the Python code back projection
3d example.py and in the MATLAB code back projection 3d example.m. Running the
Python example code displays a GUI allowing the user to enter the parameters for the
point targets as well as the imaging parameters. The code then calculates and creates
a plot of the backprojected image, as shown in Figure 10.23. The location and relative
scattering strength of each point target is easily seen in this figure. Note the larger sidelobe
levels on the 20 m2 targets versus the 10 m2 targets. The user is encouraged to change the
target and imaging to parameters to see how each one affects the resulting image.
10.2.2.2 Backhoe
This example is for the three-dimensional SAR imaging for a backhoe. As with the previ-
ous examples, this data set is from the SDMS. The data set covers an elevation span from
18o to 42o and an azimuth span of 66o to 114o . Display the three-dimensional SAR image
of the backhoe for the VV polarization and a dynamic range of 45 dB. For reference, the
facet model for the backhoe is given in Figure 10.24.
Tomographic Synthetic Aperture Radar 439
Solution: The solution to the above example is given in the Python code back projection
backhoe example.py and in the MATLAB code back projection backhoe example.m.
Running the Python example code displays a GUI allowing the user to enter the imaging
parameters. The code then creates a plot of the backprojected image, as shown in Figure
10.25.
PROBLEMS
10.1 Explain the significance and outline the basic steps in tomography, and give practical
examples not listed in Table 10.1.
10.2 Describe the Radon transform and its role in the development of modern systems
employing tomographic imaging.
10.4 Explain the differences between SIRT, SART, and MART. Give examples of situations
where one may outperform the others.
10.6 What are the differences between tomographic SAR imaging and tomographic X-ray
imaging?
Tomographic Synthetic Aperture Radar 441
10.7 Explain the differences between the planar slice theorem and the linear trace theorem
for three-dimensional SAR imaging.
10.8 Why is the linear trace version used for radar imaging? Give examples of other types
of imaging that employ planar slice.
10.9 Show the three-dimensional planar slice theorem and the backprojection method for
this version.
References
[1] J. Radon, P. C. Parks (translator). On the determination of functions from their integral values along
certain manifolds. IEEE Transactions on Medical Imaging, 5(4):170–176, 1986.
[3] R. Penrose. Twistor quantisation and curved space-time. International Journal of Theoretical Physics,
1:61–99, 1968.
[4] R. Penrose. Solutions of the zero-rest-mass equations. Journal of Mathematical Physics, 10(1):38–39,
1969.
[5] A. Cormack. Representation of a function by its line integrals with some radiological implications I.
Journal of Applied Physics, 34:2722–2727, September 1963.
[6] A. Cormack. Representation of a function by its line integrals with some radiological implications II.
Journal of Applied Physics, 35:2908–2913, October 1964.
[7] G. Hounsfield. Computerized transverse axial scanning (tomography): Part 1. description of system.
British Journal of Radiology, 46:1016–1022, 1973.
[9] R. Gordon, R. Bender and G. Herman. Algebraic reconstruction techniques (ART) for three-dimensional
electron microscopy and X-ray photography. Journal of Theoretical Biology, 29(3):471–481, December
1970.
[10] P. Gilbert. Iterative methods for the three-dimensional reconstruction of an object from projections.
Journal of Theoretical Biology, 36(1):105–117, 1972.
[11] A. Andersen and A. Kak. Simultaneous algebraic reconstruction technique (SART): A superior imple-
mentation of the art algorithm. Ultrasonic Imaging, 6(1):81–94, 1984.
[12] R. Bates and T. Peters. Towards improvements in tomography. New Zealand Journal of Science, 14:883–
896, 1971.
[13] C. Jakowatz, et al. Spotlight-Mode Synthetic Aperture Radar: A Signal Processing Approach. Kluwer
Academic Publishers, Boston, 1996.
442 Introduction to Radar Using Python and MATLAB
[14] D. Munson, J. O’Brien and W. Jenkins. A tomographic formulation of spotlight-mode synthetic aperture
radar. Proceedings of the IEEE, 71(8):917–925, 1983.
[15] M. Soumekh. Synthetic Aperture Radar Signal Processing with MATLAB Algorithms. John Wiley and
Sons, New York, 1999.
[16] U.S. Air Force. Sensor Data Management System (SDMS). https://www.sdms.afrl.af.mil.
Chapter 11
Countermeasures
The concept of countermeasures to hinder the ability of radar systems to detect, track,
and discriminate targets dates back to the early days of World War II, when the United
Kingdom and Germany both engaged in the development of various countermeasure
techniques. Today, there are numerous methods for deceiving and interfering with a radar
system’s ability to perform key functions. The chapter begins with passive jamming
techniques. Next, active jamming methods, including continuous noise and deceptive
jamming, are examined. Methods for mitigating these jamming techniques, such as
space-time adaptive processing and moving target indication are presented. Finally, a
sophisticated jamming technique known as digital radio frequency memory is discussed.
The chapter concludes with several Python examples to demonstrate the applications of
countermeasure techniques.
Passive jammers do not use electronic means to modify the incoming radar signal or to
generate a jamming signal. Passive jammers include chaff, reflectors, and decoys. The
intent is to reflect the radar signal in such a fashion as to mask the target, produce false
targets, disrupt the radar signal, or otherwise deceive the radar system. Passive jamming
techniques are still in use today and can be effective when employed properly.
11.1.1 Chaff
Dispersing large quantities of chaff into the atmosphere is one of the most common forms
of passive jamming. Chaff is comprised of small thin plastic or fiberglass particles with
a thin coating of zinc or aluminum, which have a resonant frequency close to the center
frequency of the victim radar. If the number of chaff particles in the radar volume is large
enough, the reflected signal will be larger than the return from the target within the chaff
443
444 Introduction to Radar Using Python and MATLAB
cloud. There are several basic properties used to characterize chaff, including effective
scatter area, bandwidth, dispersion method, cloud size and growth rate, and spectra of
scattered signal. While chaff is a simple idea, techniques and characteristics of this type of
jamming continue to be improved [1–3]. For chaff comprised of half-wavelength dipoles,
the radar cross section of a single particle is given by
Even though chaff may stay airborne for several hours, radar systems employing moving
target indication (MTI) are less affected by this countermeasure technique. MTI systems
are designed to reject signals from fixed or slow-moving targets such as trees, oceans, and
buildings, and retain the signals from moving targets of interest such as aircraft [4]. Chaff
particles have very large aerodynamic drag, and therefore the forward velocity quickly
vanishes. This makes MTI a very appealing approach for mitigating the effects of chaff.
The spectrum of the signal reflected by a chaff cloud is in general different from the
spectrum of the signal transmitted by the radar. This is due to relative motion between the
cloud and the radar. The spectral density of the signal reflected by a chaff cloud is usually
represented by a Gaussian distribution of the form
2
/2σf2
G(f ) = G0 e−f , (11.4)
where G0 is the value G(f = 0), and σf = 2σv /λ is the mean square of the Doppler
frequency spread. Therefore, if the Doppler spread of the chaff can be estimated from
radar measurements, an MTI filter may be designed to reject the portion of the spectrum
related to chaff, as shown in Figure 11.1. Such an approach using multiple MTIs for target
tracking in highly clutter environments is given in [5].
Filter Response
Chaff Chaff
Target
0 𝑃𝑅𝐹 Frequency
Target
Chaff Chaff
0 𝑃𝑅𝐹 Frequency
Since moving targets induce a Doppler shift on the reflected signal, MTI takes advantage
of this Doppler shift to separate moving targets from stationary objects. For pulsed radar
systems, the Doppler shift manifests itself as a phase change between consecutive pulses.
For example, the return signal from consecutive pulses incident on a stationary target will
incur the same time delay, and thus have the same phase relative to the local oscillator.
On the other hand, the return signal for a moving target will have slightly different time
delays for consecutive pulses, and therefore a different relative phase. As an example,
consider a delay line canceller shown in Figure 11.2. As a pulse is received it is delayed
by the pulse repetition interval and then subtracted from the next received pulse. The
frequency response of the delay line canceller is given by [6]
2
|H(f )| = 4 sin2 (πf ) , (11.5)
where f is the normalized frequency. This frequency response is illustrated in Figure 11.3.
As seen in the figure, a null is placed about f = 0, which corresponds to chaff. However,
there are also nulls placed at multiples of the pulse repetition frequency. These are known
as blind speeds, as targets moving with those velocities are also filtered out. These blind
speeds may be alleviated with the use of varying pulse repetition intervals [4, 7].
Passive deception jamming consists mainly of decoys, which are built to imitate real
targets in shape and scattering [2, 3]. The intent is to confuse radar operators by creating
patterns of targets, deceive radar signal processing algorithms, and divert weapons from
the true targets. Other passive scattering mechanisms, such as corner reflectors and lens
reflectors, can be added to decoys to increase scattering and make them appear larger.
Airborne decoys may be towed, dropped, or have their own propulsion system such as the
BriteCloud Expendable Missile Decoy [8]. More advanced decoys also have the ability
to perform electronic jamming or drop chaff. Ground-based decoys are often lightweight
inflatable designs with radar reflective components as well as thermal signatures [9, 10].
Full Wave
Receiver Subtractor
Rectifier
Output
Delay (PRI)
10
Amplitude (dB)
15
20
25
30
0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 4.0
Normalized Frequency (f / PRF)
Figure 11.3 Frequency response of the delay line canceller.
Active jamming is the transmission of signals intended to interfere with or preclude the
normal operations of a radar system. Active jamming produces signals at the input of the
victim radar system that impede the detection and recognition of useful signals against
the background environment. This results in reduced probability of detection, reduced
measurement accuracy, and increased probability of false alarm. In this book, active
jamming will be divided into two categories, continuous noise and deceptive jamming.
Continuous noise jamming, often referred to as barrage jamming, is one of the oldest
methods and has been used successfully against a wide range of radar systems operating
in various modes [11]. The interfering signal is transmitted continuously, where one
or more of the signal parameters, including amplitude, phase, and frequency, may
change randomly. It is assumed the basic jamming system parameters, such as radiated
power, bandwidth, and polarization remain constant for a selected mode. As a first-order
approximation, it is assumed the voltage of the jamming signal is a stationary narrowband
random process in which the instantaneous values have a normal distribution and the
448 Introduction to Radar Using Python and MATLAB
frequency spectrum is uniform within the operating bandwidth of the jammer. This is
known as band-limited white Gaussian noise [12, 13]. A stationary process is a random
process whose unconditional joint probability distribution does not change when shifted
in time [14]. Consequently, the statistical properties of the process, such as mean and
variance, do not change over time. Narrowband processes have a spectral width many
times smaller than the center frequency, which is expressed as
Bj f0 (Hz), (11.6)
where Bj is the bandwidth of the process, or in this case the jammer, and f0 is the center
frequency. Recalling the probability density function for a Gaussian process given in
(6.1), the jammer power at the input to the receiver is σj2 , and the spectral density is
ˆ∞
R(τ ) = σj2 p(τ ) cos (2πf0 τ ) = cos (2πf0 τ ) Gj (f0 − t) cos (2πtτ )dt, (11.8)
−∞
where p(τ ) is the correlation coefficient. If the spectral density is constant within the
band, Bj , then
In practice, the correlation is assumed to vanish outside the correlation time. If the process
has a uniform spectral width, Bj , the correlation time is
1
τc = (s). (11.11)
2Bj
The sample functions of narrowband processes are similar to a modulated sinusoidal
signal. Therefore, the usual approximation of such a process is
Target Detected
Receiver
Noise
where the envelope and phase functions, Xj (t) and φ(t), are slowly varying in compari-
son to cos(2πf0 t). In addition, the rate of change of Xj (t) and φ(t) is inversely propor-
tional to the spectral width. Gaussian processes are more effective than uniform contin-
uous jamming. Figure 11.4 illustrates the concept of continuous noise jamming, which
may be implemented as direct noise jamming, amplitude modulated noise jamming, or
frequency modulated noise jamming. Direct noise jamming most closely represents Gaus-
sian noise, and the reader is referred to excellent references for more information on these
methods [1, 15, 16].
The effectiveness of continuous noise jamming is often characterized by the jam-
ming power to signal power ratio in the passband, Br , of the receiver [1, 17]. The power
received by the radar from the jammer is [7]
Pj Gj λ2 Gr
J= , (11.13)
(4 π rj )2 Bj Lj
where,
450 Introduction to Radar Using Python and MATLAB
Writing (4.40) in a slightly different form for jamming applications gives the power at
the radar as
Pt G2t λ2 σ
S= 3 (11.14)
(4 π) rt4 Br Lr
Pt = radar transmit power (W),
Gt = radar antenna gain in the direction of the target,
λ = wavelength (m),
σ = radar cross section of the target (m2 ),
Gr = radar receive antenna gain in the direction of the jammer,
rt = range from the radar to the target (m),
Br = radar receiver bandwidth (Hz),
Lr = radar losses.
J Pj Gj Gr 4 π rt4 Br Lr
= . (11.15)
S Pt G2t σ rj2 Bj Lj
The jammer-to-signal ratio is often written in terms of the jammer’s effective radiated
power (ERP), which is given by
Pj Gj
ERP = (W). (11.16)
Lj
This allows (11.15) to be written as
J ERP Gr 4 π rt4 Br Lr
= . (11.17)
S Pt G2t σ rj2 Bj
Note that the expressions in (11.15) and (11.17) may be used for either self-screening
or escort jamming and are valid for Bj ≤ Br . In self-screening jamming, the target
carries the jamming equipment, whereas in escort jamming the equipment is carried by
an accompanying aircraft, and may be either stand-off or stand-in jamming, as shown
in Figure 11.5. For stand-off jamming, the platform carrying the jamming equipment
maintains a path at long ranges from the victim radar. Stand-in jamming usually consists
Countermeasures 451
Target
Victim Radar Jamming
Signal
Stand-in
Jamming Stand-off
Jammer
Signal Jammer
Flight Path
Flight Path
of a remote vehicle very close to the victim radar. Typically, self-screening jamming is
deceptive jamming, and escort jamming is noise jamming [2].
When the target of interest is located at long distances from the radar, the jamming
power is typically larger than the total signal power. This is due to the jamming power
being a one-way transmission inversely proportional to r2 , and the target return is a two-
way transmission inversely proportional to r4 . However, as the target approaches the
radar, there is a range at which the received power from the jammer and the received
power from the target are equal, and the jammer-to-signal ratio becomes unity. This range
is known as the crossover range [2], and is given by
" #1/4
Pt G2t σ rj2 Bj
rc = (m), (11.18)
ERP Gr 4 π Br Lr
for escort jamming, and
s
Pt G2t σ Bj
rc = (m), (11.19)
ERP Gr 4 π Br Lr
for self-screening jamming. As with the jammer-to-signal ratio, the expressions for the
crossover range are valid for Bj ≤ Br . While (11.18) and (11.19) give the range for
the jammer-to-signal ratio equal to one, this is not sufficient to effectively perform many
radar functions such as detection, tracking, and discrimination. The range at which the
radar can perform these functions based on the required jammer-to-signal ratio is referred
to as the burn-through range, and is given by [2]
452 Introduction to Radar Using Python and MATLAB
" #1/4
Pt G2t σ rj2 Bj
rb = JSR 0 (m), (11.20)
ERP Gr 4 π Br Lr
for escort jamming, and
s
Pt G2t σ Bj
rb = JSR 0 (m), (11.21)
ERP Gr 4 π Br Lr
for self-screening jamming, where JSR 0 is the jammer-to-signal ratio required to ade-
quately perform the necessary radar functions. The expressions in (11.20) and (11.21)
are valid for Bj ≤ Br .
One mitigation technique for continuous noise jamming is space-time adaptive processing
(STAP), where a two-dimensional filter is designed in space and time to maximize the
output of the signal-to-noise ratio and thereby selectively null jammer returns [18]. STAP
uses a phased-array antenna with multiple spatial channels coupled with pulse Doppler
waveforms, as illustrated in Figure 11.6. This results in an M × N matrix at each range
bin, as shown in Figure 11.7. An adaptive weight vector is formed by applying the
statistics of the interference environment [19, 20]. The goal is to determine the optimal
weight vector and apply these weights to the received radar samples. The optimal weights
are determined from
R = y∗ .yT . (11.23)
Note that y is of length M N , thus R is of dimension M N × M N . The steering vector is
also of length M N , and is calculated as
1
e−j2πnfd
S(θt ) = , (11.24)
..
.
e−j2π(N −1)fd
where fd is the Doppler shift, and
Countermeasures 453
𝑇 𝑇 ... 𝑇
𝑤11 𝑤12 𝑤1𝑀
+
𝑁 Elements
...
Filter
Output
...
𝑀 Pulses +
𝑇 𝑇 ... 𝑇
𝑤𝑁1 𝑤𝑁2 𝑤𝑁𝑀
+
Figure 11.6 Two-dimensional STAP arrangement.
Active deception jamming seeks to inject false target-like information into the victim
radar to deny critical information about the target of interest [23]. Deceptive jammers
have receivers to analyze incoming radar signal and send back simulated target echoes at
various ranges and angles, hindering the ability of the radar to identity true targets from
false targets. Deceptive jammers do not jam the entire bandwidth and are therefore more
power-efficient.
One form of deceptive jamming, known as range gate pull-off (RGPO), seeks to
break radar lock by stealing range gates [2]. Typically, a radar initiates a new track on a
target and places range gates on either side. Signals in these range gates are zeroed out,
thereby increasing the signal-to-noise ratio on the target being tracked, and to prevent
454 Introduction to Radar Using Python and MATLAB
𝑀 Pulses
𝑁 Elements
𝒚=
𝑁 Elements
...
𝑀 Pulses
against asynchronous jamming. Once a radar has entered this tracking state, it is usually
referred to as locked on. RGPO begins by sampling the radar signal, and then transmitting
a target-like echo to the victim radar with as little time delay as possible, as illustrated
in Figure 11.8. The power of the jamming signal is increased, and the target-like echo
becomes much larger than the echo from the target. As discussed in Section 5.5, the
radar sensitivity is reduced to prevent overload of the receiver components. As a result,
the target’s return falls below the noise floor and the jammer has effectively seized the
radar’s automatic gain control. The delay in the jamming signal is slowly increased and
the tracking window follows this false target-like echo. Once the false target is some
distance from the true target return, the jamming signal is turned off and only noise
remains in the tracking window between the range gates. The jammer has accomplished
its task of breaking lock, and the victim radar often goes into search or acquisition mode.
In the discussion above, RGPO only produces false targets at ranges greater than the
true target return. If the radar’s pulse repetition frequency can be determined, then the
false targets can be placed at closer ranges by calculating the time of incidence of the
subsequent radar pulses.
Similar to RGPO is velocity gate pull-off (VGPO). This method captures velocity
gates and moves those away from the true target return. VGPO by itself is effective against
CW and Doppler velocity tracking systems. This is accomplished by first capturing the
CW or pulse Doppler frequency, then transmitting the jamming signal to create the false
target. Next, the phase (frequency) is altered to give the apparent velocity change or
Doppler shift. RGPO and VGPO may be used in conjunction to provide a more realistic
target motion and further deceive radar tracking systems.
Countermeasures 455
! ! !
≈ 0 dB ≫ 0 dB →∞
" " "
Time
PRI
Tracking Gates
Ç√ Ç√ Ç√ Ç√
Time
Figure 11.8 Target returns and jamming pulses for range gate pull-off.
RF Input RF Output
DRFM Kernel
Technique Generator
Memory Controller
STALO
11.4 EXAMPLES
The examples in the following sections illustrate the concepts of this chapter with several
Python examples. The examples for this chapter are in the directory pyradar\Chapter11
and the matching MATLAB examples are in the directory mlradar\Chapter11. The
reader should consult Chapter 1 for information on how to execute the Python code
associated with this book.
For this example, calculate and display the jammer-to-signal ratio for a self-screening
continuous noise jammer with an effective radiated power of 15 dBW and a bandwidth of
10 MHz. The victim radar has a transmit power of 100 kW, an antenna gain of 20 dB, a
458 Introduction to Radar Using Python and MATLAB
Table 11.1
DRFM Capability by Generation
bandwidth of 100 MHz, and losses of 3 dB. The target has a radar cross section of 3 dBsm.
Solution: The solution to the above example is given in the Python code jammer to signal
example.py and in the MATLAB code jammer to signal example.m. Running the Python
example code displays a GUI allowing the user to enter the parameters for the jammer,
the target, and the victim radar. The GUI also allows the user to choose between self-
screening and escort jamming. The code then calculates and creates a plot of the jammer-
to-signal ratio, as shown in Figure 11.11.
As another example of the jammer-to-signal ratio, calculate and display the jammer-to-
signal ratio for an escort continuous noise jammer with an effective radiated power of 20
dBW, a bandwidth of 100 MHz, and is located 100 km from the radar. The victim radar
has a transmit power of 100 kW, an antenna gain of 20 dB, an average sidelobe level of
−20 dB, a bandwidth of 100 MHz, and losses of 5 dB. The target has a radar cross section
Countermeasures 459
of 3 dBsm.
Solution: The solution to the above example is given in the Python code jammer to signal
example.py and in the MATLAB code jammer to signal example.m. Running the Python
example code displays a GUI allowing the user to enter the parameters for the jammer,
the target, and the victim radar. The GUI also allows the user to choose between self-
screening and escort jamming. The code then calculates and creates a plot of the jammer-
to-signal ratio, as shown in Figure 11.12.
In this example, calculate and display the crossover range for the case of a self-screening
continuous noise jammer as a function of effective radiated power. The victim radar has a
transmit power of 1 MW, an antenna gain of 40 dB, a bandwidth of 100 MHz, and losses
of 3 dB. The target has a radar cross section of 3 dBsm.
Solution: The solution to the above example is given in the Python code crossover range
example.py and in the MATLAB code crossover range example.m. Running the Python
example code displays a GUI allowing the user to enter the parameters for the jammer,
460 Introduction to Radar Using Python and MATLAB
the target, and the victim radar. The GUI also allows the user to choose between self-
screening and escort jamming. The code then calculates and creates a plot of the crossover
range, as shown in Figure 11.13.
For the next example, calculate and display the crossover range for the case of an escort
continuous noise jammer as a function of effective radiated power. The jammer is located
at a range of 5 km from the radar and has a bandwidth of 200 MHz. The victim radar has
a transmit power of 60 kW, an antenna gain of 40 dB, an average sidelobe level of −20
dB, a bandwidth of 100 MHz, and losses of 6 dB. The target has a radar cross section of
−20 dBsm.
Solution: The solution to the above example is given in the Python code crossover range
example.py and in the MATLAB code crossover range example.m. Running the Python
example code displays a GUI allowing the user to enter the parameters for the jammer,
the target, and the victim radar. The GUI also allows the user to choose between self-
screening and escort jamming. The code then calculates and creates a plot of the crossover
range, as shown in Figure 11.14.
Countermeasures 461
For this example, calculate and display the burn-through range for the case of a self-
screening continuous noise jammer as a function of effective radiated power. The victim
radar has a transmit power of 100 MW, an antenna gain of 30 dB, a bandwidth of 20
MHz, and losses of 3 dB. The target has a radar cross section of −10 dBsm. The required
jammer-to-signal ratio is −20 dB.
Solution: The solution to the above example is given in the Python code burn-
through range example.py and in the MATLAB code burnthrough range example.m.
Running the Python example code displays a GUI allowing the user to enter the param-
eters for the jammer, the target, and the victim radar. The GUI also allows the user to
choose between self-screening and escort jamming. The code then calculates and creates
a plot of the burn-through range, as shown in Figure 11.15.
In this example, calculate and display the burn-through range for the case of an escort
continuous noise jammer as a function of effective radiated power. The jammer is located
at a range of 10 km from the radar and has a bandwidth of 100 MHz. The victim radar
Countermeasures 463
has a transmit power of 1.2 MW, an antenna gain of 35 dB, an average sidelobe level of
−20 dB, a bandwidth of 50 MHz, and losses of 6 dB. The target has a radar cross section
of −20 dBsm.
Solution: The solution to the above example is given in the Python code burn-
through range example.py and in the MATLAB code burnthrough range example.m.
Running the Python example code displays a GUI allowing the user to enter the param-
eters for the jammer, the target, and the victim radar. The GUI also allows the user to
choose between self-screening and escort jamming. The code then calculates and creates
a plot of the crossover range, as shown in Figure 11.16.
As a last example, calculate and display the MTI filter response for the multiple pulse
repetition frequency case when the second pulse repetition frequency is 5/4 of the first
pulse repetition frequency.
Solution: The solution to the above example is given in the Python code delay line
example.py and in the MATLAB code delay line example.m. Running the Python exam-
ple code displays a GUI allowing the user to choose single or staggered pulse repetition
464 Introduction to Radar Using Python and MATLAB
Figure 11.17 MTI filter response for staggered PRFs calculated by delay line example.py.
frequencies, and to enter the value of the stagger. The code then calculates and creates a
plot of the MTI filter response, as shown in Figure 11.17.
PROBLEMS
11.1 Describe the major differences between active and passive jamming and give examples
of each.
11.2 For continuous noise jamming, explain how the jammer bandwidth and radar receiver
bandwidth influence the effectiveness of the technique.
11.3 Calculate the effective radiated power of a jammer with a transmit power of 10 dBW,
an antenna gain of 20 dB, and total losses of 6 dB.
11.4 Using the ERP from Problem 11.3, calculate the jammer-to-signal ratio for an escort
type jammer with a bandwidth of 100 MHz. The victim radar has a transmit power of
30 kW, an antenna gain of 35 dB, a receiver bandwidth of 10 MHz, and losses of 3 dB.
The target has a radar cross section of −10 dBsm and is 30 km from the radar.
Countermeasures 465
11.5 For stand-off type jamming, find the crossover range for a jammer bandwidth of 30
MHz and ERP of 15 dBW. The victim radar has a transmit power of 10 kW, an antenna
gain of 25 dB, an average sidelobe level of −30 dB, a receiver bandwidth of 20 MHz,
and losses of 6 dB. The target has a radar cross section of 10 dBsm. The range to the
jammer is 5 km.
11.6 Using the radar, target, and jammer parameters given in Problem 11.5, calculate the
burn through range when the required jammer to signal ratio is −20 dB.
11.7 Describe how space-time adaptive processing is used to mitigate continuous noise
jamming and give examples of methods used to reduce the computational complexity.
11.8 How may range gate pull-off and velocity gate pull-off be used in conjunction to be
more effective than either method alone?
11.9 Give an example scenario where inverse gain jamming would be more effective than
cross-eye jamming.
11.10 Find the number of half-wavelength dipole particles required to produce a chaff cloud
with a radar cross section of 30 dBsm. Assume 10% breakage during deployment of
the chaff.
11.11 Describe how moving target indication may be used to mitigate chaff countermea-
sures. Also, discuss the benefit of using multiple delay lines to improve MTI filter
performance.
11.12 Explain the advantages of passive deception and give an example scenario where this
type of countermeasure technique would be effective.
11.13 Give the major advantages and disadvantages of digital radio frequency memory as a
countermeasure technique.
11.14 Describe the recent hardware and software advances used to make DRFM highly
effective as a mechanism of jamming a wide variety of radar systems.
References
[1] M. Atrazhev, V. Il’in and N. Mar’in. Bor’ba s Padioelektronnymi Sredstvami. Voyenizdat, Moscow, 1972.
[2] Electronic Warfare and Radar Systems Engineering Handbook. Naval Air Warfare Center, Point Mugu,
CA, 1999.
466 Introduction to Radar Using Python and MATLAB
[3] D. Adamy. EW 101: A First Course in Electronic Warfare. Artech House, Norwood, MA, 2001.
[5] J. Madewell. Mitigating the effects of chaff in ballistic missile defense. Proceedings of the 2003 IEEE
Radar Conference, pages 19–22, 2003.
[6] B. R. Mahafza. Radar Systems Analysis and Design Using MATLAB, 3rd ed. CRC Press, Boca Raton,
FL, 2013.
[7] B. R. Mahafza and A. Elsherbeni. MATLAB Simulations for Radar Systems Design. Chapman and
Hall/CRC, New York, 2003.
[11] M. Maksimov, et al. Radar Anti-Jamming Techniques. Artech House, Dedham, MA, 1979.
[12] V. Tikhonov. Examples and Problems in Statistical Radio Engineering. Soviet Radio Publishing House,
Moscow, 1970.
[13] V. Tikhonov. Statistical Radio Engineering. Soviet Radio Publishing House, Moscow, 1966.
[15] B. Kovit, I. Holahan and P. Dax. Electronic Countermeasures and Counter-Countermeasure Techniques.
Soviet Radio Publishing House, Moscow, 1966.
[16] V. Druzhinin. Handbook on Principles of Radar. Soviet Radio Publishing House, Moscow, 1967.
[17] S. Vakin and L. Shustov. Principles of Jamming and Electronic Reconnaissance. Soviet Radio Publishing
House, Moscow, 1968.
[18] W. Melvin. A STAP overview. IEEE Aerospace and Electronic Systems Magazine, 19(1):19–35, 2004.
[19] J. Guerci. Space-Time Adaptive Processing for Radar. Artech House, Norwood, MA, 2003.
[20] D. Dudgeon and R. Mersereau. Multidimensional Digital Signal Processing. Prentice-Hall Signal
Processing Series, 1984.
[21] H. Van Trees. Optimum Array Processing. John Wiley & Sons, New York, 2002.
[22] J. Li and P. Stoica. MIMO Radar Signal Processing. John Wiley & Sons, New York, 2009.
[23] X. Tian. Radar deceptive jamming detection based on goodness-of-fit testing. Journal of Information and
Computational Science, 9(13):3839, 2012.
[24] A. Graham. Communications, Radar and Electronic Warfare. John Wiley & Sons, New York, 2011.
[25] T. Tucker and B. Vidger. Cross-eye jamming effectiveness, 2013. Tactical Technologies, Inc.
Countermeasures 467
[26] D. Adamy. EW 104: EW Against a New Generation of Threats. Artech House, Norwood, MA, 2015.
[27] S. Spector. A coherent microwave memory using digital storage: The loopless memory loop. Electronic
Defense, 1975.
[28] J. Strydom and J. Cillers. Advances in the testing and evaluation of airborne radar through realtime
simulation of synthetic clutter. 48th Annual AOC International Symposium and Convention, 2011.
[29] J. Strydom, et al. Advances in the realtime simulation of synthetic clutter for radar testing and evaluation.
47th Annual AOC International Symposium and Convention, 2010.
[31] Dynetics, Inc. PhantomRF: Advanced DRFM target generator for radar test and evaluation. https:
//www.dynetics.com/ files/fact-sheets/Dynetics\%20Phantom\%20RF.pdf.
[34] CSIR. The Council for Scientific and Industrial Research. https://www.csir.co.za.
[35] Kratos Defense and Security Solutions, Inc. Wideband Digital RF Memory. http://www.
kratosdefense.com/page/search?q=drfm-wb.
About the Author
Andy Harrison received a bachelor of science, master of science, and doctor of philoso-
phy in electrical engineering from the University of Mississippi in 1994, 1996, and 1999,
respectively. His studies focused on electromagnetic theory, microwave measurements,
antenna analysis and design, acoustics, and computational electromagnetics. His graduate
research dealt with the use of wavelet-like basis functions in the finite element solution
of partial differential equations. He has authored several papers in areas of computational
electromagnetics and global optimization techniques and taught short courses in radar
system design, simulation, and analysis.
Dr. Harrison served as an associate editor for the Applied Computational Electro-
magnetics Society and the Southeastern Symposium on System Theory. He is a senior
member of the Institute of Electrical and Electronics Engineers and served as vice chair
as well as education chair for the Mississippi section. He also served on the Electrical
Engineering Industrial Advisory Board. He is a member of the electrical engineering
honor society, Eta Kappa Nu (Epsilon Omega Chapter), the scientific research honor
society, Sigma Xi, and the Antenna Measurements Techniques Association.
Dr. Harrison received recognition for his outstanding performance while supporting
both the Ground-based Midcourse Defense X-Band Radar System Engineering Division
and the Sea-Based X-Band Radar Requirements and Analysis team. He was also recog-
nized for his significant contributions to the Missile Defense Agency’s Project Hercules.
469
Index
471
472 INDEX