Octave関係メモ

     ・Octave Version Up方法(Windows用 2.1.36→2.1.50)
     Step1 Octave Home Page からDownloadのページに移動.
     Step2 BinaryのWindows用のリンク先( http://sourceforge.net/projects/octave )に移動.
          (Contributed PackagesからGNU Octave Repositoryのページ( http://octave.sf.net )に移動し
           右上の Files をクリックして移動しても良い.)
     Step3 Octave-2.1.50-windowsのdownloadをクリック.
     Step4 Download-octave-2.1.50a-inst.exeをクリック.
     Step5 最寄のHostのDownloadをクリックしてoctave-2.1.50a-inst.exeをダウンロード.
     Step6 ダウンロードしたoctave-2.1.50a-inst.exeを起動して言語(Englishなど)を選択後
          インストーラにしたがってインストールを実施.
          (Dos画面が現れたらとりあえずEnterを押していれば問題ない.)
     Step7 最後にCloseをクリック.

     ・Octave初期ディレクトリの指定方法
     Octavercファイルを開く
     (C:\Program Files\GNU Octave 2.1.36\usr\share\octave\site\m\startup\octaverc)
     cd でディレクトリ指定する.
     OctavercファイルはWordやメモ帳などで編集可能.
     編集後,自動的に拡張子txtがつく場合は拡張子txtを削除する.

     ・Octaveで用いるgnuplotの指定方法
     Octavercファイルを開く
     (C:\Program Files\GNU Octave 2.1.36\usr\share\octave\site\m\startup\octaverc)

     例えばD:\gnuplot\binのフォルダにOctaveで用いたいgnuplotのpgnuplot.exeが存在する場合

     Ocravercファイルに

    gnuplot_binary = 'D:/gnuplot/bin/pgnuplot.exe';
    gnuplot_has_multiplot = 1;

    page_output_immediately = 1;

     のように追記する.

     ・OctaveのPathの設定方法
     Octavercファイルを開く
     (C:\Program Files\GNU Octave 2.1.36\usr\share\octave\site\m\startup\octaverc)

    path( [':/usr/local/share/octave/' OCTAVE_VERSION '/m/statistics//'], ...
    [ '/usr/local/share/octave/' OCTAVE_VERSION '/m/control//' ] );

    と記述されている部分に

    path( [':/usr/local/share/octave/' OCTAVE_VERSION '/m/statistics//'], ...
    [ '/usr/local/share/octave/' OCTAVE_VERSION '/m/control//' ], ...
    [ '/usr/local/share/octave/' OCTAVE_VERSION 'D:/05_03//' ] );

    のようにPathを追加する.
    ただし全角文字のPath名には対応できない.

     OctavercファイルはWordやメモ帳などで編集可能.
     編集後,自動的に拡張子txtがつく場合は拡張子txtを削除する.

     ・Octave関連ファイルについて
     文字化けして読み取れないファイルはWordで開くと読める場合あり.

     ・グラフ記述について
     GNUPLOTをインストールしないとグラフ記述できない.
     xlabel,ylabel,axis,grid 等はplot文の前に設定.
     xlabel,ylabelで全角文字を使うとgnuplot強制終了してしまうので使えない.

     Gridは, Grid('on') で指定.
     axisに;をつけないとコマンドウィンドウにans=[]が表示される.

    gset grid

    でもよい.

     plotの画面をクリアするにはclearplot()を用いる.

     2つのsubplotの余白をあわせるためには
     gset('lmargin 10')などであわせる.
     (このようにするとgnuplot上で'set lmargin 10'が実行される.)

     タイトルの位置をグラフの下に表示する場合は

     gset key below

    と記述する.

    abcという行列を作成した場合

    gplot abc using 1:2 title "abc"

    で1列目を横軸,2列目を縦軸としたグラフを記述することもできる.

    gplot abc using 1:2 title ""

    とすると凡例なし.

    gplot abc using 1:2 title "" with lines 1

    とすると線種(この場合はLine1)を指定できる.

    gnuplotのグラフ画面左下にマウスポインタの位置が表示される場合

    Octaveのコマンドウィンドウもしくはmファイルの中で

    gset terminal windows

    を実行し

    gnuplotのコマンド画面をクリックしてアクティブ化してから
    グラフ画面をクリックしてアクティブ化すると消える.

     ・データの読込みについて
     load ファイル名;で読込み可.
     testdata = load aaa.txt;とすると行列testdataにaaa.txt格納.
     読み取りデータの最後の行は改行のみにする.
     ディレクトリ指定で読み込みたいときは
     testdata = load 'D:\\05_03\\98Test\\05_08\\ASS500_050R_SN002_xref2x.txt';
     のように' 'で囲むこと.

     ・データの保存について
     アスキー形式でtxtファイルに保存したいときは
     save -ascii ファイル名.txt 変数名;
     で保存可能.ただし,-asciiは小文字であること

     ・CSV形式のデータの読込み
     mm = dlmread('sample.csv',',');
     のようにすればCSV形式のファイル読込みできる.
     mm = dlmread('D:\\GNU Octave 2.1.36\\m_file\\for_octave\\sample.csv',',');
     のようにPath付でも読込可.

     しかし読みこんだデータをよくみると,Octave 2.1.36では,dlmreadはバグっている.
     (例えば3×4の行列などをつくって読込ませてみるとわかる.)
     →Octave 2.1.50では,このバグ修正されていることを確認.

     Octaveのdlmreadでは%などのコメントに対しては対応できていないので注意すること.
     また,Octaveのdlmreadではワイルドカード(*)使えなかった.

     ・CSV形式のデータの書込み
     dlmwrite('D:\\GNU Octave 2.1.50\\m_file\\for_octave\\sample.csv',data,',');
     のようにすればCSV形式で保存可能.

     ・Bode線図記述方法
     伝達関数からBode線図を記述する場合,tf2sysを用いて先ずsysデータを作り
     その後,bode(sys)でbode線図記述.
     同様に状態空間表現の場合はss2sysを用いて先ずsysデータを作り
     その後,bode(sys)でbode線図記述.

     ・Octaveのファイル名
     一番最初はアルファベットにすること.数字にするとエラー発生する.

     ・plotのeps出力
     plotの前に
     gset terminal postscript eps;
     gset output "file_name.eps";
     と記述する.

     その後,以下のように記述すると画面にplotできるように戻る.

     gset terminal windows


    Sample m file for Octave ( for Download )

    ・TXTデータの周波数分析(1列目 時間,2列目 データ)
    ・最適制御の状態FBゲインを求める.
    ・Hinf制御の状態FBゲインを求める.
    ・最適オブザーバゲインを求める.
    ・カルマンフィルタゲインを求める.
    ・Bode線図を単位[Hz]で記述する.
    ・移動平均の周波数特性を記述する.
    ・入出力の時間データを用いて周波数応答を求める.
    ・Sin波形で計測した結果を用いて周波数応答を求める.
    ・Sin波形で加振して周波数応答を求める際に周波数刻みを考慮して計測点数とサンプリング時間を求める.
    ・Sin波形で計測した結果を用いて求めた周波数応答計算結果を図示する.
    ・実験データの周波数特性と理論上の周波数特性を重ね書きしたBode線図を記述する.

    ・楕円(円)を記述する.
    ・放物線を記述する.
    ・双曲線を記述する.
    ・サイクロイドを記述する.
    ・懸垂線を記述する.
    ・インボリュート曲線を記述する.


 
MailBox 戻る(To Software MainPage)