100% found this document useful (1 vote)
426 views

Andy Harrison - Introduction To Radar Using Python and MATLAB-Artech House (2019)

Uploaded by

Julio D'Orazi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
426 views

Andy Harrison - Introduction To Radar Using Python and MATLAB-Artech House (2019)

Uploaded by

Julio D'Orazi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 491

Introduction to Radar Using

Python and MATLAB®


For a complete listing of titles in the
Artech House Radar Series,
turn to the back of this book.
Introduction to Radar Using
Python and MATLAB®

Andy Harrison
Library of Congress Cataloging-in-Publication Data
A catalog record for this book is available from the U.S. Library of Congress.

British Library Cataloguing in Publication Data


A catalogue record for this book is available from the British Library.

Cover design by John Gomes

ISBN 13: 978-1-63081-597-4

© 2020 ARTECH HOUSE


685 Canton Street
Norwood, MA 02062

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.

Accompanying software is located at:


https://radarbook.github.io/, and the password is: $PythonRadarBook!

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

2 Electromagnetic Fields and Waves 15


2.1 Maxwell’s Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Time Harmonic Electromagnetics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3 Electromagnetic Boundary Conditions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.1 General Material Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3.2 Dielectric Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.3 Perfect Electric Conductor Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.4 Perfect Magnetic Conductor Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.5 Radiation Condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4 Wave Equations and Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.1 Scalar and Vector Potentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.2 Fields Due to Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.3 Source Free Fields. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.5 Plane Waves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

v
vi Introduction to Radar Using Python and MATLAB

2.5.1 Plane Waves in Lossless Media. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25


2.5.2 Plane Waves in Lossy Media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.5.3 Plane Waves in Low-Loss Dielectrics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.5.4 Plane Waves in Good Conductors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.6 Plane Wave Reflection and Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.6.1 Perpendicular Polarization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.6.2 Parallel Polarization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.6.3 Brewster Angle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.6.4 Critical Angle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
2.7 Tropospheric Refraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.7.1 Apparent Elevation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.7.2 Apparent Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
2.7.3 Beam Spreading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.7.4 Ducting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.8 Earth Diffraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2.8.1 Case 1: d ≥ dlos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.8.2 Case 2: d < dlos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.9 Plane Wave Attenuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.9.1 Atmospheric Attenuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.9.2 Attenuation in Vegetation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.9.3 Rain Attenuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.9.4 Cloud and Fog Attenuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.10 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.10.1 Plane Wave Propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.10.2 Reflection and Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.10.3 Tropospheric Refraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.10.4 Earth Diffraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
2.10.5 Attenuation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

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

3.2.1 Linear Wire Antennas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79


3.2.2 Loop Antennas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
3.2.3 Aperture Antennas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
3.2.4 Horn Antennas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
3.2.5 Antenna Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.3 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
3.3.1 Finite Length Dipole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
3.3.2 Circular Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
3.3.3 Rectangular Aperture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
3.3.4 Circular Aperture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
3.3.5 Pyramidal Horn. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
3.3.6 Tschebyscheff Linear Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
3.3.7 Planar Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
3.3.8 Circular Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

4 The Radar Range Equation 123


4.1 Hertzian Dipole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.1.1 Radiated Power . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.1.2 Radiation Intensity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.1.3 Directivity and Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.2 Basic Radar Range Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4.2.1 Maximum Detection Range. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.2.2 Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.2.3 Losses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.2.4 Radar Reference Range and Loop Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.3 Search Radar Range Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.4 Bistatic Radar Range Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
4.4.1 Maximum Detection Range. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
4.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.5.1 Hertzian Dipole. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.5.2 Basic Radar Range Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
4.5.3 Search Radar Range Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
4.5.4 Bistatic Radar Range Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

5 Radar Receivers 153


5.1 Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
5.2 Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
5.3 Dynamic Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
viii Introduction to Radar Using Python and MATLAB

5.4 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159


5.5 Gain Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
5.6 Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
5.7 Demodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
5.7.1 Noncoherent Detection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
5.7.2 Coherent Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
5.8 Analog-to-Digital Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
5.8.1 Sampling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
5.8.2 Quantization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
5.9 Digital Receivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
5.9.1 Direct Digital Downconversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
5.9.2 Hilbert Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
5.10 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.10.1 Sensitivity Time Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.10.2 Noise Figure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
5.10.3 Receiver Filtering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
5.10.4 Noncoherent Detection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
5.10.5 Coherent Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5.10.6 Analog-to-Digital Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
5.10.7 Analog-to-Digital Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183

6 Target Detection 185


6.1 Optimal Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
6.1.1 Neyman-Pearson Lemma . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
6.1.2 Noncoherent Detection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
6.1.3 Coherent Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
6.2 Pulse Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
6.2.1 Coherent Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
6.2.2 Noncoherent Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
6.2.3 Binary Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
6.2.4 Cumulative Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
6.3 Fluctuating Target Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
6.3.1 Swerling 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
6.3.2 Swerling I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
6.3.3 Swerling II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.3.4 Swerling III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.3.5 Swerling IV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
6.3.6 Shnidman’s Equation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.4 Constant False Alarm Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
6.4.1 Cell Averaging CFAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
Contents ix

6.4.2 Cell Averaging Greatest of CFAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214


6.4.3 Censored Greatest of CFAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
6.4.4 Cell Averaging Smallest of CFAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
6.4.5 Ordered Statistic CFAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
6.4.6 Cell Averaging Statistic Hofele CFAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
6.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
6.5.1 Probability Distributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
6.5.2 Detection Probability with Gaussian Noise . . . . . . . . . . . . . . . . . . . . . . . 221
6.5.3 Detection Probability with Rayleigh Noise . . . . . . . . . . . . . . . . . . . . . . . 222
6.5.4 Single Pulse signal-to-noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
6.5.5 Binary Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
6.5.6 Optimum Binary Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
6.5.7 Coherent Pulse Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
6.5.8 Noncoherent Pulse Integration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
6.5.9 Shnidman’s Approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
6.5.10 Constant False Alarm Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233

7 Radar Cross Section 235


7.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
7.1.1 Angle Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
7.1.2 Frequency Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
7.1.3 Polarization Variation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
7.2 Scattering Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
7.3 Scattering Mechanisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.4 Prediction Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.4.1 Analytical Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.4.2 Numerical Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
7.4.3 Measurement Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
7.5 Radar Cross-Section Reduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
7.5.1 Shaping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
7.5.2 Radar Absorbing Material . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
7.5.3 Passive Cancellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
7.5.4 Active Cancellation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
7.5.5 Electronic Countermeasures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
7.6 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
7.6.1 Two-Dimensional Strip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
7.6.2 Two-Dimensional Cylinder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
7.6.3 Two-Dimensional Cylinder Oblique Incidence . . . . . . . . . . . . . . . . . . . 290
7.6.4 Rectangular Plate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
7.6.5 Stratified Sphere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
x Introduction to Radar Using Python and MATLAB

7.6.6 Circular Cone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292


7.6.7 Rounded Nose Cone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
7.6.8 Frustum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
7.6.9 Physical Optics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
7.6.10 Finite Difference Time Domain Method . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303

8 Pulse Compression 309


8.1 Range Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
8.2 Stepped Frequency Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
8.3 Matched Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
8.4 Stretch Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
8.5 Windowing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
8.6 Ambiguity Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
8.6.1 Single Unmodulated Pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
8.6.2 Single LFM Pulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
8.6.3 Generic Waveform Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
8.7 Phase-Coded Waveforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
8.7.1 Barker Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336
8.7.2 Frank Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
8.7.3 Pseudorandom Number Codes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
8.8 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
8.8.1 Stepped Frequency Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
8.8.2 Matched Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
8.8.3 Stretch Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
8.8.4 Unmodulated Pulse Ambiguity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
8.8.5 LFM Pulse Ambiguity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
8.8.6 Coherent Pulse Train Ambiguity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
8.8.7 LFM Pulse Train Ambiguity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
8.8.8 Barker Code Ambiguity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
8.8.9 PRN Code Ambiguity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
8.8.10 Frank Code Ambiguity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359

9 Target Tracking 361


9.1 Tracking Filters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
9.1.1 Alpha-Beta Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
9.1.2 Alpha-Beta-Gamma Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
9.1.3 Kalman Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
9.2 Multitarget Tracking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
Contents xi

9.2.1 Global Nearest Neighbor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383


9.2.2 Joint Probabilistic Data Association. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
9.2.3 Multiple Hypothesis Tracker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
9.2.4 Random Finite Set. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393
9.3 Measurement Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
9.4 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
9.4.1 Alpha-Beta Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
9.4.2 Alpha-Beta-Gamma Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
9.4.3 Kalman Filter: Constant Velocity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
9.4.4 Kalman Filter: Constant Acceleration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
9.4.5 Adaptive Kalman Filter: Epsilon Method . . . . . . . . . . . . . . . . . . . . . . . . 403
9.4.6 Adaptive Kalman Filter: Sigma Method . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411

10 Tomographic Synthetic Aperture Radar 413


10.1 Tomography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
10.1.1 History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
10.1.2 Line Integrals and Projections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
10.1.3 SAR Imaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
10.1.4 Three-Dimensional Tomography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
10.2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
10.2.1 Two-Dimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
10.2.2 Three-Dimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441

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

11.4.7 Moving Target Indication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463


Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465

About the Author 469

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.

1.1 HISTORY OF RADAR

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].

1.2 RADAR CLASSIFICATION

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.

1.2.1 Frequency Band

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

Band Frequency Range Applications


HF (high frequency) 3 − 30 MHz Coastal radar and over the horizon systems

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

L (long) 1 − 2 GHz Long-range air traffic control and surveillance

S (short) 2 − 4 GHz Medium-range surveillance, long-range weather,


and marine systems

C (compromise) 4 − 8 GHz Long-range tracking, medium-range surveillance,


and wind profiles

X (secret during WW II) 8 − 12 GHz Missile guidance, marine radar, and


medium-resolution mapping

Ku (under K) 12 − 18 GHz High-resolution imaging and marine applications

K (kurz) 18 − 24 GHz Cloud detection and police radar guns

Ka (above K) 24 − 40 GHz High-resolution mapping and short-range


surveillance

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

Waveform Type Note Applications


Continuous wave Unmodulated Police radars and human gait recognition

Modulated Automotive collision avoidance, intelligent housing,


ground clutter, and wind speed/direction

Pulsed CW Low PRF Airborne and ground-based moving target indication (MTI)
and long-range surveillance

Medium PRF Ground-based surveillance and airborne interceptors

High PRF Imaging, missile seekers, and short-range weapon control

Pulsed CW Noncoherent Surveillance radar and some MTI applications

Coherent Imaging, clutter suppression, and weather phenomena

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).

• Multistatic systems use multiple transmitting and receiving antennas


(α1 , α2 , · · · , αn 6= 0).
Introduction 5

Target Position

𝑟𝑡 𝛼
𝑟𝑟
Transmitting
Radar Position
Receiving
Radar Position

Figure 1.1 Bistatic radar transmitting and receiving configuration.

Target Position

𝛼1
𝛼2
Transmitting 𝛼3 Receiving
Radar Position Radar Positions

Figure 1.2 Multistatic radar transmitting and receiving configuration.


6 Introduction to Radar Using Python and MATLAB

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

Airborne military AN/APG-79, AN/APG-82, AN/APY-12

Air traffic control Monopulse Secondary Surveillance Radar, SKLYER,


Enterprise Air Surveillance Radar (EASR)

Air and missile defense AN/MPQ-53, AN/MPQ-64, AN/TPQ-53

Ballistic missile defense AN/TPY-2, Upgraded Early Warning Radar (UEWR),


Long Range Discrimination Radar (LRDR)

Synthetic aperture radar RADARSAT, UAVSAR, ASARS, TRACER

1.3 ACCOMPANYING SOFTWARE

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.

Listing 1.1 Installation of Necessary Python Packages

>> pip install numpy


>> pip install scipy
>> pip install matplotlib
>> pip install pyqt5
8 Introduction to Radar Using Python and MATLAB

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

Figure 1.5 Download Python for the particular operating system.

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

Figure 1.8 Execute a MATLAB script from the editor.

Figure 1.9 Example plot generated by the MATLAB script.


12 Introduction to Radar Using Python and MATLAB

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.

2.1 MAXWELL’S EQUATIONS

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

E~ = electric field intensity (V/m),


H~ = magnetic field intensity (A/m),
D~ = electric flux density (C/m2 ),
B~ = magnetic flux density (Wb/m2 ),
J~ = electric current density (A/m2 ),
ρ = electric charge density (C/m3 ).

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.

2.2 TIME HARMONIC ELECTROMAGNETICS

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)

The permittivity, which is denoted by , is the amount of resistance to the formation


of an electric field in a medium. The SI unit for permittivity is Farad per meter (F/m). The
permittivity of vacuum is defined as
18 Introduction to Radar Using Python and MATLAB

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

µ0 = 4π × 10−7 (H/m). (2.15)


The permeability of a material is often specified by its relative permeability, which is its
value relative to free space. The absolute permeability is given as µ = µr µ0 . For linear,
homogeneous, isotropic materials, B = µH, where µ is a scalar.

2.3 ELECTROMAGNETIC BOUNDARY CONDITIONS

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.

2.3.1 General Material Interface

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
(#$ , &$ , '$ )

E1, H1, D1, B1


Js rs
•••• n!

Region 2
(#) , &) , ') )

E2, H2, D2, B2

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.

2.3.2 Dielectric Interface

At a dielectric interface, there are ordinarily no surface currents or charges. Therefore,


the boundary conditions become

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

2.3.3 Perfect Electric Conductor Interface

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)

2.3.4 Perfect Magnetic Conductor Interface

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)

2.3.5 Radiation Condition

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.

2.4 WAVE EQUATIONS AND SOLUTIONS

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.

2.4.1 Scalar and Vector Potentials

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

E = −∇V − jωA. (2.35)


22 Introduction to Radar Using Python and MATLAB

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) = µJ + jωµ(−∇V − jωA). (2.36)


Using the vector identity

∇ × (∇ × A) = ∇(∇ · A) − ∇2 A, (2.37)
results in

∇2 A + ω 2 µA = −µJ − ∇(∇ · A + jωµV ). (2.38)


The vector potential, A, is arbitrary to the extent that the gradient of some scalar function
can be added. This means ∇ · A may be specified in any manner and still obtain the same
physical results. This is expressed as

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.

2.4.2 Fields Due to Sources

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).

2.4.3 Source Free Fields

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.

2.5 PLANE WAVES

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.5.1 Plane Waves in Lossless Media

A lossless medium is described by real valued µ and . Therefore, the wavenumber, k, is


also real valued. The wave equation for the electric field, E, in Cartesian coordinates is
equivalent to three scalar Helmholtz equations; one for each component Ex , Ey , and Ez .
To find the basic plane wave solution, consider an electric field possessing only an Ex
component and propagating in the positive z direction. Ey = Ez = 0, and the expression
for Ex is written as
 2
∂2 ∂2

∂ 2
+ + + k Ex = 0. (2.55)
∂x2 ∂y 2 ∂z 2
Recall, a uniform plane wave is described by uniform magnitude and phase over planar
surface perpendicular to the direction of propagation. This is expressed as

∂ 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

Ex (z) = E + e−jkz + E − ejkz . (2.58)


Since (2.57) is a second-order equation, its solution contains two constants of integration,
E + and E − . These are arbitrary constants that are determined by enforcing the boundary
conditions. Using (2.8), the time domain result is then

Ex (z, t) = E + cos(ωt − kz) + E − cos(ωt + kz). (2.59)


The first term on the right-hand side of (2.59) represents a wave traveling in the positive z
direction. To illustrate this, consider Figure 2.2, where E + cos(ωt − kz) has been plotted
for various values of time, t. At each successive time, the curve has effectively traveled
in the positive z direction. Considering a particular phase on the wave, set cos(ωt − kz)
equal to a constant. Alternatively, set ωt − kz = C, where C is a constant. As time, t,
increases, z must also increase to keep the phase term constant.
26 Introduction to Radar Using Python and MATLAB

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.

The velocity of propagation of the wavefront is referred to as the phase velocity,


and is given by  
dz d ωt − C ω
vp = = = (m/s). (2.60)
dt dt k k
In free space this becomes
ω 1
vp = =√ =c (m/s). (2.61)
k µ0 0
The speed of light in free space, c, is a universal physical constant, and its exact value
is 299,792,458 (m/s). Referring again to Figure 2.2, the wavelength, λ, is the distance
between two successive reference points, such as a maximum or minimum, at a particular
instance of time. This represents the spatial period of the wave. Therefore,

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

where Ex+ (z) = E + e−jkz . This gives


1 + −jkz
H= E e ŷ, (2.65)
η
p
where η = µ/, is the wave impedance for a plane wave and is the ratio of the electric
and magnetic fields. Since η is a real number, E and H are in phase, and the instantaneous
expression for H is

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.

2.5.2 Plane Waves in Lossy Media

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

