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

Elementary mathematical and computational tools for electrical and computer engineers using MATLAB 2nd ed Edition Manassah ebook download PDF instant access

The document promotes various educational ebooks available for download on ebookgate.com, particularly focusing on resources for electrical and computer engineers using MATLAB. It highlights the second edition of 'Elementary Mathematical and Computational Tools for Electrical and Computer Engineers Using MATLAB' by Jamal T. Manassah, along with several other related titles. The content emphasizes the importance of mastering mathematical and computational skills for engineering students to succeed in their studies.

Uploaded by

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

Elementary mathematical and computational tools for electrical and computer engineers using MATLAB 2nd ed Edition Manassah ebook download PDF instant access

The document promotes various educational ebooks available for download on ebookgate.com, particularly focusing on resources for electrical and computer engineers using MATLAB. It highlights the second edition of 'Elementary Mathematical and Computational Tools for Electrical and Computer Engineers Using MATLAB' by Jamal T. Manassah, along with several other related titles. The content emphasizes the importance of mastering mathematical and computational skills for engineering students to succeed in their studies.

Uploaded by

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

Get the full ebook with Bonus Features for a Better Reading Experience on ebookgate.

com

Elementary mathematical and computational tools


for electrical and computer engineers using MATLAB
2nd ed Edition Manassah

https://ebookgate.com/product/elementary-mathematical-and-
computational-tools-for-electrical-and-computer-engineers-
using-matlab-2nd-ed-edition-manassah/

OR CLICK HERE

DOWLOAD NOW

Download more ebook instantly today at https://ebookgate.com


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

MATLAB for Engineers 2nd Edition Holly Moore

https://ebookgate.com/product/matlab-for-engineers-2nd-edition-holly-
moore/

ebookgate.com

Analysis and Design of Control Systems Using MATLAB 2nd ed


Edition Dukkipati

https://ebookgate.com/product/analysis-and-design-of-control-systems-
using-matlab-2nd-ed-edition-dukkipati/

ebookgate.com

Introduction to Computational Modeling Using C and Open


Source Tools Garrido

https://ebookgate.com/product/introduction-to-computational-modeling-
using-c-and-open-source-tools-garrido/

ebookgate.com

Computational Colour Science using MATLAB 1st Edition


Professor Stephen Westland

https://ebookgate.com/product/computational-colour-science-using-
matlab-1st-edition-professor-stephen-westland/

ebookgate.com
MATLAB for Control Engineers Katsuhiko Ogata

https://ebookgate.com/product/matlab-for-control-engineers-katsuhiko-
ogata/

ebookgate.com

Essential MATLAB for Scientists and Engineers Second


Edition Brian Hahn

https://ebookgate.com/product/essential-matlab-for-scientists-and-
engineers-second-edition-brian-hahn/

ebookgate.com

Mathematical tools 1st ed Edition Franklin Coyle

https://ebookgate.com/product/mathematical-tools-1st-ed-edition-
franklin-coyle/

ebookgate.com

Mathematical Physics Applied Mathematics for Scientists


and Engineers 2nd Edition Bruce R. Kusse

https://ebookgate.com/product/mathematical-physics-applied-
mathematics-for-scientists-and-engineers-2nd-edition-bruce-r-kusse/

ebookgate.com

MATLAB for control system engineers Second Edition


Dukkipati

https://ebookgate.com/product/matlab-for-control-system-engineers-
second-edition-dukkipati/

ebookgate.com
7425_C000.qxd 6/9/06 16:53 Page i

ELEMENTARY
MATHEMATICAL and
COMPUTATIONAL TOOLS
for ELECTRICAL and
COMPUTER ENGINEERS
USING MATLAB®
Second Edition
7425_C000.qxd 6/9/06 16:53 Page ii
7425_C000.qxd 6/9/06 16:53 Page iii

ELEMENTARY
MATHEMATICAL and
COMPUTATIONAL TOOLS
for ELECTRICAL and
COMPUTER ENGINEERS
USING MATLAB®
Second Edition

Jamal T. Manassah

Boca Raton London New York

CRC is an imprint of the Taylor & Francis Group,


an informa business
7425_C000.qxd 6/9/06 16:53 Page iv

MATLAB® is a trademark of The MathWorks, Inc. and is used with permission. The MathWorks does not
warrant the accuracy of the text or exercises in this book. This book’s use or discussion of MATLAB®
software or related products does not constitute endorsement or sponsorship by The MathWorks of a
particular pedagogical approach or particular use of the MATLAB® software.

CRC Press
Taylor & Francis Group
6000 Broken Sound Parkway NW, Suite 300
Boca Raton, FL 33487-2742

© 2007 by Taylor & Francis Group, LLC


CRC Press is an imprint of Taylor & Francis Group, an Informa business

No claim to original U.S. Government works


Printed in the United States of America on acid-free paper
10 9 8 7 6 5 4 3 2 1

International Standard Book Number-10: 0-8493-7425-1 (Hardcover)


International Standard Book Number-13: 978-0-8493-7425-8 (Hardcover)

This book contains information obtained from authentic and highly regarded sources. Reprinted material
is quoted with permission, and sources are indicated. A wide variety of references are listed. Reasonable
efforts have been made to publish reliable data and information, but the author and the publisher cannot
assume responsibility for the validity of all materials or for the consequences of their use.

No part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic,
mechanical, or other means, now known or hereafter invented, including photocopying, microfilming,
and recording, or in any information storage or retrieval system, without written permission from the
publishers.

