A Pragmatic* Introduction to Signal
Processing
with applications in scientific measurement
An illustrated essay with free software and spreadsheet
templates to download
Last updated July 23, 2022.
A retirement project created
and maintained by
Tom O'Haver ,
Professor Emeritus, Department of Chemistry
and Biochemistry

Have a question or suggestion? E-mail me: toh@umd.edu.
Join our group on Facebook
No cost, no ads, no
sign-in/registration, no eye candy, no cookies,
no hype, no Java, no Flash, no kidding. Completely free since
1993.
This
essay is also available as a 518-page
printable document written in Microsoft Word and
saved in
Word
and PDF
formats. Readability index
The Kindle and paperback versions, ISBN
9798794182446 by Kindle Direct
Publishing, are available from Amazon.
This entire web site can be downloaded in
archived HTML format complete with
all linked software (~400
MBytes).
Check out
the amazing feedback from users
* Pragmatic: Relating to matters of fact or practical affairs,
often to the exclusion of intellectual or artistic matters;
practical as opposed to idealistic.

Software used in this essay
Matlab, a
high-performance commercial numerical computing environment and
programming language that is widely used in research and
education. For Windows, Macintosh, and Linux. Lower-cost
Home and Student versions available.
Octave, a freely
downloadable alternative to Matlab, mostly compatible. For
Windows, Macintosh, and Linux.
Python,
a fast and free general purpose language for Windows, Unix, and
Macintosh.
Microsoft Excel 2013
OpenOffice Calc 4.1.1
Acknowledgements
Thanks to M. Farooq Wahab for his many
contributions and for many fruitful discussions, to
Baldassarre Cesarano for his close reading and typographical
correction of this text, to Dr. Raphael Attie of NASA/Goddard
Space Flight Center for corrections, to Diederick of The
University of Hong Kong for code contributions, to Yuri
Kalambet of Ampersand, Ltd., and to the many email
correspondents who have made suggestions, asked questions,
caught errors, and have shown me new types of data and new
applications that have broadened the scope of this work.