[ Uniform planar phase front

([

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,

Ex (z) = E + e−γz + E − eγz . (2.74)


Considering for now only the positive z traveling wave,

Ex (z) = E + e−γz = E + e−αz e−jβz . (2.75)


Using (2.8), the time domain representation is given by

Ex (z, t) = E + e−αz cos(ωt − βz). (2.76)


−αz
The first term, e , decreases as z increases, and is therefore an attenuation that is
expressed in units of nepers per meter. The second term, cos(ωt − βz), indicates the
wave is traveling in the positive z direction with a phase velocity of ω/β and wavelength
λ = 2π/β. As σ → 0, the expressions for this case reduce to the lossless case. Namely,
γ = jk and α → 0, β → k. The magnetic field is found from (2.69) as
j ∂Ex −jγ + −γz
− E − eγz .

Hy (z) = = E e (2.77)
ωµ ∂z ωµ
As in the previous case, the wave impedance is the ratio of the electric and magnetic
fields. For the lossy case, this becomes
1 + −γz
− E − eγz ,

Hy (z) = E e (2.78)
η
where
jωµ
η= (ohms). (2.79)
γ

2.5.3 Plane Waves in Low-Loss Dielectrics

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

and the phase constant is


 
√ 1  σ 2
β = jω µ 1 + (rad/m). (2.83)
8 ω
The attenuation constant is a positive value directly related to the conductivity. The
propagation constant varies only slightly from the lossless case. The wave impedance
is found to be
r  r 
µ σ −1/2 µ σ 
η= 1−j ≈ 1+j . (2.84)
 ω  2ω
Recall that the wave impedance is the ratio of the electric and magnetic fields, Ex and
Hy , for a uniform plane wave. Since η is a complex value, this means the electric and
magnetic fields are not in time phase as they are in the case of a lossless material. The
phase velocity is calculated from ω/β as
 
ω 1 1  σ 2
vp = ≈ √ 1− (m/s). (2.85)
β µ 8 ω

2.5.4 Plane Waves in Good Conductors

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.

2.6 PLANE WAVE REFLECTION AND TRANSMISSION

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

Material Resistivity (Ohm · m) Conductivity (S/m)


Silver 1.59 × 10−8 6.30 × 107
Copper 1.68 × 10−8 5.96 × 107
Gold 2.44 × 10−8 4.10 × 107
Aluminum 2.65 × 10−8 3.77 × 107
Iron 9.71 × 10−8 1.00 × 107
Lead 2.20 × 10−7 4.55 × 106
Seawater 2.00 × 10−1 4.8
Wood 103 to 104 10−4 to 10−3
Glass 1011 to 1015 10−15 to 10−11
Rubber 1013 10−14

Table 2.2
Plane Wave Propagation Parameters in Various Media

Parameter Lossless Lossy


√ √ p
Propagation constant (γ) jω µ jω µ 1 − jσ/ω

Phase constant (β) ω µ Im(γ)

Attenuation constant (α) 0 Re(γ)


p
Wave impedance (η) µ/ jωµ/γ

Skin depth (δs ) ∞ 1/α

Wavelength (λ) 2π/β 2π/β

Phase velocity (vp ) ω/β ω/β


32 Introduction to Radar Using Python and MATLAB

Table 2.3
Plane Wave Propagation Parameters in Various Media

Parameter Low-Loss Dielectric Good Conductor


 2 
√  p
Propagation constant (γ) jω µ 1 − jσ/2ω + (1/8) σ/ω (1 + j) ωµσ/2

 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/ωµσ

Wavelength (λ) 2π/β 2π/β

Phase velocity (vp ) ω/β ω/β

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.

2.6.1 Perpendicular Polarization

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

Region 1 (𝜇1 , 𝜖1 , 𝜎1 ) Region 2 (𝜇2 , 𝜖2 , 𝜎2 )

Figure 2.4 Plane wave obliquely incident on the interface between two lossy dielectrics.

Ei = E0 e−γ1 (x sin θi +z cos θi ) ŷ, (2.89)


where the direction of propagation is now (x sin θi + z cos θi ). This reduces to a wave
propagating in the z direction for θi = 0. Using (2.51), the incident magnetic field is

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

Er = E0 ΓT E e−γ1 (x sin θi −z cos θi ) ŷ. (2.92)


ΓT E is known as the reflection coefficient and is the ratio of the amplitude of the reflected
electric field to the incident electric field. It is therefore a measure of how much of the
incident field is reflected back into Region 1. The reflection coefficient, ΓT E , is often
written as Γ⊥ to explicitly indicate perpendicular polarization. Just as in the case of the
incident fields, the reflected magnetic field is found from (2.51), and is given as
E0 ΓT E h −γ1 (x sin θr −z cos θr ) i
Hr = e (cos θr x̂ + sin θr ẑ) . (2.93)
η1
The fields transmitted into Region 2 follow the same form as the incident fields, with
the incident angle, θi , being replaced by transmitted angle, θt . Also, the propagation
constant for Region 1, γ1 , is replaced by the propagation constant for Region 2, γ2 . The
Electromagnetic Fields and Waves 35

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

Et = E0 TT E e−γ2 (x sin θt +z cos θt ) ŷ, (2.94)

E0 TT E h −γ2 (x sin θt +z cos θt ) i


Ht = e (− cos θi x̂ + sin θi ẑ) . (2.95)
η2
At this point there are four unknowns, ΓT E , TT E , θr , and θt . In order to find these
unknowns, the boundary conditions from Section 2.3 are used, specifically (2.16) and
(2.17), which relate the tangential components of the electric and magnetic fields at the
interface. Enforcing the continuity of Ey and Hx at the interface results in

e−γ1 x sin θi + ΓT E e−γ1 x sin θr = TT E e−γ2 x sin θt , (2.96)

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 sin θi = γ1 sin θr = γ2 sin θt , (2.98)


which leads to

θi = θr , γ1 sin θi = γ2 sin θt . (2.99)


This is the well-known Snell’s laws of reflection and refraction [13]. Using these results
in (2.96) and (2.97) gives

1 + ΓT E = TT E , (2.100)

cos θi cos θr cos θt


− ΓT E = TT E . (2.101)
η1 η1 η2

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

2.6.2 Parallel Polarization

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

Er = E0 ΓT M e−γ1 (x sin θr −z cos θr ) (cos θr x̂ + sin θr ẑ) . (2.109)


Electromagnetic Fields and Waves 37

[
(U

+U
(W

+W
șU
șW

șL ]

(L

+L

Region 1 (𝜇1 , 𝜖1 , 𝜎1 ) Region 2 (𝜇2 , 𝜖2 , 𝜎2 )

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

Et = E0 TT M e−γ2 (x sin θt +z cos θt ) (cos θt x̂ − sin θt ẑ) , (2.110)

E0
Ht = TT M e−γ2 (x sin θt +z cos θt ) ŷ. (2.111)
η2
Using Snell’s law results in

cos θi + ΓT M cos θr = TT M cos θt , (2.112)

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

2.6.3 Brewster Angle

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

η2 cos θt = η1 cos θi = η1 cos θB . (2.117)


Again using Snell’s law, (2.117) becomes
" #
2 η12 /η22 − 1
sin θB = . (2.118)
η12 /η22 − γ12 /γ22
Figure 2.7 shows the magnitude of the reflection coefficient for both TE and TM waves as
a function of incident angle. The relative permittivity for Region 1 is 1.3 and the relative
permittivity for Region 2 is 2.8. It is seen in this figure the Brewster angle is located at
55.7o . A Brewster angle does not exist for perpendicular polarization and nonmagnetic
material. For optics and lasers, the Brewster angle is referred to as the polarizing angle.
The reader is referred to [13] for more detailed information.

2.6.4 Critical Angle

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

γ1 sin θi = γ2 sin θt . (2.119)


o
Setting θt = 90 results in
Electromagnetic Fields and Waves 39

Plane Wave Reflection Coefficients


1.0
1.0 | TE|
| TM|

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].

2.7 TROPOSPHERIC REFRACTION

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

Region 1 (𝜇1 , 𝜖1 , 𝜎1 ) Region 2 (𝜇2 , 𝜖2 , 𝜎2 )

Figure 2.8 Critical angle for total reflection.

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.

2.7.1 Apparent Elevation

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)

Target Apparent Position

Refracted Path
Target True Position

𝜃𝑡𝑟𝑢𝑒 𝜃𝑎𝑝𝑝𝑎𝑟𝑒𝑛𝑡

Figure 2.9 True and apparent target positions due to refraction.


42 Introduction to Radar Using Python and MATLAB

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]

n(z) = 1 + α e−βz , (2.125)


where α = 0.000315, and β = 0.1361. The relationship between the true elevation angle,
θt , and apparent elevation angle, θa , is given by

θa = θt + ∆θ. (2.126)

2.7.2 Apparent Range

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

2.7.3 Beam Spreading

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

A = −10 log(B) (dB), (2.129)


where

B = 1− 0.5411 + 0.07446 θ + (0.06272 + 0.0276 θ) h + 0.008288 h2 /


 
h
1.728 + 0.5411 θ + (0.1815 + 0.06272 θ + 0.0138 θ2 ) h
i2
+ (0.01727 + 0.008288 θ) h2 , (2.130)

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).

The critical angle for waves to become trapped in a duct is


44 Introduction to Radar Using Python and MATLAB

Atmospheric Duct

Figure 2.10 Wave propagation inside an 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.

2.8 EARTH DIFFRACTION

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.

This leads to two possible cases described in the following sections.

2.8.1 Case 1: d ≥ dlos

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.

These normalized distances are found from

 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

where B = β h. The diffracted field strength in (2.137) is an approximation to the


classical residue series [20, 21], and is accurate to better than 2 dB for long path lengths
[19].

2.8.2 Case 2: d < dlos

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

d1 = 0.5 d (1 + b), d 2 = d − d1 , (2.145)

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

2.9 PLANE WAVE ATTENUATION

There are several mechanisms contributing to the attenuation of propagating waves.


These can include rain, clouds, fog, the atmosphere, and vegetation. Several of these
mechanisms are examined in the following sections.

2.9.1 Atmospheric Attenuation

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

A = As r = (Ao + Aw ) r (dB). (2.153)


Electromagnetic Fields and Waves 49

Radar Position Target Position

Figure 2.12 Geometry for a target located at a distance, d, within vegetation.

2.9.2 Attenuation in Vegetation

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.

2.9.2.1 Target within 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].

2.9.2.2 Target Outside Vegetation

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

Av = A f B dC (θ + E)G (dB), (2.155)


where
Electromagnetic Fields and Waves 51

f = operating frequency (MHz),


d = depth of the vegetation (m),
θ = elevation angle (deg).

The parameters A, B, C, E, and G are found empirically by fitting to measurements. For


example, a fit to measurements in pine woodland in Austria [23] is

L = 0.25 f 0.39 d0.25 θ0.05 (dB). (2.156)


The reader is referred to [23] to find measurements for other types of trees, including the
silver maple, London plane, horse chestnut, ginkgo, and dawn redwood.

2.9.3 Rain Attenuation

When operating radar systems in regions with precipitation, it is necessary to account


for the attenuation of the propagating wave due to the precipitation. Following the
recommendation from the International Telecommunication Union Radiocommunication
Sector (ITU-R) [24], the specific attenuation due to rain is given as

γ = kRα (dB/km), (2.157)


where R is the rain rate in millimeters per hour. The factors k and α are functions of
frequency and their expressions are derived by curve fitting scattering calculations to the
form in (2.157). From [24], the factors k and α are given by

k = 0.5 × kH + kV + (kH − kV ) cos2 θ cos(2τ ) ,


 
(2.158)
α = 0.5 × kH αH + kV αV + (kH αH − kV αV ) cos2 θ cos(2τ ) /k,
 
(2.159)

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

and f is the frequency in GHz, k is either kH or kV , and α is either αH or αV . The values


of the coefficients, a, b, c, d, and e are given in [24], and are listed here in Tables 2.4–2.7
for reference.

2.9.4 Cloud and Fog Attenuation

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

γ = kl (f, T ) M (dB/km), (2.163)


where
Electromagnetic Fields and Waves 53

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

f = operating frequency (GHz),


T = cloud temperature (K),
kl = liquid water specific attenuation coefficient ((dB/km)/(g/m3 )),
M = liquid water density (g/m3 ).

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

0 = 77.66 + 103.3 (θ − 1), 1 = 0.0671 0 , 2 = 3.52, θ = 300/T, (2.168)

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

fp = 20.20 − 146 (θ − 1) + 316 (θ − 1)2 , fs = 39.8 fp . (2.169)

The total attenuation along the path is then written as

A=γr (dB), (2.170)


where r is the path length in the cloud or fog in km.

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.

2.10.1 Plane Wave Propagation

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

Figure 2.14 Plane wave parameters calculated by plane waves example.py.

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.

2.10.2 Reflection and Transmission

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.

2.10.3 Tropospheric Refraction

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.

2.10.3.1 Apparent Elevation

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

Figure 2.16 Apparent elevation angle calculated by apparent elevation example.py.

2.10.3.2 Apparent Range

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.

2.10.3.3 Beam Spreading

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.

2.10.4 Earth Diffraction

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

Figure 2.18 Beam spreading loss calculated by beam spreading example.py.

Figure 2.19 Critical angle calculated by ducting example.py.


60 Introduction to Radar Using Python and MATLAB

Figure 2.20 Diffraction loss calculated by diffraction example.py.

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

Figure 2.21 Atmospheric attenuation calculated by atmosphere example.py.

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

Figure 2.22 Vegetation attenuation calculated by vegetation example.py.

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.

2.10.5.4 Cloud and Fog

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

Figure 2.23 Rain attenuation calculated by rain example.py.

Figure 2.24 Fog attenuation calculated by cloud fog example.py.


64 Introduction to Radar Using Python and MATLAB

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.

3.1 ANTENNA PARAMETERS

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.

3.1.1 Radiation Pattern

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

Main Lobe Sidelobe Level

Sidelobes

Figure 3.1 Example antenna pattern cut.

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

Near Field Near Field Far Field


(Reactive) (Radiating)

'

0.62 𝐷3 Τ𝜆 2 𝐷 2 Τ𝜆

Figure 3.2 Radiation zones for an antenna with dimension D.

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.

3.1.1.1 Radiation Zones

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.

Reactive Near Field

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.

Radiating Near Field

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

Figure 3.3 Illustration of antenna beamwidth.

3.1.3 Power Density

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

W=W ~ average = 1 Real [E × H∗ ] (W/m2 ). (3.4)


2
The factor of 1/2 is necessary when E and H represent peak values. If these are RMS
values, the factor of 1/2 is omitted. Since the Poynting vector represents a power density,
the average power radiated by the antenna is found by integrating the normal component
of the Poynting vector over a closed surface surrounding the antenna. This is expressed
as
‹ ‹
1
Prad = W · ds = Real [E × H∗ ] · ds (W). (3.5)
2
S S

Typically, this surface is taken to be a sphere with a large radius, such that E and H are
far-field values.

3.1.4 Radiation Intensity

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

U (θ, φ) = r2 |W| (W/sr). (3.6)


The radiation intensity is a far-field quantity and may be expressed in terms of the electric
field of the antenna as

r2 2
U (θ, φ) = E(θ, φ) (W/sr), (3.7)

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]

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

Figure 3.4 Illustration of directivity and beamwidth.

The expression for the directivity then becomes



D0 ≈ . (3.12)
Θ1 Θ2
If the half-power beamwidths, (Θ1d , Θ2d ), are known in degrees this becomes

4π (180/π)2 41, 253


D0 ≈ ≈ . (3.13)
Θ1d Θ2d Θ1d Θ2d
For planar arrays, a better approximation is given by [2]
32, 400
D0 ≈ . (3.14)
Θ1d Θ2d
Antenna Systems 75

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

Prad = e · Pin (W), (3.15)


where
Pin = power input to the antenna (W),
e = total efficiency of the antenna,
Prad = power radiated by the antenna (W).

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

G(θ, φ) = e · D(θ, φ). (3.17)


For many practical antennas, an efficiency between 0.6 and 0.7 is reasonable and a
good approximation for first cut design and analysis. Using a value in this range for
the efficiency along with (3.13), an approximation for the gain is
30, 000
G≈ , (3.18)
Θ1d Θ2d
where
76 Introduction to Radar Using Python and MATLAB

Θ1d = half-power beamwidth in one plane (deg),


Θ2d = half-power beamwidth in the perpendicular plane (deg),
G = antenna gain in the maximum direction.

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

𝑦 𝑦

𝐸
𝑥 𝑥

Vertical Polarization Horizontal Polarization

Figure 3.5 Linear polarization of the electric field.

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.

3.1.8.3 Polarization Mismatch

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

Ei = Ei r̂i (V/m), (3.20)


78 Introduction to Radar Using Python and MATLAB

𝑦 𝑦

𝐸𝑦 𝐸𝑦
𝐸 𝐸

𝐸𝑥 𝑥 𝐸𝑥 𝑥

Right-Hand Circular Left-Hand Circular

Figure 3.6 Circular polarization of the electric field.

and the polarization of the electric field of the receiving antenna is represented by

Ea = Ea r̂a (V/m), (3.21)


where r̂i and r̂a are unit vectors representing the polarization of the electric field. The
polarization loss factor is then defined as
2
PLF = r̂i · r̂a = cos2 (ψ).

(3.22)
As an example, consider an incoming linearly polarized wave whose electric field vector
is written as Ei = Ei (x̂ + ŷ), and is incident upon a receiving antenna whose electric
field vector is given by Ea = Ea ŷ. Therefore,
1
r̂i = √ (x̂ + ŷ), r̂a = ŷ. (3.23)
2
The polarization loss factor is then
2
1 1
PLF = ŷ · √ (x̂ + ŷ) = . (3.24)
2 2
This indicates there would be a reduction in the received voltage by a factor of 1/2.
Antenna Systems 79

3.2 ANTENNA TYPES

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.

3.2.1 Linear Wire Antennas

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.

3.2.1.1 Small Dipole

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)

and the radiation resistance is
 2
l
2
Rr = 20 π (ohms). (3.29)
λ

3.2.1.2 Finite Length Dipole

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 θ

The evaluation of the integrals in (3.34) results in [2]

η|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)

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.

3.2.2.1 Small Circular Loop

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.

Writing the current in terms of its rectangular components gives

I = −I0 sin(φ0 ) x̂ + I0 cos(φ0 ) ŷ (A). (3.40)


However, the radiated fields are usually represented in spherical coordinates. Therefore,
the unit vectors in (3.40) are converted to spherical unit vectors and the current distribu-
tion is now written as

I = I0 sin θ sin(φ − φ0 ) r̂ + I0 cos θ sin(φ − φ0 ) θ̂ + I0 cos(φ − φ0 )φ̂ (A). (3.41)

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).

Using (3.42), (3.43), and (3.7), the radiation intensity is


84 Introduction to Radar Using Python and MATLAB

(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.

3.2.2.2 Constant Current Loop

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

3.2.3 Aperture Antennas

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.

3.2.3.1 Rectangular Apertures

Uniform Distribution in a Ground Plane

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

Rectangular Aperture Antenna Pattern


E Plane
0 H Plane

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

Uniform Distribution in Free Space

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 𝑑𝑥′
𝑑𝑦′
𝑏
[

Figure 3.11 Rectangular aperture with a uniform distribution in free space.

− E0 x̂ for − a/2 ≤ x0 ≤ a/2, −b/2 ≤ y 0 ≤ b/2


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).

TE10 Distribution in a Ground Plane

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.

Uniform Distribution in an Infinite Ground Plane

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
[

Figure 3.13 Circular aperture with a uniform distribution in a 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

TE11 Distribution in an Infinite Ground Plane

A common application of aperture antennas is a circular aperture on a large ground plane


with the aperture fields being those of the dominant TE11 waveguide mode. The field
distribution for this case is

Eρ ρ̂ + Eφ φ̂ for ρ0 ≤ a
Ea = (V/m), (3.87)
0 otherwise
where
Eρ = E0 J1 (χ011 ρ0 /a) sin φ0 /ρ0 (V/m),
Eφ = E0 J1 (χ011 ρ0 /a) cos φ0 (V/m),
E0 = constant (V/m),
χ011 = first root of the Bessel function of the first kind (≈ 1.841).

The far zone electric and magnetic fields are found to be

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 J10 (ka sin θ)


 
0
Eφ = j k a E0 J1 (χ11 ) cos θ cos φ , (3.90)
r 1 − (ka sin θ/χ011 )2

e−jkr J10 (ka sin θ)


 
Hθ = −j k a E0 J1 (χ011 ) cos θ cos φ , (3.91)
ηr 1 − (ka sin θ/χ011 )2

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

Ae = 0.836 πa2 (m2 ). (3.94)


94 Introduction to Radar Using Python and MATLAB

3.2.4 Horn Antennas

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.

3.2.4.1 E-plane Sectoral

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

Figure 3.14 Various horn antenna geometries.


Antenna Systems 95

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),

The far zone electric fields are given by

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

kx = x component of the wavenumber, (k sin θ cos φ) (rad/m),


ky = y component of the wavenumber, (k sin θ sin φ) (rad/m),
h = horn height in the flare direction (m).

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

and the arguments t1 and t2 are given by

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)

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

3.2.4.2 H-plane Sectoral

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

kx0 = k sin θ cos φ + π/w, kx00 = k sin θ cos φ − π/w. (3.116)

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)

The directivity is then
 2 2 
4π h l 
D0 = C(u) − C(v) + S(u) − S(v) . (3.120)

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 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)

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.

3.2.5 Antenna Arrays

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.

3.2.5.1 Two-Element Array

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

(a) Linear (b) Rectangular

(c) Circular (d) Hexagonal

Figure 3.15 Typical array antenna geometries.

𝑧 Field Point 𝑧 Far Field


𝑟1 𝑟

𝜃1 𝜃 𝑟
𝑟
𝜃 𝑟2 𝜃
𝑥 𝑟 𝑥
𝑑 𝑑
𝜃2
𝜃

Figure 3.16 Two-element array of infinitesimal dipoles.


102 Introduction to Radar Using Python and MATLAB

θ1 ≈ θ2 ≈ θ (rad), (3.133)
r1 ≈ r2 ≈ r (m), (3.134)

and for phase variations


d d
r1 ≈ r − cos θ, r2 ≈ r + cos θ (m). (3.135)
2 2
The expression for the electric field in (3.132) is now

 
η k I0 l j(kd cos θ+α)/2 −j(kd cos θ+α)/2
Etotal =j cos θ e +e θ̂

   i
η k I0 l h
= j cos θ 2 cos θ (kd cos θ + α)/2 θ̂ (V/m). (3.136)

