Engineering Computation with MATLAB, 3/e (IE-Paperback)
暫譯: 使用 MATLAB 進行工程計算(第三版)

David M Smith

  • 出版商: Pearson FT Press
  • 出版日期: 2012-05-01
  • 定價: $1,300
  • 售價: 9.5$1,235
  • 語言: 英文
  • 頁數: 464
  • ISBN: 0273769138
  • ISBN-13: 9780273769132
  • 相關分類: Matlab
  • 立即出貨 (庫存 < 3)

相關主題

商品描述

Description

 

This textbook is ideal for MATLAB/Introduction to Programming courses in both Engineering and Computer Science departments.

 

Engineering Computation with MATLAB introduces the power of computing to engineering students who have no programming experience. The book places the fundamental tenets of computer programming into the context of MATLAB, employing hands-on exercises, examples from the engineering industry, and a variety of core tools to increase programming proficiency and capability. With this knowledge, students are prepared to adapt learned concepts to other programming languages.


 

 

Features

 

  • Engineering Examples are interspersed in the chapters, providing robust examples that extend chapter concepts into practice, such as the fundamental principles used to implement vehicle navigation systems.
  • Do It Yourself Exercise boxes allow readers to master concepts by trying what they just learned. Exercises follow each new topic for immediate reinforcement.
  • Style Points clearly advise readers about writing quality code that is easy to understand, debug, and reuse.
  • Hints enrich understanding of a topic by providing a little extra “aside” in places where readers may benefit from it.
  • Common Pitfall boxes alert readers to common mistakes that programmers make, and clearly explain how to avoid them.
  • End-of-chapter material—including a chapter summary, true-or-false question and answers, fill-in-the-blanks and answers, and a variety of large-scale programming projects—helps readers assess their understanding.
  • A freely accessible Companion Website, featuring:
    • Two additional appendices: Web reference materials and solutions to selected programming projects
    • Source code
    • Bonus chapters


 

 

New to this Edition

- Revised engineering examples integrate concepts throughout the book
- A new emphasis on problem solving skills
- Updated examples consistent with Matlab R2011
- Updated chapter on graphs including an approximate technique for path finding
- New on-line support pages

商品描述(中文翻譯)

### 內容描述

*這本教科書非常適合工程學和計算機科學系的 MATLAB/程式設計入門課程。*

《工程計算與 MATLAB》向沒有程式設計經驗的工程學生介紹計算的力量。這本書將計算機程式設計的基本原則置於 MATLAB 的背景中,通過實作練習、來自工程行業的範例以及各種核心工具來提高程式設計的熟練度和能力。掌握這些知識後,學生將能夠將所學的概念應用到其他程式語言中。

### 特點

- **工程範例**:在各章中穿插了強健的範例,將章節概念延伸到實踐中,例如實現車輛導航系統所用的基本原則。
- **自己動手練習框**:讓讀者通過嘗試剛學到的內容來掌握概念。每個新主題後都有練習題以進行即時強化。
- **風格要點**:清楚地建議讀者撰寫易於理解、除錯和重用的高品質程式碼。
- **提示**:通過在讀者可能受益的地方提供額外的“旁白”來豐富對主題的理解。
- **常見陷阱框**:提醒讀者程式設計師常犯的錯誤,並清楚解釋如何避免這些錯誤。
- **章末材料**:包括章節摘要、是非題及其答案、填空題及其答案,以及各種大型程式設計專案,幫助讀者評估自己的理解。
- 一個免費訪問的 **伴隨網站**,特色包括:
- 兩個附錄:網頁參考資料和選定程式專案的解答
- 原始碼
- 額外章節

### 本版新內容

- 修訂的工程範例整合了全書的概念
- 新增對問題解決技能的重視
- 更新的範例與 MATLAB R2011 一致
- 更新的圖形章節,包括一種近似的路徑尋找技術
- 新的線上支援頁面

目錄大綱

Table of Contents