Unsolicited Comments from Users
(verbatim excerpts from emails):
"... It's by far the best
document I've found about signal processing online."
" It is the best source in the
entire internet ... on peak related techniques and
analysis. "
"...the most understandable documentation
I've ever encountered!"
"It is as good as, if not better than, any similar books available
in the market".
"...a clear, organized,
accessible, and intuitive resource...."
"I ... have never seen before (I have years of
experience in this field) such a complete
approach towards tackling almost all the analysis
problems from scratch...."
"...the most extensive set of
tools I've ever found for curve fitting and signal
processing!"
"I'm amazed by the
thoroughness of not just the explanations, but also the
codes and documentation within."
"It's simply phenomenal!
"
"I appreciate the fact that your approach is
'applied' and does not resort to complex
mathematics where not needed"
"...your website resource was able to teach me everything I needed to know in a
really practical and easy to understand way within a few days
and apply it to my ... work (which is incredible!!).
"
"I found your tutorials and explanations among the easiest to understand in this complex
field"
"...a goldmine."
"...wonderful and
user-friendly...."
"...your work was a godsend."
"... surely the way into
heaven is to post excellent software online
for others to use to do science."
"I am a great admirer of your excellent work. Your unparalleled contribution to signal
processing helped me to understand the nuances of signal
processing."
"Without your help ...we'd still be slogging through
the data...."
"...many thanks for sharing your brilliant book on the web. I have found
it of tremendous value...."
"it inspires me to make my
own contribution to science and education."
"I wanted to extend my gratitude for the quality of
the guidance and education you provide. I am a professional
analytical chemist, and your site has
kept me well versed and knowledgeable...."
"I ... am very impressed with
the clarity of the presentation."
"I like your writing style because it's clear and concise, and your prose flows
so smoothly."
"The signal processing topics you cover are so wonderfully practical...truly impressive."
"... truly one of best
practical description I have ever seen."
"...thank you for this valuable
treasure."
"Thank you very much for making such an extensive
collection of most valuable material
available to the public !!! Your service to the public (that
part that recognizes its value) is highly appreciated."
"...brilliant work...."
" ...thank you for your amazing
online book...."
"I liked the way everything is setup and
explained."
"...I think it's the best
explanation I've ever seen."
"...thank you for the immense
role your book has played in my perusal of
research...."
"...really incredible work!"
"... a really excellent website...."
"It is a great overview"
"...a very valuable service
to our profession!"
"...an extraordinary labor
of love and a gift to many, many people!"
"...I'm astonished by
your work."
"I have learned a LOT"
"This is...a teaching paradise...really
priceless."
"What you
do makes the world better!"
"...way, way more than I could
have hoped for..."
"...fabulous work ...
clear explanations....I will definitely recommend your website!"
"Your website has been immensely
helpful in allowing us to analyze [our] results."
"I found your explanation....very simple and clear. "
"...high
quality information, explanations and codes!"
"...excellent documentation
and coding...."
"I was really surprised by the efficiency of your
explanations ..."highly realistic and
pragmatic."
"The sequence of the topics and the explanations are
very clear."
"I found your curve fitting website and it is awesome...."
"...such an enormous amount of knowledge and applied
code! It is an enormous help for
analysing my data."
"...an excellent source of
information for a subject that I have only encountered
scattered books."
"Love your web
pages.... MANY thanks for all the effort, hard work and time --
not to mention the clarity."
"This site is tremendous...."
"...[an] indispensable tool...."
"...your fantastic article...has
helped me a lot"
"...it is an absolutely
fantastic teaching resource."
"...your website...represents a wonderful job...."
"...thank you profusely .... your website has been extremely helpful."
"...after days of trying and failing...your site was able to solve my problem in half an hour."
"I have no words to describe how helpful this is to
me ... explaining what they do and how they can be used; on top
the examples make it even better."
"...great website!"
"...thank you for taking the time to create these incredible tools."
"I am grateful and overwhelmed
by your kindness in sharing your hard work with us"
"I am really impressed with
the extensive package you have put together - I am finding it very helpful.
"This is a great website..."
"...really an excellent source
of information..."
"...you saved my time
a lot."
"Your effort to produce and maintain this site is GREATLY appreciated."
"Your online resource for "signal processing" is fantastic!"
"I stumbled upon the wonderful
world you've created in the area of Signal
Processing..."
" I found your essay to be extremely
helpful."
"...such useful tools
and educational materials!"
"...your webpage about signal processing ... was very helpful to me."
"...great material on
the subject."
"...very much helping and
informative."
"Wonderful site. I
have already added it to my favorites."
"Your web
pages are a fantastic resource."
"...your signal processing website, book, and Matlab
codes ... embodied the solution I was
searching for."
" I cannot wait to start class and utilize the marvelous tool that you have provided
for us."
"Without your website, I wouldn't know what to do."
" ... a splendid program."
"I find your work on Signal Processing extremely helpful...."
"...easy to use and understand..."
"...thank you for this amazing
work."
"...saved me many hours
of work...."
"...your ... book and software ... [are] ... helpful and thorough."
"I am so thankful for
your website...It has helped me
significantly...."
"Thank you so much for this wonderful
teaching tool! "
"it really helped me."
"...the tutorials on your website
have been of tremendous help to
me."
"I find your Introduction an excellent
starting point."
"Thanks for your amazing contribution."
"Thank you for sharing your excellent work...."
"...wonderful
tutorial on peak fitting."
"I recently found
your website and I'm really impressed, great
work! "
"Thank you for your time and the
wonderful material (software
and text) you have put up on your website."
"Your lessons on signal
processing are really useful and
intriguing...."
"I have no words to describe how excited I am and how thankful I am
about your work."
"I found your ... website extremely helpful."
"I found your signal processing
pages ... very helpful!"
"I loved
your article on smoothing."
"...really clear and
concise."
" ... very useful for
teaching in an Instrumentation course for M.Sc postgraduates
in analytical chemistry.
"[Y]our web site has such excellent
content...."
"I tried the demo version of SPECTRUM and I think is a very useful tool for the introduction
of signal processing to analytical chemistry students."
"Your work is very helpful
to my research."
"Your contributions about sig. proc. are very impressive."
"...your site...has some very
valuable information relevant to the projects I'm
currently working on."
"...really nice tutorial and Matlab functions that
are extremely useful in many
fields of research."
"Very generous of you to make so
much useful material freely available."
"I found your website very
informative."

"Thanks again for your generous contributions to the
scientific and engineering community....your work is greatly
appreciated and will continue to benefit us for years to
come." MathWorks, Inc.
Copyright (c) 2022,
Thomas C. O'Haver (toh@umd.edu)
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use, copy,
modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
First edition created in
1995. Last updated July, 2022. Created with SeaMonkey.
This site is a retirement
project and international community
service, created and maintained by Prof. Tom O'Haver,
Professor Emeritus,
Department of Chemistry and
Biochemistry, The University of Maryland at College
Park, currently residing in Naples, FL. Comments, suggestions
and questions should be directed to Prof. O'Haver at toh@umd.edu,
currently residing in Naples, FL, and in Silver Spring, MD.