Programming in MATLAB ® A problem-solving approach

MATLAB® provides an interactive programming interface for numerical computation and data visualization making it the default framework used for analysis, design and research in many domains of science and industry. Programming in MATLAB® : A problem-solving approach is intended as an aid to enginee...

Descripción completa

Detalles Bibliográficos
Autor principal: Patel, Ram N. (-)
Otros Autores: Mittal, Ankush
Formato: Libro electrónico
Idioma:Inglés
Publicado: Noida : Pearson India 2014.
Edición:1st ed
Colección:Always learning.
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009820412106719
Tabla de Contenidos:
  • Cover
  • Contents
  • Preface
  • Acknowledgments
  • About the Authors
  • 1. Introduction to MATLAB® Desktop
  • 1.1 Introduction
  • 1.2 Getting Started
  • 1.3 MATLAB Desktop
  • 1.3.1 Command Window
  • 1.3.2 Command History Window
  • 1.3.3 Current Directory Browser
  • 1.3.4 Workspace and Array Editor
  • 1.3.5 Help Browser
  • 1.3.6 Edit/Debug Window
  • 1.3.7 Path Browser
  • 1.4 Getting Help from Command Window
  • 1.5 General Syntax
  • 1.6 Writing Simple Expressions
  • 1.7 Screen Display Control (The "Format" Function)
  • 1.8 MATLAB Demonstrations
  • 1.9 How to Quit MATLAB
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 2. Matrix Operations and Applications
  • 2.1 Introduction
  • 2.2 Data Types in MATLAB
  • 2.3 MATLAB Array
  • 2.4 Creating Vectors and Matrices
  • 2.4.1 Creating Sub-matrices of a Given Matrix
  • 2.4.2 Changing the Elements of a Matrix
  • 2.4.3 Creating Special Matrices
  • 2.4.4 Concatenation
  • 2.5 Operators
  • 2.5.1 Matrix Operators
  • 2.5.2 Matrix Multiplication and Inversion
  • 2.5.3 Array Operators
  • 2.5.4 Relational Operators
  • 2.5.5 Logical Operators
  • 2.6 Properties of a Matrix
  • 2.7 Replicating Data to Form a Matrix
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 3. MATLAB® Graphics and Plotting
  • 3.1 Introduction
  • 3.2 2-Dimensional Plots
  • 3.3 Plot Aesthetics
  • 3.3.1 Changing the Axes
  • 3.3.2 Adding Text
  • 3.4 Multiple Plots
  • 3.4.1 Multiple Plots on a Window
  • 3.4.2 Some Important Functions on Multiple Plots
  • 3.5 Subplotting
  • 3.6 Some Other Useful 2-D Plots
  • 3.7 Advanced Concepts on Plot Annotation and Labeling
  • 3.7.1 Using Handle Graphics
  • 3.7.2 An Easier Way to Plot Editing
  • 3.8 3-D Graphics
  • 3.9 Function Plotters
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 4. Control Structures, Loops, and File Handling
  • 4.1 Introduction
  • 4.2 Conditional Statements.
  • 4.3 Loops
  • 4.4 Nested Loops
  • 4.5 Breaking Control Structures (Break and Continue)
  • 4.6 File Types in MATLAB
  • 4.7 Recording a MATLAB Session
  • 4.8 Saving and Retrieving Workspace Variables and Spreadsheet Data
  • 4.9 Handling External Files
  • 4.9.1 Opening a File
  • 4.9.2 Writing to a File
  • 4.9.3 Reading from a File
  • 4.9.4 Closing a File
  • 4.10 File Handling (Specific Formats) [csvread, csvwrite, dlmread, and dlmwrite]
  • 4.11 MATLAB Import Wizard
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 5. Scripts and Functions
  • 5.1 Introduction
  • 5.2 Making Simple Script and Function Files
  • 5.3 Input and Output Arguments in Functions
  • 5.3.1 Arguments of Different Types
  • 5.3.2 Variable Number of Arguments
  • 5.4 Types of Functions
  • 5.4.1 Function Functions, Feval, and Inline
  • 5.4.2 Subfunctions
  • 5.4.3 Private Functions
  • 5.4.4 Function Name Resolution
  • 5.5 Global and Persistent Variables
  • 5.6 Polynomial Functions
  • 5.7 Recursive Functions
  • 5.8 Common Errors in Using Functions
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 6. Numerical Methods, Calculus, and Statistics
  • 6.1 Introduction
  • 6.2 Numerical Integration
  • 6.2.1 Double and Triple Integrals
  • 6.3 Numerical Differentiation
  • 6.4 Interpolation
  • 6.4.1 Multidimensional Interpolation
  • 6.5 Curve Fitting
  • 6.6 Numerical Optimization
  • 6.7 Linear Equations
  • 6.7.1 Gauss Elimination
  • 6.7.2 Ill-conditioned Problems
  • 6.7.3 Pivoting to Handle Ill-conditioned Problems
  • 6.8 Solution of Nonlinear Algebraic Equations
  • 6.8.1 Gauss-Seidel (GS) Method
  • 6.8.2 GS Solution for a System of Equations
  • 6.8.3 Newton-Raphson (NR) Method
  • 6.8.4 NR Solution for a System of Equations
  • 6.9 Numerical Solution of Ordinary Differential Equations
  • 6.9.1 Euler's Method for Solution of Differential Equations
  • 6.9.2 Euler's Modified Method.
  • 6.9.3 Runge-Kutta Method (Order-2)
  • 6.9.4 Runge-Kutta Method (Order-4)
  • 6.10 Solution of Differential Equations through ODE Functions
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 7. Using Memory Efficiently
  • 7.1 Introduction
  • 7.2 MATLAB Memory Storage
  • 7.3 Out of Memory Errors
  • 7.4 Coding Tips for Memory Usage
  • 7.4.1 Preallocation of Arrays
  • 7.4.2 Breaking Down the Problem
  • 7.4.3 Use Temporary Variables Wisely
  • 7.4.4 Using Less Bytes Per Data Member
  • 7.4.5 Writing Functions Carefully
  • 7.4.6 Using Global Variables
  • 7.5 System-Related Tips for Memory Usage
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 8. Using the MATLAB® Debugger and Profiler
  • 8.1 Introduction
  • 8.2 Types of Errors
  • 8.3 Using the Debugger
  • 8.4 Developing Bug-free Programs
  • 8.5 Common Bugs
  • 8.5.1 Bug Prevention
  • 8.5.2 Bug Detection
  • 8.5.3 Common Run-time Errors
  • 8.6 Using MATLAB Profiler
  • 8.6.1 Program Profiling
  • 8.6.2 Using the Profiler and M-Lint for Enhancing Performance
  • 8.6.3 When to Use the Profiler
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 9. Efficient Coding Using Vectorization Technique
  • 9.1 Introduction
  • 9.2 Vector Concepts
  • 9.2.1 MATLAB Indexing
  • 9.2.2 Utility Functions
  • 9.3 Loop Conversion
  • 9.4 MATLAB Acceleration
  • 9.5 Solving Problems with Vectorization
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 10. Precision and Errors
  • 10.1 Introduction
  • 10.2 MATLAB Infinity and Zero
  • 10.3 Round-off Errors
  • 10.4 Propagated Errors
  • 10.5 Getting Around the Errors
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 11. Advanced Concepts in MATLAB®
  • 11.1 Introduction
  • 11.2 Symbolic Processing
  • 11.2.1 Creating and Using Symbolic Objects
  • 11.2.2 Expressions Involving Many Symbolic Objects
  • 11.2.3 Variable Substitution.
  • 11.2.4 Algebraic Operations with Symbolic Expressions
  • 11.2.5 Differentiation with Symbolic Expressions
  • 11.2.6 Integration with Symbolic Expressions
  • 11.2.7 Solving Algebraic Equations
  • 11.2.8 Solving Differential Equations
  • 11.2.9 Laplace Transform
  • 11.3 Cell Arrays and Structures
  • 11.4 Calling C Functions
  • 11.4.1 The Distinction between mx and mex Prefixes
  • 11.4.2 Creating C Language MEX-Files
  • 11.5 Object Oriented Design
  • 11.5.1 Classes in MATLAB
  • 11.5.2 Overloading
  • 11.5.3 Inheritance
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 12. Modeling with Simulink®
  • 12.1 Introduction
  • 12.2 Creating a Simulink Model
  • 12.2.1 Starting Simulink
  • 12.2.2 Opening a New Model File
  • 12.2.3 Creating Blocks
  • 12.2.4 Setting the Parameters and Making Connections
  • 12.2.5 Setting the Simulink Configuration Parameters
  • 12.2.6 Running/Stopping the Simulation
  • 12.2.7 Sending Data to the Workspace
  • 12.3 Dealing with Complex System Equations
  • 12.4 Creating Subsystems
  • 12.5 Masking Subsystems
  • 12.6 Using the Blocksets and Toolboxes
  • 12.6.1 Physical Modeling with Simulink
  • 12.6.2 Essential Rules in Physical Modeling
  • 12.7 Linear State Space Model From Simulink Models
  • 12.8 Running the Simulink Model Through the Command Line
  • 12.9 Development of Graphical User Interface
  • 12.10 Simulink Model File Formats (SLX and MDL)
  • 12.10.1 Upgrading Models to SLX
  • 12.10.2 Making Your Model Compatible to Different Simulink Versions
  • 12.10.3 Saving from One Earlier Simulink Version to Another
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • 13. Digital Image Processing
  • 13.1 Introduction
  • 13.1.1 Image as a Matrix
  • 13.1.2 Getting Information about an Image
  • 13.1.3 Data Types of Image Variables
  • 13.1.4 Basic Commands in Image Processing
  • 13.2 Histogram Processing.
  • 13.2.1 Creating and Displaying Image Histogram
  • 13.2.2 Histogram Equalization
  • 13.3 Operations on Images
  • 13.3.1 Linear Spatial Filtering
  • 13.3.2 Spatial Noise Filtering
  • 13.3.3 Morphological Image Processing
  • 13.4 Point, Line, and Edge Detection
  • 13.4.1 Point Detection
  • 13.4.2 Line Detection
  • 13.4.3 Edge Detection
  • 13.5 Thresholding
  • 13.5.1 Global Thresholding
  • 13.5.2 Local Thresholding
  • Programming Tips and Pitfalls
  • Summary
  • Exercises
  • Index.