Table of Contents
1.1 Background
1.2 History of Computer Architectures
1.2.1 Babbage’s Difference Engine
1.2.2 Colossus
1.2.3 The von Neumann Architecture
1.3 Computing Systems Today
1.3.1 Computer Hardware
1.3.2 Computer Memory
1.3.3 Computer Software
1.3.4 Running a Computer Program
1.4 Running an Interpreted Program
1.5 Problem Solving
2.1 Programming Language Background
2.1.1 Abstraction
2.1.2 Algorithms
2.1.3 Programming Paradigms
2.2 Basic Data Manipulation
2.2.1 Starting and Stopping Matlab
2.2.2 Assigning Values to Variables
2.2.3 Data Typing
2.2.4 Classes and Objects
2.3 the Matlab User Interface
2.3.1 the Interactions Window
2.3.2 the Command History
2.3.3 the Variables Window
2.3.4 the Files Window
2.3.5 Editor Windows
2.3.6 Figure Windows
2.4 Scripts
2.4.1 Text Files
2.4.2 Creating Scripts
2.4.3 The Current Directory
2.4.4 Running Scripts
2.4.5 Punctuating Scripts
2.4.6 Debugging Scripts
2.5 Engineering Example— Spacecraft Launch
3.1 Concept: Using Built-in Functions
3.2 Concept: Data Collections
3.2.1 Data Abstraction
3.2.2 Homogeneous Collection
3.3 Vectors
3.3.1 Creating a Vector
3.3.2 Size of a Vector
3.3.3 Indexing a Vector
3.3.4 Shortening a Vector
3.3.5 Operating on Vectors
3.4 Engineering Example—Forces and Moments
3.5 Arrays
3.5.1 Properties of an Array
3.5.2 Creating an Array
3.5.3 Accessing Elements of an Array
3.5.4 Removing Elements of an Array
3.5.5 Operating on Arrays
3.6 Engineering Example—Computing Soil Volume
4.1 Concept: Code Blocks
4.2 Conditional Execution in General
4.3 if Statements
4.3.1 General Template
4.3.2 Matlab Implementation
4.3.3 Important Ideas
4.4 switch Statements
4.4.1 General Template
4.4.2 Matlab Implementation
4.5 Iteration in General
4.6 for Loops
4.6.1 General for Loop Template
4.6.2 Matlab Implementation
4.6.3 Indexing Implementation
4.6.4 Breaking a for Loop
4.7 while Loops
4.7.1 General while Template
4.7.2 Matlab while Loop Implementation
4.7.3 Loop-and-a-Half Implementation
4.7.4 Breaking a while Loop
4.8 Engineering Example—Computing Liquid Levels
5.1 Concepts: Abstraction and Encapsulation
5.2 Black Box View of a Function
5.3 Matlab Implementation
5.3.1 General Template
5.3.2 Function Definition
5.3.3 Storing and Using Functions
5.3.4 Calling Functions
5.3.5 Returning Multiple Results
5.3.6 Auxiliary Local Functions
5.3.7 Encapsulation in Matlab Functions
5.3.8 Global Variables
5.4 Engineering Example—Measuring a Solid Object
6.1 Character String Concepts: Mapping and Casting
6.2 Matlab Implementation
6.2.1 Slicing and Concatenating Strings
6.2.2 Arithmetic and Logical Operations
6.2.3 Useful Functions
6.3 Format Conversion Functions
6.3.1 Conversion from Numbers to Strings
6.3.2 Conversion from Strings to Numbers
6.4 Character String Operations
6.4.1 Simple Data Output: The disp(...) Function
6.4.2 Complex Output
6.4.3 Comparing Strings
6.5 Arrays of Strings
6.6 Engineering Example— Encryption
7.1 Concept: Collecting Dissimilar Objects
7.2 Cell Arrays
7.2.1 Creating Cell Arrays
7.2.2 Accessing Cell Arrays
7.2.3 Using Cell Arrays
7.2.4 Processing Cell Arrays
7.3 Structures
7.3.1 Constructing and Accessing One Structure
7.3.2 Constructor Functions
7.4 Structure Arrays
7.4.1 Constructing Cell Arrays
7.4.2 Accessing Structure Elements
7.4.3 Manipulating Structures
7.5 Engineering Example—Assembling a Structure
8.1 Concept: Serial Input and Output (I/O)
8.2 Workspace I/O
8.3 High-level I/O Functions
8.3.1 Exploration
8.3.2 Spreadsheets
8.3.3 Delimited Text Files
8.4 Low-level File I/O
8.4.1 Opening and Closing Files
8.4.2 Reading Text Files
8.4.3 Examples of Reading Text Files
8.4.4 Writing Text Files
8.5 Engineering Example— Spreadsheet Data
9.1 Concept:The Activation Stack
9.1.1 A Stack
9.1.2 Activation Stack
9.1.3 Function Instances
9.2 Recursion Defined
9.3 Implementing a Recursive Function
9.4 Exceptions
9.4.1 Historical Approaches
9.4.2 Generic Exception Implementation
9.4.3 Implementation
9.5 Wrapper Functions
9.6 Examples of Recursion
9.6.1 Detecting Palindromes
9.6.2 Fibonacci Series
9.6.3 Zeros of a Function
9.7 Engineering Example—Robot Arm Motion
10.1 Solving Simple Problems
10.2 Assembling Solution Steps
10.3 Summary of Operations
10.3.1 Basic Arithmetic Operations
10.3.2 Inserting into a Collection
10.3.3 Traversing a Collection
10.3.4 Building a Collection
10.3.5 Mapping a Collection
10.3.6 Filtering a Collection
10.3.7 Summarizing a Collection
10.3.8 Searching a Collection
10.3.9 Sorting a Collection
10.4 Solving Larger Problems
10.5 Engineering Example— Processing Geopolitical Data
11.1 Plotting in General
11.1.1 A Figure—The Plot Container
11.1.2 Simple Functions for Enhancing Plots
11.1.3 Multiple Plots on One Figure—Subplots
11.1.4 Manually Editing Plots
11.2 2-D Plotting
11.2.1 Simple Plots
11.2.2 Plot Options
11.2.3 Parametric Plots
11.2.4 Other 2-D Plot Capabilities
11.3 3-D Plotting
11.3.1 Linear 3-D Plots
11.3.2 Linear Parametric 3-D Plots
11.3.3 Other 3-D Plot Capabilities
11.4 Surface Plots
11.4.1 Basic Capabilities
11.4.2 Simple Exercises
11.4.3 3-D Parametric Surfaces
11.4.4 Bodies of Rotation
11.4.5 Other 3-D Surface Plot Capabilities
11.4.6 Assembling Compound Surfaces
11.5 Manipulating Plotted Data
11.6 Engineering Example—Visualizing Geographic Data
11.6.1 Analyzing the Data
11.6.2 Displaying the Data
12.1 Concept: Behavioral Abstraction
12.2 Matrix Operations
12.2.1 Matrix Multiplication
12.2.2 Matrix Division
12.2.3 Matrix Exponentiation
12.3 Implementation
12.3.1 Matrix Multiplication
12.3.2 Matrix Division
12.4 Rotating Coordinates
12.4.1 2-D Rotation
12.4.2 3-D Rotation
12.5 Solving Simultaneous Linear Equations
12.5.1 Intersecting Lines
12.5.2 Curve Fitting
12.6 Engineering Examples
12.6.1 Ceramic Composition
12.6.2 Analyzing an Electrical Circuit
13.1 Nature of an Image
13.2 Image Types
13.2.1 True Color Images
13.2.2 Gray Scale Images
13.2.3 Color Mapped Images
13.2.4 Preferred Image Format
13.3 Reading, Displaying, and Writing Images
13.4 Operating on Images
13.4.1 Stretching or Shrinking Images
13.4.2 Color Masking
13.4.3 Creating a Kaleidoscope
13.4.4 Images on a Surface
13.5 Engineering Example—Detecting Edges
14.1 The Physics of Sound
14.2 Recording and Playback
14.3 Implementation
14.4 Time Domain Operations
14.4.1 Slicing and Concatenating Sound
14.4.2 Musical Background
14.4.3 Changing Sound Frequency
14.5 The Fast Fourier Transform
14.5.1 Background
14.5.2 Implementation
14.5.3 Simple Spectral Analysis
14.6 Frequency Domain Operations
14.7 Engineering Example—Music Synthesizer
15.1 Interpolation
15.1.1 Linear Interpolation
15.1.2 Cubic Spline Interpolation
15.1.3 Extrapolation
15.2 Curve Fitting
15.2.1 Linear Regression
15.2.2 Polynomial Regression
15.2.3 Practical Application
15.3 Numerical Integration
15.3.1 Determination of the Complete Integral
15.3.2 Continuous Integration Problems
15.4 Numerical Differentiation
15.5 Analytical Operations
15.6 Implementation
15.7 Engineering Example—Shaping Synthesizer Notes
16.1 Measuring Algorithm Cost
16.1.1 Specific Big O Examples
16.1.2 Analyzing Complex Algorithms
16.2 Algorithms for Sorting Data
16.2.1 Insertion Sort
16.2.2 Bubble Sort
16.2.3 Quick Sort
16.2.4 Quick Sort in Place
16s of Sorting Algorithms
16.4.1 Using sort(...)
16.4.2 Insertion Sort
16.4.3 Bubble Sort
16.4.4 Quick Sort
16.4.5 Merge Sort
16.5 Engineering Example—A Selection of Countries
17.1 Queues
17.1.1 The Nature of a Queue
17.1.2 Implementing Queues
17.1.3 Priority Queues
17.1.4 Testing Queues
17.2 Graphs
17.2.1 Graph Examples
17.2.2 Processing Graphs
17.2.3 Building Graphs
17.2.4 Traversing Graphs
17.3 Minimum Spanning Trees
17.4 Finding Paths
17.4.1 Path Search Algorithms
17.4.2 Breadth-First Search (BFS)
17.4.3 Dijkstra’s Algorithm
17.4.4 A* Algorithm
17.4.5 Testing Graph Search Algorithms
17.5 Engineering Applications
Appendix A
Appendix B
Appendix C
Appendix D

