Book Description
Become a proficient Octave user by learning this highlevel 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 builtin functionality that GNU Octave has to offer
 Build your own GNU Octave toolbox package to solve complex problems
 Learn Octave the simple way, with realworld 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 realworld 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
 Twodimensional 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
 Threedimensional 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 usersupplied 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 twodimensional Laplace equation
 The poissolv 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