Page ii
ENGINEERING COMPUTATION Published by McGraw-Hill Education, 2 Penn Plaza, New York, NY 10121. Copyright 2021 by McGraw-Hill Education. All rights reserved. Printed in the United States of America. No part of this publication may be reproduced or distributed in any form or by any means, or stored in a database or retrieval system, without the prior written consent of McGraw-Hill Education, including, but not limited to, in any network or other electronic storage or transmission, or broadcast for distance learning.
Some ancillaries, including electronic and print components, may not be available to customers outside the United States.
This book is printed on acid-free paper.
1 2 3 4 5 6 7 8 9 QVS 24 23 22 21 20
ISBN 978-1-260-57071-7 MHID 1-260-57071-1
Cover Image: Ingram Publishing
All credits appearing on page or at the end of the book are considered to be an extension of the copyright page.
The Internet addresses listed in the text were accurate at the time of publication. The inclusion of a website does not indicate an endorsement by the authors or McGraw-Hill Education, and McGraw-Hill Education does not guarantee the accuracy of the information presented at these sites.
mheducation.com/highered
Page iii
CONTENTS
Page iv
Page v
PREFACE
This text has grown out of the authors experiences teaching introductory computation courses to engineering students from a variety of disciplines at three different institutions. The integration of computational tools in engineering programs is a constant challenge for educators. The broad goals associated with an introductory course in computer applications often include:
Teaching the concept of procedural thinking and algorithm development.
Teaching the mechanics of the computational tools required in both the subsequent academic program and professional practice.
Teaching the techniques for developing a computational solution to a physical problem.
Providing the context for the selection of a computational tool appropriate for the task at hand.
Teaching the accepted techniques for documenting and verifying computer-based solutions to engineering problems.
Stimulating interest in upper-division coursework by introducing the students to realistic, interesting, and exciting problems and applications.
This text will emphasize these concepts, using MATLAB and Excel as the software packages of choice. These packages were chosen because:
MATLAB is widely accepted as a first computation tool in numerous engineering programs.
MATLAB has the unique ability to be both used as an introductory programming tool and a high-level computational tool; the programming constructs (loops and logic) allow it to be used as a first programming language for engineering students, while the numerous mathematical and analysis toolboxes allow it to be readily applied to high-level engineering applications.
Excel is a ubiquitous spreadsheet application, which nearly every engineering student will have access to during their academic and professional careers. Excel has powerful built-in functions that allow it to be applied to high-level engineering problems.
Since spreadsheet solutions are so fundamentally different than the procedural solutions developed using programming tools like MATLAB, the contrasting approach allows for demonstration and discussion about implication of the choice of software tool on the type and complexity of the solution technique.
Philosophy of the Text
The underlying philosophy behind the approach taken in this text is:
Computer tools will change during the professional careers of a freshman engineering student. While it is important to teach the mechanics of using the relevant tools, the focus of this text should be on the fundamentals of engineering computing: algorithm development, selection of appropriate tools, documentation of solutions, and verification and interpretation of results.
Programming is a fundamental concept for engineers; while shortcut solutions (such as implied loops in MATLAB) and canned software are certainly appropriate for upper-division students and practicing engineers, introductory students should be focused on the basics of structured programming: loops, logic, and array structures. These basic concepts, which are language-independent, are the critical building blocks for programming, and should be introduced early.
Page vi With this in mind, the text was developed in two parts. The first part generally covers the mechanics of programming and spreadsheet usage; including:
An introduction to computational theory,
An introduction to number representation (scalars, arrays, and matrices),
An introduction to programming constructs, including algorithm development and flowcharting,
The mechanics of MATLAB and Excel usage, and
Best practices in computer tool usage, including tool selection, documentation of solutions, and checking of results.
These chapters include detailed keystroke-level instructions, which will guide the reader through the use of the MATLAB and Excel tools.
The second part focuses on typical applications of engineering computation; these applications are motivated with engineering problems, and include:
These applications are intended to motivate not only engineering computation, but the use of concepts from upper-division engineering courses as well. Both theoretical concepts and keystroke-level tutorials are presented in these applications chapters.
New In This Edition
This edition has been updated for the latest versions of MATLAB and Excel. In addition, many new end-of-chapter problems have been created, and a tutorial involving symbolic computation in MATLAB has been developed.
Instructor Resources
Additional resources for instructors are available on the web at www.mhhe.com/musto2e. These resources include solutions to the end-of-chapter problems and book figures in PowerPoint format. Instructors can contact a McGraw-Hill representative for a password.
Acknowledgments
We are grateful to our friends at McGraw-Hill for their support and encouragement during this project. Theresa Collins, our production developer, has provided invaluable support and guidance during this project. We wish to thank Flecks Communications for page layout, and Kim Haas for copyediting. Additionally, the cooperation and support of the MathWorks Book Program was invaluable.
Feedback provided during the review process was greatly appreciated, and helped to shape the final form of this text. We wish to thank the following reviewers for their careful reviews of the initial manuscript:
Ali Elkamel, University of Waterloo
Bill Elmore, Mississippi State University
Howard Fulmer, Villanova University
Brian Grady, Oklahoma University
Mark Kerstetter,
Next page