# A First Course in Electrical and Computer Engineering

Louis Scharf, Colorado State University

Copyright Year: 2009

Publisher: OpenStax CNX

Language: English

## Formats Available

## Conditions of Use

Attribution

CC BY

## Reviews

This text covers all fundamental areas and ideas of the subject about an introduction ECE course. It starts from math and ends with applications which will help students to build solid background and draw great interests on the topics. The MATLAB... read more

This text covers all fundamental areas and ideas of the subject about an introduction ECE course. It starts from math and ends with applications which will help students to build solid background and draw great interests on the topics. The MATLAB based examples are given throughout the text which is very helpful.

I am using the PDF version, most of the book contents are accurately presented, except some typos and printing errors such Eqs 2.54 3.25, 4.14, and "1/2" instead of "l/2".

The content is fundamental that I do not think it will quickly make the text obsolete within a short period of time. I think the contents and sample codes in Chapter 8, the introduction to MATLAB, may need to be updated corresponding to the newest version of MATLAB.

The written is clear and easy to follow. The content, especially some derivations, are step by step with details which I believe will be very helpful for students to understand the topics and materials as taking it for their first year intro level course on ECE.

The terminology and framework are consistent, I can find the inter connection between the first four chapters, and when I go over Chapters 5 and 6, some equations and discussions refresh me go back to check the first 4 chapters, so that I think the book is consistent in terminology and framework.

The text is readily divisible into smaller reading sections that can be assigned at different points within the course, it will be easy to extract specific sub-sections for further discussion and extension in the class.

I do like to flow and logic in the text that the first 4 Chapters are fundamentals and Chapters 5 - 7 are more application oriented which apply the topics from Chapters 1-4.

I do not have any trouble on navigation, but it will be better to update some figures which seems with pretty old version and design.

The text contains are free of grammatical errors.

This text is focused on math, science and engineering, and there is no points or intents on culturally insensitive or offensive to any races, ethnicity or backgrounds.

This is a very good source for students / beginners who are interested in Electrical computer and Engineering. Chapter 8 and 9 may be combined into one chapter. Maybe some practical excises on filtering in Chapter 6, such as MATLAB based average / median filter design for basic imaging processing will be helpful for students to understand the concept.

This book provides a good and effective introduction to electrical and computer engineering (ECE). With this book, students can be well prepared to grow into an electrical and computer engineer: 1) have a mathematics foundation including complex... read more

This book provides a good and effective introduction to electrical and computer engineering (ECE). With this book, students can be well prepared to grow into an electrical and computer engineer: 1) have a mathematics foundation including complex numbers, phasors, and linear algebra which are the fundamental important but also challenge for our students; build up the mathematical thinking skills; 2) master a "practical and efficient calculation" tool: MATLAB which is powerful and useful in engineering problem modeling, calculation, and visualization; 3) have a basic but comprehensive understanding of ECE subjects through some interesting advanced topics such as vector graphics, filtering, and coding.

I could only find the black and white version of this book by reading the book online and downloading the PDF file. Some graphs without legends will be confused. Except for this, the book content seems accurate, error-free, and unbiased for me.

The content is basic and fundamental and will not quickly make the text obsolete. Only fundamental concepts of MATLAB are introduced in this book which will not be changed often too. Some MATLAB related figures are old. With the provided code, the updates should be relatively easy to implement.

The text is written clearly and easy to understand.

Except for the notation of exponential functions in chapter 2, this book is consistent in terms of terminology and framework.

The text is written in a logical and easily modularized fashion. As the author notes, chapter 1-3 could be materials for 16-18 lectures, 3 lectures, 1 lab per week; chapter 4 for 8-10 lectures advanced topics in chapters 5 to 7 for 12-16 lectures. Moreover, with the advanced topics marked by asterisks, this book could also be used for a 2-semester course.

The organization and flow of the content are logical and clear. I like the structure, step by step, well connected, from needed foundations into the deep end of engineering problems, allow students to explore and also inspire their interests. Chapters 5 to 7 are advanced topics that, in my view, are chosen carefully based on the author's specialty. The teachers are encouraged to adapt and supplement chapters 5 to 7 with their own topics.

As previously noted, some figures related to MATLAB need to be updated and more clear for the white and black version. No more significant interface issue.

The book is well-written and appears to contain no major grammatical errors

There is no cultural issue.

