はじめに
※ MATLAB、Python、Scilab、Julia比較ページはこちら。
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/
Scilabに於けるユーザ関数作成方法の備忘録。
書き方はほとんどMATLABと一緒。
関数の最後に”endfunctoin”が付く程度。
こちらは1ファイルに複数の関数を定義してもさほど問題にならないが、MATLAB移植を考えると1関数1ファイルにしておいた方が都合が良い。
ユーザ関数
関数毎にsciファイルを作成。
MATLABと異なり関数名とファイル名は同一にする必要はない。
ただし、execでsciを実行して関数をワークスペースに展開する必要はある。
-->edit test_func
// a,b,cが引数
// x,yが戻り値
function [x,y] = test_func(a,b,c)
x=a+b
y=a-c
endfunction
カレントディレクトリに保存。
関数定義のロード。
-->exec test_func.sci
関数実行。
-->[A,B]=test_func(1,2,3);
-->[A,B]
ans =
3. - 2.
まとめ
MATLABと異なり、関数名とファイル名が同一である必要はない。
MATLAB、Pythonとはファイル定義のメカニズムが異なり、sciをexecで実行することでワークスペースに動的に関数を定義するメカニズムとなる。
※ MATLAB、Python、Scilab、Julia比較ページはこちら。
コメント