وبلاگ بلیان

Engineering Computation with MATLAB : International Edition

معرفی کتاب «Engineering Computation with MATLAB : International Edition» نوشتهٔ Smith, David M.، منتشرشده توسط نشر Addison-Wesley ; Pearson Education [distributor در سال 2012. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

"This textbook is ideal for MATLAB/Introduction to Programming courses in both Engineering and Computer Science departments. It is also a suitable introduction for beginning programmers." "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. Cover......Page 1 Contents......Page 6 Chapter 1 Introduction to Computers and Programming......Page 20 1.1 Background......Page 21 1.2.2 Colossus......Page 22 1.2.3 The von Neumann Architecture......Page 23 1.3.1 Computer Hardware......Page 24 1.3.2 Computer Memory......Page 25 1.3.3 Computer Software......Page 27 1.3.4 Running a Computer Program......Page 30 1.5.1 Introduction to MATLAB......Page 32 1.5.3 Problem-Solving Skills......Page 33 Chapter 2 Getting Started......Page 36 2.1.1 Abstraction......Page 37 2.1.2 Algorithms......Page 38 2.2.1 Starting and Stopping MATLAB......Page 39 2.2.2 Assigning Values to Variables......Page 40 2.2.3 Data Typing......Page 41 2.3 MATLAB User Interface......Page 43 2.3.1 Command Window......Page 44 2.3.2 Command History......Page 45 2.3.3 Workspace Window......Page 46 2.3.4 Current Directory Window......Page 49 2.3.6 Figure Window......Page 50 2.3.7 Editor Window......Page 51 2.4.2 Creating Scripts......Page 52 2.4.3 The Current Directory......Page 53 2.4.5 Punctuating Scripts......Page 54 2.5 Engineering Example—Spacecraft Launch......Page 55 Chapter 3 Vectors and Arrays......Page 64 3.3 Vectors......Page 65 3.3.1 Creating a Vector......Page 66 3.3.3 Indexing a Vector......Page 67 3.3.4 Shortening a Vector......Page 69 3.3.5 Operating on Vectors......Page 70 3.4 Engineering Example—Forces and Moments......Page 77 3.5 Arrays......Page 79 3.5.1 Properties of an Array......Page 80 3.5.3 Accessing Elements of an Array......Page 81 3.5.4 Removing Elements of an Array......Page 82 3.5.5 Operating on Arrays......Page 83 3.6 Engineering Example—Computing Soil Volume......Page 90 Chapter 4 Execution Control......Page 100 4.2 Conditional Execution in General......Page 101 4.3 if Statements......Page 102 4.3.2 MATLAB Implementation......Page 103 4.3.3 Important Ideas......Page 105 4.4.1 General Template......Page 107 4.4.2 MATLAB Implementation......Page 108 4.6 for Loops......Page 109 4.6.2 MATLAB Implementation......Page 110 4.6.3 Indexing Implementation......Page 112 4.7.1 General while Template......Page 113 4.7.2 MATLAB while Loop Implementation......Page 114 4.7.3 Loop-and-a-Half Implementation......Page 115 4.8 Engineering Example—Computing Liquid Levels......Page 116 Chapter 5 Functions......Page 124 5.2 Black Box View of a Function......Page 125 5.3.2 Function Definition......Page 126 5.3.5 Variable Numbers of Parameters......Page 128 5.3.6 Returning Multiple Results......Page 129 5.3.8 Encapsulation in MATLAB Functions......Page 130 5.3.9 Global Variables......Page 131 5.4 Engineering Example—Measuring a Solid Object......Page 132 Chapter 6 Character Strings......Page 140 6.1 Character String Concepts: Mapping Casting, Tokens, and Delimiting......Page 141 6.2 MATLAB Implementation......Page 142 6.2.1 Slicing and Concatenating Strings......Page 143 6.3.1 Conversion from Numbers to Strings......Page 144 6.3.2 Conversion from Strings to Numbers......Page 146 6.4.3 Comparing Strings......Page 148 6.5 Arrays of Strings......Page 150 6.6 Engineering Example—Encryption......Page 151 Chapter 7 Cell Arrays and Structures......Page 160 7.2.1 Creating Cell Arrays......Page 161 7.2.2 Accessing Cell Arrays......Page 162 7.2.4 Processing Cell Arrays......Page 164 7.3 Structures......Page 165 7.3.1 Constructing and Accessing One Structure......Page 166 7.3.2 Constructor Functions......Page 167 7.4.1 Constructing Structure Arrays......Page 169 7.4.2 Accessing Structure Elements......Page 171 7.4.3 Manipulating Structures......Page 173 7.5 Engineering Example—Assembling a Physical Structure......Page 175 Chapter 8 File Input and Output......Page 186 8.2 Workspace I/O......Page 187 8.3.1 Exploration......Page 188 8.3.2 Spreadsheets......Page 189 8.3.3 Delimited Text Files......Page 191 8.4.2 Reading Text Files......Page 193 8.4.3 Examples of Reading Text Files......Page 194 8.4.4 Writing Text Files......Page 195 8.5 Engineering Example—Spreadsheet Data......Page 196 Chapter 9 Recursion......Page 204 9.1.2 Activation Stack......Page 205 9.2 Recursion Defined......Page 206 9.3 Implementing a Recursive Function......Page 207 9.4 Exceptions......Page 209 9.4.2 Generic Exception Implementation......Page 210 9.4.3 MATLAB Implementation......Page 212 9.5 Wrapper Functions......Page 214 9.6.1 Detecting Palindromes......Page 216 9.6.2 Fibonacci Series......Page 217 9.6.3 Zeros of a Function......Page 218 9.7 Engineering Example—Robot Arm Motion......Page 221 Chapter 10 Principles of Problem Solving......Page 230 10.3 Summary of Operations......Page 231 10.3.2 Inserting into a Collection......Page 232 10.3.3 Traversing a Collection......Page 234 10.3.5 Mapping a Collection......Page 235 10.3.6 Filtering a Collection......Page 236 10.3.7 Summarizing a Collection......Page 237 10.3.8 Searching a Collection......Page 238 10.4 Solving Larger Problems......Page 239 10.5 Engineering Example—Processing Geopolitical Data......Page 240 Chapter 11 Plotting......Page 250 11.1.2 Simple Functions for Enhancing Plots......Page 251 11.1.3 Multiple Plots on One Figure—Subplots......Page 252 11.1.4 Manually Editing Plots......Page 253 11.2.1 Simple Plots......Page 254 11.2.3 Parametric Plots......Page 256 11.3.1 Linear 3-D Plots......Page 258 11.3.2 Linear Parametric 3-D Plots......Page 260 11.3.3 Other 3-D Plot Capabilities......Page 261 11.4.2 Simple Exercises......Page 262 11.4.3 3-D Parametric Surfaces......Page 267 11.4.4 Bodies of Rotation......Page 269 11.4.5 Other 3-D Surface Plot Capabilities......Page 274 11.6 Engineering Example—Visualizing Geographic Data......Page 275 11.6.1 Analyzing the Data......Page 276 11.6.2 Displaying the Data......Page 277 Chapter 12 Matrices......Page 286 12.2.1 Matrix Multiplication......Page 287 12.3 Implementation......Page 290 12.3.1 Matrix Multiplication......Page 291 12.3.2 Matrix Division......Page 292 12.4 Rotating Coordinates......Page 293 12.4.1 2-D Rotation......Page 294 12.4.2 3-D Rotation......Page 297 12.5 Solving Simultaneous Linear Equations......Page 300 12.5.1 Intersecting Lines......Page 301 12.6.1 Ceramic Composition......Page 302 12.6.2 Analyzing an Electrical Circuit......Page 304 Chapter 13 Images......Page 310 13.1 Nature of an Image......Page 311 13.2.2 Gray Scale Images......Page 312 13.2.4 Preferred Image Format......Page 313 13.4.1 Stretching or Shrinking Images......Page 314 13.4.2 Color Masking......Page 315 13.4.3 Creating a Kaleidoscope......Page 320 13.4.4 Images on a Surface......Page 322 13.5 Engineering Example—Detecting Edges......Page 325 Chapter 14 Processing Sound......Page 334 14.2 Recording and Playback......Page 335 14.3 Implementation......Page 336 14.4.1 Slicing and Concatenating Sound......Page 337 14.4.2 Musical Background......Page 340 14.4.3 Changing Sound Frequency......Page 341 14.5 The Fast Fourier Transform......Page 343 14.5.1 Background......Page 344 14.5.2 Implementation......Page 345 14.5.3 Simple Spectral Analysis......Page 346 14.6 Frequency Domain Operations......Page 347 14.7 Engineering Example—Music Synthesizer......Page 351 Chapter 15 Numerical Methods......Page 358 15.1.1 Linear Interpolation......Page 359 15.1.2 Cubic Spline Interpolation......Page 362 15.1.3 Extrapolation......Page 363 15.2.1 Linear Regression......Page 364 15.2.2 Polynomial Regression......Page 366 15.2.3 Practical Application......Page 368 15.3.1 Determination of the Complete Integral......Page 370 15.3.2 Continuous Integration Problems......Page 372 15.4.1 Difference Expressions......Page 375 15.6 Implementation......Page 376 15.7 Engineering Example—Shaping the Synthesizer Notes......Page 378 Chapter 16 Sorting......Page 386 16.1 Measuring Algorithm Cost......Page 387 16.1.1 Specific Big O Examples......Page 388 16.1.2 Analyzing Complex Algorithms......Page 389 16.2.1 Insertion Sort......Page 390 16.2.2 Bubble Sort......Page 392 16.2.3 Quick Sort......Page 394 16.2.4 Merge Sort......Page 396 16.2.5 Radix Sort......Page 398 16.3 Performance Analysis......Page 399 16.4.2 Insertion Sort......Page 401 16.4.6 Radix Sort......Page 402 16.5 Engineering Example—A Selection of Countries......Page 403 Chapter 17 Processing Graphs......Page 408 17.1.2 Implementing Queues......Page 409 17.1.3 Priority Queues......Page 410 17.1.4 Testing Queues......Page 412 17.2.1 Graph Examples......Page 415 17.2.2 Processing Graphs......Page 416 17.2.3 Building Graphs......Page 417 17.2.4 Traversing Graphs......Page 420 17.2.5 Searching Graphs......Page 422 17.3 Minimum Spanning Trees......Page 423 17.4 Finding Paths through a Graph......Page 425 17.4.2 Breadth-First Search (BFS)......Page 426 17.4.3 Dijkstra’s Algorithm......Page 427 17.4.4 Approximation Algorithm......Page 430 17.4.5 Testing Graph Search Algorithms......Page 432 17.5.2 Complex Extensions......Page 434 Appendix A: MATLAB Special Characters, Reserved Words, and Functions......Page 436 Appendix B: The ASCII Character Set......Page 446 Appendix C: Internal Number Representation......Page 448 Appendix D: Answers to True or False and Fill in the Blanks......Page 450 A......Page 458 D......Page 459 F......Page 460 L......Page 462 P......Page 463 S......Page 464 Z......Page 465 This book introduces the power, satisfaction, and joy of computing to beginning engineering students who have little or no previous computing experience. It began as a snapshot of the content of a Georgia Tech course that introduces engineers to computing. However, it has been extensively enhanced to meet the needs of a wider audience of students and educators who want to understand programming for other reasons. In this book, to understand computing, we use the basic syntax and capabilities of MATLAB, a user-friendly language that is emerging as one of the most popular computing languages in engineering Fully updated to comply with MATLAB 2008, Engineering Computation with MATLAB, Second Edition, introduces computing to students with no programming experience, David Smith places programming fundamentals into the context of MATLAB 2008, employing hands-on exercises, examples from the engineering industry, and a variety of core tools to increase problem-solving capability and proficiency.
دانلود کتاب Engineering Computation with MATLAB : International Edition