Like the title, this book can be used as a textbook for ECE intro/preparatory courses. Through the advanced topics of each chapter, it can also be used for 2-semester courses. Some universities may not be able to provide introductory courses for ECE. This book will be an important supplementary textbook for the circuit course or signal processing course, used for the required mathematical foundation and MATLAB mathematical modeling, calculation, and visualization.

The book covers some of the essential areas that are need to be included in a first introduction ECE course, such as complex numbers, phasors or linear algebra. However I rather prefer to see included topics such as: Electrical Quantities, Circuit... read more

The book covers some of the essential areas that are need to be included in a first introduction ECE course, such as complex numbers, phasors or linear algebra. However I rather prefer to see included topics such as: Electrical Quantities, Circuit Principles, Signal Processing Circuits or Error Analysis of Experimental Data, rather than Binary Codes or Vector Graphics. Including MATLAB and a lot of exercises and problems in the book is very convenient and helpful for students. Notice also that chapter 9 has no relevance in the economy of this textbook.

Most of the book contents are accurately presented, except some figures and diagrams. The figures use different colors for the plots but the print copy is losing the clarity if without a color printer.

Content is basic and fundamental and is likely not become obsolete in short run. The only area of the book where obsolescence may eventually appear is because MATLAB is used, and that program may eventually be superseded and replaced with a Computer Algebra Systems.

Clearly written and arranged in a well-organized structure, being easy to be understand by the students.

The book is consistent in terms of terminology, presentation and framework with the exceptions of chapter 2, which is not using standard notations

This book is easily modularized so parts or sections of the book can be extracted as separate study materials, a distinct advantage of this textbook. Each such module can be assigned at different points within a course.

Very well organized textbook, topics are well connected and the material flows from one chapter to the next easily, in a logical segues. However, some issues maybe with chapter 5 to 7

The book's interface is fine and free of significant interface issues. However, some figures, containing multiple plots need to be redraw to be more convenient and less confusing for users without a color printer.

The book contains no obvious and significant grammatical errors.

The text is strictly technical, is not culturally insensitive or offensive in any way. None of the included examples are offensive in any way.

I was impressed with the presentations of the material and the connectivity between the chapters, especially first four book chapters, covering areas needed in many other ECE courses. It is a very useful text for an introductory or preparatory course for electrical and computer engineering. However, chapter 9 is very short is not strictly needed. It can either be inserted into Chapter 8 as a section, or moved to appendix. Materials of Chapter 10 are useful but are more appropriate to the appendix section.

The book covers all the essential areas that need to be included in a first introduction ECE course. Including Matlab is a great PLUS. Besides, a lot of example problems in the book are given as test-runs in Matlab, which are very convenient and... read more

The book covers all the essential areas that need to be included in a first introduction ECE course. Including Matlab is a great PLUS. Besides, a lot of example problems in the book are given as test-runs in Matlab, which are very convenient and helpful for students.

As I read though the book, most contents have been accurately presented, except some figures with multiple plots, e.g. Fig. 2.4 and 2.5. The figures use different colors for the plots but the print copy will loose the clarity if without a color printer. It is suggested that using different "dash types" or "line width" to depict multiple curves in a figure.

This will be a good introductory textbook that can be used for years.

Very clearly written and arranged in a well-organized structure.

The terminology of exponential functions in Chap 2 should be formulated consistently. Otherwise the book is consistent in termes of terminology and framework.

The text is easily and readily divisible into smaller reading sections that can be assigned at different points within the course .

Very well organized.

The text is free of significant interface issues. Just some figures, which contain multiple plots, if could be redraw with different dash types, line width, or legends, will be more convenient and less confusing for users without a color printer.

The book contains no obvious grammatical errors.

The text is not culturally insensitive or offensive in any way.

Chap 9 is very short and also seems to be not very necessary. It can either be inserted into Chap 8 as a section, or just moved to appendix. Chap 10 is very useful but also be moved to appendix.

The book actually does a great job of collecting and presenting those areas that are known to be problematic for first introductory courses in electrical and computer engineering. In fact, we have been working on an introductory course and the EE... read more

The book actually does a great job of collecting and presenting those areas that are known to be problematic for first introductory courses in electrical and computer engineering. In fact, we have been working on an introductory course and the EE department has been listing those areas that should be reviewed, provided, and studied prior to the entry into the major EE courses. This book clearly "hit the nail on the head" in terms of the topics covered.