目錄大綱(中文翻譯)

Table of Contents

Table of Contents

1.1 Background

1.2 History of Computer Architectures

1.2.1 Babbage’s Difference Engine

1.2.2 Colossus

1.2.3 The von Neumann Architecture

1.3 Computing Systems Today

1.3.1 Computer Hardware

1.3.2 Computer Memory

1.3.3 Computer Software

1.3.4 Running a Computer Program

1.4 Running an Interpreted Program

1.5 Problem Solving

2.1 Programming Language Background

2.1.1 Abstraction

2.1.2 Algorithms

2.1.3 Programming Paradigms

2.2 Basic Data Manipulation

2.2.1 Starting and Stopping Matlab

2.2.2 Assigning Values to Variables

2.2.3 Data Typing

2.2.4 Classes and Objects

2.3 the Matlab User Interface

2.3.1 the Interactions Window

2.3.2 the Command History

2.3.3 the Variables Window

2.3.4 the Files Window

2.3.5 Editor Windows

2.3.6 Figure Windows

2.4 Scripts

2.4.1 Text Files

2.4.2 Creating Scripts

2.4.3 The Current Directory

2.4.4 Running Scripts

2.4.5 Punctuating Scripts

2.4.6 Debugging Scripts

2.5 Engineering Example— Spacecraft Launch

