www.delorie.com/gnu/docs/octave/octave.html   search  
Buy GNU books!

GNU Octave

[Top] [Contents] [Index] [ ? ]

GNU Octave

This manual documents how to run, install and port GNU Octave, as well as its new features and incompatibilities, and how to report bugs. It corresponds to GNU Octave version 2.0.13.

1. A Brief Introduction to Octave  A brief introduction to Octave.
2. Getting Started  
3. Data Types  
4. Numeric Data Types  
5. Strings  
6. Data Structures  
7. Variables  
8. Expressions  
9. Evaluation  
10. Statements  Looping and program flow control.
11. Functions and Script Files  
12. Error Handling  
13. Input and Output  
14. Plotting  
15. Matrix Manipulation  
16. Arithmetic  
17. Linear Algebra  
18. Nonlinear Equations  
19. Quadrature  
20. Differential Equations  
21. Optimization  
22. Statistics  
23. Sets  
24. Polynomial Manipulations  
25. Control Theory  
26. Signal Processing  
27. Image Processing  
28. Audio Processing  
29. System Utilities  
A. Tips and Standards  
B. Known Causes of Trouble  If you have trouble installing Octave.
C. Installing Octave  How to configure, compile and install Octave.
D. Emacs Octave Support  
E. Grammar  
F. GNU GENERAL PUBLIC LICENSE  The GNU General Public License.
Concept Index  An item for each concept.
Variable Index  An item for each documented variable.
Function Index  An item for each documented function.
Operator Index  An item for each documented operator.

 -- The Detailed Node Listing ---


How You Can Contribute to Octave  

A Brief Introduction to Octave

1.1 Running Octave  
1.2 Simple Examples  
1.3 Conventions  


1.3.1 Fonts  
1.3.2 Evaluation Notation  
1.3.3 Printing Notation  
1.3.4 Error Messages  
1.3.5 Format of Descriptions  

Format of Descriptions A Sample Function Description A Sample Command Description A Sample Variable Description  

Getting Started

2.1 Invoking Octave  
2.2 Quitting Octave  
2.3 Commands for Getting Help  
2.4 Command Line Editing  
2.5 How Octave Reports Errors  
2.6 Executable Octave Programs  
2.7 Comments in Octave Programs  

Invoking Octave

2.1.1 Command Line Options  
2.1.2 Startup Files  

Command Line Editing

2.4.1 Cursor Motion  
2.4.2 Killing and Yanking  
2.4.3 Commands For Changing Text  
2.4.4 Letting Readline Type For You  
2.4.5 Commands For Manipulating The History  
2.4.6 Customizing the Prompt  
2.4.7 Diary and Echo Commands  

Data Types

3.1 Built-in Data Types  
3.2 User-defined Data Types  
3.3 Object Sizes  

Built-in Data Types

3.1.1 Numeric Objects  
3.1.2 String Objects  
3.1.3 Data Structure Objects  

Numeric Data Types

4.1 Matrices  
4.2 Ranges  
4.3 Predicates for Numeric Objects  


4.1.1 Empty Matrices  


5.1 Creating Strings  
5.2 Searching and Replacing  
5.3 String Conversions  
5.4 Character Class Functions  


7.1 Global Variables  
7.2 Status of Variables  
7.3 Summary of Built-in Variables  
7.4 Defaults from the Environment  


8.1 Index Expressions  
8.2 Calling Functions  
8.3 Arithmetic Operators  
8.4 Comparison Operators  
8.5 Boolean Expressions  
8.6 Assignment Expressions  
8.7 Increment Operators  
8.8 Operator Precedence  

Calling Functions

8.2.1 Call by Value  
8.2.2 Recursion  

Boolean Expressions

8.5.1 Element-by-element Boolean Operators  
8.5.2 Short-circuit Boolean Operators  


10.1 The if Statement  
10.2 The switch Statement  
10.3 The while Statement  
10.4 The for Statement  
10.5 The break Statement  
10.6 The continue Statement  
10.7 The unwind_protect Statement  
10.8 The try Statement  
10.9 Continuation Lines  

The for Statement

10.4.1 Looping Over Structure Elements  

Functions and Script Files