During my review I found the content to be excellent and accurate. While I thought some areas may have had issues, a closer review of the assumptions made rendered the results to be accurate and correct.

Content is so basic and fundamental that the text will likely not become obsolete any time soon. The only area of the book where obsolescence may eventually appear is because MatLab is used, and that program may eventually be superseded.

I found the book writing to be easy to understand and clear. Of course, being an Electrical Engineering professor myself, it was easy to interpret as I read the content. I do however believe this would be a good text to help students in an introductory course where if read, would allow easy understanding of the content.

I found the terminology throughout the book to be consistent. I would have preferred to see ej? (with j? superscripted) used instead of e^j?. Most equations are written as the first form but much text is written as e^j?. There are other similar examples as well. Minor point but can be confusing. Most of us recognize the ^ as an exponential operator, but the text is not always consistent when its formulated.

This book is easily modularized so that pieces of the book can be extracted as separate study materials without much difficulty. In fact, this is a distinct advantage of the text.

I do believe the topical areas are well connected and the material flows from one chapter to the next easily. The chapters seem to be well connected. We all would have our personal preferences as to the order of the material being presented, but overall this is a clear and efficient organizational structure will logical segues.

The book's interface is fine.

While the majority of the book is mathematical, the text surrounding the equations and their applications appear to be free from grammatical error.

The material and presentations in the text show no signs or tendencies to be exclusive or offensive to race, ethnicity, or creeds. None of the examples are offensive in any way.

I was impressed with the presentations of the material and the connectivity between the chapters. I believe this is a very useful text for an introductory/preparatory course for electrical and computer engineering. It covers those areas and expertise that we at our university have found to be lacking in many of our entering students. For those universities with preparatory courses covering those fundamental engineering mathematical principles and software applications like MATLAB this would be an ideal text.

## Table of Contents

- 1. Complex Numbers
- 2. The Functions e^x and e^jθ
- 3. Phasors
- 4. Linear Algebra
- 5. Vector Graphics
- 6. Filtering
- 7. Binary Codes
- 8. An Introduction to MATLAB
- 9. The Edix Editor
- 10. Useful Mathematical Identities

## Ancillary Material

## About the Book

This book was written for an experimental freshman course at the University of Colorado. The course is now an elective that the majority of our electrical and computer engineering students take in the second semester of their freshman year, just before their first circuits course. Our department decided to offer this course for several reasons:

- we wanted to pique student' interest in engineering by acquainting them with engineering teachers early in their university careers and by providing with exposure to the types of problems that electrical and computer engineers are asked to solve;
- we wanted students entering the electrical and computer engineering programs to be prepared in complex analysis, phasors, and linear algebra, topics that are of fundamental importance in our discipline;
- we wanted students to have an introduction to a software application tool, such as MATLAB, to complete their preparation for practical and efficient computing in their subsequent courses and in their professional careers;
- we wanted students to make early contact with advanced topics like vector graphics, filtering, and binary coding so that they would gain a more rounded picture of modern electrical and computer engineering.

In order to introduce this course, we had to sacrifice a second semester of Pascal programming. We concluded that the sacrifice was worth making because we found that most of our students were prepared for high-level language computing after just one semester of programming.

We believe engineering educators elsewhere are reaching similar conclusions about their own students and curriculums. We hope this book helps create a much needed dialogue about curriculum revision and that it leads to the development of similar introductory courses that encourage students to enter and practice our craft.Students electing to take this course have completed one semester of calculus, computer programming, chemistry, and humanities.

Concurrently with this course, students take physics and a second semester of calculus, as well as a second semester in the humanities. By omitting the advanced topics marked by asterisks, we are able to cover Complex Numbers through Linear Algebra, plus two of the three remaining chapters. The book is organized so that the instructor can select any two of the three. If every chapter of this book is covered, including the advanced topics, then enough material exists for a two-semester course.

The first three chapters of this book provide a fairly complete coverage of complex numbers, the functions e^x and e^jand phasors. Our department philosophy is that these topics must be understood if a student is to succeed in electrical and computer engineering. These three chapters may also be used as a supplement to a circuits course. A measured pace of presentation, taking between sixteen and eighteen lectures, is sufficient to cover all but the advanced sections in Complex Numbers through Phasors.