3.1 Concept: Using Built-in Functions

3.2 Concept: Data Collections

3.2.1 Data Abstraction

3.2.2 Homogeneous Collection

3.3 Vectors

3.3.1 Creating a Vector

3.3.2 Size of a Vector

3.3.3 Indexing a Vector

3.3.4 Shortening a Vector

3.3.5 Operating on Vectors

3.4 Engineering Example—Forces and Moments

3.5 Arrays

3.5.1 Properties of an Array

3.5.2 Creating an Array

3.5.3 Accessing Elements of an Array

3.5.4 Removing Elements of an Array

3.5.5 Operating on Arrays

3.6 Engineering Example—Computing Soil Volume

4.1 Concept: Code Blocks

4.2 Conditional Execution in General

4.3 if Statements

4.3.1 General Template

4.3.2 Matlab Implementation

4.3.3 Important Ideas

4.4 switch Statements

4.4.1 General Template

4.4.2 Matlab Implementation

4.5 Iteration in General

4.6 for Loops

4.6.1 General for Loop Template

4.6.2 Matlab Implementation

4.6.3 Indexing Implementation

4.6.4 Breaking a for Loop

4.7 while Loops

4.7.1 General while Template

4.7.2 Matlab while Loop Implementation

4.7.3 Loop-and-a-Half Implementation