11.1 Defining Functions  
11.2 Multiple Return Values  
11.3 Variable-length Argument Lists  
11.4 Variable-length Return Lists  
11.5 Returning From a Function  
11.6 Function Files  
11.7 Script Files  
11.8 Dynamically Linked Functions  
11.9 Organization of Functions Distributed with Octave  

Input and Output

13.1 Basic Input and Output  
13.2 C-Style I/O Functions  

Basic Input and Output

13.1.1 Terminal Output  
13.1.2 Terminal Input  
13.1.3 Simple File I/O  

C-Style I/O Functions

13.2.1 Opening and Closing Files  
13.2.2 Simple Output  
13.2.3 Line-Oriented Input  
13.2.4 Formatted Output  
13.2.5 Output Conversion for Matrices  
13.2.6 Output Conversion Syntax  
13.2.7 Table of Output Conversions  
13.2.8 Integer Conversions  
13.2.9 Floating-Point Conversions  Other Output Conversions::
13.2.10 Other Output Conversions  
13.2.11 Formatted Input  
13.2.12 Input Conversion Syntax  
13.2.13 Table of Input Conversions  
13.2.14 Numeric Input Conversions  
13.2.15 String Input Conversions  
13.2.16 Binary I/O  
13.2.17 Temporary Files  
13.2.18 End of File and Errors  
13.2.19 File Positioning  


14.1 Two-Dimensional Plotting  
14.2 Specialized Two-Dimensional Plots  
14.3 Three-Dimensional Plotting  
14.4 Plot Annotations  
14.5 Multiple Plots on One Page  

Matrix Manipulation

15.1 Finding Elements and Checking Conditions  
15.2 Rearranging Matrices  
15.3 Special Utility Matrices  
15.4 Famous Matrices  


16.1 Utility Functions  
16.2 Complex Arithmetic  
16.3 Trigonometry  
16.4 Sums and Products  
16.5 Special Functions  
16.6 Mathematical Constants  

Linear Algebra

17.1 Basic Matrix Functions  
17.2 Matrix Factorizations  
17.3 Functions of a Matrix  


19.1 Functions of One Variable  
19.2 Orthogonal Collocation  

Differential Equations

20.1 Ordinary Differential Equations  
20.2 Differential-Algebraic Equations  


21.1 Quadratic Programming  
21.2 Nonlinear Programming  
21.3 Linear Least Squares  

System Utilities

29.1 Timing Utilities  
29.2 Filesystem Utilities  
29.3 Controlling Subprocesses  
29.4 Process, Group, and User IDs  
29.5 Environment Variables  
29.6 Current Working Directory  
29.7 Password Database Functions  
29.8 Group Database Functions  
29.9 System Information  

Tips and Standards

A.1 Writing Clean Octave Programs  Writing clean and robust programs.
A.2 Tips for Making Code Run Faster.  Making code run faster.
A.3 Tips for Documentation Strings  Writing readable documentation strings.
A.4 Tips on Writing Comments  Conventions for writing comments.
A.5 Conventional Headers for Octave Functions  Standard headers for functions.

Known Causes of Trouble with Octave

B.1 Actual Bugs We Haven't Fixed Yet  Bugs we will fix later.
B.2 Reporting Bugs  
B.3 Have You Found a Bug?  
B.4 Where to Report Bugs  
B.5 How to Report Bugs  
B.6 Sending Patches for Octave  
B.7 How To Get Help with Octave  

Reporting Bugs

B.3 Have You Found a Bug?  
B.4 Where to Report Bugs  Where to send your bug report.
B.5 How to Report Bugs  How to report a bug effectively.
B.6 Sending Patches for Octave  How to send a patch for Octave.

Installing Octave

C.1 Notes  
C.2 Installation Problems  
C.3 Binary Distributions  

Binary Distributions

C.3.1 Installing Octave from a Binary Distribution  
C.3.2 Creating a Binary Distribution  

Emacs Octave Support

D.1 Installing EOS  
D.2 Using Octave Mode  
D.3 Running Octave From Within Emacs  
D.4 Using the Emacs Info Reader for Octave  


E.1 Keywords  

  webmaster     delorie software   privacy  
  Copyright 2003   by The Free Software Foundation     Updated Jun 2003