The chapter on "linear algebra" is prerequisite for all subsequent chapters. We use eight to ten lectures to cover it. We devote twelve to sixteen lectures to cover topics from Vector Graphics through Binary Codes. (We assume a semester consisting of 42 lectures and three exams.) The chapter on vector graphics applies the linear algebra learned in the previous chapter to the problem of translating, scaling, and rotating images. "Filtering" introduces the student to basic ideas in averaging and filtering. The chapter on "Binary Codes" covers the rudiments of binary coding, including Huffman codes and Hamming codes.

If the users of this book find "Vector Graphics" through "Binary Codes" too confining, we encourage them to supplement the essential material in "Complex Numbers" through "Linear Algebra" with their own course notes on additional topics. Within electrical and computer engineering there are endless possibilities. Practically any set of topics that can be taught with conviction and enthusiasm will whet the student's appetite. We encourage you to write to us or to our editor, Tom Robbins, about your ideas for additional topics. We would like to think that our book and its subsequent editions will have an open architecture that enables us to accommodate a wide range of student and faculty interests.

Throughout this book we have used MATLAB programs to illustrate key ideas. MATLAB is an interactive, matrix-oriented language that is ideally suited to circuit analysis, linear systems, control theory, communications, linear algebra, and numerical analysis. MATLAB is rapidly becoming a standard software tool in universities and engineering companies. (For more information about MATLAB, return the attached card in the back of this book to The MathWorks, Inc.) MATLAB programs are designed to develop the student's ability to solve meaningful problems, compute, and plot in a high-level applications language. Our students get started in MATLAB by working through “An Introduction to MATLAB,” while seated at an IBM PC (or look-alike) or an Apple Macintosh. We also have them run through the demonstration programs in "Complex Numbers". Each week we give three classroom lectures and conduct a one-hour computer lab session. Students use this lab session to hone MATLAB skills, to write programs, or to conduct the numerical experiments that are given at the end of each chapter. We require that these experiments be carried out and then reported in a short lab report that contains (i) introduction, (ii) analytical computations, (iii) computer code, (iv) experimental results, and (v) conclusions. The quality of the numerical results and the computer graphics astonishes students. Solutions to the chapter problems are available from the publisher for instructors who adopt this text for classroom use.

We wish to acknowledge our late colleague Richard Roberts, who encouraged us to publish this book, and Michael Lightner and Ruth Ravenel, who taught "Linear Algebra" and "Vector Graphics" and offered helpful suggestions on the manuscript. We thank C. T. Mullis for allowing us to use his notes on binary codes to guide our writing of "Binary Codes". We thank Cédric Demeure and Peter Massey for their contributions to the writing of "An Introduction to MATLAB" and "The Edix Editor". We thank Tom Robbins, our editor at Addison-Wesley, for his encouragement, patience, and many suggestions. We are especially grateful to Julie Fredlund, who composed this text through many drafts and improved it in many ways. We thank her for preparing an excellent manuscript for production.

## About the Contributors

### Author

**Louis Scharf** received his Ph.D. from the University of Washington, Seattle. From 1971 to 1982 he served as Professor of Electrical Engineering and Statistics at CSU. From 1982 to 1985 he was Professor and Chairman of Electrical and Computer Engineering at the University of Rhode Island, Kingston. From 1985 to 2000 he was Professor of Electrical and Computer Engineering at the University of Colorado, Boulder. In January 2001, Professor Scharf rejoins Colorado State University as Professor of Electrical and Computer Engineering, and Statistics.

Professor Scharf has held several visiting positions here and abroad. He has developed particularly close ties with Ecole Superieure d'Electricite (Gif-sur-Yvette), Ecole Nationale Superieure des Telecommunications (Paris), and EURECOM (Nice). He is a recognized expert in statistical signal processing, as it applies to adaptive radar, sonar, and wireless communication. His most important contributions to date are to invariance theories for detection and estimation; matched and adaptive subspace detectors for radar, sonar, and data communication; and canonical decompositions for reduced dimensional filtering and quantizing. His current interests are in rapidly-adaptive receiver design for space-time signal processing in the wireless communication channel.

Professor Scharf is a Fellow of IEEE. He chairs the Fellow Committee for the IEEE Signal Processing Society, and serves on its Technical Committees for Theory and Methods and for Sensor Arrays and Multichannel Signal Processing. He has received numerous awards for his research contributions to statistical signal processing, including an IEEE Distinguished Lectureship, an IEEE Third Millenium Medal, and the Technical Achievement Award from the IEEE Signal Processing Society.