For permission to photocopy or use material electronically from this work, please access www.copyright.
com (http://www.copyright.com/) or contact the Copyright Clearance Center, Inc. (CCC) 222 Rosewood
Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and
registration for a variety of users. For organizations that have been granted a photocopy license by the
CCC, a separate system of payment has been arranged.

Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are
used only for identification and explanation without intent to infringe.

Library of Congress Cataloging-in-Publication Data

Manassah, Jamal T.
Elementary mathematical and computational tools for electrical and computer
engineers using MATLAB / Jamal T. Manassah. -- 2nd ed.
p. cm.
Includes bibliographical references and index.
ISBN-13: 978-0-8493-7425-8 (alk. paper)
ISBN-10: 0-8493-7425-1 (alk. paper)
1. Electric engineering--Mathematics. 2. Computer science--Mathematics. 3.
MATLAB. I. Title.

TK153.M362 2007
510.2’46213--dc22 2 006018608

Visit the Taylor & Francis Web site at


http://www.taylorandfrancis.com

and the CRC Press Web site at


http://www.crcpress.com
7425_C000.qxd 6/9/06 16:53 Page v

Author

Jamal T. Manassah has been a professor of electrical engineering at the City


College of New York since 1981. He earned his B.Sc. degree in physics from
the American University of Beirut, and his M.A. and Ph.D. in theoretical
physics from Columbia University. Dr. Manassah was a member of the
Institute for Advanced Study. His current research interests are in theoretical
and computational quantum and nonlinear optics, and in photonics.
7425_C000.qxd 6/9/06 16:53 Page vi
7425_C000.qxd 6/9/06 16:53 Page vii

Preface to the First Edition

This book is mostly based on a series of notes for a primer course in electrical
and computer engineering that I taught at the City College of New York
School of Engineering. Each week, the class met for an hour of lecture and a
three-hour computer laboratory session where students were divided into
small groups of 12 to 15 students each. The students met in an informal learn-
ing community setting, a computer laboratory, where each student had the
exclusive use of a PC. The small size of the groups permitted a great deal of
individualized instruction, which was a key ingredient to cater successfully
to the needs of students with heterogeneous high school backgrounds.
A student usually takes this course in the second semester of his or her
freshman year. Typically, the student would have completed one semester of
college calculus, and would be enrolled in the second course of the college
calculus sequence and in the first course of the physics sequence for students
in the physical sciences and engineering.
My purpose in developing this book is to help bring the beginner engi-
neering student’s analytical and computational skills to a level of competency
that would permit him or her to participate, enjoy, and succeed in subsequent
electrical and computer engineering courses. My experience indicates that the
lack of mastery of fundamental quantitative tools is the main impediment to
a student’s progress in engineering studies.
The specific goals of this book are:

1. To make you more comfortable applying the mathematics and


physics that you learned in high school or in college courses,
through interactive activities.
2. To introduce you, through examples, to many new practical tools of
mathematics, including discrete variables material that is essential to
your success in future electrical engineering courses.
3. To instruct you in the use of a powerful computer program,
MATLAB®, which was designed to be simultaneously user-friendly
and powerful in tackling efficiently the most demanding problems
of engineering and sciences.
4. To give you, through the applications and examples covered,
glimpses of some of the fascinating problems that an electrical or
computer engineer solves in the course of completing many of his
or her design projects.

My experience indicates that you can achieve the above goals through the
following work habits that I usually recommend to my own students:

● Read carefully the material from this book that is assigned to you
by your instructor for the upcoming week, and make sure to solve
7425_C000.qxd 6/9/06 16:53 Page viii

the suggested preparatory exercises in advance of the weekly


lecture.
● Attend the lecture and follow closely the material presented, in par-
ticular the solutions to the more difficult preparatory exercises and
the demonstrations.
● Following the lecture, make a list of questions on the preparatory
material to which you still seek answers, and ask your instructor
for help and clarification on these questions, preferably in the first
30 minutes of your computer lab session.
● Complete the in-class exercises during the computer lab session. If
you have not finished solving all in-class exercises, make sure you
complete them on your own, when the lab is open, or at home if you
own a computer, and certainly before the next class session, along
with the problems designated in the book as homework problems
and assigned to you by your instructor.

In managing this course, I found it helpful for both students and instructors
to require each student to solve all problems in a bound notebook. The advan-
tage to the student is to have easy access to his or her previous work, personal
notes, and reminders that he or she made as the course progressed. The advan-
tage to the instructor is to enhance his or her ability to assess, more easily and
readily, an individual student’s progress as the semester progresses.
This book may be used for self-study by readers with perhaps a little more
mathematical maturity acquired through a second semester of college calcu-
lus. The advanced reader of this book who is familiar with numerical meth-
ods will note that, in some instances, I did not follow the canonical order for
the sequence of presentation of certain algorithms, thus sacrificing some opti-
mality in the structure of some of the elementary programs included. This
was necessitated by the goal I set for this book, which is to introduce both
analytical and computational tools simultaneously.
The sections of this book that are marked with asterisks include material
that I assigned as projects to students with either strong theoretical interest
or more mathematical maturity than a typical second semester freshman
student. Although incorporated in the text, they can be skipped in a first
reading. I hope that, by their inclusion, I will facilitate to the interested
reader a smooth transition to some new mathematical concepts and compu-
tational tools that are of particular interest to electrical engineers.
This text greatly benefited from course material previously prepared by
my colleagues in the departments of electrical engineering and computer
science at City College of the City University of New York, in particular,
P. Combettes, I. Gladkova, B. Gross, and F. Thau. They provided either the start-
ing point for my subsequent efforts in this course, or the peer critique for the
early versions of this manuscript. I owe them many thanks and, of course, do
not hold them responsible for any of the remaining imperfections in the text.
The preparation of this book also owes a lot to my students. Their ques-
tions and interest in the material contributed to many modifications in the
7425_C000.qxd 6/9/06 16:53 Page ix

order and in the presentation of the different chapters. Their desire for work-
ing out more applications led me to expand the scope of the examples and
exercises included in the text. I am grateful to all of them. I am also grateful
to Erwin Cohen, who introduced me to the fine team at CRC Press, and to
Jerry Papke whose stewardship of the project from start to end at CRC Press
was most supportive and pleasant. The editorial and production teams at
CRC in particular, Samar Haddad, the project editor, deserve credit for the
quality of the final product rendering. Naomi Fernandes and her colleagues
at The MathWorks Inc. kindly provided me with a copy of the new release
of MATLAB for which I am grateful.
I dedicate this book to Azza, Tala, and Nigh whose support and love
always made difficult tasks a lot easier.
Jamal T. Manassah
New York, January 2001
7425_C000.qxd 6/9/06 16:53 Page x
7425_C000.qxd 6/9/06 16:53 Page xi

Preface to the Second Edition

Comments received from readers and my own students invariably sug-


gested the desirability for expanding Chapter 1 in a manner that will reduce
the need to refer as often to the MATLAB® online help or to a MATLAB user
manual. It was also suggested that the reference value of this book might be
enhanced if a chapter on symbolic manipulation with MATLAB was added.
This second edition is responsive to both of these requests.
The MATLAB syntax was also updated to conform to the current version
of MATLAB. I have also added a number of special sections designated to
the more advanced students or for those students seeking additional chal-
lenges. Typically, these sections were assigned to outstanding students who
supplemented the regular course homework with special assignments. The
continuous need to challenge these gifted students is specially rewarding
when teaching in an urban university where many promising future scien-
tific talents are discovered only after these students are enrolled in college-
level courses.
Now that my modest experiment with introducing an integrated, empiri-
cal, and interdisciplinary style to teaching beginner engineering students
applied mathematics is approximately 10 years in progress, it may be useful
to reflect on the successes and failures of this particular effort:

• Almost everybody in my academic circle now recognizes the use-


fulness of supplementing and enhancing the regular rigorous stan-
dard mathematical curriculum for engineering students with a
hands-on elementary applied course.
• Those of my colleagues who still prefer to have the different mate-
rial taught in a more compartmentalized manner and at a later
stage of a student career argue that students may not be willing or
able to devote the blocks of time required to integrate the skills that
both the analytical and numerical techniques demand within the
same course. While I accept the premise that my adopted approach
certainly requires a higher level of motivation and time commit-
ment by students, it is also true that students who were willing to
invest the required time in a course based on this text ended up
ready to plunge in more advanced engineering courses much ear-
lier than others. I am particularly gratified by the performance of
those of my students who, following the successful completion of
this text went on to advanced engineering courses and were able to
concentrate and excel in the new engineering material covered
7425_C000.qxd 6/9/06 16:53 Page xii

there while many of their classmates were bogged down acquiring


the computational tools which those selected had already mastered.
• There is still no consensus in my own academic circle as to whether
it is advisable to let students explore through computer experi-
ments new mathematical results prior (or even much prior) to the
formal introduction of the underlying theoretical principles in a
more structured environment. My own observations are that a stu-
dent’s intuitive skills are strongly enhanced by accumulated math-
ematical empirical discovery and experience; however, it will be
probably up to psychologists working in learning theories to come
up with a more definitive answer to the value of an empirical
approach in teaching applied mathematics.
• Teachers who adopted this text successfully informed me that they
incorporated a certain amount of flexibility in different students’
assignments to reflect the different levels of skills present in a nor-
mal student population distribution. My own experience was not
different.

My advice to beginner students of engineering using this text is to take


their time and finish each chapter with its solved examples and suggested
problems before moving on to the next chapter. I do not recommend to the
beginner to merely skim through the core material. The reader will quickly
discover that many computational skills are acquired and internalized best
when developed slowly and cumulatively.
The use of this text as reference material by a number of practicing scien-
tists and engineers is often brought to my attention by some pleasant com-
ments in a faculty meeting, professional conference, or social function. This
encouragement by peers is most appreciated.
This new edition benefited from comments, emails, and letters that I
received from many students, readers, and colleagues. I am grateful for all
those who took the time to make suggestions, point out misprints, and/or
argued the pedagogical approach that I adopted in presenting certain mate-
rial. I owe special thanks to Herman Cummins and Robert Brenart for their
valuable comments on this second edition’s book proposal, and to Allison
Taub, my editor at Taylor & Francis who took the initiative in actively and
enthusiastically championing the publication of a second edition of this text,
and in supporting its preparation at this time. Courtney Esposito and her
colleagues at The MathWorks Inc. continue to provide me with copies of the
most current releases of MATLAB and their supporting documentation for
which I am most grateful. Julie Spadaro, project editor at Taylor & Francis,
assured a quality final product, successfully coordinating production teams
on different continents.
My wife Azza and daughters Tala and Nigh urged me to prepare a second
edition of this book because partially, I suspect, they liked the fact that the
mail folder that I bring home with me every day now had many communi-
cations (even fan letters!) from other than the dozen or so colleagues, friends,
7425_C000.qxd 6/9/06 16:53 Page xiii

and editors who regularly read, comment, and respond to my research


papers. But above all, I know that deep in their hearts they supported me
unconditionally in what they knew was to me a labor of love. To them I
rededicate this book.
Jamal T. Manassah
New York, September 2006
7425_C000.qxd 6/9/06 16:53 Page xiv
7425_C000.qxd 6/9/06 16:53 Page xv

Contents

1. Starting with MATLAB and Exploring Its Graphics


Capabilities ....................................................................................................1
1.1 First Steps ..........................................................................................1
1.2 Basic Algebraic Operations and Functions ..................................2
1.3 Plotting Points ..................................................................................6
1.3.1 Axes Commands ..............................................................8
1.3.2 Labeling a Graph ............................................................9
1.3.3 Plotting a Point in 3-D ....................................................9
1.4 M-files ..............................................................................................10
1.5 MATLAB Simple Programming ..................................................11
1.5.1 The for Iterative Loop ................................................11
1.5.2 if-else-end Structures ............................................12
1.5.3 The while Loop ............................................................15
1.6 Arrays ..............................................................................................16
1.6.1 Array Relational Operations ........................................17
1.6.2 Array Algebraic Operations ........................................18
1.6.3 Combining Arrays Relational and Algebraic
Operations: Alternative Syntax to the if Statement ..19
1.6.4 Plotting Arrays ..............................................................20
1.7 Data Analysis ..................................................................................22
1.7.1 Manipulation of Data ....................................................22
1.7.2 Displaying Data ............................................................24
1.7.3 Normal Distribution ......................................................25
1.8 Parametric Equations ....................................................................27
1.8.1 Definition ........................................................................27
1.8.2 More Examples ..............................................................28
1.8.3 Oscilloscope Graphics ..................................................30
1.9 Polar Plots ......................................................................................32
1.10 3-D Plotting ....................................................................................34
1.10.1 Straight-Edge Geometric Figures ................................34
1.10.2 Parametric Equations for a 3-D Curve ......................38
1.10.3 Plotting a 3-D Surface ..................................................40
1.10.4 Contour: A Powerful Tool for Exploring 2-D
Geometries ......................................................................43
1.11 Animation ......................................................................................48
1.12 Specialized Plots: Velocity, Gradient, etc. ..................................49
1.12.1 Velocity Plots from Parametric Equations ................49
1.12.2 Gradient of a Potential ..................................................50
7425_C000.qxd 6/9/06 16:53 Page xvi

1.13 Printing and Saving Work in MATLAB ....................................52


1.13.1 Printing a Figure ............................................................52
1.13.2 Printing a Program File (Script M-file) ........................54
1.13.3 Converting a MATLAB Graphic into an
Image File ........................................................................54
1.13.4 Saving Values of Variables ............................................54
1.13.5 Loading the Value of a Variable ..................................54
1.13.6 Saving a MATLAB Session ..........................................54
1.13.7 Loading workspace.mat ..........................................54
1.14 MATLAB Commands Review ....................................................55

2. Difference Equations ................................................................................59


2.1 Simple Linear Forms ....................................................................59
2.2 Amortization ..................................................................................61
2.3 An Iterative Geometric Construct: The Koch Curve ................64
2.4 Solution of Linear Constant Coefficients
Difference Equations ....................................................................67
2.4.1 Homogeneous Solution ................................................68
2.4.2 Particular Solution ........................................................70
2.4.3 General Solution ............................................................70
2.5 Convolution-Summation of a First-Order System with
Constant Coefficients ....................................................................74
2.6 General First-Order Linear Difference Equations ....................76
2.7 Nonlinear Difference Equations ..................................................78
2.7.1 Computing Irrational Numbers ..................................78
2.7.2 The Logistic Equation ..................................................79
2.8 Fractals and Computer Art ..........................................................81
2.8.1 Mira’s Model ..................................................................81
2.8.2 Hénon’s Model ..............................................................84
2.9 Generation of Special Functions from Their Recursion
Relations ..........................................................................................86

3. Elementary Functions and Some of Their Uses ..................................89


3.1 Function Files ................................................................................89
3.2 Examples with Affine Functions ................................................91
3.2.1 Application to a Simple Circuit ..................................91
3.2.2 Further Consideration of Figure 3.1 ............................94
3.3 Examples with Quadratic Functions ..........................................95
3.4 Examples with Polynomial Functions ........................................96
3.5 Examples with the Trigonometric Functions ............................99
3.6 Examples with the Logarithmic Function ................................100
3.6.1 Ideal Coaxial Capacitor ..............................................100
3.6.2 The Decibel Scale ........................................................101
3.6.3 Entropy ..........................................................................101
3.7 Examples with the Exponential Function ................................103
3.7.1 Application to a Simple RC Circuit ..........................103
7425_C000.qxd 6/9/06 16:53 Page xvii

3.8 Examples with the Hyperbolic Functions and


Their Inverses ..............................................................................105
3.8.1 Application to the Capacitance of
Two Parallel Wires ......................................................105
3.9 Commonly Used Signal Processing Functions ........................105
3.10 Animation of a Moving Rectangular Pulse ..............................111
3.11 Use of the Function Handle ........................................................112
3.12 MATLAB Commands Review ....................................................114

4. Differentiation, Integration, and Solutions of Ordinary


Differential Equations ............................................................................115
4.1 Limits of Indeterminate Forms ..................................................115
4.2 Derivative of a Function ............................................................117
4.3 Infinite Sums ................................................................................119
4.4 Numerical Integration ................................................................121
4.5 A Better Numerical Differentiator ............................................124
4.5.1 Application ..................................................................127
4.6 A Better Numerical Integrator: Simpson’s Rule ......................128
4.7 Numerical Solutions of Ordinary Differential Equations ......135
4.7.1 First-Order Iterator ......................................................137
4.7.2 Higher-Order Iterators: The Runge–Kutta
Method ..........................................................................142
4.7.3 MATLAB ODE Solvers ................................................146
4.8 Integral Equations ........................................................................152
4.9 MATLAB Commands Review ..................................................158

5. Root Solving and Optimization Methods ..........................................159


5.1 Finding the Real Roots of a Function of One Variable ..........159
5.1.1 Graphical Method ........................................................159
5.1.2 Numerical Methods ....................................................160
5.1.3 MATLAB fzero Built-in Function ..........................167
5.1.4 Application: Zeros of the Zero-Order
Bessel Function ............................................................168
5.2 Roots of a Polynomial ................................................................170
5.3 Optimization Methods for Functions of One Variable ..........171
5.3.1 Graphical Method ........................................................172
5.3.2 Numerical Method: The Golden Section Method ..173
5.3.3 MATLAB fminbnd Built-in Function ......................175
5.4 The Zeros and the Minima of Functions in Two Variables ..178
5.4.1 The MATLAB fsolve Built-in Command ..............178
5.4.2 The MATLAB fminsearch Built-in Command ....181
5.5 Finding the Minima of Functions with
Constraints Present ......................................................................185
5.5.1 Lagrange Multipliers ..................................................186
5.5.2 MATLAB fmincon Built-in Function ......................187
5.6 MATLAB Commands Review ..................................................189
7425_C000.qxd 6/9/06 16:53 Page xviii

6. Complex Numbers....................................................................................191
6.1 Introduction ..................................................................................191
6.2 The Basics ......................................................................................191
6.2.1 Addition ........................................................................192
6.2.2 Multiplication by a Real or Imaginary
Number ........................................................................193
6.2.3 Multiplication of Two Complex Numbers ..............193
6.3 Complex Conjugation and Division ........................................195
6.3.1 Application to Division ..............................................196
6.4 Polar Form of Complex Numbers ............................................197
6.4.1 New Insights into Multiplication and Division
of Complex Numbers ..................................................198
6.4.2 Roots of Complex Numbers ......................................200
6.4.3 The Function y ⫽ e j␪ ....................................................201
6.5 Analytical Solutions of Constant Coefficients ODE ..............204
6.5.1 Transient Solutions ......................................................205
6.5.2 Solution in the Presence of a Source:
Green Function Technique ..........................................207
6.5.3 Steady-State Solutions ................................................210
6.5.4 Applications to Circuit Analysis ................................211
6.6 Phasors ..........................................................................................213
6.6.1 Phasor of Two Added Signals ....................................213
6.6.2 Total Phasor of Many Signals ....................................214
6.7 Interference and Diffraction of Electromagnetic Waves ........216
6.7.1 The Electromagnetic Wave ........................................216
6.7.2 Addition of Two Electromagnetic Waves ................217
6.7.3 Generalization to N-waves ........................................218
6.8 Solving ac Circuits with Phasors: The Impedance
Method ..........................................................................................220
6.8.1 RLC Circuit Phasor Analysis ......................................221
6.8.2 The Infinite LC Ladder ................................................222
6.9 Transfer Function for a Difference Equation with
Constant Coefficients ..................................................................224
6.10 MATLAB Commands Review ..................................................234

7. Vectors ........................................................................................................235
7.1 Vectors in Two Dimensions ........................................................235
7.1.1 Addition ........................................................................235
7.1.2 Multiplication of a Vector by a Real Number ..........235
7.1.3 Cartesian Representation ............................................236
7.1.4 MATLAB Representation of Vectors ........................238
7.2 Dot (or Scalar) Product ..............................................................239
7.2.1 MATLAB Representation of the Dot Product ..........241
7.3 Components, Direction Cosines, and Projections ..................243
7.3.1 Components ..................................................................243
7.3.2 Direction Cosines ........................................................243
7.3.3 Projections ....................................................................244
7425_C000.qxd 6/9/06 16:53 Page xix

7.4 The Dirac Notation and Some General Theorems ..................244


7.4.1 Cauchy–Schwartz Inequality ....................................246
7.4.2 Triangle Inequality ......................................................248
7.5 Cross Product and Scalar Triple Product ................................249
7.5.1 Cross Product ..............................................................249
7.5.2 Geometric Interpretation of the Cross Product ......250
7.5.3 Scalar Triple Product ..................................................250
7.6 Tangent, Normal, and Curvature ..............................................253
7.7 Velocity and Acceleration Vectors in Polar Coordinates ........255
7.8 Line Integral ..................................................................................261
7.9 Infinite-Dimensional Vector Spaces ..........................................263
7.10 MATLAB Commands Review ..................................................272

8. Matrices ......................................................................................................273
8.1 Setting Up Matrices ....................................................................273
8.1.1 Creating a Matrix by Keying in the Elements ........273
8.1.2 Retrieving Special Matrices from the
MATLAB Library ........................................................275
8.1.3 Functional Construction of Matrices ........................277
8.2 Adding Matrices ..........................................................................280
8.3 Multiplying a Matrix by a Scalar ..............................................280
8.4 Multiplying Matrices ..................................................................281
8.5 Inverse of a Matrix ......................................................................282
8.6 Solving a System of Linear Equations ......................................285
8.7 Application of Matrix Methods ................................................288
8.7.1 dc Circuit Analysis ......................................................288
8.7.2 dc Circuit Design ........................................................289
8.7.3 ac Circuit Analysis ......................................................290
8.7.4 Accuracy of a Truncated Taylor Series ....................291
8.7.5 Reconstructing a Function from Its Fourier
Components ..................................................................294
8.7.6 Interpolating the Coefficients of an (n ⫺ 1)-
Degree Polynomial from n Points ............................296
8.7.7 Least-Squares Fit of Data ............................................297
8.7.8 Numerical Solution of Fredholm Equations ............298
8.8 Eigenvalues and Eigenvectors ..................................................299
8.8.1 Finding the Eigenvalues of a Matrix ........................299
8.8.2 Finding the Eigenvalues and Eigenvectors
Using MATLAB ............................................................302
8.9 The Cayley–Hamilton and Other Analytical Techniques ......305
8.9.1 Cayley–Hamilton Theorem ........................................305
dX
8.9.2 Solution of Equations of the Form ⫽ AX ..........306
dt
8.9.3 Solution of Equations of the Form
dX
= AX ⫹ B(t)..............................................................308
dt
7425_C000.qxd 6/9/06 16:53 Page xx

8.9.4 Pauli Spinors ................................................................312


8.10 Special Classes of Matrices ........................................................319
8.10.1 Hermitian Matrices ......................................................319
8.10.2 Unitary Matrices ..........................................................323
8.10.3 Unimodular Matrices ..................................................324
8.11 Transfer Matrices ..........................................................................330
8.12 Covariance Matrices ....................................................................334
8.12.1 Parametric Estimation ................................................336
8.12.2 Karhunen–Loeve Transform ......................................339
8.13 MATLAB Commands Review ..................................................341

9. Transformations ........................................................................................343
9.1 Two-Dimensional Geometric Transformations ......................343
9.1.1 Construction of Polygonal Figures ............................343
9.1.2 Inversion about the Origin and Reflection
about the Coordinate Axes ........................................344
9.1.3 Rotation around the Origin ........................................345
9.1.4 Scaling ............................................................................346
9.1.5 Translation ....................................................................347
9.2 Homogeneous Coordinates ........................................................347
9.3 Manipulation of 2-D Images ......................................................351
9.3.1 Geometrical Manipulation of Images ......................351
9.3.2 Digital Image Processing ............................................352
9.3.3 Encrypting an Image ..................................................353
9.4 Lorentz Transformation ..............................................................355
9.4.1 Space–Time Coordinates ............................................355
9.4.2 Addition Theorem for Velocities ..............................357
9.5 Iterative Constructs ....................................................................358
9.5.1 The Koch Curve ..........................................................358
9.5.2 The Serpenski Curve ..................................................361
9.6 MATLAB Commands Review ..................................................363

10. A Taste of Probability Theory ................................................................365


10.1 Introduction ..................................................................................365
10.2 Basics ..............................................................................................366
10.3 Addition Laws for Probabilities ................................................371
10.4 Conditional Probability ..............................................................375
10.4.1 Total Probability Theorem ..........................................377
10.4.2 Bayes Theorem ............................................................377
10.5 Repeated Trials ............................................................................380
10.6 Generalization of Bernoulli Trials ............................................382
10.7 The Poisson and the Normal Distributions ............................382
10.7.1 The Poisson Distribution ............................................383
10.7.2 The Normal Distribution ............................................385
7425_C000.qxd 6/9/06 16:53 Page xxi

Appendix A: Review of Elementary Functions............................................389


A.1 Affine Functions ..........................................................................389
A.2 Quadratic Functions ....................................................................390
A.3 Polynomial Functions ..................................................................395
A.4 Trigonometric Functions ............................................................395
A.5 Inverse Trigonometric Functions ..............................................397
A.6 The Natural Logarithmic Function ..........................................397
A.7 The Exponential Function ..........................................................398
A.8 The Hyperbolic Functions ..........................................................399
A.9 The Inverse Hyperbolic Functions ............................................401

Appendix B: Determinants ..............................................................................403

Appendix C: Symbolic Calculations with MATLAB ..................................407


C.1 Symbolic Manipulation ..............................................................408
C.1.1 Creating Symbolic Expressions ................................408
C.1.2 Algebraic Manipulation ..............................................411
C.1.3 Plotting Symbolic Expressions ..................................414
C.2 Symbolic Solution of Algebraic and Transcendental
Equations ......................................................................................417
C.3 Symbolic Calculus ......................................................................418
C.4 Symbolic Linear Algebra ............................................................423
C.5 z-Transform and Laplace Transform ........................................428
C.5.1 z-Transform ..................................................................428
C.5.2 Solving Constant Coefficients Linear Difference
Equations Using z-Transform ....................................431
C.5.3 Laplace Transform ......................................................432
C.5.4 Solving Constant Coefficients Linear ODE
Using Laplace Transform ............................................436

Appendix D: Some Useful Formulae ............................................................439

Appendix E: Text Formatting ..........................................................................443

Selected References ..........................................................................................445

Index......................................................................................................................447
7425_C000.qxd 6/9/06 16:53 Page xxii
7425_C001.qxd 9/2/06 12:03 PM Page 1

1
Starting with MATLAB and Exploring Its
Graphics Capabilities

MATLAB can be thought of as a library of programs that will prove very use-
ful in solving many electrical engineering computational problems. MATLAB
is an ideal tool for numerically assisting you in obtaining answers, which is a
major goal of engineering analysis and design. This program is very useful in
research on circuit analysis, device design, signal processing, filter design,
control system analysis, antenna design, microwave engineering, photonics
engineering, computer engineering, and every other subfields of electrical
engineering. It is also a powerful graphic and visualization tool of beneficial
use for both quantitative courses and in your future career. In this chapter, we
start our exploration of MATLAB; in subsequent chapters, we will add to our
knowledge about this powerful tool of the modern engineer.

1.1 First Steps


The first step in using MATLAB is to know how to call it. It is important to
remember that although the front-end and the interfacing for machines with
different operating systems are sometimes different, once you are inside
MATLAB, all programs and routines are written in the same manner. Only
those few commands that are for file management and for interfacing with
external devices such as printers may be different for different operating sys-
tems. After entering MATLAB, usually by double clicking on the MATLAB
program icon, you should see the prompt >>, which means the program
interpreter is waiting for you to enter instructions. The interpreter goes to
work when you press the Return key. In case you wish to go to a new line
for the purpose of continuing your instructions, you should enter ellipses
( … ) before you hit the Return key.
In case the program is already opened, and to make sure that nothing is
saved from a previous session, type and enter:

>>clear all
1
7425_C001.qxd 9/2/06 12:03 PM Page 2

2 Elementary Mathematical and Computational Tools Using MATLAB®

This command removes all variables from the workspace. Also type and
enter (we shall henceforth say just enter):

>>clf

This command creates a graph window (if one does not already exist) or
clears an existing graph window. The command figure creates a new fig-
ure window, leaving the existing ones unaltered.
The command quit stops MATLAB.
Because it is not the purpose of this text to explain the function of every
MATLAB command, how would you get information on a particular syntax?
The MATLAB program has extensive help documentation available with
simple commands. For example, if you wanted help on a function called
roots (we will use this function often), you would type help roots.
Note that the help facility cross-references other functions that may have
related uses. This requires that you know the function name. If you want an
idea of the available help files in MATLAB, type help. This gives you a list
of topics included in MATLAB.
To get help on a particular topic such as elementary matrices and matrix
manipulation, type matlab\elmat. This gives you a list of all relevant
functions pertaining to that area. Now you may type help for any function
listed there. For example, try help size.

1.2 Basic Algebraic Operations and Functions


The MATLAB environment can be used, on the most elementary level, as a
tool to perform simple algebraic manipulations and function evaluations.

EXAMPLE 1.1

Exploring the calculator functions of MATLAB: The purpose of this example


is to show how to manually enter data and how to use the basic algebraic
operations of MATLAB. Note that the statements will be executed immedi-
ately after they are typed and entered (no equal sign is required).
Enter the text that follows the >> prompt to find out the MATLAB
responses to the following:

>> format short


>> 2.54376+2.32e1 %2.32e1=2.32*(10^1)
ans =
25.7438
>> 5.45^2
ans =
7425_C001.qxd 9/2/06 12:03 PM Page 3

Starting with MATLAB® and Exploring Its Graphics Capabilities 3

29.7025
>> ceil(7.58)
ans =
8
>> 2*sin(pi/4)
ans =
1.4142

The % symbol is used so that one can type comments in a program. (Comments
following the % symbol are ignored by the MATLAB interpreter.) Then enter:

>> format short e


>> 2.54376+2.32e1
ans =
2.5744e+001
>> 5.45^2
ans =
2.9703e+001
>> ceil(7.58)
ans =
8
>> 2*sin(pi/4)
ans =
1.4142e+000 ⵧ

The last command gave twice the sine of /4. Note that the argument of the
function was enclosed in parentheses directly following the name of the
function. Therefore, if you wanted to find sin3(x), the proper MATLAB syn-
tax would be

>>sin(pi/4)^3

The numeric functions of MATLAB are:


ceil(x) rounds the number to nearest integer toward 
fix(x) rounds the number to nearest integer toward 0
floor(x) rounds the number to nearest integer toward 
round(x) rounds the number to nearest integer

The numeric formats of MATLAB are:


format short (default value) gives the number with four decimal
digits
format long gives the number with 16 digits
format short e gives the number with four decimals plus an exponent
format long e gives the number with 15 digits plus an exponent
format bank gives the number with 2 digits after the decimal (use-
ful for financial calculations)
7425_C001.qxd 9/2/06 12:03 PM Page 4

4 Elementary Mathematical and Computational Tools Using MATLAB®

To facilitate its widespread use, MATLAB has all the standard elementary
mathematical functions as built-in functions. Type help elfun to obtain a
listing of these functions. Remember that this is just a subset of the available
functions in the MATLAB library.

>>help elfun

The response to the last command will give you a list of these elementary
functions, some of which may be new to you, but all of which will be used
in your future engineering studies. Many of these functions will also be used
in later chapters of this book.
In the following table, the MATLAB expressions for the most common
mathematical functions are given:

MATLAB form Name Mathematical form

sqrt(x) squareroot 兹x
exp(x) exponential exp(x)  ex
log(x) natural logarithm ln(x)
log10(x) base10 logarithm log(x)  (ln(x)/ln(10))
sin(x) sine sin(x)
cos(x) cosine cos(x)
sec(x) secant sec(x)
tan(x) tangent tan(x)  (sin(x)/cos(x))
cot(x) cotangent cot(x)  (1/tan(x))
asin(x) inverse sine sin1(x)  arcsin(x)
acos(x) inverse cosine cos1(x)
asec(x) inverse secant sec1(x)
atan(x) inverse tangent tan1(x)
acot(x) inverse cotangent cot1(x)
sinh(x) hyperbolic sine sinh(x)  (ex  ex)/2
cosh(x) hyperbolic cosine cosh(x)  (ex  ex)/2
sech(x) hyperbolic secant sech(x)  1/cosh(x)
tanh(x) hyperbolic tangent tanh(x)  sinh(x)/cosh(x)
coth(x) hyperbolic cotangent coth(x)  1/tanh(x)
asinh(x) inverse hyperbolic sine (
sinh1 ( x)  ln x  x 2  1 )
where    x  

acosh(x) inverse hyperbolic cosine (


cosh1 ( x)  ln x  x 2  1 )
where x 1
1 1 
asech(x) inverse hyperbolic secant sech1 ( x)  ln   2  1 
x x 
where 0  x  1
1  1 x 
atanh(x) inverse hyperbolic tangent tanh1 ( x)  ln  
2  1 x 
where 1  x  1

1  x 1 
acoth(x) inverse hyperbolic cotangent coth1 ( x) 
ln  
2  x 1 
where x  1 or x  1
7425_C001.qxd 9/2/06 12:03 PM Page 5

Starting with MATLAB® and Exploring Its Graphics Capabilities 5

EXAMPLE 1.2

Assigning and calling values of parameters: In addition to inputting data


directly to the screen, you can assign a symbolic constant or constants to rep-
resent data and perform manipulations on them.
For example, enter and note the answer to each of the following:

>> format short


>> a=2.65;
>> b=3.765;
>> c=a*(a+b)
c =
16.9997
>> d=a*b
d =
9.9772
>> e=a/b
e =
0.7039
>> f=a^3/b^2
f =
1.3128
>> g=a+3*b^2
g =
45.1757

(The spacing shown above is obtained by selecting Compact for Numerical


Display in the Command Window Preferences in the File pull-down menu.)

If we desire at any point to know the list of the current variables in a MATLAB
session, we enter:

>>who

Note on variable names: Variable names must begin with a letter, contains
letters, digits, and underscore characters, and must contain less than 32 char-
acters. MATLAB is case-sensitive.

Question: From the above, can you deduce the order in which MATLAB
performs the basic algebraic operations?

Answer: The order of precedence is as follows:


1. Parentheses, starting with the innermost
2. Exponentiation from left to right
7425_C001.qxd 9/2/06 12:03 PM Page 6

6 Elementary Mathematical and Computational Tools Using MATLAB®

3. Multiplication and division with equal precedence, also evaluated


from left to right
4. Addition and subtraction, with equal precedence, also evaluated
from left to right

IN-CLASS EXERCISE

Pb. 1.1 Using the values, a  0.875 and b  1.5786, find the values of the fol-
lowing expressions (give your answers in the engineering short format):

h  sin(a) sin3/2(b)
j  a1/3 b3/7
k  (sin1(a/b))2/3
l  sinh(a) ab

1.3 Plotting Points


In this section, you will learn how to use some simple MATLAB graphics
commands to plot points. We use these graphics commands later in the text
for plotting arrays and for visualizing their properties. To view all the func-
tions connected with two-dimensional (2-D) graphics, type

>>help plot

All graphics functions connected with three-dimensional curves graphics


can be looked up by typing

>>help plot3

A point P in the x–y plane is specified by two coordinates: the x-coordinate


measures the horizontal distance of the point from the y-axis, while the
y-coordinate measures the vertical distance above or below the x-axis. These
coordinates are called Cartesian coordinates, and any point in the plane can
be described in this manner. We write for the point, P(x, y).
Other representations can also be used to locate a point with respect to a
particular set of axes. For example, in the polar representation, the point is
specified by an r-coordinate that measures the distance of the point from the
origin, while the -coordinate measures the angle which the line passing
through the origin and this point makes with the positive x-axis. The angle
is measured anticlockwise from the positive x-axis.
The purpose of the following two examples is to learn how to represent
points in a Cartesian plane and to plot them using MATLAB.
7425_C001.qxd 9/2/06 12:03 PM Page 7

Starting with MATLAB® and Exploring Its Graphics Capabilities 7

EXAMPLE 1.3

Plot the point P(3, 4). Mark this point with a red asterisk.
Solution: Enter the following:
>> x1=3;
y1=4;
plot(x1,y1,'*r') ⵧ
Note that the semicolon is used in the above commands to suppress the
echoing of the values of the inputs. The '*r' is used to mark the location and
the color of the point that we are plotting.
The symbols for the most common markers and colors for display in
MATLAB plot-functions are:

Markers Symbol Color Symbol

Circle o Blue b
Cross x Cyan c
Diamond d Green g
Dot ⴢ Magenta m
Pentagram p Yellow y
Plus sign ⴙ Red r
Square s White w
Star * Black k

EXAMPLE 1.4

Plot the second point, R(2.5, 4), on the graph while keeping point P of the
previous example on the same graph. Mark the new point with a small green
circle.

Solution: If we went ahead, defined the coordinates of R, and attempted to


plot the point R through the following commands:
>>x2=2.5;
y2=4;
plot(x2,y2,'og')
We would find that the last plot command erases the previous plot output.
Thus, what should we do if we want both points plotted on the same graph?
The answer is to use the hold on command after the first plot.
The following illustrates the instructions that you should have entered
instead of entering the above:
>>hold on
x2=2.5;
y2=4;
plot(x2,y2,'og')
hold off
The hold off turns off the hold on feature. ⵧ
7425_C001.qxd 9/2/06 12:03 PM Page 8

8 Elementary Mathematical and Computational Tools Using MATLAB®

NOTES
1. There is no limit to the number of plot commands you can type
before the hold is turned off.
2. An alternative method for viewing multiple points on the same
graph is available: we may instead, following the entering of the
values of x1, y1, x2, y2, enter:

>>plot(x1,y1,'*r',x2,y2,'og')

This has the advantage, in MATLAB, if no color is specified, that the


program assigns automatically a different color to each point.

1.3.1 Axes Commands


You may have noticed that MATLAB automatically adjusts the scale on a
graph to accommodate the coordinates of the points being plotted. The axis
scaling can be manually enforced by using the command

>>axis([xmin xmax ymin ymax])

Make sure that the minimum axis value is less than the maximum axis value
or an error will result.
In addition to being able to adjust the scale of a graph, you can also change
the aspect ratio of the graphics window. This is useful when you wish to see
the correct x to y scaling. For example, without this command, a circle will look
more like an ellipse, even if we have chosen ymax  ymin  xmax  xmin.

EXAMPLE 1.5

Plot the vertices of the square, formed by the points (1, 1), (1, 1),
(1, 1), (1, 1), keeping the same aspect ratio as in a graph paper, i.e., 1.

Solution: Enter the following:

>>x1=-1;y1=-1;
>>x2=1;y2=-1;
>>x3=-1;y3=1;
>>x4=1;y4=1;
>>plot(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o')
>>axis([-2 2 -2 2])
>>axis square %makes the aspect ratio 1 ⵧ

Note that prior to the axis square command, the square looked like a rect-
angle. If you want to go back to the default aspect ratio, type axis normal.
In specific instances, you may need to choose other than the default
tick marks chosen by MATLAB, you can achieve this by adding the
7425_C001.qxd 9/2/06 12:03 PM Page 9

Starting with MATLAB® and Exploring Its Graphics Capabilities 9

following command:

set(gca,'Xtick',[xmin:dx:xmax],'Ytick',[ymin:dy:ymax])

Here gca stands for get current axes, and dx and dy are respectively the spac-
ings between tick marks that you desire in the x- and y-directions.
You can also make the graph easier to read, by using the command:

>>grid

This command displays gridlines at the tick marks.


If we repeat Example 1.5 with these new features added, the set of instruc-
tions will now read:

>>x1=-1;y1=-1;x2=1;y2=-1;x3=-1;y3=1;x4=1;y4=1;
>>plot(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o')
>>axis([-2 2 -2 2])
>>axis square
>>set(gca,'Xtick',[-2:0.5:2],'Ytick',[-2:0.5:2])
>>grid

The tick marks were chosen in this instance to be separated by –12 units in both
the x- and y-directions.

1.3.2 Labeling a Graph


To add labels to your graph, the functions xlabel, ylabel, and title can
be used as follows:

>>xlabel('x-axis')
>>ylabel('y-axis')
>>title('points in a plane')

If you desire to also add a caption anywhere in the graph, you can use the
MATLAB command

>>gtext('caption')

and place it at the location on the graph of your choice, by clicking the mouse
on the desired location when the crosshair is properly centered there.
Different fonts and symbols can be used in labeling MATLAB graphs.
LaTeX symbols are used by MATLAB for this purpose (see Appendix E).

1.3.3 Plotting a Point in 3-D


In addition to being able to plot points on a plane (2-D space), MATLAB is
also able to plot points in a three-dimensional space (3-D space). For this, we
use the plot3 function.
7425_C001.qxd 9/2/06 12:03 PM Page 10

10 Elementary Mathematical and Computational Tools Using MATLAB®

EXAMPLE 1.6

Plot the points P(1, 1, 1), Q(4, 5, 6) and R(2, 5, 3). Show a grid in your graph.
Solution: Enter the following commands:

>>x1=1;x2=4;x3=2;
>>y1=1;y2=5;y3=5;
>>z1=1;z2=6;z3=3;
>>plot3(x1,y1,z1,'o',x2,y2,z2,'*',x3,y3,z3,'d')
>>axis([0 6 0 6 0 6])
>>grid ⵧ

NOTE You can also plot multiple points in a 3-D space in exactly the same
way as you did on a plane. Axis adjustment can still be used, but the vector
input into the axis command must now have six entries, as follows:

axis([xmin xmax ymin ymax zmin zmax])

You can similarly label your 3-D figure using xlabel, ylabel, zlabel, and
title.
The grid command is also valid in conjunction with the plot3 command.

1.4 M-files
In the last section, we found that to complete a figure with a caption, we had
to enter several commands one by one in the command window. Typing
errors will be time-consuming to fix because if you are working in the com-
mand window, and if you make an error, you will need to retype all or part
of the program. Even if you do not make any mistakes (!), all of your work
may be lost if you inadvertently quit MATLAB and have not taken the nec-
essary steps to save the contents of the important program that you just fin-
ished developing. This will be time-consuming. Especially, if you are
simulating a process, and all that you want to change in successive runs are
the parameters of the problem. To preserve large sets of commands, you can
store them in a special type of file called an M-file.
MATLAB supports two types of M-files: script and function M-files. To hold
a large collection of commands, we use a script M-file. The function M-file is
discussed in Chapter 3. To make a script M-file, you need to open a file using
the built-in MATLAB Menu. First select New from the File menu. Then select
the M-file entry from the pull-down menu. After typing the M-file contents,
you need to save the file. For this purpose, use the save as command from the
File window. A field will pop up in which you can type in the name you have
chosen for this file. In the pop-up lower window, indicate that it is an .m file.
7425_C001.qxd 9/2/06 12:03 PM Page 11

Starting with MATLAB® and Exploring Its Graphics Capabilities 11

NOTES
1. Avoid naming a file by a mathematical abbreviation, the name of a
mathematical function, a MATLAB command, or a number.
2. To run your script M-file, just enter in the command window the
filename omitting the .m extension in the file name at its end at the
MATLAB prompt. To be able to access this file from the command
window, make sure that the folder in which you saved this file is in
the MATLAB Path. If this is not the case use the Set Path in the File
pull-down menu and follow the screen prompts.

EXAMPLE 1.7

For practice, go to the File pull-down menu, select New and M-file to create
the following file that you will name myfile_17.
Enter in the editor window, the following set of instructions:

x1=1;y1=.5;x2=2;y2=1.5;x3=3;y3=2;
plot(x1,y1,'o',x2,y2,'+',x3,y3,'*')
axis([0 4 0 4])
xlabel('xaxis')
ylabel('yaxis')
title('3points in a plane')

After creating and saving this file as myfile_17 in your work folder, go to the
MATLAB command window and enter myfile_17. MATLAB will execute the
instructions in the same sequence as the statements stored in that file. ⵧ

1.5 MATLAB Simple Programming


In this section, we introduce the programming flow control commands for,
if, and while.

1.5.1 The for Iterative Loop


The power of computers lies in their ability to perform a large number of
repetitive calculations. To do this without entering the value of a parameter
or variable each time that these are changed, all computer languages have
control structures that allow commands to be performed and controlled by
counter variables, and MATLAB is no different. For example, the MATLAB
for loop allows a statement or a group of statements to be repeated a pre-
scribed number (i.e., positive integer) of times.
7425_C001.qxd 9/2/06 12:03 PM Page 12

12 Elementary Mathematical and Computational Tools Using MATLAB®

EXAMPLE 1.8

Generate the square of the first ten integers.

Solution: Edit and execute the following script M-file:

for m=1:10
x(m)=m^2;
end ⵧ

In this case, the number of repetitions is controlled by the index variable m,


which takes on the values m=1 to 10 in intervals of 1. Therefore, 10 assign-
ments are made. What the above loop is doing is sequentially assigning the
different values of m^2 (i.e., m2) for each element of the “x-array.” An array
is just a data structure that can hold multiple entries. An array can be 1-D
such as in a vector or 2-D such as in a matrix. More will be said about vec-
tors and matrices in subsequent chapters. At this time, assume 1-D and 2-D
arrays as pigeonholes with numbers or ordered pair of numbers respectively
assigned to them.
To find the value of a particular slot of the array, such as slot 3, enter:

>>x(3)

To read all the values stored in the array, enter:

>>x

Question: What do you get if you enter m, following the execution of the
above program?
Answer: The value 10, which is the last value of m read by the counter.

Homework Problem
Pb. 1.2 A couple establishes a college savings account for their newly
born baby girl, deposit $2000 in this account, and commit themselves to
deposit an equal amount at each future birthday of the new born. They
chose to invest this money with an investment firm that guarantees a
minimum annual return of 5%. What will be the minimum balance of the
account when the young lady turns 18? (Include in your calculation the
amount deposited on her 18th birthday.)

1.5.2 if-else-end Structures


If a sequence of commands must be conditionally evaluated based on a rela-
tional test, the programming of this logical relationship is executed with
some variation of an if-else-end structure.
7425_C001.qxd 9/2/06 12:03 PM Page 13

Starting with MATLAB® and Exploring Its Graphics Capabilities 13

A. The simplest form of this structure is:


if expression
Commands evaluated if expression is True
else
Commands evaluated if expression is False
end

NOTES
1. The commands between the if and else statements are evaluated
for all elements in the expression which are true.
2. The conditional expression uses the Boolean logical symbols &
(AND), | (OR), and ⬃ (NOT) to connect different propositions.

EXAMPLE 1.9

Find for integer a, 0  a  10, the values of C, defined as follows:

 ab for a  5

C 3
 ab for a  5
2

and b  15.

Solution: Edit and execute the following script M-file:

>>b=15;
for a=1:10
if a>5
C(a)=a*b;
else
C(a)=(a*b)*(3/2);
end
end

Check that the values of C that you will obtain by typing C are:

22.5 45 67.5 90 112.50 90 105 120 135 150 ⵧ

B. When there are three or more alternatives for the conditional, the
if-else-end structure takes the form:
if expression 1
Commands 1 evaluated if expression 1 is True
elseif expression 2
Commands 2 evaluated if expression 2 is True
7425_C001.qxd 9/2/06 12:03 PM Page 14

14 Elementary Mathematical and Computational Tools Using MATLAB®

elseif expression 3
Commands 3 evaluated if expression 3 is True
...

....
else
Commands evaluated if no other expression is True
end

In this form, only the commands associated with the first True expression
encountered are evaluated, ensuing relational expressions are not tested.

EXAMPLE 1.10

Find for integers a, 1  a  15, the value of D defined by

 a3 for a  5

D   2a for 5  a  10

 a  7 for 10  a  15

Solution: Edit and execute the following script M-file:

for a=1:15
if a<=5
D(a)=a^3;
elseif a>5 & a<10
D(a)=2*a;
else
D(a)=7+a;
end
end
D ⵧ

Homework Problem
Pb. 1.3 For the values of integer a going from 1 to 10, find the values of
C such that

 a2 if a is even
C
 a
3
if a is odd

Use the stem command to graphically show C. (Hint: Look up in the help
file the function mod.)
7425_C001.qxd 9/2/06 12:03 PM Page 15

Starting with MATLAB® and Exploring Its Graphics Capabilities 15

1.5.3 The while Loop


The while loop is used when the iteration process has to terminate when a
priori specified condition is satisfied. The difference with the for command
is that there the number of iterations is specified in advance.
The syntax for the while loop is as follows:

Initial assignment
while relational condition
expression
end

NOTE Special care should be exercised when using the while loop, as in
some cases the looping may never stop.

EXAMPLE 1.11

The unknown quantity x has the form 2n, where n is an integer. We desire to
find the largest such number subject to the condition that x  75,345.
Solution: Using the above syntax of the while loop, we enter:

>>x=2;
while 2*x<75345
x=2*x;
end
x

The unknown variable is initially assigned the value 2, it has this value until
it encounters the statement x=2*x, which should be read that x(n  1) 
2*x(n), the value of x is then changed to xnew. Before each pass through the
loop, the value of x is checked to see whether x  75,345. If this condition is
satisfied, the next iteration is carried through; otherwise the looping is
stopped. The final result to our problem is the value of x before any more
loop is executed.
If the statement of the problem is changed, and we had asked instead the
question to list all x’s that satisfied the condition x  75,345. We would have
entered instead of the above the following instructions:

>>x=2;
while x<75345
disp(x)
x=2*x;
end

The disp (display) command displays the results of all iterations satisfying
the desired condition. ⵧ
7425_C001.qxd 9/2/06 12:03 PM Page 16

16 Elementary Mathematical and Computational Tools Using MATLAB®

Homework Problem
Pb. 1.4 Using while, find the largest number x which can be written in
the form

x  3n  2n  3

and such that n is an integer and x  35,724.

1.6 Arrays
As mentioned earlier, think of an array as a string of ordered numbers, i.e.,
to determine an array, we need to specify the value and position of each ele-
ment in this string.
As pointed out earlier, an element in the array is addressed by writing the
name of the array followed by the position of the element within parenthe-
ses. For example, x(3) will be the value of the third element in the array x.
The basic array functions are:

length(x) finds the length of the array x (i.e., number of elements)


find(x) computes a new array where the successive elements indicate
the positions where the components of the array x are nonzero
max(x) gives the value of the largest element in the array x
min(x) gives the value of the smallest element in the array x
sum(x) gives the sum of all elements in the array x

EXAMPLE 1.12

Enter the array x  [0 3 6 2 11 0 7 9], and find its third element, length,
nonzero elements, value of its largest and smallest elements, and sum of all
its elements.

Solution:

>> x=[0 3 6 -2 11 0 7 9];


>> x(3)
ans =
6
>> length(x)
ans =
8
>> find(x)
7425_C001.qxd 9/2/06 12:03 PM Page 17

Starting with MATLAB® and Exploring Its Graphics Capabilities 17

ans =
2 3 4 5 7 8
>> max(x)
ans =
11
>> min(x)
ans =
-2
>> sum(x)
ans =
34 ⵧ

1.6.1 Array Relational Operations


MATLAB has six relational operations that compare the elements of two
arrays of the same length.
The relational operators are:

= = equal to
~ = not equal to
< smaller than
<= smaller or equal to
> larger than
>= larger than or equal

If we combine within parentheses the symbols for two arrays with a rela-
tional operator, the result will be a new array consisting of 0’s and 1’s, where
the 1’s are in the positions where the relation between the two elements in
the same position from the two arrays is satisfied, and 0’s otherwise.

EXAMPLE 1.13

Study the following printout:

x = [1 4 7 5 11 2];
y = [3 -2 7 2 12 -4];
>> z1=(x==y)
z1 =
0 0 1 0 0 0
>> z2=(x~=y)
z2 =
1 1 0 1 1 1
>> z3=(x<y)
z3 =
1 0 0 0 1 0
>> z4=(x<=y)
7425_C001.qxd 9/2/06 12:03 PM Page 18

18 Elementary Mathematical and Computational Tools Using MATLAB®

z4 =
1 0 1 0 1 0
>> z5=(x>y)
z5 =
0 1 0 1 0 1
>> z6=(x>=y)
z6 =
0 1 1 1 0 1
>> z7=(z1==z2)
z7 =
0 0 0 0 0 0
>> z8=(z3==z6)
z8 =
0 0 0 0 0 0
>> z9=(z4==z5)
z9 =
0 0 0 0 0 0

Comments: The values of z7, z8, and z9 are identically zeros. This means that
no corresponding elements of z1 and z2, z3 and z6, z4 and z5, respectively are
ever equal, i.e., each pair represents mutually exclusive conditions. ⵧ

1.6.2 Array Algebraic Operations


In Section 1.5, we used for loops repeatedly. However, this kind of loop-
programming is very inefficient and must be avoided as much as possible in
MATLAB. In fact, ideally, a good MATLAB program will always minimize
the use of loops because MATLAB is an interpreted language — not a com-
piled one. As a result, any looping process is very inefficient. Nevertheless,
at times we use the for loops, when necessitated by pedagogical reasons.
To understand array operations more clearly, consider the following:
a=1:3 % a starts at 1, goes to 3 in increments of 1.
If the increment is not 1, you must specify the increment; for example,

b=2:0.2:6 % b starts at 2 ends at 6 in steps of 0.2

To distinguish arrays operations from either operations on scalars or on


matrices, the symbol for multiplication becomes .*, that of division ./,
and that of exponentiation .^. Thus, for example,

c=a.*b % takes every element of a and multiplies


% it by the element of b in the same array location

Similarly, for exponentiation and division:

d=a.^b
e=a./b
7425_C001.qxd 9/2/06 12:03 PM Page 19

Starting with MATLAB® and Exploring Its Graphics Capabilities 19

If you try to use the regular scalar operations symbols, you will get an error
message.
Note that array operations such as the above require the two arrays to
have the same length (i.e., the same number of elements). To verify that two
arrays have the same number of elements (dimension), use the length com-
mand. The exception to the equal length arrays rule is when one of the
arrays is a scalar constant.

NOTE The expression x=linspace(0,10,200) is also a generator for an


x-array. Its first element equal to 0, its last element equal to 10, and it has 200
equally spaced points between 0 and 10. Here, the number of points rather
than the increment is specified; that is, length(x)=200.

1.6.3 Combining Arrays Relational and Algebraic Operations: Alternative


Syntax to the if Statement
As an alternative to the if syntax, we can use a combination of arrays rela-
tional and algebraic operations to generate a complicated array from a sim-
ple one.

EXAMPLE 1.14

Using array operations, find for integers a, 1  a  15, the value of D defined by

 a4 for a  5

D   2a for 5  a  10

 a  7 for 10  a  15

Solution:
>>a=1:15;
D=(a.^4).*(a<=5)+2*a.*(5<a).*(a<10)+(a+7).*(10<=a)...
.*(a<=15) ⵧ
NOTE We have used in the above the property that the logical AND link-
ing two separate relational operations can be represented by the array prod-
uct of these relations.

Homework Problem
Pb. 1.5 The array n is all integers from 1 to 110. The array y is defined by

 n
1/ 2
if n divisible by 3, 5, or 7
y=
 0 otherwise

Find the value of the sum of the elements of y.


7425_C001.qxd 9/2/06 12:03 PM Page 20

20 Elementary Mathematical and Computational Tools Using MATLAB®

1.6.4 Plotting Arrays


If we are given two arrays x and y, we can plot the y-array as function of the
x-array. What MATLAB is actually doing is displaying all the points
P(xi, yi) and connecting each two consecutive points by a straight line.
The same options for markers and color that were available for plotting
points and described earlier are also valid in this case. Additionally, we can
specify here the style of the line that connects the different points.

Style MATLAB Symbol

Solid line –
Dashed line ––
Dash-dot line –.
Dotted line :

If the points are close together, the points will look connected by a continu-
ous line making a smooth curve; we say that the program graphically inter-
polated the discrete points into a continuous curve.
The commands for labeling, axis and tick marks used in plotting points are
also valid here. We can zoom to a particular region of the graph by using the
command zoom, And we can read off the coordinates of particular point(s)
in the graph, by using

[x,y]=ginput(n)

This command serves to read the values of the coordinates of points off a dis-
played graph (n is the number of points). The command pops out the
crosshair. The operator manually zeros on the points of interest and clicks. As
a result, MATLAB prints the coordinates of the points in the same order as
those of the clicks of the mouse.

EXAMPLE 1.15

The three arrays x, y, and z are defined as follows:

x  0:0.1:10; y  x 2  6x  20; z  3x  5

Plot y as function of x, and z as function of x. Show the traces as red dotted


line and blue solid line, respectively, label the x- and y-axis, and label graph
as Figure of Example 1.15.

Solution:
>>x=0:0.1:10;
y=x.^2-6*x-20;
z=2*x-5;
plot(x,y,'r:',x,z,'b-')
xlabel('x axis')
7425_C001.qxd 9/2/06 12:03 PM Page 21

Starting with MATLAB® and Exploring Its Graphics Capabilities 21

ylabel('y-z axis')
title('Figure of Example 1.15')
grid

In the above solution, we plotted both curves on the same graph. Often, it may
be required to plot the two curves in separate graphs but in the same figure
window. This can be achieved using the subplot command. The arguments
of the subplot command subplot(m,n,p) specify m the number of rows par-
titioning the graph, n the number of columns, and p the number of the partic-
ular subgraph chosen (enumerated through the left to right, top to bottom
convention). The program to plot the above arrays in two graphs in a column
would read

>>x=0:0.1:10;
y=x.^2-6*x-20;
z=2*x-5;
subplot(2,1,1)
plot(x,y,'r:')
xlabel('x axis')
ylabel('y axis')
title('Figure of Example 1.14-a')
subplot(2,1,2)
plot(x,z,'b-')
xlabel('x axis')
ylabel('z axis')
title('Figure of Example 1.14-b') ⵧ

All the plotting that we did so far has been using the linear scale in both the
horizontal and vertical axes. Sometimes when the elements of an array can
change values by several decades over the range of interest, it is well advised
to use the different kinds of the log-plots. As the need arises we can, instead
of the plot command, use one of the following alternatives:

semilogy creates a semilog plot with logarithmic scale on the y-axis


semilogx creates a semilog plot with logarithmic scale on the x-axis
loglog creates a log–log graph

Homework Problem
Pb. 1.6 The arrays y and z are generated from the array of positive inte-
gers x  1:20, such that:
y  2x and z  51/x
Plot the array z as function of the array y. (You should be able to read off
the value of the coordinates of any point on the plot over the entire range
of the graph.)
7425_C001.qxd 9/2/06 12:03 PM Page 22

22 Elementary Mathematical and Computational Tools Using MATLAB®

1.7 Data Analysis


1.7.1 Manipulation of Data
The most convenient representation for data collected from experiments is in
the form of histograms. Typically, you collect data and want to sort it out in
different bins. But prior to getting to this point, let us review and introduce
some array-related commands that are useful in data manipulation.
Let {yn} be a data set. It can be represented in MATLAB by an array y.

length(y) gives the length of the array (i.e., the number of data points)
y(i) gives the value of the element of y in the ith position
y(i:j) gives a new array, consisting of all elements of y between and
including the locations i and j
find(y) computes a new array where the successive elements indicate
the positions where the components of the array y are nonzero
max(y) gives the value of the largest element in the array
min(y) gives the value of the smallest element in the array
sort(y) sorts the elements of y in ascending order and gives a new
array of the same size as y
sum(y) sums the elements of y. The answer is a scalar
mean(y) gives the mean value of the elements of y
std(y) computes the standard deviation of the elements of y

The definitions of the mean and of the standard deviation are, respectively,
given by

N
1
y
N
∑ y(i)
i1

N
( y(i)  y )2
 ∑
i1 ( N  1)

where N is the length of the array.

EXAMPLE 1.16

An old recorder at Bill’s backyard in Hamilton Heights in New York down-


loaded the following raw data for the temperature readings on July 25
between 12:01 p.m. and 1:00 p.m.:

T=[95 95.5 96 95.8 97 96.5 96 95 55 96 95 97 96 ...


96.5 96.2 125 96 95 95.5 96]
7425_C001.qxd 9/2/06 12:03 PM Page 23

Starting with MATLAB® and Exploring Its Graphics Capabilities 23

Bill sits to analyze the data. As a budding experimentalist, he knows that his
first duty is to assess the validity of his raw data.
1. He checks that there was a reading by the recorder at every 3 min
interval, he enters in his MATLAB program, to which the data were
downloaded:
>> length(T)
ans =
20
“OK,” he says, “the recorder was recording data at the prescribed
time intervals.”
2. Next, he wants to check for the validity of the data; he enters:
>> max(T)
ans =
125
>> min(T)
ans =
55
“Hm … even in New York the weather is not that crazy. Let me
check for the validity of the rest of the data,” he says.
>> format bank
>> z=sort(T)
z =
Columns 1 through 8
55.00 95.00 95.00 95.00 95.00 95.50 95.50 95.80
Columns 9 through 16
96.00 96.00 96.00 96.00 96.00 96.00 96.20 96.50
Columns 17 through 20
96.50 97.00 97.00 125.00
“Well, it seems that except for the smallest and largest values of the
array, the data temperature is within reasonable limits for a humid,
sunny day in July at noon. Obviously, the link to the recorder is
picking noise and it has to be checked by Jim, my buddy the fixer,
but…,” says Bill, “…can I still use any part of the data to record, in
my project book, an average temperature for that one hour period?”
3. Bill decides to reject as spurious the lowest and highest values of
his raw data; he enters:
>> TT=z(2:19);
4. Now he computes the mean and the standard deviation of his mas-
saged data:
>> meanTT=mean(TT)
meanTT =
95.89
7425_C001.qxd 9/2/06 12:03 PM Page 24

24 Elementary Mathematical and Computational Tools Using MATLAB®

>> stdTT=std(TT)
stdTT =
0.64

These are the values that Bill enters in his project’s logbook. ⵧ

Homework Problem
Pb. 1.7 Your assignment is to help Bill automate his task. Use the new
criterion that all raw data outside the interval

(T  T)  T  (T  T)

is rejected, and not included in the reported analysis.

1.7.2 Displaying Data


The data (i.e., the array) can be organized into a number of bins (nb) and
exhibited through the command:

[n,y]=hist(y,nb)

The array n in the output will be the number of elements in each of the bins.

EXAMPLE 1.17

The students’ numerical scores on a certain exam were as follows:

g=[65 73 87 45 91 55 85 74 55 94 62 85 72 77 81 63 ...
35 62 85 90 57 73 68 57 51 75 74 70 77 60 77 84 ...
73 52 73 63];

The instructor desires to compute the average grade and the standard devi-
ation of the class grades distribution. Furthermore, she desires to distribute
the grades into five bins and determine the number of students in each of the
respective bins. Help her write a program to achieve this task.

Solution: First enter the data for the grade as an array, then enter

>>averageg=mean(g)
stdg=std(g)
[n,g]=hist(g,5)

MATLAB will return:


averageg =
70.00
7425_C001.qxd 9/2/06 12:03 PM Page 25

Starting with MATLAB® and Exploring Its Graphics Capabilities 25

stdg =
13.75
n =
2.00 6.00 8.00 12.00 8.00
g =
40.90 52.70 64.50 76.30 88.10

The third line gives you the number of grades in each of the bins, and the last
line gives you the array of the values of the average grade in each of the bins.
Associated with n, we can associate a probability; thus

The probability of being in the third bin  n(3)/length(g),

where length(g) represents the total number of students who sat for the
exam.
If you were also requested to draw a bar chart or pie chart to display the
different number of grades in each of the different bins, you would enter

bar(n) or pie(n) ⵧ

1.7.3 Normal Distribution


In the previous example, we have seen an example of a distribution (i.e., the
distribution of grades in the different bins). When the sample is very large
and the number of bins is also very large, the distribution can be approxi-
mated by a continuous function. In many instances when the sample is ran-
dom, this distribution takes a special shape, called normal distribution.
In Chapter 10, we study the conditions that lead to this distribution. In this
section, we limit ourselves to introducing the basic MATLAB commands,
that, knowing that the distribution is normal, allow us to compute the prob-
ability for having the random variable value in the interval x1  x  x2.
The normal probability density function is given by the following expression:

1  ( x  mX )2 
f X ( x)  exp  
X 2  2 2X 

and the probability that the random variable to be in the interval x1  x  x2 is

1  x  mX   x  mX  
x2
FX ( x1  x  x2 )  ∫ fX ( x) dx   erf  2
2   2 X 
  erf  1 
 2 X  
x1

where erf is the error function, a standard MATLAB function, and mX and X
are, respectively, the mean and standard deviation of x.
7425_C001.qxd 9/2/06 12:03 PM Page 26

26 Elementary Mathematical and Computational Tools Using MATLAB®

EXAMPLE 1.18

A manufacturer produces resistors. It claims in its product specifications


sheet that a sampling of a very large number of its products gave a mean
value 99.5 for their 100 nominal resistors, with a standard deviation of
1.5 . A design engineer determined that the circuit that he is designing
required a 100 2 resistor. The question is: What is the probability that the
engineer will get a resistor from this manufacturer’s batch with a true value
within the error tolerance that he requires?
Solution: Enter and execute the following program:

>> meanr=99.5;
sigmar=1.5;
r=100;
rtol=2;
r2=r+rtol;
r1=r-rtol;
F=0.5*(erf((r2-meanr)/(sqrt(2)*sigmar))...
-erf((r1-meanr)/(sqrt(2)*sigmar)))

MATLAB gives:

F =
0.7936

i.e., the chances are 79.36% that the product will meet the engineer’s design
requirements. ⵧ

In many engineering simulations (i.e., mathematical model for a physical


system), one may desire to simulate the effects of noise. This is usually
achieved by using the built-in random number generators available in MAT-
LAB. The purpose of the next example is to acquaint you with the MATLAB
in-built normally distributed random array.

EXAMPLE 1.19

Find the mean and the standard deviation; obtain the histogram, with
20 bins, for an array whose 10,000 elements are chosen from the MATLAB
built-in normal distribution with zero mean and standard deviation 1.
Solution: Edit and execute the following script M-file:

y=randn(1,10000);
meany=mean(y)
stdy=std(y)
nb=20;
hist(y,nb)
7425_C001.qxd 9/2/06 12:03 PM Page 27

Starting with MATLAB® and Exploring Its Graphics Capabilities 27

You will notice that the results obtained for the mean and the standard devi-
ation vary slightly from the theoretical results. This is due to the finite num-
ber of elements chosen for the array and the intrinsic limit in the built-in
algorithm used for generating random numbers.
NOTE The MATLAB command for generating an N-element array of ran-
dom numbers distributed uniformly in the interval [0, 1] is rand(1,N). ⵧ

Homework Problem
Pb. 1.8 Return to Example 1.18, and determine what should be the sigma
of the manufacturer specifications so that the probability that the engineer
obtains the resistor he buys within the tolerance limits that he requires
99% of the times.

1.8 Parametric Equations


It will be helpful to the reader to review the sections of Appendix A pertain-
ing to lines, quadratic functions, and trigonometric functions before pro-
ceeding further in this section.

1.8.1 Definition
If instead of assuming a function as a relation between an independent vari-
able x and a dependent variable y, we assume both x and y as being depend-
ent functions of a third independent parameter t, then we say that we have
a parametric representation of the curve. This method of curve representa-
tion is described by (x(t), y(t)), where the parameter t varies over some finite
domain (tmin, tmax).
NOTE The process of parameterization is not unique, i.e., there may be more
than one way to generate the same curve from different functions x(t) and y(t).

EXAMPLE 1.20

The cosine and sine functions are defined respectively as the x-component
and the y-component of a point P on the trigonometric circle (the circle cen-
tered at the origin of the coordinates O and having radius 1). The angle is
that formed between the positive x-axis and the ray OP, measured in the
anticlockwise direction. Using this parameterization of the trigonometric cir-
cle, write a program to plot it.
Discovering Diverse Content Through
Random Scribd Documents
consists of a simple pulp-cavity in the centre of a body of dentine
permeated by calcigerous tubes, but with this peculiar modification,
that the dentine is traversed by vascular canals, radiating at definite
intervals from the pulp-cavity nearly to the periphery of the tooth, and
running parallel with the calcigerous tubes; thus constituting a softer
and coarser dentine than in the other reptiles, and resembling that
which characterizes the teeth of some of the herbivorous mammals.
[643] The crown of the tooth is covered with a layer of enamel, which
is thickest on the external surface: and the fang is invested with
cement. The structure here described is shown in Pl. VI.; fig. 4b, a
vertical, and fig. 4c, a transverse section of a tooth, seen by
transmitted light, with a high magnifying power. The calcigerous tubes
are 1/25000 an inch in diameter. Sections of the teeth of the Iguanodon
are beautiful objects under the microscope, for the medullary canals
are generally of a deep yellowish brown colour.
[640] Figured and described in the Phil. Trans. 1848, p. 188, pl.
xvi. xvii.
[641] Both specimens are fully described in Petrif. pp. 242, et
seq.
[642] Plates iv. and xvii. in the "Fossils of Tilgate Forest," contain
representations of upwards of thirty specimens of teeth in various
states of development and detrition.
[643] Tomes on the Microscopic Structure of the Tooth of the
Iguanodon, Petrif. pp. 239, 240. See also Owen’s Odontography, p.
249, and pl. lxxi.; and Cycl. Anat. Art. Teeth.
Lign. 223. Teeth of Iguanodon. Wealden. Tilgate Forest.
Fig. 1. Outer aspect of an upper tooth (in a reversed
— position), worn flat, and with the fang absorbed;
fig. 3, inner aspect of the same tooth.
a, a. Flat grinding surface, produced by
mastication when all the thickly enamelled
portion of the crown is worn away.
c. Cavity produced by the pressure of a new
tooth.
2. Lower tooth of a young animal, slightly worn:
— inner aspect.
4. Outer Surface of a lower tooth of an adult; and
— fig. 5, inner surface of the same.
a, a. The hard cutting edge of the oblique
surface worn by mastication.
c. Indentation produced by the pressure of a
successional tooth.
6.
Edge view of the serration on fig. 5; magnified.

The dentine is less vascular, and therefore hardest, on that side of
the crown which has the thicker coat of enamel; hence the tooth
wears away faster on one side than on the other, and an oblique
grinding surface, with a sharp edge of enamel, is maintained until the
crown is worn away. The internal structure of the teeth of the
Iguanodon is thus in perfect accordance with their external
configuration, and must have been admirably adapted, in every stage,
for the laceration and comminution of the tough vegetable substances
which, there is every reason to conclude, constituted the food of this
colossal oviparous quadruped.

Vertebra of the Iguanodon,[644] Lign. 206, p. 653; Lign. 224.—The


remains of the vertebral column of the Iguanodon, consisting generally
of broken and water-worn dorsal and caudal vertebræ, deprived of
their processes and reduced to the state of the specimens represented
Lign. 206, figs. 6 and 8, are so abundant in some of the Wealden
strata, that a short account of their characters may be useful. A
reference to Lign. 206, and its description, will render the following
remarks intelligible to the general reader. The vertebræ of the
Iguanodon are distinguishable from those of other reptiles which occur
in the same strata by the following peculiarities, which the figure of a
perfect specimen of a caudal vertebra (Lign. 206, fig. 3) will serve to
illustrate. The body, or centrum, is either flat or somewhat depressed
on both articular faces; its sides are nearly flat, or somewhat convex,
vertically (as in fig 3), and slightly concave lengthwise, or from front to
back: in some examples, the body is more contracted towards the
inferior surface, as in fig. 6; and in the vertebræ, near the middle of
the tail, the sides are compressed, so as to give an angular contour
and somewhat vertical elongation to the face, as in fig. 4; but in the
dorsal vertebræ, the articular faces are nearly circular, but somewhat
higher than wide. In the caudal vertebræ, the inferior angles of the
body are truncated (w, figs. 3, 4), and present an oblique, smooth
face, to articulate with the chevron bone (fig. 3, f). The annular part is
united to the body by suture (fig. 3, o), and anchylosed in the dorsal
vertebræ; and in these bones the neural arch is very high, and greatly
expanded, and its bases extend transversely inwards, and join each
other below the spinal canal, forming a ring, or bony channel, to
contain the spinal chord.[645] "The transverse processes are straight,
and very long in the vertebræ from the middle of the trunk, indicating
a considerable expanse of the abdominal cavity, adapted for the
lodgment of the capacious viscera of a herbivorous quadruped."
(Owen.) The spinous processes (Lign. 206, fig. 3, d) are large and of
great height in the anterior caudal vertebræ, Lign. 224; and here the
chevrons, or hæmapophyses (Lign. 224, b, and Lign. 206, fig. 2, and
fig. 3, f), are also of considerable length; the bases of the latter are
always united (Lign. 206, fig. 2, g), and often blended, so as to form
but one face for articulation with the truncated inferior angles of the
body of the vertebra:, leaving a vertically elongated channel for the
passage of the large blood-vessels of the tail. The external surface of
the vertebræ of the Iguanodon is more or less marked with fine
longitudinal striæ; those of the Megalosaurus have a smoother and
more polished surface.[646]
[644] A detailed account of the elements of the spinal column of
the Iguanodon, and remarks on various fossil vertebræ, the
relations of which with the Iguanodon have been considered
doubtful, will be found in Petrif. pp. 256-279.
[645] See also lithographs of dorsal and caudal vertebræ from
the Kentish Rag; Owen’s Monog. Cret. Rept. (Pal. Soc.) 1851.
[646] See Rep. Brit Assoc. 1841, pp. 125-133, where an
elaborate investigation of the vertebra: of the Iguanodon is given by
Professor Owen.
Lign. 224. Six Caudal Vertebra of the
Iguanodon. 1/14 nat. size.
Wealden. Tilgate Forest.
a, a. Spinous processes
(neurapophyses), from 13 to 151/2
inches in height.
b, b. Three displaced chevron bones
(hæmapophyses), imbedded in the
stone near their original position at the
junction of the bodies of the vertebræ.
c. Anterior articular face of a vertebra.

Bones of the Extremities. Ligns. 225 and 226.—The thigh-bone


(femur), both bones of the leg (tibia and fibula), and many of the
metatarsal and phalangeal bones have been discovered; the osteology
of the hinder extremity is, therefore, almost perfect. The thigh-bone
(Lign. 225; and Petrif. p. 292,) is of a very remarkable character,
having a closer resemblance to the femur of a huge mammalian, than
to that of a reptile.[647] Several perfect specimens have been
discovered, as well as the associated bones of the leg (Petrif. p. 293,
Lign. 62); but the first fragment that came under my notice, was the
middle portion of the shaft of a femur of enormous size, and of an
irregular quadrangular form; and so shapeless and unintelligible it then
appeared, that several years elapsed before its real nature was
determined. (Foss. Tilg. For. pl. xviii.)
[647] See Cuvier’s Ossem. Foss. vol. ii. p. 36.

An entire thigh-bone of an adult


Iguanodon, from the Weald clay in the west
of Sussex, measured three feet eight inches in
length.[648] end thirty-five inches in
circumference at the condyles; and I have a
femur of a very young animal, that is but five
inches long. The form of the thigh-bone is so
peculiar, that fragments may easily be
recognised. The head of the femur (Lign. 225,
f,) is hemispherical, and projects inwards;
there is no appearance of a ligamentum teres;
a flattened process or trochanter (Lign. 225,
a,) forms the external boundary of the neck of
the bone, from which it is separated by a
deep and narrow vertical fissure; the shaft is
of a sub-quadrangular shape, and a slightly
elevated ridge, produced by the union of two
broad, flat, longitudinal surfaces, extends
down the middle of the anterior face, and,
diverging towards the inner condyle, gradually
disappears. The bone terminates below in two
large condyles, separated in front and behind
by a deep, narrow cleft, or groove (Lign. 225,
e). Near the middle of the inner edge of the
shaft, there is a compressed ridge, with an
angular projection, or trochanter. Thus the
upper part of the femur maybe known by the
presence of the flattened, or laterally Lign. 225. Left Femur of the
compressed trochanter; and if that process be Iguanodon. 1/10 nat. size.
wanting, a fractured surface indicating its Anterior aspect.
position may be detected; the middle of the Wealden. Brook Bay, Isle
of Wight.
shaft is characterized by its broad angular a. Outer trochanter.
faces, and the inner submedian trochanter: b. Median trochanter.
c. Inner condyle.
the condyloid or inferior extremity of the bone d. Outer condyle.
may be distinguished by the deep groove e. Anterior infra-condyloid
between the condyles, both in front and fissure.
behind. f. Head of the femur.

[648] The average length of the adult


femur is estimated at about four feet five inches.

The arm-bone (humerus) of the Iguanodon has been discovered in


the Wealden of the Isle of Wight by Mr. Fowlstone; it is figured and
described in Petrif. p. 286. The humerus is also present in the
Maidstone specimen[649] of Iguanodon, before referred to at page
692: in pl. ii. of Wond. this bone is termed the radius. The humerus of
this reptile is much smaller than the femur; in the Maidstone specimen
the former is about 20 inches, and the latter about 33 inches in length.
[649] The two bones marked "6" in pl. ii. Wond. and in Lign. 65,
Petrif. (one of which is figured in outline in Lign. 226, fig. 4,)
regarded by Prof. Owen as the radius and ulna (the two bones of
the fore-arm): the author’s reasons for regarding these bones as
metacarpals are given in full at p. 289, Petrif.

As separate bones of the feet of the Iguanodon, for example,


metacarpals, metatarsals, phalangeals, and unguals, often occur in the
strata of the Wealden, figures of several specimens, on a reduced
scale, are introduced in Lign. 226, and may enable the student to
identify those he may meet with in his researches.[650] The ungual
phalanges, or claw-bones, which were invested with the nail, are
sometimes found of an enormous size; from a quarry near Horsham,
Mr. Holmes obtained specimens more than five inches long, and three
inches wide at the articular extremity.
[650] See Rep. Brit. Assoc. 1841, pp. 137-142.

Length of the Iguanodon.—The length of the united head and trunk,


according to my estimate in Geol. S. E. p. 316, is seventeen feet and a
half; by Professor Owen’s estimate it is reduced to fifteen feet;[651] a
difference of no importance in such merely approximative calculations,
particularly when the form of the cranium is unknown.[652]
[651] Ibid. p. 144.
[652] The more recently discovered specimen of lower-jaw,
already referred to, page 693, indicates a length of between three
and four feet for the entire jaw, Petrif. p. 249.

Lign. 226. Bones of the Feet and Claws of the Iguanodon.


Wealden. Tilgate Forest.
(See Wond. pl. in.)
Fig. 1.— Metatarsal: original 6 inches long: upper
surface.
2.— Metacarpal bone.
3.— Under surface of fig. 1.
4.— A phalangeal bone of the fore-foot: the original
14 inches long.
4a. A transverse section of the same, showing the
— medullary cavity.
5.— One of the second row of phalangeal bones of
the fore-foot.
6.— View from above of one of the claw-bones of
the hind-foot; 1/6 nat.
7.— Profile of claw-bone of fore-foot:[653] 1/6 nat.
8.— Metatarsal, or bone of the hind-foot: 1/8 nat.
a. Denotes the proximal articulation, or that
nearest the trunk.
b. The distal, or extremity most distant from
the trunk.
[653] This bone is conjecturally referred by Prof. Owen to the
Megalosaurus.

The estimated extent of the tail has been subject to variation. My


early estimate of its length gave rise to the idea of this reptile having
attained seventy feet in length. Professor Owen, however, considered
that the abbreviated character of the anterior caudal vertebræ
indicated a far less extent of tail, which the Professor estimated at
thirteen feet; this opinion, from the evidence then before us, seemed
well founded, but from evidence since afforded by a series of eleven
caudal vertebra, belonging to the middle region of the tail, that have
been lately discovered, (Petrif. p. 312,) it is not at all improbable, that,
instead of all the caudal vertebræ being abbreviated, these elements
of the tail were elongated as in the corresponding part of the skeleton
of the Iguana, and that the largest Iguanodons may have attained a
length of from sixty to seventy feet.
The author’s physiological inferences as to the structure and
economy of the Iguanodon, deduced from the study of the osseous
remains of this singular creature, especially the lately discovered
remains of the jaw-bones, are given in full at pp. 307-313 Petrif. or
Foss. Brit. Mus.: and at pp. 335-338, ibid. may be found some general
remarks on the physical geography and the nature of the fauna and
flora of the country inhabited by these stupendous reptiles, whose
remains are so characteristic of the Wealden rocks.
Jaw of the Regnosaurus. (Petrif. p. 333.)—A portion of the right
ramus, or side, of the lower jaw of this reptile was discovered in a
block of sandstone from Tilgate Forest. It consists of a fragment, six
inches long, of the dentary bones, with a small portion of the
opercular; and it contains the fangs of fifteen teeth, which are closely
and evenly set in a regular series, and imbedded laterally in grooves,
or sockets, in the dentary bone; there are three or four sockets of
successional teeth on the inner side of the bases of the old teeth.
(Phil. Trans. 1841, pl. v. figs. 1, 2.) Unfortunately, all the crowns of the
teeth are wanting. The outer parapet of the dentary piece is entire,
and its upper margin is finely crenated. All the fangs of the teeth are
exposed, but there are traces of a thin inner wall, indicating the
probability that, as in the Megalosaurus, the teeth were supported
medially by an osseous plate, and were implanted in distinct sockets.
[654] In my memoir on this fossil jaw in the Phil. Trans. (1841, p. 131),
I referred it to the genus Iguanodon; but subsequent observations
have led me to conclude that it is generically distinct; and in my
Memoir on the Jaw of the Iguanodon, in Phil. Trans. 1848 (p. 183), I
have proposed for the animal to which it belonged the distinct generic
appellation, Regnosaurus, with the specific name Northamptoni.
[654] The collector will perceive the importance that attaches to
the discovery of even a fragment of the jaw of an unknown reptile,
containing teeth in their natural position.

IV. Lacertian Reptiles.—The recent Lacertians, or true LACERTIAN REPTILE


Lizards, are smaller and less highly organized reptiles than the
Saurians of the Crocodilian order; and their dermal covering consists of
a finer and more delicate squamous integument. They are also
characterized by important modification in their osteological structure.
The spinal column is almost always composed of concavo-convex
vertebræ, with the convexity behind; the ribs are slender and rounded,
having a single convex tubercle of attachment. The fossil species are,
for the most part, of gigantic dimensions, and deviate in a striking
manner from any that now exist. Vertebræ of the recent lacertian type
are very rare in the secondary strata; I believe a few in my cabinet,
obtained from the sandstone of Tilgate Forest, and which belonged to
a very small unknown reptile, are the most ancient examples at
present known.
Lign. 227. Mosasaurus Hoffmanni.
(The original is feet by 21/2 feet.)
Remains of the jaws of the great fossil reptile of Maestricht.

Mosasaurus. Bd. pl. xx.; Wond. p. 311; Petrif. p. 193.—Of the fossil
lizard of Maestricht, named Mosasaurus (lizard of the Meuse) from the
river adjacent to the quarries of St. Peter’s Mountain, in which its
remains have been discovered, I have given a detailed account at
pages 193-196 of Petrif. A specimen, with the jaws, and bones of the
palate armed with teeth, now in the museum at Paris, has long been
celebrated, and is still the most precious relic of this extinct reptile
hitherto discovered; a reduced representation is given in Lign. 227;
and Pict. Atlas, pl. lxx. This is the Mosasaurus Hoffmanni.[655] The
specimen is four and a half feet long, and two and a half feet wide; it
consists of both sides of the lower jaw, with the right ramus of the
upper jaw in its natural position, and the left, which is displaced, lying
across the articular extremity of the left branch of the lower jaw: of
the pterygoid bones, which are armed with teeth; of the left tympanic
bone (os quadratum), which is but little removed from its natural
situation, and connects the lower jaw with the cranium; one of the
metacarpal or metatarsal bones, and some fragments.[656]
[655] Several fine portions of the jaws, and many vertebræ of
this animal, are in the British Museum: see Foss. Brit. Mus. p. 139.
In a splendid work, Histoire Naturelle de la Montagne de St. Pierre,
by the late Faujas St. Fond (1 vol. folio, with numerous plates),
there are admirable figures of the remains of the Mosasaurus.
[656] In the British Museum there is a cast of this specimen, in a
case near the bones of the Iguanodon.
[657] Reduced from figures accompanying Dr.
Gibbes’s Memoir "On the Mosasaurus and three
allied new genera," (with plates,) in the
Smithsonian Contributions, vol. ii. 1849. This
interesting paper comprises much information
regarding the Mosasaurians of the Cretaceous
deposits of N. America; but we cannot fully
coincide with the author in his palæontological
determinations.

The teeth are large, and supported on


expanded conical osseous eminences, which are
anchylosed to the alveolar ridge of the jaw
(acrodont). The crown of the tooth is conical
and recurved, with the outer face nearly flat,
and this space is bordered on each side by a Lign. 228. Mosasauroid
Teeth.[657]
longitudinal ridge; giving the tooth somewhat of 1
/2 nat. size.
a pyramidal figure. (See Ligns. 228-230.)
Professor Owen states that the crown consists Figs. 1a, 2a. Transverse
sections of the
of a body of simple and firm dentine, with fine crowns of the
and close-set calcigerous tubes, enclosing a teeth, figs. 1
simple pulp-cavity; irregular processes of the and 2
latter extend as medullary canals into the respectively.
conical base of the tooth, but not, as in the
Iguanodon, into the substance of the coronal
dentine; the dentine is invested with a moderately thick coat of
enamel.[658]
[658] See Odontography, p. 258, and pl. lxxii.; the student
should also consult Cyclop. Anat. Phys. Art. Teeth.

The vertebræ of the Mosasaur, as is usual in the existing lizards


and crocodiles, are concave in front and convex behind, and the neural
arch is united to the centrum by suture. The entire vertebral column of
M. Hoffmanni appears to have consisted of 131 vertebræ, of which 97
belonged to the tail.[659] This Mosasaur was about twenty-five feet
long.
[659] See Cuvier, Oss. Foss. vol. v. pp. 326-334.

Lign. 229. Tooth of Mosasaurus:


magn. twice.
Either a pterygoid tooth of M.
Hoffmanni, or a jaw-tooth of M.
gracilis.
Chalk. Gravesend.
(In Mr. Wetherell’s Collection.)

This extinct lacertian reptile forms an intermediate link between the


Saurians without pterygoid teeth (Monitors) and those with them
(Iguanas). Its crocodilian affinities are but partial.
The Mosasaurus appears to have had webbed feet, adapted or
crawling on land as well as for swimming,[660] and a long and
vertically expanded tail, serving as a powerful oar, and enabling the
animal to stem the roughest waters.
[660] See Prof. Owen’s observations on the bones that have
been regarded as referable to the extremities of this creature, and
especially on the phalangeal and other bones of the Mosasaur of
the New Jersey greensand; Monog. Cret. Rept. 1851, pp. 36-40.

Prof. Goldfuss has described the remains of another and smaller


species of Mosasaurus (M. Maximiliani), from Upper Missouri, U.S.; and
Prof. Owen, in Dixon's "Fossils of Sussex," has established a third and
still smaller species (M. gracilis),[661] to which he refers the four or five
mosasaurian vertebræ found in the Chalk of Sussex. Two of these
(caudal) are figured in Geol. S. E. p. 146, and Petrif. Lign. 44; and
these and others are lithographed in plate viii. of Prof. Owen’s Monog.
Cret. Reptilia, 1851.
[661] See also Monograph on the Reptiles of the Chalk, 1851, p.
31, and plate ix.

The remains of Mosasaurus occur also in the cretaceous sands of


New Jersey, U. S. (See Dr. Morton’s Synopsis of the Organic Remains of
the United States, 1834; and the Quart. Journ. of the Geological
Society, vol. v. 1849.)

Leiodon anceps.[662]—Under this name Professor Owen has described


a splendid fossil, consisting of a portion of the lower jaw of an
acrodont reptile, with teeth, obtained by Edward Charlesworth, Esq.
from the Chalk north of the Thames. This specimen was submitted to
my inspection, many years since, by Mr. Charlesworth, and I then
pointed out the analogy of this acrodont jaw to that of the
Mosasaurus.
[662] Ibid. p. 42, pl. ix. A.

Prof. Owen in 1840 (Odontog. p. 261), and in 1841 (Rep. Brit.


Assoc. p. 144), described and figured some teeth from the same
specimen, which were lent by Mr. Charlesworth. These teeth the
Hunterian Professor regarded as characteristic of a new genus of
Mosasauroid reptile, to which he gave the name Leiodon (in allusion to
the smoothness of the teeth). In 1845 (Rep. Brit. Assoc. p. 60) Mr.
Charlesworth noticed, and in 1846 (London Geol. Journal, p. 23, plates
iv. and vi.) figured and described, the above mentioned portion of jaw
with teeth, under the name Mosasaurus stenodon; and in 1851 Prof.
Owen figured and described this specimen under the name of Leiodon
anceps, which was originally proposed for the animal, as known from
its teeth, in 1840.
The portion of bone on which the teeth, five in number are
implanted is seven inches in length, and is, in Professor Owen s
opinion, the dentary piece of the lower jaw, and not a portion of a
pterygoid bone. Mr. Charlesworth has had a section made of four of
the teeth, and finds that the pulp-cavities are more or less occupied
with solid cones of silex, which must have permeated the osseous
parietes of the teeth.

Lign. 230. Mosasauroid Tooth.


Resembling the back-teeth in the lower
jaw of Mosasaurus Hoffmanni.
Chalk. Gravesend.
(In the Collection of Mr. Wetherell.)

The teeth of Leiodon have a simple pulp-cavity, surrounded by fine


dentine, with an external layer of smooth enamel. The apex of the
crown is sharp-pointed; the body of the crown is slightly recurved; its
base is expanded into a thick circular fang, which is anchylosed to a
short conical process of the alveolar border of the jaw: the teeth differ
from those of the Mosasaurus in having the outer side as convex as
the inner side, the transverse section being an ellipse with pointed
ends, which latter correspond with the lateral trenchant edges of the
crown of the tooth: the teeth are more closely set than in the
Mosasaur and Geosaur. (Owen.)
Geosaurus Sœmmeringii. Petrif. p. 175.—In the British Museum are the
remains of a reptile from the "white Jura" (upper oolite) of Monheim,
in Franconia, which Cuvier describes as being more nearly related to
the Lizards than Crocodiles. The length of this reptile is estimated at
about ten feet. The eyes had a circle of osseous plates in the
sclerotica, like those of the Ichthyosaurus; the teeth resemble those of
the Mosasaurus in being sub-compressed and recurved, but they are
at once distinguished by their anterior and posterior finely serrated
sharp edges; the crown is invested with an external coat of enamel.
[663]

[663] Oss. Foss. tom. v. p. 343.

Raphiosaurus subulidens.—A portion of a lower jaw, containing


twenty-two closely set, subulate teeth, anchylosed by their bases to a
shallow alveolar groove and an outer alveolar parapet of bone, as in
the Iguana, thus corresponding with the pleurodont Lizards, is
described under this name by Professor Owen, (Geol. Trans. 2d ser.
vol. vi. pl. xxxix.); and Monog. Cret. Rept. (Pal. Soc.) 1851, p. 19, pl. x.
figs. 5, 6. It is from the Lower Chalk, near Cambridge, and is in the
collection of James Carter, Esq. of that place. Remains of Raphiosaurus
have been found also in the Chalk at Northfleet, Kent.
Dolichosaurus longicollis.—In the Chalk of Kent was found, some
years since, a considerable portion of the skeleton of a lacertian
reptile, consisting of the posterior half of the spinal column, with
remains of the pelvic and thigh bones; it was figured in the Geol.
Trans. 2d ser. vol. vi. pl. xxxix.; and is now in the collection of Sir P. G.
Egerton. From the researches of the late Mr. Dixon, it appears that a
mutilated reptilian head and anterior portion of a spinal column, with
fore-arm and scapular bones, now in the collection of Mr. Smith, of
Tunbridge Wells, belong to the same skeleton as the vertebral remains
above mentioned. Both specimens were obtained at the same time
from the well-known chalk-pit at Burham, Kent. Professor Owen has
lately described these interesting remains in detail (Monog. Cret. Rept.
1851, pp. 22, &c.), and finds no intrinsic contradiction to exist to the
historical evidence adduced as to the probability of the two moieties
having belonged to the same individual. In the two specimens there
exist sixty-three concavo-convex (procœlian) vertebræ, of which fifty-
seven form the series between the skull and the pelvis, giving the
trunk a length of about eighteen inches. This unique reptile was
elongate and snake-like in its form, with the abdomen deep and
narrow, like that of the water-snakes: its limbs were short; its tail,
from the character of the few caudal vertebræ remaining, must have
been relatively long and powerful. This long and slender lacertian was
therefore probably to a considerable degree aquatic in its habits,
swimming with an undulatory eel-like movement.
The Dolichosaurus (long-lizard) presents somewhat of the ophidian
character in the number and size of its cervical vertebræ, in the size
and shape of its ribs, and in the slender proportions of its trunk and
head; but, with these partial exceptions, its affinities are truly
lacertian. (Owen.)
Rhynchosaurus articeps. Lign. 231.—In a quarry of Upper New Red
Sandstone at Grinsell, near Shrewsbury, Dr. O. Ward discovered a skull
(31/2 inches long), vertebræ, ribs, bones of the pectoral and pelvic
arches, portions of two femora with medullary cavities, and fragments
of other bones of a very remarkable lacertian reptile (Lign. 231). The
lower jaw is preserved with the skull in its natural position. The
cranium in its general aspect resembles that of a turtle, rather than of
a lizard; for the intermaxillary bones are double, as in Chelonians, and
symmetrical, and are not united by a median process; they are very
long, and curve downwards, giving the fore part of the skull the profile
of a parrot. See Lign. 231.

Lign. 231. Rhynchosaurus articeps. New Red Sandstone;


near Shrewsbury
Fig. 1.—Lateral view of the cranium and lower jaw:
1
/2 nat size.
Cranium. Lower Jaw.
a, m. Dentary.
Intermaxillary bones.
a. n. Coronoid.
b. Nasal. o. Articular.
c. Frontal. p. Angular.
d. Maxillary. Opercular or
q.
e. Anterior frontal. splenial.
f. Lachrymal. r. The orbit.
g. Malar.
h. Posterior frontal.
Orbital division of posterior
i.
frontal.
k. Temporal.
l. Tympanic.
Fig. 2.—The upper aspect of a dorsal vertebra:
nat. size.

There are no teeth apparent in either jaw: the margin of the upper
maxillary has feeble dentations, but in the lower jaw even these
indications are wanting, and it is probable that this reptile had its jaws
encased by a bony or horny sheath, as in birds and turtles.[664]
(Owen.)
[664] Rep. Brit. Assoc. 1841, p. 150. See also Camb. Phil. Trans,
vol. vii. p. 357, tab. 5, 6.

Thecodontosaurus and Palæosaurus. Ly. p. 306, figs. 348, 349.—


Numerous bones and teeth of reptiles occur in the Magnesian
Conglomerate, near Bristol, and have been described by Dr. Riley and
Mr. Stutchbury in an interesting memoir to which reference should be
made for details (Geol. Trans. 2d ser. vol. v. p. 349, pl. xxix. xxx.). The
bones denote an approach to the lizards; the teeth are implanted in
sockets; these reptiles, therefore, belonged to the group termed
thecodont, and the name Thecodontosaurus, given to these extinct
Saurians by Dr. Riley, has reference to this character. The teeth are
pointed, compressed laterally, slightly convex on each side, with a
trenchant, finely serrated edge in front and behind; the fang is sub-
cylindrical. Other teeth from the same deposit, possessing the same
general characters, but distinguished by peculiarities of form, have
been referred to another genus, named Palæosaurus. The vertebræ
found associated with the teeth and jaws are biconcave, and are
remarkably characterized by the great depth of the spinal canal in the
middle of the centrum or body of the vertebræ, so that the spinal
chord must have presented a moniliform or bead-like appearance.
These reptiles, in their thecodont type of dentition, biconcave
vertebræ, double-headed ribs, and proportionate size of the bones of
the extremities, are nearly allied to the Teleosaurus, (see ante, p.
679); but they combine a lacertian form of tooth, and a lacertian
structure of the pectoral, and probably of the pelvic arches, with these
crocodilian characters; they have also distinctive modifications: such,
for example, as the moniliform spinal chord.[665]
[665] Owen; Rep. Brit. Assoc. 1841, p. 155, &c.

Dicynodon. Ligns. 232, 233, 234.—This singular fossil reptile was


discovered, by Mr. Bain, in South Africa. It is distinguished, by some
remarkable peculiarities of structure, from other animals of the Saurian
order; of which it represents a new tribe, or sub-order. The cranium is
narrow; the nostrils are divided, as in Lizards, and not confluent, as in
Chelonia; the skull, in other respects, much resembles in general
appearance that of a Turtle; the orbits are large; the jaws are
edentulous, as in the Turtles, with the exception of a pair of long
tusks,[666] implanted in sockets in the upper maxillary bone, like those
of the Walrus; these tusks are of a finer texture than that of the
Crocodile’s teeth, and almost as dense as in the Hyæna. These
creatures present in the most striking manner that blending of the
peculiarities of several existing orders, which is continually presented
to the palæontologist; for with a type essentially lacertian are
combined crocodilian and chelonian modifications. Although no
vestiges of these reptiles have been discovered in England or in
Europe, yet the occurrence of an allied form, the Rhynchosaurus (Lign.
231), in our New Red Sandstone, and the probability that the South
African reptiliferous deposits may, from their position, belong to the
Triassic Epoch, induce me to give a somewhat extended notice of
these extraordinary fossils: and I am led to do so on another account,
namely, because the memoir,[667] of which the following is a brief
abstract, is so excellent an example of the manner in which such
investigations should be conducted, so as to arrive at any satisfactory
conclusions as to the characters and relations of the lost types of
beings, whose fragmentary and petrified relics are the only vestiges
that remain.
[666] Hence the generic name, Dicynodon: from δις (twice), and
κυνὁδονς (canine tooth).
[667] Prof. Owen’s Memoir on the Dicynodon, Geol. Trans. 2d
ser. vol. vii. pp. 59, et seq.; and plates iii. to vi.

The fossils under consideration were exhumed some years since by


Mr. Andrew Geddes Bain, from the intensely hard argillo-calcareous
nodules of the sandstone strata which range over an immense tract of
country beyond the mountains north of Capetown,[668] The extensive
series of these and other fossils from South Africa, collected by the
indefatigable labour of Mr. Bain, have lately been deposited in the
British Museum; but the specimens described and figured in Prof.
Owen’s Memoir, above alluded to, are nearly all that have as yet been
successfully worked out from the exceedingly hard matrix in which the
bones are imbedded. These consist of crania and jaws, referable to
four species.[669]
[668] For a notice of the geological structure of this region, see
Mr. Bain’s paper in Geol. Trans. 2d ser. vol. vii. pp. 53, &c.; and the
abstract of a later Memoir by Mr. Bain, in the Literary Gazette, Dec.
18, 1852 (No. 1874).
[669] Namely, Dicynodon lacerticeps (lizard-head), D.
testudiceps (turtle-bead), and D. strigiceps (owl-head), the trivial
names of which have reference to the general form of the head;
and D. Bainii, the largest, but unfortunately as yet the least known
species, which takes the name of the intelligent and energetic
discoverer and collector of the whole.

Lign. 232. Lign. 233.


Lign. 232 and Lign. 233. Dicynodon lacerticeps. (Owen.)
South Africa.
(See Geol. Trans. 2d ser. vol. vii. pl. iii.)
The letters of reference correspond in the two figures.

Lign. 232. Side view of the Cranium and Lower Jaw: 1/3 nat. size.
Lign. 233. Upper aspect of the Cranium: 1/3 nat. size.

Cranium and Upper Jaw. Lower Jaw.

a, a. Intermaxillary bone. 1. Dentary bone.


b, b. Nasal. 2. Coronoid.
c, c. Frontal. 3. Opercular.
d, d. Maxillary. 4. Angular.
e, e. Prefrontal. 5. Articular.
f, f. Lachrymal. 6. Surangular.
g, g. Malar.
h, h. Post-frontal.
i, i. Parietal.
k, k. Temporal.
l, l. Tympanic.
m, m. Mastoid.
n, n. Nasal apertures.
o, o. Orbits.
oc, oc. Basi-occipital.
t, t. Temporal fossæ.
Welcome to Our Bookstore - The Ultimate Destination for Book Lovers
Are you passionate about books and eager to explore new worlds of
knowledge? At our website, we offer a vast collection of books that
cater to every interest and age group. From classic literature to
specialized publications, self-help books, and children’s stories, we
have it all! Each book is a gateway to new adventures, helping you
expand your knowledge and nourish your soul
Experience Convenient and Enjoyable Book Shopping Our website is more
than just an online bookstore—it’s a bridge connecting readers to the
timeless values of culture and wisdom. With a sleek and user-friendly
interface and a smart search system, you can find your favorite books
quickly and easily. Enjoy special promotions, fast home delivery, and
a seamless shopping experience that saves you time and enhances your
love for reading.
Let us accompany you on the journey of exploring knowledge and
personal growth!

ebookgate.com

You might also like