関数のオンライン定義 deff を使ってみる!
関数のオンライン定義を用いると、数式だけを呼び出して計算ができます。
関数 fuction を用いなくて済むのでプログラムを作成するうえでとても便利です。
scilabではユーザがdeffを用いて関数をオンライン定義できます。
deff(‘[出力変数]=関数名(入力変数の並び)’,’テキスト文字列(数式)’)
のようになります。deff はテキスト文字列で記述された一連の命令から関数を定義する際に使用できます。
関数のオンライン定義1
ただし、y=3,z=2として計算することにします。
1. deff(‘[x]=fx(y,z)’,[‘a=3*y+1’; ‘x=a*z+y’])
2. y=3; z=2;
3. p= fx(y,z)
1行目で関数を提示します。関数名はfxでy,zは入力変数です。x, a の数式を記入します。Deffの後のxは出力変数名です。
2行目は入力変数の値です。
3行目のfxで関数を呼び出して、出力変数をpとしてあります。1行目では出力変数がxですが、ここでは違う変数名でも構いません。
計算結果は図のようになります。
関数のオンライン定義2
例として、y≒x^2 をxの値が x=-8:0.5:8 までの区間を計算することにします。ここで 0.5 はステップ幅です。
1. deff(‘[y]=fx(x)’,’y=x^2′)
2. x=-8:0.5:8;
3. [y]=fx(x);
1行目は関数の定義で、関数名はfxで、出力変数はyです。
2行目のxは行ベクトルで、xの範囲が でステップ幅を0.5として行ベクトルが作られます。
3行目のfxは関数名で,xは入力変数、yは出力変数です。ここでは、行ベクトルxを基にして関数が呼び出され、計算された結果がyとして出力されます。
yを表示するには、yと入力すると行列の要素が表示されます。
関連記事
-
連立一次方程式を解いてみる|scilab入門
逆行列 inv と (¥)を用いて、簡単なの連立一次方程式を解いてみました。 次 …
-
ifによる分岐と関係演算子・論理演算子
繰り返し処理に if による分岐と関係演算子・論理演算子 を用いることにします。 …
-
行列の対角要素を取り出す diag|scilab入門
行列の対角要素を取り出す場合には、diagを用います。 行列の対角要素や角線 …
-
行列 3行3列の表示 |scilab入門
行列 Bが3行3列の場合 行列 が であるとします。これをscilabで表す場 …
-
whileによる繰り返し処理
繰り返し処理 for の他に、whileを使用した繰り返し処理の計算方法がありま …
-
2次元プロットにグリッドを追加:xgrid|グラフィック
グラフのデータを比較したいとか、見やすくしたい場合には、グリッドを入れて表示させ …
-
多項式が有利式の場合の計算
フリーのシュミレーションソフトscilabを用いて色々な計算ができます。 常にバ …
-
行列演算の基礎計算 |scilab入門
行列演算はScilabの基本となっています。行列を用いることにより数式レベルで扱 …
-
scilabが5.5.2 にバージョン アップになりました!
scilab は常にバージョンアップされています。 しかも無料です。 ちょっとシ …
-
行列の差の計算
行列の引き算についてです。 2つの行列の和について考えします。例として3行3列の …
- PREV
- whileによる繰り返し処理
- NEXT
- LU分解法で方程式を解く