| {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

Etotal = Eelement × Array Factor. (3.137)


The product in (3.137) is commonly referred to as pattern multiplication. Although
this illustration consists of only two radiating elements of identical amplitude, pattern
multiplication is valid for arrays with varying number of elements, element spacing, and
element amplitude and phase. The array factor is a function of many variables, including
number of elements, element spacing, element excitation, and geometrical layout.

3.2.5.2 Uniform Linear Array

Extending the two-element array to N elements results in the configuration shown in


Figure 3.17. For a uniform linear array, each element has the same amplitude excitation
and a progressive phase shift, α. The array factor for this case is given as
N
X
AF = ej(n−1)(kd cos θ+α) . (3.138)
n=1
Letting ψ = kd cos θ + α, the array factor is written as
N
X
AF = ej(n−1)ψ . (3.139)
n=1
Antenna Systems 103

𝑟
𝑧
𝜃 Far Field
𝑁
.
𝑟
.
.
. 𝜃 𝑟
.
3
𝜃
𝑟
2
𝑑 𝜃
𝑥
1

Figure 3.17 N -element uniform linear array.

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 θ + α = nπ. (3.141)


If the maximum is required to be located 0o ≤ θmax ≤ 180o , this results in

ψ = 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.

3.2.5.3 Binomial Array

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.

3.2.5.4 Dolph-Tschebyscheff Array

The Dolph-Tschebyshceff array, sometimes written Chebyshev, is a compromise between


the uniform and binomial arrays. It was originally proposed by Dolph [9], and later
advanced by others [10, 11]. In this method, the designer specifies the sidelobe level,
Antenna Systems 105

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

and the antenna pattern is approximated by a Tschebyscheff polynomial of order m. The


order is large enough to meet the requirements for the sidelobe level. If the sidelobe level
is specified to be zero, then the Dolph-Tschebyscheff design reduces to the binomial
design. The Dolph-Tschebyscheff coefficients are given by
h n  nπ oi
cos N cos−1 β cos
an =  N  , (3.145)
1 −1 sll/20

cosh cosh 10
N
where sll is the desired sidelobe level expressed in dB. The Dolph-Tschebyscheff
coefficients may be calculated in Python using the SciPy implementation scipy.signal.
chebwin(M,A) [8], where M is the number of elements in the array and A is the sidelobe
level. Consider a six-element array with a sidelobe level of −20 dB, then the amplitude
coefficients are found using the code in Listing 3.1. The coefficients have been normalized
so the maximum value is one. Allowing the sidelobe level to become very small reduces
the coefficients to those of the binomial case, as shown in Listing 3.2.
Listing 3.1 Dolph-Tschebyscheff Coefficients

from scipy.signal import chebwin


print(chebwin(6, -20))
...
([0.54057352, 0.77676753, 1.0, 1.0, 0.77676753, 0.54057352])

Listing 3.2 Dolph-Tschebyscheff Coefficients for Small Sidelobe Level

from scipy.signal import chebwin


print(chebwin(6, -200))
...
([0.10004548, 0.50007579, 1.0, 1.0, 0.50007579, 0.10004548])
106 Introduction to Radar Using Python and MATLAB

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

3.2.5.6 Planar Array

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

αx = −k dx sin θ0 cos φ0 , αy = −k dy sin θ0 sin φ0 (rad). (3.147)

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 . 𝑑𝑥
.
.
.

𝑁𝑥
.

.
.
.
.

𝑥
𝑑𝑦

Figure 3.19 Rectangular planar array.

window (x ) = window function in the x direction,


window (y) = window function in the y direction,
rmn = distance to the (m, n)th element (m),
rboundary = distance to the boundary (m),
amn = coefficient of the (m, n)th element.

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

where the phase of the (m, n)th element is given by [12]

  
2π n
ψmn = sin θ dx m + cos φ + dy n sin φ (rad). (3.150)
λ 2
Antenna Systems 109

𝑦
𝑑𝑥

𝑑𝑦

Figure 3.20 Planar array with elliptical boundary.

3.2.5.7 Circular Array

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

rn ≈ r − a sin θ cos(φ − φn ) (m), (3.153)


where φn is the angular position of the nth element, and is expressed as
110 Introduction to Radar Using Python and MATLAB

𝑦 𝑑𝑥

𝑑𝑦

Figure 3.21 Hexagonal array with circular boundary.

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

Figure 3.22 Circular array geometry.

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.

3.3.1 Finite Length Dipole

Consider a dipole of length of 0.4 m, with a current of 1 A operating at a frequency of 1


GHz. Calculate the total power radiated, radiation resistance, beamwidth, directivity, and
maximum effective aperture. Also calculate and display the antenna pattern.

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.

3.3.2 Circular Loop

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.

3.3.3 Rectangular Aperture

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.

3.3.4 Circular Aperture

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.

3.3.5 Pyramidal Horn

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.

3.3.6 Tschebyscheff Linear Array

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.

3.3.7 Planar Array

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.

3.3.8 Circular Array

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.

4.1 HERTZIAN DIPOLE

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
ǻ]

[ [

Figure 4.1 Hertzian dipole with a uniform current distribution.

ˆ ˚
µ 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

The current density for the Hertzian dipole is expressed as



Io δ(x0 ) δ(y 0 ) ẑ for − ∆z/2 ≤ z 0 ≤ ∆z/2
0 0 0
J(x , y , z ) = (4.2)
0 otherwise.
Substituting (4.2) into (4.1), and performing the integration results in

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

The electric field is obtained from (2.11) as


∇×H
E= (V/m), (4.7)
jω
and evaluating the curl results in

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

Substituting (4.12) in (4.13), and performing the integration results in


 2
π Io ∆z
Prad =η (W). (4.14)
3 λ

4.1.2 Radiation Intensity

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π

4.1.3 Directivity and Gain

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

Figure 4.2 Power density at the target at a given distance.

Therefore, the power density in terms of antenna gain and input power is

Prad D(θ, φ) Pin G(θ, φ)


Pd = 2
= (W/m2 ). (4.21)
4πr 4πr2
The above equation is an important result as it gives the power density present at a target
for a particular radar transmitter power and antenna gain. This result is used in deriving
the full radar range equation.

4.2 BASIC RADAR RANGE EQUATION

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

Figure 4.3 Electromagnetic energy scattered by a target.

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

Object RCS (m2 ) RCS (dBsm)


Container ship 50, 000 47
Corner reflector 20, 000 43
Automobile 100 20
Commercial jet 40 16
Cabin cruiser boat 10 10
Large fighter aircraft 6 7.78
Small fighter aircraft 2 3
Human 1 0
Surface-to-air missile 0.5 −3
Bird 0.01 −20
Insect 1 × 10−5 −50
Advanced tactical fighter 1 × 10−6 −60

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)

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

4.2.1 Maximum Detection Range

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

Ninput = S × B = k T B (W). (4.32)


The fidelity of radar receivers is often given by the noise figure and noise factor. These
are measures of how components in the receiver chain degrade the signal-to-noise ratio
and will be covered in more detail in Chapter 5. The noise factor is the ratio of the input
signal-to-noise ratio to the output signal-to-noise ratio. The noise figure is the noise factor
expressed in decibels. The noise factor is given 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

Pi = k T0 B F SNR o (W), (4.34)


The Radar Range Equation 131

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

Pmin = k T0 B F (SNR o )min (W). (4.35)


The expression for the maximum range given in (4.30) becomes
1/4
Pt G2 λ2 σ

rmax = (m). (4.36)
(4π)3 k T0 B F (SNR o )min
The radar range equation is now written to give the output signal-to-noise ratio 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

Pmin = k T0 B F L (SNR o )min (W). (4.38)


The maximum detection range then becomes
1/4
Pt G2 λ2 σ

rmax = 3
(m). (4.39)
(4π) k T0 B F L (SNR o )min
Finally, the expression for radar range equation is written as

Pt G2 λ2 σ
SNR o = . (4.40)
(4π)3 k T0 B F L r4

4.2.4 Radar Reference Range and Loop Gain

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].

4.3 SEARCH RADAR RANGE EQUATION

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

Ω = 2 Θa cos (e0 ) sin (Θe /2) (steradian), (4.44)


The Radar Range Equation 133

Individual search beams

Radar Position
Search sector on the
surface of a sphere.

Figure 4.4 Spherical surface search volume.

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).

4.4 BISTATIC RADAR RANGE EQUATION

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

Figure 4.6 Typical bistatic radar configuration.

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)

gives the final expression for the basic bistatic radar range equation,

Pt Gt (θ, φ) Gr (θ, φ) σ(θ, φ) λ2


Pradar = (W). (4.60)
(4π)3 rt2 rr2
As before, the basic radar range equation is modified to include the effects of noise and
loss. Using (4.38) gives

Pt Gt (θ, φ) Gr (θ, φ) σ(θ, φ) λ2


SNR o = , (4.61)
(4π)3 k T0 B F Lt Lr rt2 rr2
The Radar Range Equation 137

Target Position

𝑟𝑡 𝑟𝑟
𝜌
Transmitting Receiving
Radar Position 𝜃 Radar Position

Figure 4.7 Typical bistatic radar configuration with polar coordinates.

where Lt is the loss in the transmitting radar and Lr is the loss in the receiving radar.

4.4.1 Maximum Detection Range

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

Figure 4.8 Cassini ovals for constant signal-to-noise ratios.

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).

Combining the expressions in (4.63) results in


 2
(rt rr )2 = ρ2 + (D/2)2 − ρ2 D2 cos2 θ. (4.65)
Using (4.65) in (4.62) allows the radar range equation to be written in polar coordinates,
which is useful in plotting the Cassini ovals. Figure 4.8 shows an example of Cassini
ovals for constant signal to noise ratio. As can be seen in this figure, there are three
distinct regions:

1. Two separate ellipses enclosing the transmitter and receiver.


2. A single continuous ellipse enclosing both the transmitter and receiver.
3. A lemniscate with a cusp at the origin of the polar coordinate system.
The Radar Range Equation 139

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.

4.5.1 Hertzian Dipole

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.

4.5.2 Basic Radar Range Equation

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.

4.5.2.1 Power Density

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

Figure 4.9 The electric field of a Hertzian dipole calculated by


hertzian dipole example.py.

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.

4.5.2.2 Power at the Radar

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

4.5.2.3 Minimum Detectable Signal

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.

4.5.2.4 Maximum Detection Range

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

Figure 4.12 The minimum detectable signal calculated by


minimum detectable signal example.py.
The Radar Range Equation 143

Figure 4.13 The maximum detection range calculated by


maximum detection range example.py.

cross section of 10 dBsm.

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.

4.5.2.5 Output Signal-to-Noise Ratio

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

Figure 4.14 The output signal-to-noise ratio calculated by


output signal to noise example.py.

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.

4.5.2.6 Loop Gain

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.

4.5.3 Search Radar Range Equation

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.

4.5.3.1 Power Aperture

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.

4.5.3.2 Output Signal-to-Noise Ratio

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.

4.5.4 Bistatic Radar Range Equation

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.

4.5.4.1 Power at the Radar

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.

4.5.4.2 Output Signal-to-Noise Ratio

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.

4.5.4.3 Cassini Ovals

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.

Figure 4.20 Ovals of Cassini for bistatic radar configurations calculated by


ovals of cassini example.py.
150 Introduction to Radar Using Python and MATLAB

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.11 Suppose a radar system is capable of producing an output signal-to-noise ratio of 20


dB on a 10 dBsm target at a range of 750 km. Determine the output signal-to-noise
ratio achieved for a −10 dBsm target at a range of 500 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.

[8] Eric W. Weisstein. Cassini Ovals. http://mathworld.wolfram.com/CassiniOvals.html.


Chapter 5
Radar Receivers

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

Figure 5.1 Typical superheterodyne radar receiver.

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

LNA-1 RF Filter Mixer IF Filter LNA-2

Figure 5.2 Five-stage network for noise figure analysis of a cascaded network.

Table 5.1
Receiver Components for Cascaded Noise Figure Analysis

Component Gain (dB) Noise Figure (dB)


LNA-1 20 3
RF filter −0.5 0.5
Mixer −6 6
IF filter −1 1
LNA-2 30 5

F2 − 1 F3 − 1 F4 − 1 F5 − 1
Ftotal = F1 + + + +
G1 G1 G2 G1 G2 G3 G1 G2 G3 G4

0.122 2.981 0.259 2.162


= 1.995 + + + + = 2.16, (5.3)
100 89.13 22.39 17.78
or expressed in decibels, the noise figure is

Ftotal = 10 log10 (2.16) = 3.35 (dB). (5.4)


The analysis of radar systems if often concerned with ratios such as signal-to-noise
ratio, signal-to-clutter ratio, signal-to-clutter plus noise, and others. However, knowledge
of absolute voltages and currents is important when dealing with radar receivers. For
example, knowledge of absolute voltages at the input of the analog-to-digital converter
(ADC) is crucial to prevent saturating the components. Likewise, the level of the noise
floor is also very important as this sets the absolute level for weak signals competing with
the noise [6]. The absolute noise level at each stage in the receiver is found from
Radar Receivers 157

Ni = kT0 Bi F (W), (5.5)


where the following are at the output of each stage of the receiver

k = Boltzmann’s constant, 1.380649 × 10−23 (J/K),


T0 = reference temperature, typically 290o (K),
F = noise factor,
Bi = bandwidth (Hz).

5.3 DYNAMIC RANGE

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

Figure 5.3 Receiver instantaneous and total dynamic range.

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]

P2f1 −f2 = 2Pf1 + Pf2 − 2IP 3 (dBW), (5.6)


P2f2 −f1 = 2Pf2 + Pf1 − 2IP 3 (dBW), (5.7)

where,
Radar Receivers 159

20

15
Dynamic Range

𝑃𝑠𝑎𝑡𝑢𝑟𝑎𝑡𝑖𝑜𝑛
Output Power (dBm)

10
1 dB

-5
𝐼𝑃1

-10

-30 -25 -20 -15 -10 -5 0 5 10


Input Power (dBm)

Figure 5.4 Linear receiver distortion vs input signal.

P2f1 −f2 = power of first intermodulation distortion frequency (dBW),


P2f2 −f1 = power of second intermodulation distortion frequency (dBW),
Pf1 = power of first input frequency (dBW),
Pf2 = power of second input frequency (dBW),
IP 3 = third-order intercept point (dBW).

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

Figure 5.5 Spurious free dynamic range.

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.

5.5 GAIN CONTROL

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)

𝐼𝑃1 𝐼𝑃3 𝐼𝑃2


0

-5

-10

-30 -25 -20 -15 -10 -5 0 5 10


Input Power (dBm)

Figure 5.6 Receiver intermodulation distortion with intercept points.

Operating Bandwidth
Signal Strength

𝐹𝑚𝑖𝑛 𝐹2 − 𝐵/2 𝐹1 𝐹2 + 𝐵/2 𝐹2 − 𝐵/2 𝐹2 𝐹2 + 𝐵/2 𝐹𝑚𝑎𝑥

Instantaneous Bandwidth

Figure 5.7 Receiver instantaneous and operating bandwidth.


162 Introduction to Radar Using Python and MATLAB

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

30 .... 940 970 1000 𝐹 (𝑀𝐻𝑧)

Figure 5.8 Image frequency and RF filtering.

fimage = fRF − 2fIF = 940 (MHz), (5.8)


where
fRF = RF carrier frequency (MHz),
fIF = desired IF frequency (MHz),
fimage = image frequency (MHz).

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.

Listing 5.1 Butterworth Low-Pass Filter Response

from scipy import signal


b, a = signal.butter(4, 100, 'low', analog=True)
w, h = signal.freqs(b, a)
Radar Receivers 165

Listing 5.2 Butterworth Filter Response Plot

import matplotlib.pyplot as plt


from scipy import log10
plt.semilogx(w, 20 * log10(abs(h)))
plt.title('Butterworth Filter Frequency Response')
plt.xlabel('Frequency (Hz)')
plt.ylabel('Amplitude (dB)')
plt.show()

Listing 5.3 Chebyshev, Bessel, and Elliptic Filter Response Calculations

from scipy import signal


"""
Chebyshev, 4th order, low pass, analog filter with maximum
passband ripple = 3 dB and critical frequency = 100 Hz.
"""
b, a = signal.cheby1(4, 3, 100, 'low', analog=True)