4.7.4 Breaking a while Loop

4.8 Engineering Example—Computing Liquid Levels

5.1 Concepts: Abstraction and Encapsulation

5.2 Black Box View of a Function

5.3 Matlab Implementation

5.3.1 General Template

5.3.2 Function Definition

5.3.3 Storing and Using Functions

5.3.4 Calling Functions

5.3.5 Returning Multiple Results

5.3.6 Auxiliary Local Functions

5.3.7 Encapsulation in Matlab Functions

5.3.8 Global Variables

5.4 Engineering Example—Measuring a Solid Object

6.1 Character String Concepts: Mapping and Casting

6.2 Matlab Implementation

6.2.1 Slicing and Concatenating Strings

6.2.2 Arithmetic and Logical Operations

6.2.3 Useful Functions

6.3 Format Conversion Functions

6.3.1 Conversion from Numbers to Strings

6.3.2 Conversion from Strings to Numbers

6.4 Character String Operations

6.4.1 Simple Data Output: The disp(...) Function

6.4.2 Complex Output

6.4.3 Comparing Strings

6.5 Arrays of Strings

6.6 Engineering Example— Encryption

7.1 Concept: Collecting Dissimilar Objects

7.2 Cell Arrays

7.2.1 Creating Cell Arrays

7.2.2 Accessing Cell Arrays

7.2.3 Using Cell Arrays

7.2.4 Processing Cell Arrays

7.3 Structures

7.3.1 Constructing and Accessing One Structure

7.3.2 Constructor Functions

7.4 Structure Arrays

7.4.1 Constructing Cell Arrays

7.4.2 Accessing Structure Elements

7.4.3 Manipulating Structures

7.5 Engineering Example—Assembling a Structure

8.1 Concept: Serial Input and Output (I/O)

8.2 Workspace I/O

8.3 High-level I/O Functions

8.3.1 Exploration

8.3.2 Spreadsheets

8.3.3 Delimited Text Files

8.4 Low-level File I/O

8.4.1 Opening and Closing Files

8.4.2 Reading Text Files

8.4.3 Examples of Reading Text Files

8.4.4 Writing Text Files

8.5 Engineering Example— Spreadsheet Data

9.1 Concept:The Activation Stack

9.1.1 A Stack

9.1.2 Activation Stack

9.1.3 Function Instances

9.2 Recursion Defined

9.3 Implementing a Recursive Function

9.4 Exceptions

9.4.1 Historical Approaches

9.4.2 Generic Exception Implementation

9.4.3 Implementation

9.5 Wrapper Functions

9.6 Examples of Recursion

9.6.1 Detecting Palindromes

9.6.2 Fibonacci Series

9.6.3 Zeros of a Function

9.7 Engineering Example—Robot Arm Motion

10.1 Solving Simple Problems

10.2 Assembling Solution Steps

10.3 Summary of Operations

10.3.1 Basic Arithmetic Operations

10.3.2 Inserting into a Collection

10.3.3 Traversing a Collection

10.3.4 Building a Collection

10.3.5 Mapping a Collection

10.3.6 Filtering a Collection

10.3.7 Summarizing a Collection

10.3.8 Searching a Collection

10.3.9 Sorting a Collection

10.4 Solving Larger Problems

10.5 Engineering Example— Processing Geopolitical Data

11.1 Plotting in General

11.1.1 A Figure—The Plot Container

11.1.2 Simple Functions for Enhancing Plots

11.1.3 Multiple Plots on One Figure—Subplots

11.1.4 Manually Editing Plots

11.2 2-D Plotting

11.2.1 Simple Plots

11.2.2 Plot Options

11.2.3 Parametric Plots

