[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.1.x.

Preface  
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. Containers  
8. I/O Streams  
9. Variables  
10. Expressions  
11. Evaluation  
12. Statements  Looping and program flow control.
13. Functions and Script Files  
14. Error Handling  
15. Debugging  
16. Input and Output  
17. Plotting  
18. Matrix Manipulation  
19. Arithmetic  
20. Linear Algebra  
21. Nonlinear Equations  
22. Quadrature  
23. Differential Equations  
24. Optimization  
25. Statistics  
26. Financial Functions  
27. Sets  
28. Polynomial Manipulations  
29. Control Theory  
30. Signal Processing  
31. Image Processing  
32. Audio Processing  
33. Quaternions  
34. 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 ---
Preface
Acknowledgements  
How You Can Contribute to Octave  
Distribution  
A Brief Introduction to Octave
1.1 Running Octave  
1.2 Simple Examples  
1.3 Conventions  
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
1.3.5.1 A Sample Function Description  
1.3.5.2 A Sample Command Description  
1.3.5.3 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 readline  
2.4.7 Customizing the Prompt  
2.4.8 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.3 String Objects  
3.1.4 Data Structure Objects  
Numeric Data Types
4.1 Matrices  
4.2 Ranges  
4.3 Logical Values  
4.4 Predicates for Numeric Objects  
Matrices
4.1.1 Empty Matrices  
Strings
5.1 Creating Strings  
5.2 Searching and Replacing  
5.3 String Conversions  
5.4 Character Class Functions  
Containers
7.1 Lists  
7.2 Cell Arrays  
Variables
9.1 Global Variables  
9.3 Status of Variables  
9.4 Summary of Built-in Variables  
9.5 Defaults from the Environment  
Expressions
10.1 Index Expressions  
10.2 Calling Functions  
10.3 Arithmetic Operators  
10.4 Comparison Operators  
10.5 Boolean Expressions  
10.6 Assignment Expressions  
10.7 Increment Operators  
10.8 Operator Precedence  
Calling Functions
10.2.1 Call by Value  
10.2.2 Recursion  
Boolean Expressions
10.5.1 Element-by-element Boolean Operators  
10.5.2 Short-circuit Boolean Operators  
Statements
12.1 The if Statement  
12.2 The switch Statement  
12.3 The while Statement  
12.4 The do-until Statement  
12.5 The for Statement  
12.6 The break Statement  
12.7 The continue Statement  
12.8 The unwind_protect Statement  
12.9 The try Statement  
12.10 Continuation Lines  
The for Statement
12.5.1 Looping Over Structure Elements  
Functions and Script Files
13.1 Defining Functions  
13.2 Multiple Return Values  
13.3 Variable-length Argument Lists  
13.4 Variable-length Return Lists  
13.5 Returning From a Function  
13.6 Function Files  
13.7 Script Files  
13.8 Dynamically Linked Functions  
13.10 Organization of Functions Distributed with Octave  
Error Handling
Debugging
Input and Output
16.1 Basic Input and Output  
16.2 C-Style I/O Functions  
Basic Input and Output
16.1.1 Terminal Output  
16.1.2 Terminal Input  
16.1.3 Simple File I/O  
C-Style I/O Functions
16.2.1 Opening and Closing Files  
16.2.2 Simple Output  
16.2.3 Line-Oriented Input  
16.2.4 Formatted Output  
16.2.5 Output Conversion for Matrices  
16.2.6 Output Conversion Syntax  
16.2.7 Table of Output Conversions  
16.2.8 Integer Conversions  
16.2.9 Floating-Point Conversions  Other Output Conversions::
16.2.10 Other Output Conversions  
16.2.11 Formatted Input  
16.2.12 Input Conversion Syntax  
16.2.13 Table of Input Conversions  
16.2.14 Numeric Input Conversions  
16.2.15 String Input Conversions  
16.2.16 Binary I/O  
16.2.17 Temporary Files  
16.2.18 End of File and Errors  
16.2.19 File Positioning  
Plotting
17.1 Two-Dimensional Plotting  
17.2 Specialized Two-Dimensional Plots  
17.3 Three-Dimensional Plotting  
17.4 Plot Annotations  
17.5 Multiple Plots on One Page  
17.6 Multiple Plot Windows  
17.8 Interaction with gnuplot  
Matrix Manipulation
18.1 Finding Elements and Checking Conditions  
18.2 Rearranging Matrices  
18.3 Special Utility Matrices  
18.4 Famous Matrices  
Arithmetic
19.1 Utility Functions  
19.2 Complex Arithmetic  
19.3 Trigonometry  
19.4 Sums and Products  
19.5 Special Functions  
19.7 Mathematical Constants  
Linear Algebra
20.1 Basic Matrix Functions  
20.2 Matrix Factorizations  
20.3 Functions of a Matrix  
Quadrature
22.1 Functions of One Variable  
22.2 Orthogonal Collocation  
Differential Equations
23.1 Ordinary Differential Equations  
23.2 Differential-Algebraic Equations  
Optimization
24.2 Quadratic Programming  
24.3 Nonlinear Programming  
24.4 Linear Least Squares  
Statistics
25.1 Basic Statistical Functions  
25.2 Tests  
25.3 Models  
25.4 Distributions  
Control Theory
29.1 System Data Structure  
29.2 System Construction and Interface Functions  
29.3 System display functions  
29.4 Block Diagram Manipulations  
29.5 Numerical Functions  
29.6 System Analysis-Properties  
29.7 System Analysis-Time Domain  
29.8 System Analysis-Frequency Domain  
29.9 Controller Design  
29.10 Miscellaneous Functions (Not yet properly filed/documented)  
System Data Structure
29.1.1 Variables common to all OCST system formats  
29.1.2 tf format variables  
29.1.3 zp format variables  
29.1.4 ss format variables  
System Construction and Interface Functions
29.2.1 Finite impulse response system interface functions  
29.2.2 State space system interface functions  
29.2.3 Transfer function system interface functions  
29.2.4 Zero-pole system interface functions  
29.2.5 Data structure access functions  
29.2.6 Data structure internal functions  
System Utilities
34.1 Timing Utilities  
34.2 Filesystem Utilities  
34.3 Controlling Subprocesses  
34.4 Process, Group, and User IDs  
34.5 Environment Variables  
34.6 Current Working Directory  
34.7 Password Database Functions  
34.8 Group Database Functions  
34.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 Installation Problems  
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  
Grammar
E.1 Keywords  



This document was generated by John W. Eaton on May, 18 2005 using texi2html