Description
Efnisyfirlit
- Half Title
- Title Page
- Copyright
- Contents
- Preface
- Essentials
- 1 Introduction
- 1.1 Using MATLAB
- 1.1.1 Arithmetic
- 1.1.2 Variables
- 1.1.3 Mathematical functions
- 1.1.4 Functions and commands
- 1.1.5 Vectors
- 1.1.6 Linear equations
- 1.1.7 Tutorials and demos
- 1.2 The desktop
- 1.2.1 Using the Editor and running a script
- 1.2.2 Help, publish, and view
- 1.2.3 Symbolics and the MuPAD notebook APP
- Differentiation and integration
- 1.2.4 Other APPS
- 1.2.5 Additional features
- 1.3 Sample program
- 1.3.1 Cut and paste
- 1.3.2 Saving a program: script files
- Current directory
- Running a script from the current folder browser
- 1.3.3 A program in action
- Summary
- Chapter exercises
- 2 MATLAB Fundamentals
- 2.1 Variables
- 2.1.1 Case sensitivity
- 2.2 The workspace
- 2.2.1 Adding commonly used constants to the workspace
- 2.3 Arrays: Vectors and matrices
- 2.3.1 Initializing vectors: Explicit lists
- 2.3.2 Remember the following important rules
- 2.3.2 Initializing vectors: The colon operator
- 2.3.3 The linspace and logspace functions
- 2.3.4 Transposing vectors
- 2.3.5 Subscripts
- 2.3.6 Matrices
- 2.3.7 Capturing output
- 2.3.8 Structure plan
- 2.4 Vertical motion under gravity
- 2.5 Operators, expressions, and statements
- 2.5.1 Numbers
- 2.5.2 Data types
- 2.5.3 Arithmetic operators
- 2.5.4 Operator precedence
- 2.5.5 The colon operator
- 2.5.6 The transpose operator
- 2.5.7 Arithmetic operations on arrays
- 2.5.8 Expressions
- 2.5.9 Statements
- 2.5.10 Statements, commands, and functions
- 2.5.11 Formula vectorization
- 2.6 Output
- 2.6.1 The disp statement
- 2.6.2 The format command
- 2.6.3 Scale factors
- 2.7 Repeating with for
- 2.7.1 Square roots with Newton’s method
- 2.7.2 Factorials!
- 2.7.3 Limit of a sequence
- 2.7.4 The basic for construct
- 2.7.5 for in a single line
- 2.7.6 More general for
- 2.7.7 Avoid for loops by vectorizing!
- 2.8 Decisions
- 2.8.1 The one-line if statement
- 2.8.2 The if-else construct
- 2.8.3 The one-line if-else statement
- 2.8.4 elseif
- 2.8.5 Logical operators
- 2.8.6 Multiple ifs versus elseif
- 2.8.7 Nested ifs
- 2.8.8 Vectorizing ifs?
- 2.8.9 The switch statement
- 2.9 Complex numbers
- Summary
- Chapter exercises
- 3 Program Design and Algorithm Development
- 3.1 The program design process
- 3.1.1 The projectile problem
- 3.2 Programming MATLAB functions
- 3.2.1 Inline objects: harmonic oscillators
- 3.2.2 MATLAB function: y = f(x)
- Summary
- Chapter exercises
- 4 MATLAB Functions and Data Import-Export Utilities
- 4.1 Common functions
- 4.2 Importing and exporting data
- 4.2.1 The load and save commands
- 4.2.2 Exporting text (ASCII) data
- 4.2.3 Importing text (ASCII) data
- 4.2.4 Exporting binary data
- 4.2.4.1 Importing binary data
- Summary
- Chapter exercises
- 5 Logical vectors
- 5.1 Examples
- 5.1.1 Discontinuous graphs
- 5.1.2 Avoiding division by zero
- 5.1.3 Avoiding infinity
- 5.1.4 Counting random numbers
- 5.1.5 Rolling dice
- 5.2 Logical operators
- 5.2.1 Operator precedence
- 5.2.2 Danger
- 5.2.3 Logical operators and vectors
- 5.3 Subscripting with logical vectors
- 5.4 Logical functions
- 5.4.1 Using any and all
- 5.5 Logical vectors instead of elseif ladders
- Summary
- Chapter exercises
- 6 Matrices and Arrays
- 6.1 Matrices
- 6.1.1 A concrete example
- 6.1.2 Creating matrices
- 6.1.3 Subscripts
- 6.1.4 Transpose
- 6.1.5 The colon operator
- 6.1.6 Duplicating rows and columns: tiling
- 6.1.7 Deleting rows and columns
- 6.1.8 Elementary matrices
- 6.1.9 Specialized matrices
- 6.1.10 Using MATLAB functions with matrices
- 6.1.11 Manipulating matrices
- 6.1.12 Array (element-by-element) operations on matrices
- 6.1.13 Matrices and for
- 6.1.14 Visualization of matrices
- 6.1.15 Vectorizing nested fors: loan repayment tables
- 6.1.16 Multi-dimensional arrays
- 6.2 Matrix operations
- 6.2.1 Matrix multiplication
- 6.2.2 Matrix exponentiation
- 6.3 Other matrix functions
- 6.4 Population growth: Leslie matrices
- 6.5 Markov processes
- 6.5.1 A random walk
- 6.6 Linear equations
- 6.6.1 MATLAB’s solution
- 6.6.2 The residual
- 6.6.3 Over-determined systems
- 6.6.4 Under-determined systems
- 6.6.5 Ill conditioning
- 6.6.6 Matrix division
- 6.7 Sparse matrices
- Summary
- Chapter exercises
- 7 Function M-files
- 7.1 Example: Newton’s method again
- 7.2 Basic rules
- 7.2.1 Subfunctions
- 7.2.2 Private functions
- 7.2.3 P-code files
- 7.2.4 Improving M-file performance with the profiler
- 7.3 Function handles
- 7.4 Command/function duality
- 7.5 Function name resolution
- 7.6 Debugging M-files
- 7.6.1 Debugging a script
- 7.6.2 Debugging a function
- 7.7 Recursion
- Summary
- Chapter exercises
- 8 Loops
- 8.1 Determinate repetition with series for
- 8.1.1 Binomial coefficient
- 8.1.2 Update processes
- 8.1.3 Nested fors
- 8.2 Indeterminate repetition with series while
- 8.2.1 A guessing game
- 8.2.2 The while statement
- 8.2.3 Doubling time of an investment
- 8.2.4 Prime numbers
- 8.2.5 Projectile trajectory
- 8.2.6 break and continue
- 8.2.7 Menus
- Summary
- Chapter exercises
- 9 MATLAB Graphics
- 9.1 Basic 2-D graphs
- 9.1.1 Labels
- 9.1.2 Multiple plots on the same axes
- 9.1.3 Line styles, markers and color
- 9.1.4 Axis limits
- 9.1.5 Multiple plots in a figure: subplot
- 9.1.6 figure, clf and cla
- 9.1.7 Graphical input
- 9.1.8 Logarithmic plots
- 9.1.9 Polar plots
- 9.1.10 Plotting rapidly changing mathematical functions: fplot
- 9.1.11 The Property Editor
- 9.2 3-D plots
- 9.2.1 plot3
- 9.2.2 Animated 3-D plots with comet3
- 9.2.3 Mesh surfaces
- 9.2.4 Contour plots
- 9.2.5 Cropping a surface with NaNs
- 9.2.6 Visualizing vector fields
- 9.2.7 Visualization of matrices
- 9.2.8 Rotation of 3-D graphs
- 9.3 Handle Graphics
- 9.3.1 Getting handles
- 9.3.2 Graphics object properties and how to change them
- 9.3.3 A vector of handles
- 9.3.4 Graphics object creation functions
- 9.3.5 Parenting
- 9.3.6 Positioning figures
- 9.4 Editing plots
- 9.4.1 Plot edit mode
- 9.4.2 Property Editor
- 9.5 Animation
- 9.5.1 Animation with Handle Graphics
- 9.6 Color etc.
- 9.6.1 Colormaps
- 9.6.2 Color of surface plots
- 9.6.3 Truecolor
- 9.7 Lighting and camera
- 9.8 Saving, printing and exporting graphs
- 9.8.1 Saving and opening figure files
- 9.8.2 Printing a graph
- 9.8.3 Exporting a graph
- Summary
- Chapter exercises
- 10 Vectors as Arrays and Other Data Structures
- 10.1 Update processes
- 10.1.1 Unit time steps
- 10.1.2 Non-unit time steps
- 10.1.3 Using a function
- 10.1.4 Exact solution
- 10.2 Frequencies, bar charts, and histograms
- 10.2.1 A random walk
- 10.2.2 Histograms
- 10.3 Sorting
- 10.3.1 Bubble sort
- 10.3.2 MATLAB’s sort
- 10.4 Structures
- 10.5 Cell arrays
- 10.5.1 Assigning data to cell arrays
- 10.5.2 Accessing data in cell arrays
- 10.5.3 Using cell arrays
- 10.5.4 Displaying and visualizing cell arrays
- 10.6 Classes and objects
- Summary
- 11 Errors and Pitfalls
- 11.1 Syntax errors
- 11.1.1 Incompatible vector sizes
- 11.1.2 Name hiding
- 11.2 Logic errors
- 11.3 Rounding error
- Summary
- Chapter exercises
- Applications
- 12 Dynamical Systems
- 12.1 Cantilever beam
- 12.2 Electric current
- 12.3 Free fall
- 12.4 Projectile with friction
- Summary
- Chapter exercises
- 13 Simulation
- 13.1 Random number generation
- 13.1.1 Seeding rand
- 13.2 Spinning coins
- 13.3 Rolling dice
- 13.4 Bacteria division
- 13.5 A random walk
- 13.6 Traffic flow
- 13.7 Normal (Gaussian) random numbers
- Summary
- Chapter exercises
- 14 Introduction to Numerical Methods
- 14.1 Equations
- 14.1.1 Newton’s method
- 14.1.1.1 Complex roots
- 14.1.2 The Bisection method
- 14.1.3 fzero
- 14.1.4 roots
- 14.2 Integration
- 14.2.1 The Trapezoidal rule
- 14.2.2 Simpson’s rule
- 14.2.3 quad
- 14.3 Numerical differentiation
- 14.3.1 diff
- 14.4 First-order differential equations
- 14.4.1 Euler’s method
- 14.4.2 Example: Bacteria growth
- 14.4.3 Alternative subscript notation
- 14.4.4 A predictor-corrector method
- 14.5 Linear ordinary differential equations (LODEs)
- 14.6 Runge-Kutta methods
- 14.6.1 A single differential equation
- 14.6.2 Systems of differential equations: Chaos
- 14.6.3 Passing additional parameters to an ODE solver
- 14.7 A partial differential equation
- 14.7.1 Heat conduction
- 14.8 Other numerical methods
- Summary
- Chapter exercises
- 15 Signal Processing
- 15.1 Harmonic analysis
- 15.2 Fast Fourier Transform (FFT)
- 16 SIMULINK® Toolbox
- 16.1 Mass-spring-damper dynamic system
- 16.2 Bouncing ball dynamic system
- 16.3 The van der Pol oscillator
- 16.4 The Duffing oscillator
- Chapter exercises
- 17 Symbolics Toolbox
- 17.1 Algebra
- 17.1.1 Polynomials
- 17.1.2 Vectors
- 17.1.3 Matrices
- 17.2 Calculus
- 17.3 Laplace and Z transforms
- 17.4 Generalized Functions*
- 17.5 Differential equations
- 17.6 Implementation of funtool, MuPAD, and help
- 17.6.1 The funtool
- 17.6.2 The mupad Notebook* and Symbolic help
- Chapter exercises
- Appendix A Syntax Quick Reference
- A.1 Expressions
- A.2 Function M-files
- A.3 Graphics
- A.4 if and switch
- A.5 for and while
- A.6 Input/output
- A.7 load/save
- A.8 Vectors and matrices
- Appendix B Command and Function Quick Reference
- B.1 General purpose commands
- B.1.1 Managing commands
- B.1.2 Managing variables and the workspace
- B.1.3 Files and the operating system
- B.1.4 Controlling the Command Window
- B.1.5 Starting and quitting MATLAB
- B.2 Logical functions
- B.3 Language constructs and debugging
- B.3.1 MATLAB as a programming language
- B.3.2 Interactive input
- B.4 Matrices and matrix manipulation
- B.4.1 Elementary matrices
- B.4.2 Special variables and constants
- B.4.3 Time and date
- B.4.4 Matrix manipulation
- B.4.5 Specialized matrices
- B.5 Mathematical functions
- B.6 Matrix functions
- B.7 Data analysis
- B.8 Polynomial functions
- B.9 Function functions
- B.10 Sparse matrix functions
- B.11 Character string functions
- B.12 File I/O functions
- B.13 Graphics
- B.13.1 2-D
- B.13.2 3-D
- B.13.3 General
- Appendix C ASCII Character Codes
- Appendix D Solutions to Selected Exercises
- Chapter 1
- Chapter 2
- Chapter 3
- Chapter 4
- Chapter 5
- Chapter 6
- Chapter 7
- Chapter 8
- Chapter 9
- Chapter 11
- Chapter 13
- Chapter 14
- Index
- A
- B
- C
- D
- E
- F
- G
- H
- I
- L
- M
- N
- O
- P
- Q
- R
- S
- T
- V
- Z
Reviews
There are no reviews yet.