11.2.4 Other 2-D Plot Capabilities

11.3 3-D Plotting

11.3.1 Linear 3-D Plots

11.3.2 Linear Parametric 3-D Plots

11.3.3 Other 3-D Plot Capabilities

11.4 Surface Plots

11.4.1 Basic Capabilities

11.4.2 Simple Exercises

11.4.3 3-D Parametric Surfaces

11.4.4 Bodies of Rotation

11.4.5 Other 3-D Surface Plot Capabilities

11.4.6 Assembling Compound Surfaces

11.5 Manipulating Plotted Data

11.6 Engineering Example—Visualizing Geographic Data

11.6.1 Analyzing the Data

11.6.2 Displaying the Data

12.1 Concept: Behavioral Abstraction

12.2 Matrix Operations

12.2.1 Matrix Multiplication

12.2.2 Matrix Division

12.2.3 Matrix Exponentiation

12.3 Implementation

12.3.1 Matrix Multiplication

12.3.2 Matrix Division

12.4 Rotating Coordinates

12.4.1 2-D Rotation

12.4.2 3-D Rotation

12.5 Solving Simultaneous Linear Equations

12.5.1 Intersecting Lines

12.5.2 Curve Fitting

12.6 Engineering Examples

12.6.1 Ceramic Composition

12.6.2 Analyzing an Electrical Circuit

13.1 Nature of an Image

13.2 Image Types

13.2.1 True Color Images

13.2.2 Gray Scale Images

13.2.3 Color Mapped Images

13.2.4 Preferred Image Format

13.3 Reading, Displaying, and Writing Images

13.4 Operating on Images

13.4.1 Stretching or Shrinking Images

13.4.2 Color Masking

13.4.3 Creating a Kaleidoscope

13.4.4 Images on a Surface

13.5 Engineering Example—Detecting Edges

14.1 The Physics of Sound

14.2 Recording and Playback

14.3 Implementation

14.4 Time Domain Operations

14.4.1 Slicing and Concatenating Sound

14.4.2 Musical Background

14.4.3 Changing Sound Frequency

14.5 The Fast Fourier Transform

14.5.1 Background

14.5.2 Implementation

14.5.3 Simple Spectral Analysis

14.6 Frequency Domain Operations

14.7 Engineering Example—Music Synthesizer

15.1 Interpolation

15.1.1 Linear Interpolation

15.1.2 Cubic Spline Interpolation

15.1.3 Extrapolation

15.2 Curve Fitting

15.2.1 Linear Regression

15.2.2 Polynomial Regression

15.2.3 Practical Application

15.3 Numerical Integration

15.3.1 Determination of the Complete Integral

15.3.2 Continuous Integration Problems

15.4 Numerical Differentiation

15.5 Analytical Operations

15.6 Implementation

15.7 Engineering Example—Shaping Synthesizer Notes

16.1 Measuring Algorithm Cost

16.1.1 Specific Big O Examples

16.1.2 Analyzing Complex Algorithms

16.2 Algorithms for Sorting Data

16.2.1 Insertion Sort

16.2.2 Bubble Sort

16.2.3 Quick Sort

16.2.4 Quick Sort in Place

16s of Sorting Algorithms

16.4.1 Using sort(...)

16.4.2 Insertion Sort

16.4.3 Bubble Sort

16.4.4 Quick Sort

16.4.5 Merge Sort

16.5 Engineering Example—A Selection of Countries

17.1 Queues

17.1.1 The Nature of a Queue

17.1.2 Implementing Queues

17.1.3 Priority Queues

17.1.4 Testing Queues

17.2 Graphs

17.2.1 Graph Examples

17.2.2 Processing Graphs

17.2.3 Building Graphs

17.2.4 Traversing Graphs

17.3 Minimum Spanning Trees

17.4 Finding Paths

17.4.1 Path Search Algorithms

17.4.2 Breadth-First Search (BFS)

17.4.3 Dijkstra’s Algorithm

17.4.4 A* Algorithm

17.4.5 Testing Graph Search Algorithms

17.5 Engineering Applications

Appendix A

Appendix B

Appendix C

Appendix D