Book description
Become a proficient Octave user by learning this high-level scientific numerical tool from the ground up
- The easiest way to use GNU Octave's power and flexibility for data analysis
- Work with GNU Octave's interpreter – declare and control mathematical objects like vectors and matrices
- Rationalize your scripts and control program flow
- Extend GNU Octave and implement your own functionality
- Get to know the vast built-in functionality that GNU Octave has to offer
- Build your own GNU Octave toolbox package to solve complex problems
- Learn Octave the simple way, with real-world examples and plenty of screenshots provided throughout the book
In Detail
Today, scientific computing and data analysis play an integral part in most scientific disciplines ranging from mathematics and biology to imaging processing and finance. With GNU Octave you have a highly flexible tool that can solve a vast number of such different problems as complex statistical analysis and dynamical system studies.
The GNU Octave Beginner's Guide gives you an introduction that enables you to solve and analyze complicated numerical problems. The book is based on numerous concrete examples and at the end of each chapter you will find exercises to test your knowledge. It's easy to learn GNU Octave, with the GNU Octave Beginner's Guide to hand.
Using real-world examples the GNU Octave Beginner's Guide will take you through the most important aspects of GNU Octave. This practical guide takes you from the basics where you are introduced to the interpreter to a more advanced level where you will learn how to build your own specialized and highly optimized GNU Octave toolbox package. The book starts by introducing you to work variables like vectors and matrices, demonstrating how to perform simple arithmetic operations on these objects before explaining how to use some of the simple functionality that comes with GNU Octave, including plotting. It then goes on to show you how to write new functionality into GNU Octave and how to make a toolbox package to solve your specific problem. Finally, it demonstrates how to optimize your code and link GNU Octave with C and C++ code enabling you to solve even the most computationally demanding tasks. After reading GNU Octave Beginner's Guide you will be able to use and tailor GNU Octave to solve most numerical problems and perform complicated data analysis with ease.
Table of contents
-
GNU Octave
- Table of Contents
- GNU Octave
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Preface
-
1. Introducing GNU Octave
- So what is GNU Octave?
- Installing Octave
- Time for action – building Octave from source
- Checking your installation with peaks
- Time for action – testing with peaks
- Customizing Octave
- Time for action – creating an Octave home directory under Windows
- Time for action – editing the .octaverc file
- Installing additional packages
- Time for action – installing additional packages
- Getting help
- The behaviour of the Octave command prompt
- Summary
-
2. Interacting with Octave: Variables and Operators
- Simple numerical variables
- Time for action – manipulating arrays
- Structures and cell arrays
- Time for action – instantiating a structure
- Time for action – instantiating a cell array
- Getting information
- Time for action – using whos
- A few things that make life easier
- Basic arithmetic
- Time for action – doing addition and subtraction operations
- Time for action – doing multiplication operations
- Time for action – doing left and right division
- Comparison operators and precedence rules
- Time for action – working with precedence rules
- A few hints
- Summary
-
3. Working with Octave:Functions and Plotting
- Octave functions
- Time for action – using the cos function
- Time for action – putting together mathematical functions
- Time for action – trying out floor, ceil, round, and fix
- Time for action – using Octave for advanced linear algebra
- Two-dimensional plotting
- Time for action – making your first plot
- Time for action – changing the figure properties
- Time for action – having multiple graphs in the same figure
- Time for action – making an inset
- Three-dimensional plotting
- Time for action – making a surface plot
- Time for action – plotting parametric curves
- Summary
-
4. Rationalizing: Octave Scripts
- Writing and executing your first script
- Time for action – making your first script
- Time for action – interacting with the user
- Statements
- Added flexibility – C style input and output functions
- Saving your work
- Loading your work
- Summary
-
5. Extensions: Write Your Own Octave Functions
- Your first Octave function
- Time for action – programming the minmax function
- Writing and applying user-supplied functions
- Time for action – using lsode for numerical integration
- More advanced function programming: Monte Carlo integration
- Time for action – vectorizing the Monte Carlo integrator
- Summary
-
6. Making Your Own Package: A Poisson Equation Solver
- The Poisson equation – two examples of heat conduction
- Finite differencing
- Time for action – instantiating a sparse matrix
- Implementation and package functions
- Time for action – using imagesc
- Time for action – comparing with analytical solution
- Time for action – solving a two-dimensional Laplace equation
- The pois-solv package
- Summary
-
7. More Examples: Data Analysis
- Loading data files
- Simple descriptive statistics
- Function fitting
- Time for action – using polyfit
- Time for action – calculating the correlation coefficient
- 8. Need for Speed: Optimization and Dynamically Linked Functions
- A. Pop Quiz Answers
- Index
Product information
- Title: GNU Octave
- Author(s):
- Release date: June 2011
- Publisher(s): Packt Publishing
- ISBN: 9781849513326
You might also like
book
GNU Octave by Example: A Fast and Practical Approach to Learning GNU Octave
Get a quick start to learn, understand, and apply GNU Octave using a math- and programming-friendly …
book
C++ Standard Library Quick Reference
This quick reference is a condensed reference guide to the essential data structures, algorithms, and functions …
book
Raspberry Pi System Software Reference
Raspberry Pi is Linux, but it's a unique flavor of Linux, specifically for the ARM-based Pi. …
book
Mastering IPython 4.0
Get to grips with the advanced concepts of interactive computing to make the most out of …