GNU Octaveの歩き方

GNU Octaveの歩き方

GNU Octave をこれから始める人に役に立ちそうなことをまとめました。具体的な文法などは他のサイト、記事にあたってください。

GNU Octave とは

GNU Octave はフリーの数値計算ソフト(言語)でMATLABと互換性が(ある程度)あります。私はオーディオの測定・解析・フィルタ設計などに使っています。 初心者にも分かりやすく、グラフなども簡単に描けます。

GNU Octave 公式サイト

https://www.gnu.org/software/octave/

Octave のインストール

windows

公式サイトのダウンロードページからインストーラーをダウンロードします。

mac

Homebrewでインストールできるようです(macは持ってないので…)

Linux

ディストリビューションのパッケージマネージャーを使ってインストールします。flatpakを使う方法も有りますが、ディストリビューションのパッケージマネージャを使うほうが面倒が少ないです。 Ubuntuならコマンドラインで

sudo apt install octave

Raspberry Piに関する注意

標準のRaspbian Busterでグラフが描けない不具合が有ります。Ubuntu64bitなら大丈夫です。 Raspberry Pi でOctave を使う

Octaveの起動

コマンドラインで

# GUIで起動
octave --gui

# CUIで起動 
octave --no-gui

オプションを指定しなかった場合にどちらが起動するかはバージョンにより違います。

パッケージ

Octave は色々なパッケージがあって機能拡張することができます。 パッケージの公式ページ https://octave.sourceforge.io/

パッケージインストール

Windowsでは基本的なパッケージはインストール済みです。 Ubuntu の場合にはOctave内からpkgコマンドでインストールするよりもaptを使ってインストールしたほうが楽です。

# signal packageをインストールする場合(Ubuntu,Debian)
sudo apt install octave-signal

インストールされているパッケージを表示するにはOctaveのコマンドラインで

octave> pkg list

パッケージのロード

パッケージはインストールしただけでは使えません。ロードする必要が有ります。 signal package をロードする場合、Octaveのコマンドラインで

octave> pkg load signal

いつも使うパッケージは ~/.octaverc などに記入してしまいましょう。

GNU Octave の情報

Octaveの情報をどこで得るか、簡単にまとめました。

公式サイト

なにはともあれ公式サイトのDocsページ オフラインで見たければPDFファイルもあります。 同じものはGUI起動のoctaveのドキュメントタブ CUI起動のoctaveの場合はコマンドラインで

octave> doc

で見ることができます。CUIの場合にはinfoで表示されるのでキー操作に慣れが必要です。

関数(演算子・キーワード)の情報

octaveコマンドラインでhelpコマンドを使います。 help の後に関数名または演算子、キーワードを入力します。

octave> help 関数名

関数ファイルのコメントが表示されます。自作関数にもコメントで使用法の説明を入れてhelpコマンドで表示できるようにしておきましょう。

演算子を表示するにはOctaveのコマンドラインで

octave> help .

演算子・キーワード・関数をすべて表示する

octave> help --list

この場合でもロードしていないパッケージ内の関数は表示されません。

パッケージについては https://octave.sourceforge.io/ を参照してください。

MATLABのサイト

Octave はMATLABと互換性があるのでMatlabのサイトが参考になります。 日本語サイト https://jp.mathworks.com/products/matlab.html?s_tid=hp_products_matlab

中にはoctaveの公式サイトの説明が不完全で、MATLABのサイトを見ないと詳しい使い方がわからない関数もあったりします。 ただし、MATLABにはあるのにOctaveにはない関数も多くあるので注意してください。

Octave入門

“octave入門"あたりでググれば色々なサイトがヒットします。あちこちの大学の講義資料なんかも有ります。 古い情報が多いですが、v2.xの頃と基本的な文法は変わってないのでたいてい大丈夫です。

Octave のバージョンについて

最新版が良いとは限りません。 v5.0に上がった直後はsignalパッケージのバージョンアップが間に合わずに使えないなんてこともありました。 またUbuntuのLTSは2年に一度でその間、基本的にOctaveのバージョンも変わりません。Octaveのバグフィックスは同じバージョンではなく、次のバージョンになるので(頻繁にバージョンが上がる)うっかりするとバグ入りで不安定なバージョンを使い続けることになります。 Ubuntu20.04に入る5.2.0はそこそこ安定しているようなので、一安心です。

2020年05月25日