"""
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

5.7.1 Noncoherent Detection

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).

The thermal voltage is given by


kT
VT = (V), (5.10)
q
where
k = Boltzmann’s constant (1.380649 × 10−23 ) (J/K),
T = diode temperature (K),
q = electron charge (1.60217662 × 10−19 ) (C),
VT = thermal voltage (V).

+ 𝑉𝐷 -
IF In Video Out
+
𝑉𝑜𝑢𝑡
𝐼𝐷
-

Figure 5.10 Simplistic diode envelope detector.


Radar Receivers 167

The diode current in (5.9) may be expanded as


" !2 !3 #
VD 1 VD 1 VD
ID = Is + + + ··· (A). (5.11)
VT 2 VT 6 VT
The idea is to keep the diode operating in the square law region so the second term on
the right-hand side of (5.11) is dominant and the output current is proportional to the
input power. The advantage of this type of detector is that it requires few components,
making it simple, easy to implement, reliable, and low cost. However, there are also some
disadvantages. The diode detector introduces distortion as it is nonlinear. Also, this type
of detector suffers from poor sensitivity and selective fading.

5.7.2 Coherent Detection

Radar signal processing functions such as pulse compression, Doppler processing,


monopulse comparison, moving target indication, synthetic aperture radar imaging, and
space-time adaptive processing all require both amplitude and phase information. To per-
form coherent detection, the phase of the transmitted signal is locked to the phase of the
local oscillator, as shown in Figure 5.1, and then the detector converts the signals from the
IF frequency to a complex representation at baseband. Coherent detectors are sometimes
referred to as IQ detectors, quadrature detectors, or synchronous detectors. Figure 5.11
illustrates a block diagram of a coherent detector. Mathematically, the band-limited IF
signal may be written as

Mixer
𝑋𝐼 (𝑡)
sin(2𝜋𝑓𝑐 𝑡) Lowpass Filter LNA
Power
Divider
IF Input
Mixer
𝑋𝑄 (𝑡)

cos(2𝜋𝑓𝑐 𝑡) Lowpass Filter LNA

COHO
90o Hybrid

Figure 5.11 Block diagram of a coherent detector.


168 Introduction to Radar Using Python and MATLAB

x(t) = a(t) cos(2πf0 t + φ(t)) (V), (5.12)


where
a(t) = amplitude modulation (envelope) (V),
φ(t) = phase modulation (rad),
f0 = carrier frequency (Hz),
x(t) = band limited IF signal (V).

Using the identity cos(a+b) = cos(a) cos(b)−sin(a) sin(b), the IF signal is then written
as

x(t) = a(t) cos(2πf0 t) cos(φ(t)) − a(t) sin(2πf0 t) sin(φ(t))

= XI (t) cos(2πf0 t) − XQ sin(2πf0 t), (5.13)

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

5.8 ANALOG-TO-DIGITAL CONVERSION

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)

Figure 5.12 Block diagram of an analog-to-digital converter.

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

Baseband 𝑋𝐼 (𝑡) Band-Limited


Signal 𝑋𝑄 (𝑡) IF Signal

𝐵 0 𝐵 𝐹𝑠 𝐹𝐼𝐹

2 2 2

Figure 5.13 The resulting spectra for receiver baseband sampling.

1st Nyquist Zone 2nd Nyquist Zone 3rd Nyquist Zone

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 = Vmax − Vmin (V). (5.16)


The resolution of the ADC is determined by the number of output bits per sample. For N
bits, there are 2N discrete levels. The step size between levels, and therefore the size of
the least significant bit (LSB), is
Radar Receivers 171

Figure 5.15 Quantization error for a linear input voltage.

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 ≈ 6.02N + 1.76 (dB). (5.21)


The expression in (5.21) is commonly found in literature [5, 6] and is for an ideal ADC.
Practical ADCs have additional errors, including jitter and thermal noise, resulting in an
SNR less than that of an ideal ADC given in (5.21). The errors in ADCs are dependent
on the operating frequency, sampling rate, and input signal strength. Therefore, it is
important to review the manufacturer’s product data sheet to ensure the ADC will meet
the requirements over the full range of expected operating conditions. Table 5.2 gives a
sampling of various ADCs currently available. As can be seen in this table, the SNR is
dependent on the sampling rate as well as the number of bits. Table 5.2 also gives the
spurious free dynamic range. Recall from Section 5.3 that spurious signals are generated
during the downconversion process and may appear as false targets or mask targets
with weak return signals. Therefore, a high SFDR is critical for the detection of weak
targets and overall radar sensitivity. While not always practical, some of the spurious
signals may be avoided by using a large oversampling factor. This technique pushes
the frequency of the spurious signals outside the receiver bandwidth. Also, the effect
of spurious signals on the overall radar performance depends heavily on the operating
mode. For example, a system employing linear frequency modulation (LFM), commonly
called chirp, waveforms with large time-bandwidth products are less affected by spurious
signals as these signals are rejected in the pulse compression process. On the other hand,
pulse Doppler radars are very sensitive to spurious signals as they contain components
appearing at various frequencies [5]. The term effective number of bits (ENOB) is often
used to describe the dynamic range of an ADC and is based on the equation for the SNR
of an ideal ADC, which is given in (5.21). Since the SNR of practical ADCs never reach
this ideal value due to noise and distortion, the SNR may be related to that of an ideal
ADC with fewer bits. ENOB specifies the number of bits of an ideal ADC achieving the
same SNR as the ADC under consideration. Rewriting (5.21) gives the effective number
of bits as

SNR − 1.76
Neff = . (5.22)
6.02

5.9 DIGITAL RECEIVERS

With increasing sample rates available in analog-to-digital converters, direct sampling of


the signals at IF is becoming common in modern radar receivers, with the ultimate goal
Radar Receivers 173

Table 5.2
Brief Survey of Analog-to-Digital Converters

Device Channels Bits Sampling Rate SNR (dB) SFDR (dBc)


(Samples/Second)
Texas Instruments - AD9224R 2 16 3M 88.5 95
Texas Instruments - ADS554J20 2 12 1G 65.6 85
Texas Instruments - ADS1675 1 24 4M 107 120
Analog Devices - AD9697 1 14 1.3G 65.6 80
Analog Devices - AD9213 1 12 10G 56.2 85
Linear Technology - LTC2208 1 16 130M 78 83
Maxim Integrated - MAX19777 2 12 3M 72.5 83
Maxim Integrated - MAX11284 2 24 4K 118 120

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].

5.9.1 Direct Digital Downconversion

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 𝑛]

Figure 5.16 Direct digital downconversion.

5.9.2 Hilbert Transform

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

Filter ℎ[𝑛] Decimation


𝑥ො𝐼 [𝑚]

𝑥(𝑡) 𝑥[𝑛]
ADC

IF Input

𝑥ො𝑄 [𝑚]

Filter 𝑔[𝑛] Decimation

Figure 5.17 Generation of IQ data with the Hilbert transform.


𝑋(𝜔)
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.

5.10.1 Sensitivity Time Control

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.

Figure 5.19 The normalized sensitivity time control attenuation calculated by


sensitivity time control example.py.
Radar Receivers 177

5.10.2 Noise Figure

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.

5.10.3 Receiver Filtering

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

Figure 5.21 The frequency response of a fourth-order, low-pass, Chebyshev filter


calculated by low pass filter example.py.

The code then calculates and displays the frequency response of the selected filter, as
shown in Figure 5.21.

5.10.4 Noncoherent Detection

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.

5.10.5 Coherent Detection

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.

5.10.6 Analog-to-Digital Conversion

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.

sampling rate of 100 Hz and 3 bits of resolution.

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.

5.10.7 Analog-to-Digital Resolution

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.2 For a radar system transmitting a waveform with a pulsewidth of 2 µs at a pulse


repetition frequency of 20 kHz, find the STC normalized attenuation at a range of
3.5 km.

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.

[2] E. H. Armstrong, June 1920. United States Patent No. 1,342,885.

[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.

[5] M. Skolnik. Radar Handbook, 3rd ed. McGraw-Hill Education, 2008.

[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.

[17] W. Kester. Analog-Digital Conversion. Analog Devices, 2004.

[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.

6.1 OPTIMAL DETECTION

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

FAR = Pfa T. (6.2)


Thousands of pulses per second may pass through the detection process, resulting in
a large number of opportunities for false alarms. The acceptable FAR depends on the
particular system’s parameters, emplacement, and mission, as false alarms require radar,

Table 6.1
Target Detection Hypotheses

Hypothesis Detection Result Probability Density


H0 (Noise Only) y(t) = N0 p(x|H0 )
H1 (Target + Noise) y(t) = a(t) + N0 p(x|H1 )
Target Detection 187

Detected
Targets

Detection False Alarm Missed


Threshold (Noise) Target

Figure 6.1 Basic target detection threshold.

Table 6.2
Basic Target Detection Hypotheses

Truth Detection Result Outcome


H0 H0 None
H0 H1 False alarm
H1 H0 Miss
H1 H1 Detection

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.

6.1.1 Neyman-Pearson Lemma

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

and the probability of detection is


ˆ
Pd = p(y|H1 ) dy. (6.4)
RT

Now consider the likelihood ratio test of the form

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

R(λ) = {y : p(y|H1 ) > λ p(y|H0 )}, (6.6)


which allows the probability of false alarm to be written as
ˆ
Pfa = p(y|H0 ) dy. (6.7)
R(λ)

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].

6.1.2 Noncoherent Detection

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

Performing the integration leads to


  
1 VT − A
Pd = 1 − erf √ . (6.11)
2 2σ
190 Introduction to Radar Using Python and MATLAB

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.

6.1.3 Coherent Detection

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

Threshold 𝑝(𝑦|𝐻1 ) 𝑝(𝑦|𝐻1 )

𝑆𝑁𝑅 ≈ 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

Solving for the detection threshold gives


q
VT = −2σ 2 ln (Pfa ). (6.15)
Assuming a sinusoidal return signal with an amplitude of A, the probability density
function of the signal plus noise is Rician [1] and the probability of detection is found
from (6.4) as [13, 14]
192 Introduction to Radar Using Python and MATLAB

𝜎=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.

6.2 PULSE INTEGRATION

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].

6.2.1 Coherent Integration

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
𝑥𝑁

Figure 6.7 Coherent pulse integration.

Coherent integration would ideally result in an increase in the signal-to-noise ratio by a


factor of N , which is written as

SNR ci = N · SNR 0 , (6.18)


where
N = number of pulses integrated coherently,
SNR 0 = single pulse signal-to-noise ratio,
SNR ci = signal-to-noise ratio after coherent integration.

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].

6.2.2 Noncoherent Integration

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
𝑥𝑁 𝑥𝑁

Figure 6.8 Noncoherent pulse integration.

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

SNR nci = Gnci + SNR 0 (dB), (6.22)


196 Introduction to Radar Using Python and MATLAB

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

× 1 − 0.14 log10 (N ) + 0.01831 log210 (N )


 
(dB). (6.23)

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

6.2.3 Binary Integration

Binary integration is another form of noncoherent integration, often referred to as M of


N detection, and is shown in Figure 6.10. In this form of integration, each of the N return
signals is passed separately through the threshold detector. There must be M individual
detection declarations in order for a target to be declared as present. Binary integration is
somewhat simpler to implement than coherent and noncoherent integration.

𝑥1
𝑥2 Magnitude Squared Threshold 2nd Threshold
𝑥1 2 𝑁
𝑥𝑖 2 > 𝑇 → 𝑚𝑖 = 1 >
...

...
𝑥2 2
...

෍ 𝑚𝑖 𝑀
2 <
...

𝑥𝑖 < 𝑇 → 𝑚𝑖 = 0
𝑖
𝑥𝑁 2
𝑥𝑁

Figure 6.10 Noncoherent binary (M of N ) integration.

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

Mopt = 10β N α , (6.27)


where the values for α and β are given in Table 6.3.
198 Introduction to Radar Using Python and MATLAB

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

6.2.4 Cumulative Integration

Cumulative integration, commonly called 1 of N detection, is another noncoherent


integration technique. It is similar to binary integration except it only requires one
detection declaration for every N received signals. The probability of detection for
cumulative integration is written as [13, 23]

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.

6.3 FLUCTUATING TARGET DETECTION

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

One dominant scatterer


chi-squared (4 DOF) Swerling III Swerling IV
plus small scatterers

 
4σ 2σ
p(σ) = 2
exp − . (6.30)
σavg σavg
Target Detection 201

Probability Density Function


k=0.5
2.0 k=1.0
k=1.5
k=5.0

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)

Similarly, the probability of detection for Swerling I is given by


202 Introduction to Radar Using Python and MATLAB

!
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

SNRT = Γ−1 N, 1 − Pfa ,



(6.36)
where Γ−1 is the inverse of the incomplete gamma function. The incomplete gamma
function may be found using the SciPy function scipy.special.gammainc(). Also, the
inverse of the incomplete gamma function is found with scipy.special.gammaincinv() [6].
For example, the calculation of the signal-to-noise ratio, given the probability of false
alarm and number of pulses, is shown in Listing 6.1. Conversely, the calculation of the
probability of false alarm, given the signal-to-noise ratio threshold and number of pulses,
is provided in Listing 6.2.
Target Detection 203

Listing 6.1 Calculation of SNR Threshold

from scipy import special


number_of_pulses = 10
Pfa = 1.0e-6
snr_threshold = special.gammaincinv(number_of_pulses, 1.0-Pfa)
print(snr_threshold)
...
32.71

Listing 6.2 Calculation of Probability of False Alarm

from scipy import special


number_of_pulses = 10
snr_threshold = 32.71
Pfa = 1.0 - special.gammainc(number_of_pulses, snr_threshold)
print(Pfa)
...
1.00e-6

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

Figure 6.14 shows a comparison of the probability of detection versus signal-to-noise


ratio for a specified probability of false alarm and various number of pulses. As can
204 Introduction to Radar Using Python and MATLAB

Noncoherent Integration (Swerling 0)


1.0
N=1
N=2
N=4
0.8 N = 10
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
Signal to Noise (dB)
Figure 6.14 Probability of detection versus signal-to-noise ratio for Swerling 0 type targets
(Pfa = 10−6 ).

be seen, noncoherently integrating pulses reduces the required signal-to-noise ratio to


achieve the same probability of detection.

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.

6.3.4 Swerling III

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

Noncoherent Integration (Swerling I)


1.0
N=1
N=2
N=4
0.8 N = 10
Probability of Detection

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

 (N −2) " #


2 SNRT 2(N − 2)
Pd ≈ 1+ 1+ −
N · SNRavg 1 + (N · SNRavg )/2 (N · SNRavg )

 
−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

Noncoherent Integration (Swerling II)


1.0
N=1
N=2
N=4
0.8 N = 10
Probability of Detection

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

Noncoherent Integration (Swerling IV)


1.0
N=1
N=2
N=4
0.8 N = 10
Probability of Detection

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.

6.3.6 Shnidman’s Equation

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

Figure 6.19 Probability of detection comparison of Swerling targets for noncoherently


integrating 10 pulses (Pfa = 10−6 ).




∞ 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,

C = 10(CdB /10) . (6.51)

Finally, the signal-to-noise ratio is


 
C ·X
SNR = 10 log10 (dB). (6.52)
N
Shnidman’s equation has been shown to be accurate to within 0.5 dB within the following
bounds

0.1 ≤ Pd ≤ 0.99, (6.53)

10−9 ≤ Pfa ≤ 10−3 , (6.54)

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).

6.4 CONSTANT FALSE ALARM RATE

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.

6.4.1 Cell Averaging CFAR

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

Guard Cells Reference Cells

Cell Under Test


Reference Cells (CUT) Reference Cells
Doppler Cells

Range Cells

Guard Cells
Range Cells Cell Under Test
(CUT)

Figure 6.21 Range Doppler cell averaging CFAR.

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.

Reference Cells Reference Cells


Range Cells
𝑋
... (CUT) ...
Lead Average Trail Average Threshold
Comparison Output
Averaging Options
𝑍 𝐶𝑍

𝐶 Add CFAR Bias

Figure 6.22 Conventional cell averaging CFAR processing.

6.4.2 Cell Averaging Greatest of CFAR

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.23 CFAR processing based on minimum detection threshold.

CFAR Computational Window

Slides Through Range Data

Figure 6.24 Cell averaging sliding window.


216 Introduction to Radar Using Python and MATLAB

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.

6.4.3 Censored Greatest of CFAR

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

Reference Cells Reference Cells


Range Cells
𝑋
... (CUT) ...
Lead Average Trail Average Threshold
Comparison
Output
Max of Lead and Trail Average
𝑍 𝐶𝑍

𝐶 Add CFAR Bias

Figure 6.26 Cell averaging greatest of CFAR.

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

Censored Cell Censored Cells

Range Cells X X X
𝑋
... (CUT) ...
Lead Average Trail Average Threshold
Comparison
Output
Max of Lead and Trail Average
𝑍 𝐶𝑍

𝐶 Add CFAR Bias

Figure 6.28 Censored cell averaging greatest of CFAR.

6.4.4 Cell Averaging Smallest of CFAR

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.

6.4.5 Ordered Statistic CFAR

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.

6.4.6 Cell Averaging Statistic Hofele CFAR

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)
෍ ෍ ... ෍ ෍ ... ෍ ෍

Max Max . . . Max Max Threshold


Comparison Output

Minimum 𝛽 𝑇

𝛼 Multiplication Addition

Figure 6.31 Cell averaging statistic Hoefele CFAR (CASH-CFAR).


Target Detection 221

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.

6.5.1 Probability Distributions

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].

6.5.2 Detection Probability with Gaussian Noise

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.

6.5.3 Detection Probability with Rayleigh Noise

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.

6.5.4 Single Pulse signal-to-noise

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).

6.5.5 Binary Integration

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.

6.5.6 Optimum Binary Integration

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.

6.5.7 Coherent Pulse 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

Figure 6.38 The probability of detection for coherent integration of 10 pulses,


Pfa = 10−9 , and Swerling I type target calculated by coherent integration example.py.

6.5.8 Noncoherent Pulse Integration

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

Figure 6.39 The probability of detection for noncoherent integration of 10 pulses,


Pfa = 10−9 , and Swerling II type target calculated by non coherent integration example.py.

6.5.9 Shnidman’s Approximation

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.

6.5.10 Constant False Alarm Rate

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.41 The cell averaging CFAR threshold (CA-CFAR) calculated by


cfar example.py.

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.

Figure 6.44 The ordered statistic CFAR threshold (OS-CFAR) calculated by


cfar example.py.
232 Introduction to Radar Using Python and MATLAB

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.

[9] A. D. Whalen. Detection of Signals in Noise. Academic Press, 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.

[11] Wolfram Alpha. Online Integral Calculator. https://www.wolframalpha.com/calculators/


integral-calculator/.
234 Introduction to Radar Using Python and MATLAB

[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

When electromagnetic energy transmitted by a radar system impinges on a target, the


induced currents on the target reradiate or scatter energy in all directions, as shown in
Figure 4.3. From Chapter 4, the radar cross section is defined by (4.23) and repeated here
as

|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.

7.1.1 Angle Variation

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.

7.1.2 Frequency Variation

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

Monostatic – The transmitter and receiver are collocated (Į = 0).


Bistatic – The transmitter and receiver are at different locations (Į ≠ 0).

Figure 7.1 Monostatic and bistatic radar configurations.

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

RCS vs Bistatic Angle


TE
TM
30

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.

7.1.3 Polarization Variation

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

Rayleigh Resonance Optical

Figure 7.3 Scattering regions for a perfectly conducting sphere.

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.

7.2 SCATTERING MATRIX

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

Ei = Eθi θ̂ + Eφi φ̂, (7.2)

Es = Eθs θ̂ + Eφs φ̂. (7.3)

where
240 Introduction to Radar Using Python and MATLAB

Ei = incident electric field intensity (V/m),


Es = scattered electric field intensity (V/m),
θ̂ = unit vector in the θ direction,
φ̂ = unit vector in the φ direction.

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.

7.3 SCATTERING MECHANISMS

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.

7.4 PREDICTION METHODS

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.

7.4.1 Analytical Techniques

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.

7.4.1.1 Two-Dimensional Strip

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

Ei = E0 ejk(x cos φi +y sin φi ) ẑ (V/m), (7.13)

E0 jk(x cos φi +y sin φi )


Hi = e (− sin θi x̂ + cos θi ŷ) (A/m). (7.14)
η

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

Object RCS (m2 ) Geometry

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 incident fields for TEz polarized waves are written as

Hi = H0 ejk(x cos φi +y sin φi ) ẑ (A/m), (7.16)

Ei = ηH0 ejk(x cos φi +y sin φi ) (sin θi x̂ − cos θi ŷ) (V/m). (7.17)

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

𝐸 𝑖 , 𝐻𝑖
𝐸𝑠, 𝐻𝑠

𝜙𝑖

𝜙𝑜
𝑥
𝑧
𝑤

Figure 7.6 Two-dimensional strip geometry.

"  !#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.

7.4.1.2 Two-Dimensional Cylinder

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

Ei = E0 e−jkx ẑ (V/m). (7.20)


o
Note that the wave is incident from φ = 270 . The two-dimensional bistatic radar cross
section for the TMz polarization is given as [10]
248 Introduction to Radar Using Python and MATLAB

𝐸𝑠, 𝐻𝑠

𝐸 𝑖 , 𝐻𝑖 𝜙𝑜
𝑥

Figure 7.7 Two-dimensional circular cylinder geometry.

∞ 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).

The incident magnetic field for TEz polarized waves is given as

Hi = H0 e−jkx ẑ (A/m). (7.22)


The two-dimensional bistatic radar cross section for the TEz polarization is given as [10]
Radar Cross Section 249

∞ 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)

7.4.1.3 Two-Dimensional Cylinder Oblique

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

Ei = E0 e−jk(x sin θi −z cos θi ) (cos θi x̂ + sin θi ẑ) (V/m). (7.27)

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

𝐸𝑠, 𝐻𝑠

𝜙𝑜
𝑥
𝐸 𝑖 , 𝐻𝑖
𝜃𝑖

Figure 7.8 Two-dimensional circular cylinder oblique incidence.

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 incident magnetic field for TEz polarized waves is expressed as

Hi = H0 e−jk(x sin θi −z cos θi ) (cos θi x̂ + sin θi ẑ) (A/m). (7.29)

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

As in the case of normal incidence, an approximation of the three-dimensional radar


cross section from the two-dimensional radar cross section is

∞ 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 )

7.4.1.4 Rectangular Plate

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

Ei = ηH0 e−jk(y sin θi −z cos θi ) (cos θi ŷ + sin θi ẑ) (V/m), (7.33)

Hi = H0 e−jk(y sin θi −z cos θi ) x̂ (A/m). (7.34)

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

𝐸𝑠, 𝐻𝑠

𝐸 𝑖 , 𝐻𝑖 𝜃𝑜
𝜃𝑖

𝜙𝑖
𝑦

𝜙𝑜

Figure 7.9 Rectangular conducting plate geometry.

X = 0.5 ka sin θo cos φo (rad),


Y = 0.5 kb(sin θo sin φo − sin θi ) (rad),
a = plate x dimension (m),
b = plate y dimension (m),
θo , φo = observation angles (rad),
θi , φi = incident angles (rad).

The incident fields for TMx polarized waves are written as

Ei = E0 e−jk(y sin θi −z cos θi ) x̂ (V/m), (7.36)

−E0 −jk(y sin θi −z cos θi )


Hi = e (cos θi ŷ + sin θi ẑ) (A/m). (7.37)
η
For the TMx polarization, the bistatic radar cross section can be written as [10]
Radar Cross Section 253

 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.

7.4.1.5 Stratified Sphere

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

Ei = E0 e−jkz x̂ (V/m), (7.40)

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

𝐸𝑠, 𝐻𝑠

𝑥 (𝜃𝑜 , 𝜙𝑜 )

Figure 7.10 Stratified sphere with N concentric layers.


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


σθ = S1 (θo ) cos2 (φ0 ) (m2 ), (7.44)
k02
Radar Cross Section 255


σφ = S2 (θo ) sin2 (φ0 ) (m2 ). (7.45)
k02
For the N -layer concentric sphere, use the Mie coefficients of the following form [9]

2n + 1 k0 a0 Jn (k0 a0 ) + jZn (k0 a0 )(k0 a0 Jn0 (k0 a0 )


An = −(j)n , (7.46)
n(n + 1) k0 a0 Hn (k0 a0 ) + jZn (k0 a0 )(k0 a0 Hn0 (k0 a0 )

2n + 1 k0 a0 Jn (k0 a0 ) + jYn (k0 a0 )(k0 a0 Jn0 (k0 a0 )


Bn = (j)n , (7.47)
n(n + 1) k0 a0 Hn (k0 a0 ) + jYn (k0 a0 )(k0 a0 Hn0 (k0 a0 )
where
a0 = outermost radius of the sphere (m),
k0 = wavenumber (rad/m),
Jn = Bessel function of order n,
Hn = Hankel function of order n,
Zn (k0 a0 ) = normalized modal surface impedance,
Yn (k0 a0 ) = normalized modal surface admittance.

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

&
'
!
(#

" # , %#

Figure 7.11 Geometry for right circular cones.

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)

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

𝑎
𝛼
𝑧
𝜃𝑖 𝑏

𝐸 𝑖 , 𝐻𝑖

Figure 7.12 Geometry of a cone with a rounded nose tip.

#
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

A1 = 2 + 2α2 − 2θi2 + α4 − α2 θi2 + 0.5θi4 + 2α4 θi2 + 4(kb)2 − 2(kb)2 θi2

− 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)

A3 = − 4 1 + α2 − 0.5θi2 + 3(kbθi )2 kb − kbθi2 − (kbθi )2 − 4(kbθi )3 .


 
(7.59)

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


σ= 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).

When the incident angle is normal to the side of the frustum, θi = 90 + α, an


approximation for the radar cross section is [16]
2
8π z21.5 − z11.5 sin α
σ= (m2 ). (7.61)
9λ cos4 α
When the incident angle is either 0o or 180o , the radar cross section is approximated
by a flat circular plate, as given in Table 7.1. A comparison of the radar cross section
calculated from (7.60) and (7.61) to the radar cross section obtained from physical optics
is given in the examples in Section 7.6.

7.4.2 Numerical Techniques

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.

7.4.2.1 Exact Methods

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

Figure 7.13 Geometry of the frustum.

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.

7.4.2.1.1 Finite Difference Time Domain

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

1. Replace derivatives in Ampere’s and Faraday’s laws with finite differences.


2. Discretize space and time to offset the electric and magnetic fields in both domains.
3. Solve the resulting difference equations for the future fields in terms of past fields.
4. Update the magnetic fields one time step in the future.
5. Update the electric fields one time step in the future.
6. Repeat the two previous steps over the desired time duration.

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] 𝐸𝑧𝑡+1 [𝑛] 𝐸𝑧𝑡+1 [𝑛 + 1]

𝑡+1/2 𝑡+1/2 𝑡+1/2 𝑡+1/2


𝐻𝑦 [𝑛 − 3/2] 𝐻𝑦 [𝑛 − 1/2] 𝐻𝑦 [𝑛 + 1/2] 𝐻𝑦 [𝑛 + 3/2]
Time

∆𝑡
∆𝑥
𝐸𝑧𝑡 [𝑛 − 1] 𝐸𝑧𝑡 [𝑛] 𝐸𝑧𝑡 [𝑛 + 1]

𝑡−1/2 𝑡−1/2 𝑡−1/2 𝑡−1/2


𝐻𝑦 [𝑛 − 3/2] 𝐻𝑦 [𝑛 − 1/2] 𝐻𝑦 [𝑛 + 1/2] 𝐻𝑦 [𝑛 + 3/2]

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.

7.4.2.1.2 Finite Element Method

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

1. Discretize the problem domain.


2. Choose the basis functions.
3. Formulate the set of system equations.
4. Solve the set of system equations.

Discretization of the problem domain involves subdividing Ω into some number


of smaller domains, which are referred to as elements. Figure 7.15 shows traditional
finite elements chosen for one-, two-, and three-dimensional problem domains. In two
dimensions, the triangular element works well for modeling targets with arbitrary geom-
etry. Similarly, in three dimensions the tetrahedral element is well suited for arbitrary
geometries. There are several tools for creating discretized problem domains suitable for
analysis with the finite element method, including Gmsh [38], Rhinoceros© [39], and
PTC Creo© [40].
264 Introduction to Radar Using Python and MATLAB

One Dimension Two Dimensions Three Dimensions


(Line Segment) (Triangular Element) (Tetrahedral Element)

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

Figure 7.16 Finite element method computational domain.

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.

7.4.2.1.3 Method of Moments

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

This may be expressed in matrix form as

Ax = b, (7.76)
where
Radar Cross Section 267

A =< wm , L vn >, (7.77)


and

b =< wm , f > . (7.78)

Listing 7.1 Example Direct and Iterative Methods

from scipy.sparse.linalg import cg


from scipy.linalg import lu_factor, lu_solve
from scipy import array

# System matrix
A = array([[1, 2], [3, 4]])

# RHS vector
b = array([10, -7])

# Perform factorization
lu, piv = lu_factor(A)

# Perform forward and backward substitution


x = lu_solve((lu, piv), b)

# Print the solution vector


print('Direct Solver Solution: ', x)

# Solution with conjugate gradient


x = cg(A, b)

# Print the solution vector


print('Iterative Solver Solution: ', x[0])
...
Direct Solver Solution: [-27. 18.5]
Iterative Solver Solution: [-27.0000928 18.50004516]

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

Figure 7.17 Arbitrarily shaped object in free space.

1. Formulate the problem in terms of integral equations.


2. Represent the solution in terms of basis functions.
3. Convert the integral equations to a matrix equation with the use of testing functions.
4. Solve the resulting matrix equations efficiently.
To formulate the integral equations, begin by considering the geometry of Figure
7.17, where there are electromagnetic fields produced by an electric current density, Ji ,
in the presence of an arbitrarily shaped object situated in free space. In the region exterior
to the object, the electric and magnetic fields obey the vector wave equation, given by

∇ × ∇ × 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,

∇2 G(r, r0 ) + k 2 G(r, r0 ) = −δ(r − r0 ). (7.81)


The solution to (7.81) is given in many texts [10, 53, 54], and is repeated here as
0
e−jk|r−r |
G(r, r0 ) = . (7.82)
4π||r − r0 |
Radar Cross Section 269

The incident fields are expressed as

˚ 
1 0 
Ei = −jωµ JG + ∇ · J G dV 0 , (7.83)
V k2
˚
i
H =− J × G dV 0 . (7.84)
V

To write the expressions more compactly, two operators are introduced:

‹ 
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)

Letting r approach S and performing some mathematical manipulation results in

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.

𝑇𝑛− 𝑇𝑛+ 𝑇𝑛− 𝑇𝑛+

𝜌𝑛− 𝜌𝑛+

RWB definition across two triangles. RWG vector representation.

Figure 7.18 Rao-Wilton-Glisson basis function.

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.

7.4.2.2 Approximate Methods

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).

7.4.2.2.1 Geometrical Optics

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

E(r, ω) ≈ E0 e−jkφ(r) , (7.94)

H(r, ω) ≈ H0 e−jkφ(r) . (7.95)

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

1. All rays travel in straight lines.


2. In a homogeneous medium, the polarization of the fields along the ray path is un-
changed.
3. Phase changes along the ray path are accounted for by e−jkφ(`) = e−jkφ(0) e−jk` ,
where ` is the distance along the ray path.
4. Amplitude and phase of the fields along the ray path is given by
r
−jkφ(0) ρ1 ρ2
E = E0 e e−jk` , (7.96)
(ρ1 + `)(ρ2 + `)

where ρ1 and ρ2 are the radii of curvature in the principal planes.

As an example, consider the calculation of the radar cross section of a sphere of


radius a with geometrical optics. For calculating the monostatic radar cross section, only
the ray at the specular point needs to be considered. The radii of curvature for the sphere
are
a
ρ1 = ρ2 = (m). (7.97)
2
Radar Cross Section 273

Phase Fronts
Rays

Rays

Phase Fronts

(a) Plane wave. (b) Spherical wave.

Figure 7.19 Geometrical optic ray fields for plane and spherical waves.

Using (7.96), the field in the backscattered direction is


 
a/2
s
E = −E0 e−jk` . (7.98)
a/2 + `
Using the definition of radar cross section in (7.1) allows the radar cross section of the
sphere to be written as
 2
a/2
σ = lim 4π`2 = πa2 (m2 ). (7.99)
`→∞ a/2 + `
Comparing the result in (7.99) to Figure 7.3, the two are in good agreement as the
frequency becomes large. This is to be expected since geometrical optics assumes the
target is much larger than the wavelength.

7.4.2.2.2 Physical Optics

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

As an example, consider the calculation of the monostatic radar cross section of a


sphere of radius a. If the incident wave is traveling in the negative z direction, then

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

Allowing ka → ∞ in (7.108) results in σ ≈ πa2 . In the high-frequency limit, the radar


cross section of the sphere as calculated by physical optics reduces to the radar cross
section from geometrical optics.
Radar Cross Section 275

𝐸 𝑖 , 𝐻𝑖 𝜃
𝑧 𝑎−

Figure 7.20 Sphere geometry for physical optics calculation.

7.4.2.2.3 Geometrical Theory of Diffraction

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

where dE is the electric field at P , and is written as [57]


C
dE = p e−jk(`+δ(x)) dx, (7.110)
` + δ(x)
where C is a constant. Substituting (7.110) into (7.109), and solving for the constant C
results in
276 Introduction to Radar Using Python and MATLAB

𝑑𝑥
𝛿(𝑥)

𝑎 𝐸𝑖 , 𝐻𝑖
0
𝑧 𝑝

Conducting
Half Plane

Figure 7.21 Conducting half plane for plane wave diffraction.

ˆ∞
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.

7.4.2.2.4 Uniform Theory of Diffraction

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

where the function F (x) is given by


278 Introduction to Radar Using Python and MATLAB

ˆ∞
√ 2
F (x) = 2j| x| e−jτ dτ, (7.113)

| x|

and the distance parameter L is





 s sin2 γ00 for plane waves,




 0
 ρρ

L = ρ0 + ρ for cylindrical waves, (7.114)





s0 s sin2 γ00




 for spherical waves.
s0 + s
The term in the argument of F is [57]

2nπN ± − (φ ± φ0 )
 
± 0 2
a (φ ± φ ) = 2 cos , (7.115)
2
where the integers, N ± , satisfy

2πnN + − (φ ± φ0 ) = π, 2πnN − − (φ ± φ0 ) = −π. (7.116)


Finally, the diffracted fields are
" d# " #" #
Ek −Dk 0 Eki
d
= i
A(s)e−jks , (7.117)
E⊥ 0 −D⊥ E⊥
where A(s) is the spatial attenuation term, given by

1


 √ for plane and cylindrical incident waves,
 s



A(s) = s (7.118)
s0




 s(s0 + s)
 for spherical incident waves.

The second basic problem addressed by UTD is diffraction by curved surfaces, as


illustrated in Figure 7.23. At the tangent point for the incident wave, P1 , the incident
wave undergoes diffraction. However, some of the incident energy is trapped and a wave
propagates on the surface of the scattering object. This wave is referred to as a creeping
wave and may be described as continuous diffraction along the surface of the scattering
object. In two dimensions, the creeping wave may be written as [57]
Radar Cross Section 279

Shadow Boundary
𝑛ො1 𝑛ො 2
𝐸 𝑑 , 𝐻 𝑑 Diffracted
𝐸𝑖 , 𝐻𝑖 𝑃1 𝑃2
Fields
Incident 𝑠′
Fields 𝑆
Curved
Diffracting
Surface

Figure 7.23 Diffraction by a curved 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.

As an example, consider the calculation of the two-dimensional radar cross section of a


right circular cylinder, as shown in Figure 7.7. The incident field is written as
" i#
Ek
i
= E0 ejkρ . (7.120)
E⊥
The two-dimensional GO field is first calculated as
" r# " i #
Ek Ek  
r
a
r
= i
R . (7.121)
E⊥ E⊥ 2ρ
For `  a,

|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 ,

E(P1 ) = E i (P1 )D(P1 ). (7.123)


280 Introduction to Radar Using Python and MATLAB

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⊥

7.4.2.3 Hybrid Methods

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.

7.4.3 Measurement Techniques

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

PML Boundary FE-BI Boundary


Figure 7.24 Finite element boundary integral (FE-BI) computational regions (NASA).

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.

7.4.3.1 Outdoor Range

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

Four Signal Paths

Support Pylon

Figure 7.25 Outdoor ground reflection range.

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.

7.4.3.2 Indoor Range

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

Figure 7.26 Indoor far-field range.

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

Figure 7.27 Tapered chamber configuration.

Reflector
Signal Path

Target

Support Pylon
Feed Antenna

Figure 7.28 Compact range configuration.


Radar Cross Section 285

Reflector
Target Scattering

Pylon Wall
Scattering Tx Leakage Scattering

Figure 7.29 Sources of errors in compact ranges.

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]

τ ≥ τrise + 2τL + τmeas + τfall (s), (7.128)


where
τ = required pulsewidth (s),
τrise = rise time of the pulse (s),
τL = width corresponding to target length (s),
τmeas = width of measurement window (s),
τfall = fall time of the pulse (s).

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].

7.5 RADAR CROSS-SECTION REDUCTION

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.

7.5.2 Radar Absorbing Material

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.

7.5.3 Passive Cancellation

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

7.5.4 Active Cancellation

In active cancellation techniques, an attempt is made to retransmit the incoming radar


waveform to mask the return of the target itself. This requires the use of transmitting
and receiving antennas, RF circuitry, and processing equipment. Active cancellation is
similar to passive cancellation except that the use of an active circuit to generate the
response increases the range of frequencies, angles, and dynamic range over which the
technique is effective. For many targets, the structure is not the only source of scattering
contributing to the radar cross section: electronics, antennas, and other sensors mounted
on the target may have very large contributions to the radar cross section. For antenna
systems, active cancellation seeks to adaptively weight the antenna elements to place a
null in the transmit and receive antenna patterns in the direction of the radar.

7.5.5 Electronic Countermeasures

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.

7.6.1 Two-Dimensional Strip

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.

7.6.2 Two-Dimensional Cylinder

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.

7.6.3 Two-Dimensional Cylinder Oblique Incidence

Next, a two-dimensional circular cylinder with oblique incidence is examined, as shown


in Figure 7.8. Calculate and display the two-dimensional bistatic radar cross section for
a cylinder of radius 3 meters, length 20 meters, a frequency of 300 MHz, and an incident
angle of 35o .

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.

7.6.4 Rectangular Plate

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.

7.6.5 Stratified Sphere

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.

7.6.6 Circular Cone

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.

7.6.7 Rounded Nose Cone

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.

7.6.9 Physical Optics

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.

7.6.10 Finite Difference Time Domain Method

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)

calculate the two-dimensional radar cross section given in (7.12).

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.

[2] V. Twersky. Rayleigh scattering. Applied Optics, 3:1150–1162, October 1964.

[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.

[20] A. Taflove and S. C. Hagness. Computational Electrodynamics: The Finite-Difference Time-Domain


Method, 3rd ed. Artech House, Norwood, MA, 2005.

[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.

[39] Robert McNeel and Associates. Rhinoceros. https://www.rhino3d.com.

[40] PTC. Pro/Engineer. https://www.ptc.com/en/products/cad/pro-engineer.

[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.

[56] M. Bebendorf. Approximation of boundary element matrices. Numerische Mathematik, 86(4):565–589,


2000.

[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.

[63] Cumming Microwave Corporation. Cumming Microwave, 2018. https://www.cumingmicrowave.com/.


Radar Cross Section 307

[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.

8.1 RANGE RESOLUTION

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

Figure 8.1 Geometry for a simple two target scenario.

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

"# + (' − 1)∆"


...

"# + 2∆"
∆"
"# + ∆"
PRI
...
"#

1 2 3
Pulse Number
... N

Figure 8.2 Stepped frequency waveform.

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.

8.2 STEPPED FREQUENCY WAVEFORMS

The stepped frequency technique is an example of interpulse compression. For stepped


frequency waveforms, each successive pulse is transmitted at a different center frequency,
as shown in Figure 8.2. The frequency of the ith pulse is given by

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

Beffective = N ∆f (Hz), (8.4)


where N is the number of pulses. The spectrum of the stepped frequency waveform is
illustrated in Figure 8.3.
312 Introduction to Radar Using Python and MATLAB

Signal Strength

...

𝑓0 𝑓0 + ∆𝑓 𝑓0 + 2∆𝑓 ... 𝑓0 + (𝑁 − 1)∆𝑓


Frequency

Figure 8.3 Spectrum of the stepped frequency waveform.

The range resolution for the stepped frequency waveform is then


 
c
∆r = (m). (8.5)
2N ∆f
The return signal is composed of the in-phase and quadrature components and may be
expressed as si (t) = Ai (t) ejφi (t) , where the phase is φi (t) = 2πfi ti radians. The time
2 ri
delay to a given target is ti = seconds, where ri = r0 + (i − 1) v T meters,
c
and
r0 = initial range of the target (m),
v = velocity of the target in the radial direction (m/s),
T = pulse repetition interval (s).

The overall baseband return signal then becomes


 

si (t) = Ai (t) exp −j (f0 + (i − 1)∆f ) (r0 + (i − 1) v T ) . (8.6)
c
The expression in (8.6) is nonlinear in phase. This nonlinearity causes range-Doppler
coupling [2], which impacts the range resolution and integration gain, as shown in the
examples in Section 8.8. The expression in (8.6) is converted to a time domain reflectivity
function, often termed range profile, by use of the inverse Fourier transform. The output
of the stepped frequency processing is implemented in the code shown in Listing 8.1.
The target is located at a range of 2 km and has a velocity of 0 m/s, and the output of this
Pulse Compression 313

Stepped Frequency Range Profile


0
5
10
Amplitude (dBsm)

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

Listing 8.1 Calculation of the Stepped Frequency Output

from scipy import exp, linspace, zeros


from scipy.fftpack import ifft, next_fast_len
from scipy.constants import c, pi
from matplotlib import pyplot as plt

# Set the stepped frequency waveform parameters


number_of_pulses = 64
frequency_step = 50e3 # Hz
prf = 100 # Hz

# Set the target parameters


target_range = [2e3] # meters
target_velocity = [0] # m/s

# Initialize the return signal


s = zeros(number_of_pulses, dtype=complex)

# Calculate the return signal


for r, v in zip(target_range, target_velocity):
s += [exp(-1j * 4.0 * pi / c * (i * frequency_step) * \
(r - v * (i / prf)))
for i in range(number_of_pulses)]

# Calculate the iFFT


n = next_fast_len(10 * number_of_pulses)
sf = abs(ifft(s, n))

# Set up the range window for plotting


range_window = linspace(0, c / (2.0 * frequency_step), n)

# Plot the iFFT output


plt.figure(1)
plt.plot(range_window, sf / max(sf))
plt.title('Stepped Frequency Range Profile')
plt.xlabel('Range (m)')
plt.ylabel('Relative Amplitude')
plt.show()
Pulse Compression 315

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
 

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.

8.3 MATCHED FILTER

The matched filter is an intrapulse compression technique commonly used in radar


systems. The matched filter is the optimal linear filter that maximizes the signal-to-noise
ratio in the presence of additive random noise. The term matched comes about as the filter
impulse response is matched to the radar transmit signal. These were first referred to as
North filters, as the concept first appeared in a report by North in 1943 [4]. Consider the
matched filter diagram in Figure 8.5, where t0 is the time delay to the target. The input
signal to the filter is composed of both the input signal, si (t), and the input noise, ni (t),
as

xi (t) = si (t) + ni (t), (8.12)


where the input signal is the delayed version of the transmit signal; that is, si (t) =
s(t − t0 ). If the filter response, h(t), is linear, the filter output is written as

𝑠𝑖 (𝑡) Matched Filter 𝑠𝑜 (𝑡)

ℎ(𝑡)
𝑛𝑖 (𝑡) 𝑛𝑜 (𝑡)

Figure 8.5 Matched filter block diagram.


316 Introduction to Radar Using Python and MATLAB

xo (t) = so (t) + no (t), (8.13)


where

so (t) = s(t − t0 ) ∗ h(t), (8.14)

no (t) = ni (t) ∗ h(t), (8.15)

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

Pnoise = E |no (t)|2



(W), (8.16)
where E{x} is the expectation of x. The peak instantaneous signal power at the output of
the matched filter is given by
2
Psignal = so (t0 ) (W). (8.17)
The peak signal-to-noise ratio is written as

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

H(f ) = F{h(t)}, (8.19)

Si (f ) = F{si (t)}, (8.20)


So (f ) = F{so (t)}, (8.21)

where F{x} is the Fourier transform of x, and

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

Ni (f ) = F E[ni (t + τ ) n∗i (t)] ,



(8.23)
Pulse Compression 317

No (f ) = F E[no (t + τ ) n∗o (t)] ,



(8.24)

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)
−∞ −∞

The peak instantaneous power given in (8.17) may be expressed as

2 ˆ∞
2

−1
Psignal = F {S0 (f )}|t=t0 = Si (f )H(f ) ej2πf t0 df . (8.27)


−∞

Then expression for the signal-to-noise ratio is then


2
´∞
j2πf t0
Si (f )H(f ) e df


Psignal −∞
SNR = = ´∞ . (8.28)
Pnoise 2
H(f ) Ni (f )df
−∞

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
−∞

To maximize the signal-to-noise ratio, the Cauchy-Schwarz inequality is used as [5]


ˆb 2 ˆb ! ˆb !

X(f ) 2 df
2
X(f )Y (f )df ≤ Y (f ) df . (8.30)


a a a

The equality holds when X(f ) = KY ∗ (f ), where K is an arbitrary complex constant.


Making use of (8.30), (8.29) becomes
318 Introduction to Radar Using Python and MATLAB

´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

H(f ) = KSi∗ (f ) e−j2πf t0 . (8.32)


Using Parseval’s theorem [6], the signal-to-noise ratio may be written as
Ei
SNR = , (8.33)
kT0 F G
where Ei is the energy in the input signal. This illustrates the maximum instantaneous
signal-to-noise ratio for the matched filter only depends on the energy in the input signal
and the input noise and does not depend on the waveform used. To find the filter impulse
response, h(t), take the inverse Fourier transform of (8.32), which gives

h(t) = F −1 {KSi∗ (f ) e−j2πf t0


ˆ∞
= KSi∗ (f ) e−j2πf t0 ej2πf t df = Ks∗i (t0 − t). (8.34)
−∞

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

Listing 8.2 Calculation of the Matched Filter Output

from scipy.fftpack import fft, ifft, fftshift


from scipy import conj, linspace, exp
from scipy.constants import pi
from matplotlib import pyplot as plt

t = linspace(-1, 1, 1024) # Pulsewidth (s)

t0 = 0.2 # Time delay to the target (s)

# Set up the transmit and receive signals (s)


st = exp(1j * 10 * pi * t ** 2)
sr = exp(1j * 10 * pi * (t - t0) ** 2)

# Impulse response and matched filtering


Hf = fft(conj(st))
Si = fft(sr)
so = fftshift(ifft(Si * Hf))

# Plot the matched filter output


plt.figure(1)
plt.plot(t, abs(so) / max(abs(so)))
plt.title('Matched Filter Output')
plt.xlabel('Time Delay (s)')
plt.ylabel('Relative Amplitude')
plt.show()

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

Matched Filter Output


1.0

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.

8.4 STRETCH PROCESSING

Stretch processing is an intrapulse compression technique used for processing waveforms


of very large bandwidth. It was originally developed to reduce the sampling requirements
for large bandwidth, high range resolution systems such as synthetic aperture radar (SAR)
systems [8]. While stretch processing may be applied to various forms of wide bandwidth
waveforms, this discussion is focused on linear frequency modulation (LFM) waveforms.
A block diagram of a stretch processor is given in Figure 8.7, and in general, stretch
processing consists of the following basic steps:
Pulse Compression 321

Mixer
𝑠𝑟 (𝑡) 𝑠𝑜 (𝑡) 𝑆𝑜 (𝑓)
𝐹(𝑠[𝑛])

Lowpass ADC Fourier


𝑠𝑟𝑒𝑓 (𝑡) Filter Transform

LFM
Figure 8.7 Block diagram of a stretch processor.

1. Mix the return signal with a reference signal.


2. Low-pass filter the mixed signals.
3. Analog-to-digital conversion of the low-pass filtered signals.
4. Fourier transform of the digital signals.
The first step in stretch processing is to mix the return signal with a reference signal. The
reference signal is typically generated with the same frequency slope as the transmitted
signal. The transmitted LFM signal may be written as
  
β 2
s(t) = exp j 2π f0 t + t 0 ≤ t ≤ τp , (8.36)
2
where
β = frequency slope, B/τp , (Hz/s),
f0 = center frequency (Hz),
s(t) = transmitted LFM signal.

The return signal from a point scatterer is written as


  
β
sr (t) = A exp j 2π f0 (t − t0 ) + (t − t0 )2 , (8.37)
2
where
t0 = time delay associated with the target, 2r0 /c, (s),
r0 = range to the target (m),
sr (t) = return signal from the target.

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,

τref ≥ tr + τp (s), (8.39)


where tr is the range of time over which stretch processing is to be employed, as
illustrated in Figure 8.8. This is expressed as tr = tmax − tmin . The second requirement
is tref − tmin ≤ t0 ≤ tmax + tref . Now that the requirements on the reference signal
have been specified, the output of the mixing step is written as

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

φ(t) = 2πf0 (t0 − tref ) + 2πβ(t0 − tref )t + πβ t2ref − t20



(rad). (8.42)

The instantaneous frequency is then

fi = β(t0 − tref ) (Hz). (8.43)


This allows the time delay of the target to be written as
fi
t0 = + tref (s). (8.44)
β
Therefore, the target range is related to the instantaneous frequency as
 
c fi
r0 = τp + tref (m). (8.45)
2 B
The expression in (8.43) indicates the resulting instantaneous frequency is constant and
related to the range to the target, as illustrated in Figure 8.9. Performing analog-to-digital
sampling on the signal output from the mixer only requires sampling at the maximum
instantaneous frequency in (8.43), rather than the full bandwidth. For example, consider
a waveform with a bandwidth of B = 1 GHz, a pulsewidth of τp = 8 ms, and a maximum
receive window of rmax = 100 m. The number of analog-to-digital samples for stretch
processing is then

4B rmax 4 · 109 · 100


N ≥ 2τp fi |max ≥ 2B(t0 − tref ) = ≥ ≈ 1333. (8.46)
c 3 × 108

𝑠𝑜 (𝑡) 𝑓2
𝐹{𝑠𝑜 𝑡 }

𝑓1

Time 𝑟1 𝑟2 Range

Figure 8.9 The instantaneous frequency related to the target range.


324 Introduction to Radar Using Python and MATLAB

Stretch Processor Output


1.0

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.

If using a matched filter instead, the required number of samples is

N ≥ 2Bτ = 2 · 109 · 10−2 = 20 × 106 . (8.47)


This is a very large savings in the number of samples, ADC rate, memory, and processing.
The stretch processor allows the system to utilize waveforms with bandwidths not feasible
with the matched filter. Finally, performing the Fourier transform on the sampled signal
results in sinc functions located at the frequency corresponding to the relative time delay
of the target. Listing 8.3 illustrates this with a simple example, and the output is given in
Figure 8.10. To study the range resolution associated with the stretch processor, consider
the situation where there are two point scatterers present at ranges r1 and r2 , with
associated time delays of t1 = 2r1 /c and t2 = 2r2 /c. Using (8.43), the instantaneous
frequencies are

fi1 = β(t1 − tref ), fi2 = β(t2 − tref ) (Hz). (8.48)

The frequency resolution of the stretch processor is written as


Pulse Compression 325

Listing 8.3 Calculation of the Stretch Processor Output

from scipy.fftpack import fft, fftshift, fftfreq


from scipy import ceil, linspace, exp
from scipy.constants import pi, c
from matplotlib import pyplot as plt

bandwidth = 50e6 # Bandwidth (Hz)

pulsewidth = 1e-3 # Pulsewidth (s)

range_window_length = 50.0 # Range window length +/- (m)

target_range = 15.0 # Target range (m)


t0 = 2.0 * target_range / c # Time delay to target (s)

# 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)

# Sampled signal after mixing


so = exp(1j * 2.0 * pi * bandwidth / pulsewidth * t0 * t)

# Fourier transform
so = fftshift(fft(so, 512))

# FFT frequencies
frequencies = fftshift(fftfreq(512, dt))

# Range window
range_window = 0.5 * frequencies * c * pulsewidth / bandwidth

# Plot the stretch processor output


plt.figure(1)
plt.plot(range_window, abs(so) / max(abs(so)), 'k')
plt.title('Stretch Processor Output')
plt.xlabel('Range (m)')
plt.ylabel('Relative Amplitude')
plt.show()
326 Introduction to Radar Using Python and MATLAB

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

As shown in Chapter 3, windowing is a method for reducing sidelobes by applying


weighting coefficients to the antenna elements. Similarly, weighting coefficients may be
applied to the digital samples in matched filtering or stretch processing as a technique
for reducing the time (range) sidelobes. Analogous to the antenna case, windowing will
reduce the range resolution by broadening the main lobe, and also reduce the signal-to-
noise ratio. However, these trades may be necessary in cases where time sidelobes mask
lower RCS targets or even cause false alarms. Figure 8.11 illustrates a low-intensity target
being masked by range sidelobes of a high-intensity target when no window is applied.
Pulse Compression 327

No Windowing

Weak Target not Detected

Figure 8.11 Low-intensity target masked by high-intensity target.

Figure 8.12 shows the low-intensity target detected when a Hamming window is applied
to the data.

8.6 AMBIGUITY FUNCTION

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

Weak Target Detected

Figure 8.12 Low-intensity target detected in the presence of a high-intensity target.

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]:

1. The value at the origin, (τ = 0, f = 0), is E 2 .


2 2
2. The maximum value is located at the origin, χ(τ, f ) ≤ χ(0, 0) .
3. The volume of the ambiguity function is constant and equal to E 2 ,
Pulse Compression 329

ˆ∞ ˆ∞
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

χv (τ, f ) = ej2πf δt χs (τ, f ). (8.55)

6. The time scaling property states if v(t) = s(at), then

1
χv (τ, f ) = χs (aτ, f /a). (8.56)
|a|

7. The modulation property states if v(t) = s(t) ej2πψt , then

χv (τ, f ) = ej2πψτ χs (τ, f ). (8.57)


2
8. The quadratic phase shift property states if v(t) = s(t) ejπβt , then

χv (τ, f ) 2 = χs (τ, f + βτ ) 2 .

(8.58)

8.6.1 Single Unmodulated Pulse

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

Unmodulated Pulse Ambiguity Function


1.0

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) 2 = (τp − |τ |)2



for |τ | ≤ τp . (8.63)
The ambiguity function along the time axis extends (−τp , τp ). Therefore, targets will be
unambiguous in time if they are separated by at least τp seconds. This shows the range
resolution for a single unmodulated pulse is c τp /2 meters. Similarly, taking a cut along
the zero-time axis allows for the study of the Doppler resolution and ambiguity. Figure
8.14 shows the zero-time cut through the ambiguity function. This cut corresponds to
τ = 0, and is expressed as

χ(0, f ) 2 = τp2 sinc[f τp ] 2 .



(8.64)
Pulse Compression 331

Unmodulated Pulse Ambiguity Function


1.0

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 .

8.6.2 Single LFM Pulse

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

LFM Pulse Ambiguity Function


1.0

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.

8.6.3 Generic Waveform Procedure

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

LFM Pulse Ambiguity Function


1.0

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.

4. Compute S(f − fd ) by taking the Fourier transform of s(t) exp(j2πfd t).


5. Compute χ(τ, fd ) by taking the inverse Fourier transform of S(f )S ∗ (f − fd ).
Pulse Compression 335

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.

These steps are expressed mathematically as


2 2
|χ(τ, fd )| = F −1 F [s(t)] F [s(t) exp(j2πfd t)]∗ .

(8.69)
The procedure outlined above will be used in Section 8.8 to study the ambiguity function
of unmodulated pulse trains, LFM pulse trains, and coded waveforms.

8.7 PHASE-CODED WAVEFORMS

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
𝜏𝑛

Figure 8.19 Phase-coded waveform.

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).

8.7.1 Barker Codes

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

8.7.2 Frank Codes

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


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].

8.7.3 Pseudorandom Number Codes

Pseudorandom number (PRN) coded waveforms are binary phase-coded waveforms


where the phase state is determined by a sequence of 0s and 1s based on a PRN sequence.
PRN waveforms appear similar to noise and satisfy one or more of the standard tests for
Pulse Compression 339

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

Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 ... Bit N


Output

Figure 8.22 Linear feedback shift register with N bits.

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:

1. Initialize the register with any sequence except all 0s.


340 Introduction to Radar Using Python and MATLAB

Table 8.2
Feedback Taps for Generating Maximum Length Sequences

N Feedback Taps Characteristic Polynomial Sequence Length


3 3, 2 x3+ x2
+1 7
4 4, 3 x4 + x3 + 1 15
5 5, 3 x5 + x3 + 1 31
6 6, 5 x6 + x5 + 1 63
7 7, 6 x7 + x6 + 1 127
8 8, 6, 5, 4 x8 + x6 + x5 + x4 + 1 255

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.

4. Store the contents of bit N in an output buffer.


5. Load the contents of the storage buffer into bit 1 of the register.
6. Repeat Steps 2-5 until the output buffer contains 2N –1 bits.

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

The linear autocorrelation is then an approximation to the Kronecker delta function.


Therefore, the ambiguity function associated with PRN waveforms is well suited for
radar applications due to their time and Doppler resolution and ambiguity properties,
as shown in Section 8.8. Also, PRN waveforms are nearly orthogonal (i.e., if a PRN
waveform is passed through a matched filter matched to a different PRN waveform, then
the output will appear as noise). This is advantageous for multiinput multioutput (MIMO)
and multistatic radar applications [27, 28].

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.

8.8.1 Stepped Frequency Waveform

In this example, consider a stepped frequency waveform consisting of 64 pulses trans-


mitted at a pulse repetition frequency of 100 Hz. The frequency step between successive
pulses is 50 kHz. Calculate and plot the range profile when there are three targets located
at 0.5, 1.5, and 2.0 km. The radar cross section of the targets is 1, 10, and 100 m2 ,
respectively. Also, the targets have velocities of 0, 0, and 10 m/s.

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.

8.8.2 Matched Filter

The previous example considered an interpulse compression technique. This example


focuses on an intrapulse technique using the matched filter. Suppose a radar system
transmits an LFM waveform with a pulsewidth of 100 µs and a bandwidth of 20 Mhz.
Calculate and plot the output of the matched filter when there are three targets in the
scene. The targets are located at ranges of 100, 200, and 500m from the start of the range
window and their associated radar cross section values are 1, 10, and 100 m2 .

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

Figure 8.24 The range profile using a matched filter calculated by


matched filter example.py.

8.8.3 Stretch Processor

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

Figure 8.25 The range profile using a stretch processor calculated by


stretch processor example.py.

8.8.4 Unmodulated Pulse Ambiguity

As a first example of ambiguity functions, consider the ambiguity function associated


with a single unmodulated pulse. Calculate and display the ambiguity function for a single
unmodulated pulse with a pulsewidth of 1 ms.

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.

8.8.5 LFM Pulse Ambiguity

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

8.8.6 Coherent Pulse Train Ambiguity

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.29 The 2D contour of the LFM ambiguity function calculated by


lfm pulse ambiguity example.py.

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.

8.8.7 LFM Pulse Train Ambiguity

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.

8.8.8 Barker Code Ambiguity

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.38 The 2D contour of the B13 ambiguity function calculated by


barker ambiguity example.py.
Pulse Compression 353

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

Figure 8.41 The 2D contour of a PRN15 ambiguity function calculated by


PRN ambiguity example.py.

8.8.9 PRN Code Ambiguity

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.42 The zero-Doppler cut of a PRN15 ambiguity function calculated by


PRN ambiguity example.py.

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

Figure 8.44 The 2D contour of the F9 ambiguity function calculated by


frank ambiguity example.py.

8.8.10 Frank Code Ambiguity

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.45 The zero-Doppler cut of the F9 ambiguity function calculated by


frank ambiguity example.py.

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.8 Consider a waveform with a bandwidth of 2 GHz, a pulsewidth of 8 ms, and a


maximum receive window of 100m. Compare the number of analog-to-digital samples
required for stretch processing versus the matched filter.

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.

[2] M. Skolnik. Radar Handbook, 3rd ed. McGraw-Hill Education, 2008.

[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.

[22] S. W. Golomb. Shift Register Sequences. Holden-Day, Norwood, MA, 1967.

[23] S. W. Golomb and G. Gong. Signal Design for Good Correlation: For Wireless Communication,
Cryptography, and Radar. Cambridge University Press, Cambridge, UK, 2005.

[24] P. Koopman. Maximal Length LFSR Feedback Terms. http://users.ece.cmu.edu/∼koopman/lfsr/.

[25] Wikipedia contributors. Linear-feedback shift register. https://en.wikipedia.org/wiki/


Linear-feedback shift register.

[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.

9.1 TRACKING FILTERS

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

x = future target position (m),


x0 = target initial position (m),
v0 = target initial velocity (m/s),
a = target acceleration (m/s2 ),
∆t = track update interval (s).

Expanding (9.1) in a three-dimensional Cartesian coordinate system results in

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.

9.1.1 Alpha-Beta Filter

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

xk,k−1 = xk−1,k−1 + vk−1,k−1 ∆t (m), (9.5)


where
Target Tracking 363

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),
∆t = measurement update interval (s),
xk,k−1 = predicted position at update k given measurements up to
and including k − 1 (m).

The velocity is assumed to be constant, so the predicted value is equal to the current value
as

vk,k−1 = vk−1,k−1 (m/s). (9.6)


Since the alpha-beta model is a simplified dynamic model, the measurement and the
predicted value are expected to deviate due to noise and other effects not included in the
model. This error is often referred to as the residual or innovation, and is expressed as

rk = zk − xk,k−1 (m), (9.7)


where
zk = measurement at update k (m),
xk,k−1 = predicted position at update k (m),
rk = residual at update k (m).

The alpha-beta filter uses selected constants, α and β, to adjust the position and velocity
estimates as

xk,k = xk,k−1 + α rk (m), (9.8)

β
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 < α < 1, (9.10)

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:

1. Select values for α and β.


2. Initialize x0,0 and v0,0 with initial measurement values, or set to zero.

3. Predict state xk,k−1 and vk,k−1 using (9.5) and (9.6).


4. Calculate the residual from (9.7) and adjust the predicted state using (9.8) and (9.9).
5. Repeat steps (3)–(4) for each new measurement with xk,k and vk,k as the filter output.

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

Listing 9.1 Alpha-Beta Filter

from scipy import linspace, random

# Time (s)
t, dt = linspace(0, 10, 200, retstep=True)

# True position (m) and velocity (m/s)


v_true = 3.5
x_true = 2.3 + v_true * t

# Measurements (add noise)


z = x_true + 10.0 * (random.rand(200) - 0.5)

# Filter parameters
alpha = 0.1
beta = 0.001

# Initialize the position and velocity


xk_1 = 0.0
vk_1 = 0.0

# Loop over all measurements


for zk in z:
# Predict the next state
xk = xk_1 + vk_1 * dt
vk = vk_1

# Calculate the residual


rk = zk - xk

# Adjust the predicted state


xk += alpha * rk
vk += beta / dt * rk

# Set the current state as previous


xk_1 = xk
vk_1 = vk
366 Introduction to Radar Using Python and MATLAB

Alpha-Beta Filter
True
40 Measurement
Filtered

30
Position (m)

20

10

0 2 4 6 8 10
Time (s)

Figure 9.1 Alpha-beta filtered position for Listing 9.1.

9.1.2 Alpha-Beta-Gamma Filter

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)

Figure 9.2 Alpha-beta filtered velocity for Listing 9.1.

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).

The velocity is found from the acceleration as

vk,k−1 = vk−1,k−1 + ak−1,k−1 ∆t (m/s). (9.14)


368 Introduction to Radar Using Python and MATLAB

Alpha-Beta Filter
6

2
Residual (m)

0 2 4 6 8 10
Time (s)

Figure 9.3 Alpha-beta residual for Listing 9.1.

The acceleration is assumed to be constant, so the predicted value is equal to the current
value as

ak,k−1 = ak−1,k−1 (m/s2 ). (9.15)


The alpha-beta-gamma filter uses the same definition for the residual as the alpha-beta
filter given in (9.7). The alpha-beta-gamma filter uses selected constants, α, β, and γ, to
adjust the position, velocity, and acceleration estimates as

xk,k = xk,k−1 + α rk (m), (9.16)

β
vk,k = vk,k−1 + rk (m/s), (9.17)
∆t


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(1 − s)2 , (9.20)

β2
γ= , (9.21)

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

Listing 9.2 Alpha-Beta-Gamma Filter

from scipy import linspace, random

t, dt = linspace(0, 100, 1000, retstep=True) # Time (s)

# True position (m), velocity(m/s) and acceleration (m/s/s)


a_true = 3.0
v_true = 3.5 + a_true * t
x_true = 1.3 + 3.5 * t + 0.5 * a_true * t ** 2

# Measurements (add noise)


z = x_true + 10.0 * (random.rand(1000) - 0.5)

# Alpha-Beta-Gamma filter parameters


s = 0.97
alpha = 1.0 - s ** 2
beta = 2.0 * (1.0 - s) ** 2
gamma = beta ** 2 / (2.0 * alpha)

xk_1 = 0.0 # Initialize the position


vk_1 = 0.0 # Initialize the velocity
ak_1 = 0.0 # Initialize the acceleration

for zk in z: # Loop over all measurements


# Predict the next state
xk = xk_1 + vk_1 * dt + 0.5 * ak_1 * dt ** 2
vk = vk_1 + ak_1 * dt
ak = ak_1

rk = zk - xk # Calculate the residual

# Correct the predicted state


xk += alpha * rk
vk += beta / dt * rk
ak += 2.0 * gamma / dt ** 2 * rk

# Set the current state as previous


xk_1 = xk
vk_1 = vk
ak_1 = ak
Target Tracking 371

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)

Figure 9.4 Alpha-beta-gamma filtered position for Listing 9.2.

9.1.3 Kalman Filter

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].

9.1.3.1 One-dimensional Kalman Filter

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)

Figure 9.5 Alpha-beta-gamma filtered velocity for Listing 9.2.

xk,k = xk,k−1 + Kk (zk − xk,k−1 ) = (1 − Kk ) xk,k−1 + Kk zk , (9.23)

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)

Figure 9.6 Alpha-beta-gamma filtered acceleration for Listing 9.2.

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

Pk,k = (1 − Kk ) Pk,k−1 , (9.25)


where Pk,k−1 is the predicted state uncertainty, and Pk,k is the updated state uncertainty.
Now that the state and uncertainty update equations have been found, the predicted
state and uncertainty needs to be determined. In this one-dimensional model, assuming a
constant velocity, the predicted state is given by

xk,k−1 = xk−1,k−1 + vk−1,k−1 ∆t (m), (9.26)

vk,k−1 = vk−1,k−1 (m/s). (9.27)


374 Introduction to Radar Using Python and MATLAB

Alpha-Beta-Gamma Filter

15

10
Residual (m)

10

0 20 40 60 80 100
Time (s)

Figure 9.7 Alpha-beta-gamma residual for Listing 9.2.

The predicted state uncertainty would then be

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

Pk,k−1 = Pk−1,k−1 + Qk . (9.30)


The algorithm for a one-dimensional Kalman filter, with a constant dynamic model, is
given in Listing 9.3. The output of this algorithm is shown in Figure 9.10.

9.1.3.2 Multivariate Kalman Filter

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

One-Dimensional Kalman Filter


18 True
Measurement
Filtered
16

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

Listing 9.3 One-Dimensional Kalman Filter

from scipy import linspace, random, sqrt

t, dt = linspace(0, 1, 100, retstep=True) # Time(s)

x_true = 13.0 # True position (m)

Q = 0.01 # Process noise variance (mˆ2)

R = 100.0 # Measurement noise variance (mˆ2)

# Measurements (add noise)


z = x_true + sqrt(R) * (random.rand(n) - 0.5)

# Initialize state (m) and uncertainty (mˆ2)


xk = 0.0
pk = 1000.0

for zk in z: # Loop over all measurements

xk = xk # Predict the next state

pk = pk + Q # Predict the uncertainty

K = pk / (pk + R) # Calculate the Kalman gain

# Update the state and uncertainty


xk = xk + K * (zk - xk)
pk = (1.0 - K) * pk

xk,k−1 = Ak xk−1,k−1 + Bk uk , (9.33)

Pk,k−1 = Ak Pk−1,k−1 ATk + Qk , (9.34)

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

xk,k = xk,k−1 + Kk (zk − Hk xk,k−1 ) , (9.36)

Pk,k = (I − Kk Hk ) Pk,k−1 , (9.37)

where I is the identity matrix. Figure 9.11 illustrates the iterative process of Kalman
filtering.

9.1.3.3 Adaptive 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,

Time Update (Prediction) Measurement Update


−1
𝒙0,0 𝒙𝑘,𝑘−1 = 𝑨𝑘 𝒙𝑘−1,𝑘−1 + 𝑩𝑘 𝒖𝑘 𝑲𝑘 = 𝑷𝑘,𝑘−1 𝑯𝑇𝑘 𝑯𝑘 𝑷𝑘,𝑘−1 𝑯𝑇𝑘 + 𝑹𝑘
𝑷0,0 𝑷𝑘,𝑘−1 = 𝑨𝑘 𝑷𝑘−1,𝑘−1 𝑨𝑇𝑘 + 𝑸𝑘 𝒙𝑘,𝑘 = 𝒙𝑘,𝑘−1 + 𝑲𝑘 𝒛𝑘 − 𝑯𝑘 𝒙𝑘,𝑘−1
Initial 𝑷𝑘,𝑘 = 𝑰 − 𝑲𝑘 𝑯𝑘 𝑷𝑘,𝑘−1
State

Current State Becomes Previous 𝒛𝑘

Sensor
Measurement

Figure 9.11 Flow diagram of the Kalman filter iterative process.


380 Introduction to Radar Using Python and MATLAB

automobile, aircraft, or ballistic object experiencing atmospheric drag. While an attempt


could be made to model the control inputs, there would be no way to model environmental
conditions such as ocean current, wind, and temperature. There has been much research
in this area, which has led to methods such as adjustable process noise [13], fading
memory filters [14], multiple model and adaptive multiple model estimators [15], and
interacting multiple models [16]. A simple approach to this problem would be to increase
the process noise variance, Qk , to take into account the variance in the unknown system
dynamics. While this method does give rise to a nondiverging filter, it is usually far from
optimal. As seen in previous sections, a large value of process noise gives more weight to
the measurement noise. A maneuvering target must undergo some type of acceleration.
Therefore, implementing a constant velocity model results in filtered output that does not
react quickly to maneuvers and takes a long period of time to recover, as illustrated in
Figure 9.12. This is also seen in the residual given in Figure 9.13. While implementing
a constant acceleration model results in filtered output that responds more quickly to
maneuvers, this model amplifies the noise, as shown in Figure 9.14 and in the residual
given in Figure 9.15.
Next, consider a constant velocity model with an increased process noise to
account for the maneuver. This results in a filtered output that responds quickly to
maneuvers but with an increased amount of noise, as shown in Figures 9.16 and 9.17. The
constant velocity model does not react to accelerations quickly. However, the constant
acceleration model produces a noisy output during the nonaccelerating portions of the
target trajectory. The constant velocity model with large process noise also performs well
with maneuvering targets. Therefore, a constant velocity model that adapts the process
noise to the behavior of the target is desired. The residual is used to determine if a target is
maneuvering, or in general, deviating from the process model. Two methods for adjusting
the process noise are considered. The first normalizes the square of the residual as [13]

k = rTk S−1 rk , (9.38)


where

Sk = Hk Pk,k−1 HTk + Rk , (9.39)


and rk is the residual. The process noise is increased when k exceeds a set threshold, and
then reduced when k falls below this threshold. The second method, which is similar to
the previous one, uses the standard deviation of the measurement and state uncertainty
as [14]
q
σ k = Hk Pk,k−1 HTk + Rk . (9.40)
When the absolute value of the residual exceeds a multiple of the standard deviation
given in (9.40), the process noise is increased by a specified amount. Figures 9.18 and
9.19 illustrate the results using the k method, while Figures 9.20 and 9.21 show the
Target Tracking 381

Constant Velocity Kalman Filter


10 True
Measurement
Filtered
8
Position (m)

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.

9.2 MULTITARGET TRACKING

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

Constant Velocity Kalman Filter


0.6

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

Constant Acceleration Kalman Filter


10 True
Measurement
Filtered
8
Position (m)

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.

9.2.1 Global Nearest Neighbor

As an introduction to multitarget tracking, the GNN approach is presented as it is intuitive


and easy to implement. However, it has many drawbacks, including loss of track and poor
performance for closely spaced targets [17]. This technique attempts to find the unique
joint association of measurements to targets that minimizes some cost, such as a distance
or likelihood. The GNN method then uses standard filtering techniques for each target
and its associated measurement. A commonly used measure of the distance between two
probability distributions is the Mahalanobis distance [20]. A cost matrix is formed using
the Mahalanobis distance, and is written as

Mij i j j T −1 i j j
k = (zk − Hk xk ) Sk (zk − Hk xk ), (9.41)
where

Sk = Hjk Pjk Hjk T + Rik , (9.42)


384 Introduction to Radar Using Python and MATLAB

Constant Acceleration Kalman Filter


0.8

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

Constant Velocity Kalman Filter


10 True
Measurement
Filtered
8
Position (m)

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.

9.2.2 Joint Probabilistic Data Association

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

Constant Velocity Kalman Filter


0.8
0.7
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.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]

P ek |Zk = p Zk |ek , Mk , Zk−1 P (ek |Mk ) ,


 
(9.44)
where
Target Tracking 387

Adaptive Kalman Filter - Method


10 True
Measurement
Filtered
8
Position (m)

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).

Zk = set of measurements {z1 , . . . , zn },


Zk = {Zi |i = 1, . . . , k},
ek = feasible joint association events,
Mk = the number of measurements in the validation regions,

and p is the likelihood function given by


Mk
 Y
p Zk |ek , Mk , Zk−1 = p zki |eik , Zk−1 .

(9.45)
i=1

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

Adaptive Kalman Filter - Method


0.7
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.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

xjk,k = xjk,k−1 + Kjk rjk , (9.47)


where the combined residual is
Mk
X h i
rjk = βkij zik − Hjk xjk,k−1 . (9.48)
i=1

The associated uncertainty is expressed as [24]


Target Tracking 389

Adaptive Kalman Filter - Method


10 True
Measurement
Filtered
8
Position (m)

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)

where the spread of the residual is

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

9.2.3 Multiple Hypothesis Tracker

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

Adaptive Kalman Filter - Method


0.7

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

Figure 9.22 Multitarget tracking scenario.

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 New Track New Tracks


Formation

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

Figure 9.23 Target-oriented MHT processing steps.

𝑘−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

Figure 9.24 Example track tree for the MDA problem.


Target Tracking 393

𝑨𝒂 = 𝒃,

𝑏𝑗 = 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

Figure 9.25 Example multiframe assignment problem.

9.2.4 Random Finite Set

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].

9.3 MEASUREMENT MODEL

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]

rpseudo = rtrue + rnoise + rfixed + rbias (m), (9.53)


θpseudo = θtrue + θnoise + θfixed + θbias (rad), (9.54)
φpseudo = φtrue + φnoise + φfixed + φbias (rad). (9.55)
Target Tracking 395

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.

9.4.1 Alpha-Beta Filter

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.

9.4.2 Alpha-Beta-Gamma Filter

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.28 The residual calculated by alpha beta example.py.


Target Tracking 399

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.

9.4.3 Kalman Filter: Constant Velocity

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.

Figure 9.31 The true and filtered acceleration calculated by


alpha beta gamma example.py.
Target Tracking 401

Figure 9.32 The residual calculated by alpha beta gamma example.py.

the true y component of the position and velocity.

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.

9.4.4 Kalman Filter: Constant Acceleration

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

Figure 9.35 The total residual calculated by kalman cv example.py.

position, velocity, and acceleration.

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.

9.4.5 Adaptive Kalman Filter: Epsilon Method

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.39 The total residual calculated by kalman ca example.py.


406 Introduction to Radar Using Python and MATLAB

Figure 9.40 The true x position, measurement position, and filtered position calculated by
kalman epsilon example.py.

measurement variance of 10.0 m2 . Using an initial process noise variance of 1.0−6 , a


threshold of 0.19, 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 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.

Figure 9.42 The total residual calculated by kalman epsilon example.py.


408 Introduction to Radar Using Python and MATLAB

9.4.6 Adaptive Kalman Filter: Sigma Method

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.

Figure 9.45 The total residual calculated by kalman sigma example.py.


410 Introduction to Radar Using Python and MATLAB

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.6 What is the main disadvantage of extending alpha-beta-gamma to higher orders?

9.7 How does α, β, and γ affect the performance of 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.

9.17 In the measurement model for generating pseudomeasurements as input to tracking


algorithms, explain the difference between the noise, fixed, and bias terms and how
each contributes to the total measurement error.

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.

[21] Wikipedia Contributors. Hungarian Algorithm. https://en.wikipedia.org/wiki/Hungarian


algorithm.

[22] Wikipedia Contributors. Auction Algorithm. https://en.wikipedia.org/wiki/Auction algorithm.

[23] Y. Bar-Shalom, X. Li and T. Kirubarajan. Estimation with Applications to Tracking and Navigation.
Wiley, New York, 2001.

[24] B. N. Vo, et al. Multitarget Tracking. Wiley, New York, 2015.

[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

Tomography is the imaging of an object from slices or sections gathered by attenuated or


reflected waves. The etymology of the word tomography is from Ancient Greek tomos,
which means slice, and grapho, which means to write. This chapter begins with an intro-
duction and history of tomography and its various applications. This is followed by a dis-
cussion of the Radon transform, which leads to a set of line integrals and projections of the
object’s density function. Using the Fourier slice theorem, the projection data is used to
fill in the spatial frequency domain of the object’s density function. Image reconstruction
techniques, including the filtered backprojection algorithm, are then used to recreate the
density function from the spatial frequency domain data. The tomography/SAR analogy
will be shown, and a generalized three-dimensional framework will then be given. The
chapter concludes with several Python examples to emphasize the concepts associated
with tomographic SAR imaging.

10.1 TOMOGRAPHY

Fundamentally, tomography is the imaging of an object or scene using data collected


from many different viewing directions, as illustrated in Figure 10.1. This data, referred
to as projections, is typically transmission or reflection data, and may be generated by
illuminating the object with various sources of energy. Tomographic imaging has been
applied to many areas of science and medicine, with several examples listed in Table
10.1.

10.1.1 History

In 1917, Johann Radon demonstrated that it was possible to reconstruct an original


density function from projection data [1]. In two dimensions, the Radon transform
represents the projection of a density function defined in a plane to the space of lines in

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

Application Type of Tomography


Ocean temperature and currents Acoustic

3D Medical imaging Positron emission, X-ray

Subsurface earth imaging Seismic

Permittivity distribution of an object Electrical capacitance

Flame analysis Optical

Aquifer analysis Hydraulic

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

Device Application Note


Phoenix x|aminer High resolution inspection of electronic Detail detectability
(GE) assemblies and components down to 0.5 µm

Revolution CT Cardiac-, neuro-, musculoskeletal- With GSI Xtream, provides


(GE) imaging for rapid trauma assessment volume spectral CT to improve
small lesion detection and
tissue characterization

ImagiX Food scans to screen for Overall maximum system


(North Star Imaging) contaminates in packaging resolution ≈ 0.5 µm
and assist in development
of agricultural hybrids

Metrotom Performance testing, material Standard compliant and traceable


(Zeiss) analysis, and quality precision testing (VDI/VDE 2630)
assurance for plastics Resolution 3.5-6µm

10.1.2 Line Integrals and Projections

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

Figure 10.4 Basic geometry for two-dimensional X-ray tomography.

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.

10.1.2.1 Fourier Slice Theorem

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

Figure 10.5 Illustration of the Fourier slice theorem.

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)
−∞ −∞

and the one-dimensional Fourier transform of the projection function, Pθ (t), as


ˆ∞
Sθ (ω) = Pθ (t) e−j2πωt dt. (10.3)
−∞

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

ˆ∞ ˆ∞
 

F (u, 0) =  f (x, y) dy  e−j2πux dx. (10.5)


−∞ −∞

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)
−∞

Substituting (10.6) into (10.5) results in


ˆ∞
F (u, 0) = Pθ=0 (x)e−j2πux dx. (10.7)
−∞

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

F (u, 0) = Sθ=0 (ω). (10.8)


As stated earlier, no assumption was made about the object’s orientation; therefore the
general expression of the Fourier slice theorem is

F (u, v) = Sθ (ω). (10.9)


A collection of N projections at angles [θ1 , θ2 , . . . , θN ] fills in the two-dimensional
spatial frequency domain of the object’s density function, as illustrated in Figure 10.6. If
the number of projections is large enough, a reconstruction can be made by interpolating
the values onto a rectilinear grid and then performing the inverse two-dimensional Fourier
transform. This method is often referred to as polar reformatting. While the image may
be reconstructed in this manner, the high frequency points are further apart than the
low frequency points, resulting in image degradation. Therefore, other reconstruction
techniques are desired.
While Radon’s original work showed the mathematical procedure for reconstruc-
tion of a density function from its projections, the inverse Radon transform cannot be
solved analytically. One of the earliest reconstruction approaches is the algebraic recon-
struction technique (ART) [9], which was originally used by Hounsfield. Since that time,
many improvements in the speed and quality of ART techniques have been developed.
There are three basic versions of ART for solving the reconstruction problem. The first of
these is the simultaneous iterative reconstruction technique (SIRT) [10]. In this method,
pixel values are updated with an average of all weighted differences from all sensor
420 Introduction to Radar Using Python and MATLAB

v
𝑆𝜃𝑖 (𝜔)

𝑆𝜃2 (𝜔)

𝑆𝜃1 (𝜔)
u

𝑆𝜃𝑁 (𝜔)

Figure 10.6 Two-dimensional spatial frequency domain from one-dimensional projection


functions.

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.

10.1.2.2 Filtered Backprojection

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

Splitting (10.14) into two integrals gives

ˆπ ˆ∞
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

The backprojection imaging process is as follows;

1. Construct the spatial domain target density array f (xi , yj ).


2. Pulse compress return signals and perform filtering.
3. Upsample the returns for better image quality. Upsample factors can be large (> 100).
4. For a given pixel point, (xi , yj ), find the nearest upsampled time point (interpolate)
and add the value of the filtered data to the array component f (xi , yj ).
5. Repeat for all pixel locations (xi , yj ) and all pulses.

The filtered backprojection algorithm has several advantages. It is computationally ef-


ficient and employs the fast Fourier transform (FFT). It is highly parallelizable as each
projection’s contribution and each pixel’s value may be computed separately. Also, image
reconstruction may begin as soon as the first projection function is obtained, rather than
waiting for all projections to be collected. Finally, the filtered backprojection algorithm
does not depend on uniform angular sampling in the projection data, and multiple object
rotations or platform passes can be used.

10.1.3 SAR Imaging

When processing the reflected waveform of a radar system as direct transductions of


the spatial frequencies of a targets reflectivity function, a method for separating target
features in both the range and cross-range dimension arises. This spatial frequency
formulation makes the SAR imaging problem analogous to X-ray medical imaging
[13]. Researchers at the University of Illinois were the first to formally introduce the
tomography/SAR analogy in literature [14]. Table 10.3 provides an overview of a few
SAR systems.
To illustrate the tomography approach to SAR imaging, consider an imaging
scenario where energy from the radar illuminates an area that contains a target to be
imaged, as shown in Figure 10.7. To begin, assume the target structure across the
illuminated region is described by a two-dimensional reflectivity such that the radar
returns from all scatterers on a constant range line are received simultaneously by the
radar system. In the previous sections, the projection , Pθ (t), represented a projection of
the X-ray attenuation function of the object. For SAR imaging, the projection represents
a projection of the reflectivity function of the target. The projections may now be
collected at a number of angles, as illustrated in Figure 10.8. Using the Fourier slice
Tomographic Synthetic Aperture Radar 423

Table 10.3
Overview of SAR Systems

Sensor Dates Frequency (Polarization) Comments


Seasat 1978 L (HH) First civilian SAR satellite
(NASA/JPL)

Radarsat-1 1995–Present C (HH) First Canadian SAR satellite


(CSA)

Radarsat-2 2007–Present C (Full) Resolution up to 1m x 3m


(CSA)

TerraSAR-X 2007–Present X (Full) First bistatic radar in space


(DLR)

COSMO 2007–Present X (Dual) Constellation of four satellites


(ASI / MiD)

F-SAR 2006–Present Modular X, C, S, Single-pass polarimetric interferometry


(DLR) L, and P (Full) capability in X- and S-bands

UAVSAR 1988–Present L, P, and Ka (Full) Airborne SAR for Earth sciences


(NASA/JPL)

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.

𝑥
𝑃𝜃 (𝑡)

Returns from scatterers


along constant range lines
are received simultaneously
by the radar.

Figure 10.7 Basic scenario for tomographic SAR imaging (NASA).


∆θ ≤ 0 0 , (10.19)
kmax − kmin
where k 0 is the instantaneous angular frequency.

10.1.4 Three-Dimensional Tomography

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).

10.1.4.1 Linear Trace Theorem

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)
−∞ −∞ −∞

and the one-dimensional Fourier transform of the projection, Pθ,ψ (t), as


ˆ∞
Sθ,ψ (ω) = Pθ,ψ (t) e−j2πωt dt. (10.21)
−∞
426 Introduction to Radar Using Python and MATLAB

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
ˆ∞ ˆ∞ ˆ∞
 

F (u, 0, 0) =  f (x, y, z) dy dz  e−j2πux dx. (10.23)


−∞ −∞ −∞

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)
−∞ −∞

Substituting (10.24) into (10.23) results in


ˆ∞
F (u, 0, 0) = Pθ=0,ψ=π/2 (x) e−j2πux dx. (10.25)
−∞

Recalling the definition of the one-dimensional transform in (10.21), the relationship


between the one-dimensional projection function and the three-dimensional Fourier
transform of the object’s density function is

F (u, 0, 0) = Sθ=0,ψ=π/2 (ω). (10.26)


As before, no assumption has been made about the object’s orientation; therefore the
general expression of the linear trace theorem is
428 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)

Figure 10.11 Simple SAR imaging scenario after backprojecting 10 pulses.

F (u, v, w) = Sθ,ψ (ω). (10.27)


A collection of projections at pairs of angles [(θ1 , ψ1 ), (θ2 , ψ2 ) . . . , (θN , ψM )] fills in the
three-dimensional spatial frequency domain of the object’s density function, as illustrated
in Figure 10.14, and the image may be constructed with the backprojection algorithm.

10.1.4.2 Filtered Backprojection

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

u = ω cos θ sin ψ, (10.29)


v = ω sin θ sin ψ, (10.30)
w = ω cos ψ, (10.31)
2
du dv dw = ω sin ψ dω dθ dψ, (10.32)

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)

Figure 10.13 Simple SAR imaging scenario illustrating aliasing.

This may be written as

ˆπ ˆ2π ˆ∞
 

f (x, y, z) =  F (ω, θ, ψ) ej2πωt ω 2 dω  sin ψ dθ dψ, (10.34)


0 0 0

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

The backprojection imaging process proceeds as in the two-dimensional case, except


now the spatial domain target reflectivity array, f (xi , yj , zk ), is three-dimensional, and
the time point is based on the three-dimensional pixel point, (xi , yj , zk ).

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.

10.2.1.1 Point Targets

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.

10.2.1.2 Toyota Camry

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

Figure 10.15 Two-dimensional backprojected image of point targets calculated by


back projection example.py.

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

Figure 10.16 Two-dimensional backprojected image of a Toyota Camry with an azimuth


span of 90o calculated by back projection cv example.py.

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.

10.2.1.4 Toyota Tacoma

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

Figure 10.17 Two-dimensional backprojected image of a Toyota Camry with an azimuth


span of 360o calculated by back projection cv example.py.

Figure 10.18 Two-dimensional backprojected image of a 1999 Jeep with an elevation of


30o calculated by back projection cv example.py.
436 Introduction to Radar Using Python and MATLAB

Figure 10.19 Two-dimensional backprojected image of a 1999 Jeep with an elevation of


40o calculated by back projection cv example.py.

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.

10.2.2.1 Point Targets

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

Figure 10.20 Two-dimensional backprojected image of a Toyota Tacoma for VV


polarization calculated by back projection cv example.py.

Figure 10.21 Two-dimensional backprojected image of a Toyota Tacoma for HH


polarization calculated by back projection cv example.py.
438 Introduction to Radar Using Python and MATLAB

Figure 10.22 Two-dimensional backprojected image of a Toyota Tacoma for HV


polarization calculated by back projection cv example.py.

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

Figure 10.23 Three-dimensional backprojected image of point targets calculated by


back projection 3d example.py.

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.

Figure 10.24 Facet model of the backhoe.


440 Introduction to Radar Using Python and MATLAB

Figure 10.25 Three-dimensional backprojected image of the backhoe for VV polarization


as plotted by back projection backhoe example.py.

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.3 What is a major advantage and disadvantage of polar reformatting?

10.4 Explain the differences between SIRT, SART, and MART. Give examples of situations
where one may outperform the others.

10.5 Describe the major advantages of the filtered backprojection algorithm.

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.

[2] R. Penrose. Twistor algebra. Journal of Mathematical Physics, 1(8):345–366, 1967.

[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.

[8] The Nobel prize in physiology or medicine 1979. http://www.NobelPrize.org/.

[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.

11.1 PASSIVE JAMMING

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

σ = 0.86λ2 cos4 θ (m2 ), (11.1)


where λ is the wavelength, and θ is the angle between the axis of the dipole and the
incident energy. Chaff is typically dispersed by aircraft, and due to air turbulence, the
orientation of the dipoles is random. For approximate calculations, assume all possible
orientations are equally likely, and consider the expectation of the cross section, which is

σavg = 0.17λ2 (m2 ). (11.2)


This value is then used to determine the necessary quantity of chaff particles to be
deployed. Since the fields produced by different particles in the cloud are incoherent,
the expression for a cloud of dipoles is

σc = 0.17λ2 N η (m2 ), (11.3)


where N is the number of particles in the cloud, and η is a reduction factor for dipoles
breaking, sticking, and so on. This gives only an estimate of the average cross section
of a chaff cloud. Also, the previous discussion assumes the transmitting and receiving
antennas are collocated and have identical polarization.
A major drawback of a dipole chaff cloud as a countermeasure is its relatively
narrow bandwidth. If the wavelength of the incoming radar signal is larger than the
resonant length, the radar cross section drops sharply. If the wavelength is less than the
resonant length, the radar cross section drops more slowly. As the length of the dipole
approaches one wavelength, the radar cross section becomes large again. However, the
weight increase associated with this increase in length hinders any practical application.
One method for overcoming the bandwidth issue is to package dipoles of differing lengths
to be dispersed. However, increasing the bandwidth in this fashion leads to an increase in
weight to achieve the necessary number of particles in a given volume. Another technique
to solve the bandwidth issue is to have equipment on the deploying aircraft to cut the
dipoles to a specified length. This requires long bundles of raw material to be cut, along
with sensors to determine the radar operating band.
As chaff is dispersed from an aircraft, it is subject to high turbulence. The as-
sumption that all dipole orientations are equally probable is only valid for a short time
immediately after deployment. After the influence of the aircraft slip stream has become
negligible, the dipoles are oriented randomly, the cloud continues to grow, and the density
of dipoles begins to decrease. From studies, dipoles oriented in the vertical direction de-
scend faster than those oriented horizontally. Therefore, the chaff cloud becomes stratified
into regions of similarly oriented dipoles.
Countermeasures 445

11.1.1.1 Moving Target Indication

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

Figure 11.1 Example spectrum of chaff and MTI filtering.


446 Introduction to Radar Using Python and MATLAB

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].

11.1.2 Passive Deception

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)

Figure 11.2 Delay line canceller.


Countermeasures 447

Delay Line Response


0

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.

11.2 ACTIVE JAMMING

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.

11.2.1 Continuous Noise

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

Gj = σj2 /Bj (W/Hz). (11.7)


If the spectral density is symmetric about the center frequency, the correlation function
is [12]

ˆ∞
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

R(τ ) = Gj Bj sinc(Bj τ ) cos (2πf0 τ ). (11.9)


The correlation time is given by
ˆ∞
τc = p(τ )dτ (s). (11.10)
0

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

xj (t) = Xj (t) cos (2πf0 t − φ(t)) , (11.12)


Countermeasures 449

Target Detected

Jamming Signal Missed Detections

Receiver
Noise

Figure 11.4 Continuous noise jamming.

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

Pj = jammer transmit power (W),


Gj = jammer antenna gain in the direction of the radar,
λ = wavelength (m),
Gr = radar receive antenna gain in the direction of the jammer,
rj = range from the jammer to the radar (m),
Bj = jammer bandwidth (Hz),
Lj = jammer losses.

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.

The jammer-to-signal ratio is then

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

Figure 11.5 Stand-off and stand-in jamming.

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 .

11.2.1.1 Space-Time Adaptive Processing

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

w = R−1 S(θt ), (11.22)


where R is the interference covariance matrix at each range bin and S(θt ) is the steering
vector for each target in the scene. The first step in computing the covariance matrix, R,
is shown in Figure 11.7. Once the vector, y, is found, the covariance matrix is determined
from the vector cross product as

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.

Aθ = e−j2πdm sin(θ/λ) for m = 0, · · · , M − 1. (11.25)


In general, the procedure above would need to be performed at each unambiguous range
bin for each target of interest. For many systems, the computational complexity of STAP
is intractable, and various approaches for reducing this burden have been developed
[18, 19, 21, 22].

11.2.2 Active Deception

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

Figure 11.7 STAP data matrix at each range bin.

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

Target Returns Jamming Signals


Signal Strength

! ! !
≈ 0 dB ≫ 0 dB →∞
" " "

Time
PRI
Tracking Gates

Ç√ Ç√ Ç√ Ç√

Time

Figure 11.8 Target returns and jamming pulses for range gate pull-off.

Another form of deceptive jamming is inverse gain jamming. In this method, a


number of false targets is created for varying scan angles. The strength of the jamming
signal is inversely proportional to the strength of the incoming radar signal [24]. In this
fashion, the radar receives false target-like echoes for every scan angle. Depending on
strength of the signals, this method results in an error signal that quickly drives the radar
away from the target on a smoothed curve. If the jamming signal is very closely matched
to the inverse of the radar signal strength, the radar detects the target no matter where the
main beam is pointed, as shown in Figure 11.9. This type of angle deception requires the
jamming system to have large dynamic range and sensitive receiving hardware.
A different form of angle deception is wavefront distortion, often referred to as
cross-eye jamming. This method is effective against monopulse tracking systems and
employs two spatially separated jamming devices. Each device samples the incoming
radar signal and transmits the same jamming signal at the same time. If the signal
arrives at the radar approximately 180o out of phase, wavefront distortion occurs [25].
In monopulse tracking systems, the source of the return signal is presumed to lie along
the normal to the wavefront. Cross-eye jamming distorts the wavefront and creates error
in the estimation of the direction of the target. To maintain a 180o phase shift between
the two separated jamming devices, the signal received by one device is transmitted by
the other, and vice versa. This ensures the two propagation paths from the radar to the
jamming devices and back are identical. Finally, a 180o phase shift is added to one of the
paths, which then creates the wavefront distortion.
456 Introduction to Radar Using Python and MATLAB

Figure 11.9 Inverse gain jamming technique.

There are numerous active deception techniques, including pseudorandom noise,


spot jamming, scintillation, cross polarization, swept amplitude, track-while-scan jam-
ming, and others. The reader is referred to several sources for further information on
these techniques [2, 3, 24, 26].

11.3 DIGITAL RADIO FREQUENCY MEMORY

Digital radio frequency memory (DRFM) is a method of digitizing an incoming RF


signal and transmitting a modified version of the signal. The earliest reference to a digital
method for storage of an RF pulse is from Spector in 1975 [27]. Since these systems create
a digital copy of the incoming radar signal, the jamming signal is coherent with the radar
system. This is a significant problem as the radar processes these signals as actual targets.
Not only can DRFM-based systems can create a number of false targets with varying
ranges, velocities, and angles, also possible are custom signatures to deceive classification
and discrimination algorithms. DRFM-based systems have also proved to be effective
against communications systems. Due to the capability of DRFM systems, there has been
increasing use in hardware in the loop simulations to aid in the design, development,
and testing of radar systems and algorithms, especially in the areas of electronic attack
protection [28–31]. This also provides a means of training radar operators, reduces
cost for testing of key components earlier in the design cycle, and cuts down on the
need for flight tests. Figure 11.10 illustrates the components of a basic DRFM-based
system. Note that this is a block diagram, and many modern systems are implemented
Countermeasures 457

RF Input RF Output

DRFM Kernel

Technique Generator
Memory Controller

ADC Memory DAC

STALO

Figure 11.10 Basic DRFM components.

as field-programmable gate arrays (FPGAs). To begin, the radar signal is received,


downconverted, and sampled digitally. Next, the desired electronic attack techniques,
such RGPO, VGPO, or noise waveforms, are applied. The digital jamming signal is then
converted to an analog signal, upconverted, and transmitted back to the victim radar.
Advances in computing power and electronic manufacturing techniques have resulted in
small, lightweight, low-power DRFM systems capable of being deployed on a wide range
of platforms, including aircraft, unmanned vehicles, ships, and others [31–33]. Table 11.1
illustrates the advances in DRFM capability by generation [32, 34, 35].

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.

11.4.1 Jammer to Signal: Self-Screening

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

Parameter 2nd Generation 3rd Generation 4th Generation 5th Generation


(1999–2003) (2004–2006) (2007–2011) (2012– )
Sampling rate (GSPS) 1 1.2 2 5

Resolution (bits) 8 10 ADC - 10 ADC - 12


DAC - 12 DAC - 16

Instantaneous BW (MHz) 400 500 800 2000

Delay resolution (ns) 16 3.3 0.5 0.2

Memory depth (ms) 1 1.7 8.3 200

Spurious free dynamic 30 36 45 > 50


range (dBc)

Digital instantaneous No No Yes Yes


frequency measurement

Arbitrary modulation No No Yes Yes

Range update phase No No Yes Yes


correction

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.

11.4.2 Jammer to Signal: Escort

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

Figure 11.11 The jammer-to-signal ratio for a self-screening jammer calculated by


jammer to signal example.py.

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.

11.4.3 Crossover Range: Self-Screening

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

Figure 11.12 The jammer-to-signal ratio for an escort jammer calculated by


jammer to signal example.py.

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.

11.4.4 Crossover Range: Escort

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

Figure 11.13 The crossover range for a self-screening jammer calculated by


crossover range example.py.

Figure 11.14 The crossover range for an escort jammer calculated by


crossover range example.py.
462 Introduction to Radar Using Python and MATLAB

Figure 11.15 The burn-through range for a self-screening jammer calculated by


burnthrough range example.py.

11.4.5 Burn-Through Range: Self-Screening

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.

11.4.6 Burn-Through Range: Escort

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

Figure 11.16 The burn-through range for an escort jammer calculated by


burnthrough range example.py.

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.

11.4.7 Moving Target Indication

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.

[4] M. Skolnik. Radar Handbook, 3rd ed. McGraw-Hill Education, 2008.

[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.

[8] Leonardo, S.p.A. BriteCloud DRFM (Digital RF Memory) countermeasure. https://www.


leonardocompany.com/products/britecloud-3.

[9] Raven Industries. Raven Military Decoys. https://ravenaerostar.com/products/


military-decoys.

[10] Inflatech, S.R.O. Inflatech Inflatable Decoys. http://www.inflatechdecoy.com/.

[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.

[14] Wikipedia Contributors. Stationary Process. https://en.wikipedia.org/wiki/Stationary process.

[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.

[30] Wikipedia Contributors. Digital radio frequency memory. https://en.wikipedia.org/wiki/Digital


radio frequency memory.

[31] Dynetics, Inc. PhantomRF: Advanced DRFM target generator for radar test and evaluation. https:
//www.dynetics.com/ files/fact-sheets/Dynetics\%20Phantom\%20RF.pdf.

[32] Mercury Systems, Inc. DRFM Technology. https://www.mrcy.com/drfm-solutions/airborne1177/.

[33] BAE Systems, Inc. Digital Electronic Warfare System. https://www.baesystems.com/en-us/


product/digital-electronic-warfare-system-dews.

[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

Allan Cormack, 414 polarization mismatch, 77


Ambiguity function, 327 radiation intensity, 72
Barker codes, 336 radiation zones, 69
Frank codes, 338 sidelobe level, 68
generic waveform, 333 Antenna types
LFM pulse, 331 aperture, 86
PRN codes, 338 array, 100
balance property, 340 Hertzian dipole, 123
correlation property, 341 horn, 94
run property, 341 linear wire, 79
unmodulated pulse, 329 loop, 82
Analog-to-digital conversion, 169 Automatic gain control, 155
effective number of bits, 172
Brewster angle, 38
quantization, 170
sampling, 169 Cassini ovals, 137
Antenna Cauchy-Schwarz, 317
bandwidth, 76 Christian Hülsmeyer, 1
beamwidth, 70 Constant false alarm rate, 212
directivity, 73 cell averaging, 213
effective aperture, 129 cell averaging greatest of, 214
gain, 75 cell averaging smallest of, 218
lobes, 68 censored greatest of, 216
pattern, 67 ordered statistic, 218
pattern cuts, 68 statistic Hofele, 219
pattern multiplication, 102 Countermeasures, 443
polarization, 76 active jamming, 447
polarization loss factor, 77 active deception, 453

471
472 INDEX

burn-through range, 451 James Clerk Maxwell, 1, 15


continuous noise, 447 Johann Radon, 413
cross-eye, 455
crossover range, 451 Low-noise amplifier, 154
ERP, 450
Marcum’s Q function, 192
escort, 450
Matched filter, 315, 318
inverse gain, 455
North filter, 315
jammer-to-signal, 450
signal-to-noise, 318
RGPO, 453
time-bandwidth product, 319
self-screening, 450
MATLAB® , 6, 9
VGPO, 454
Maxwell’s equations, 15
DRFM, 456
Ampere’s law, 16
MTI, 445
boundary conditions, 18
blind speed, 446
general interface, 18
passive jamming, 443
PEC, 20
chaff, 443
PMC, 20
passive deception, 446
radiation condition, 20
STAP, 452
continuity equation, 16
Critical angle, 38
Faraday’s law, 16
Detection, 185 gauge
coherent, 190 axial, 23
error function, 189 Coulomb, 23
false alarm rate, 186 Dirac, 23
Neyman-Pearson, 186, 187 Fock-Schwinger, 23
noncoherent, 188 Hamiltonian, 23
Shnidman’s approximation, 209 Lorenz, 23
Swerling models, 199 Maximal Abelian, 23
Diffraction, 44 Poincare, 23
Dynamic range, 157 radiation, 23
1-dB compression point, 157 transverse, 23
intermodulation distortion, 158 Weyl, 23
spurious free, 157 Gauss’s law, 16
Lorenz condition, 22
EMI scanner, 414 potential
Equivalence principle, 86 scalar, 21
vector, 21
GitHub, 6 wave equation, 21

Heinrich Hertz, 1 NEXRAD, 2


WSR-88D, 2, 3
Image frequency, 162 Noise power, 130, 155
Intermediate frequency, 154 noise factor, 130
INDEX 473

noise figure, 130 configurations, 4


cascaded network, 155 definition, 1
power spectral density, 130 frequency bands, 2
history, 1
Ohm’s law, 27 IEEE designation, 3
waveforms, 3
Penrose transform, 414 Radar absorbing material, 287
Permeability, 18 Radar cross section, 127
Permittivity, 17 angle variation, 236
Phase-coded waveforms, 335 definition, 235
Plane waves, 24
frequency variation, 236
atmospheric attenuation, 48
frustum, 258
attenuation constant, 28
polarization variation, 238
cloud and fog attenuation, 52
prediction
phase constant, 28
analytical, 243
phase matching, 35
approximate methods, 271
rain attenuation, 51
measurement methods, 280
vegetation attenuation, 49
numerical methods, 259
Poynting vector, 71
rectangular plate, 251
Pulse compression, 309
reduction, 286
range resolution, 309
right circular cone, 255
windowing, 326
rounded-nose cone, 257
Pulse integration, 193
scattering width, 244
binary integration, 197
stratified sphere, 253
coherent, 194
two-dimensional cylinder, 247
cumulative, 198
two-dimensional cylinder oblique,
noncoherent, 194
249
Pulse repetition interval, 134
two-dimensional strip, 244
Python® , 6, 7
Radar range equation, 127
IDE, 8
bistatic, 135
PyCharm, 8
loop gain, 131
PyDev, 8
losses, 131
Spyder, 8
installation, 7 maximum detection range, 130, 137
Matplotlib, 7 power aperture product, 132
NumPy, 7 reference range, 131
SciPy, 7 Radar receivers, 153
bandwidth, 159
Qt, 6, 7 coherent detection, 167
configurations, 153
Radar demodulation, 165
applications, 3 digital receivers, 172
classification, 2 direct digital downconversion, 173
474 INDEX

filtering, 162 reference signal, 321


Bessel, 163 sampling, 323
Butterworth, 163
Chebyshev, 163 Target tracking, 361
elliptic, 163 Mahalanobis distance, 383
finite impulse response, 173 measurement model, 394
multitarget tracking, 381
gain control, 160
gain normalization, 162 GNN, 382, 383
noncoherent detection, 166 JPDA, 382, 385
superheterodyne, 153 MHT, 382, 389
Radon transform, 413 RFS, 382, 393
Range profile, 312 tracking filters, 361
adaptive, 379
Refraction, 40
apparent elevation, 41 alpha-beta, 362
apparent range, 42 alpha-beta-gamma, 366
beam spreading, 43 innovation, 363
ducting, 43 Kalman, 371
Kalman gain, 372
SAR imaging, 422 measurement noise, 362
Scattering matrix, 239 process noise, 362
back scattering alignment, 242 residual, 363
coordinate systems, 241 state space model, 362
forward scattering alignment, 242 system state, 362
Scattering mechanisms Telemobilosocpe, 1
cavaties, 243 Tomography, 413
creeping waves, 243 ART, 419
diffraction, 242 CT, 414
multibounce, 243 filtered backprojection, 420
specular reflection, 242 Fourier slice theorem, 417
surface waves, 243 MART, 420
Sensitivity time control, 154 polar reformatting, 419
Shadow region, 44 SART, 420
Sir Godfrey Hounsfield, 414 SIRT, 419
Skin depth, 30 three-dimensional, 424
Snell’s law, 35 linear trace, 424
Sommerfeld, 21 planar slice, 424
Stepped frequency, 311
Wavelength, 26
dispersion, 313
effective bandwidth, 311 Wavenumber, 22
range resolution, 312 Windowing
Stretch processing, 320 Blackman-Harris, 106
instantaneous frequency, 323 Hamming, 106
range resolution, 326 Hanning, 106
Kaiser, 106

You might also like