GaussianFunction ライブラリ

- 目次 -


概要 - Abstract

このライブラリ math.GaussianFunction は、ガウス関数を提供します。
提供される関数には、gauss と gaussian の 2 つの名前の関数がありますが、両者は指数部分母の係数が異なります。
前者のgauss(x,a,b,c) 関数は、a * exp( -(x-b)**2 / c**2 ) の値を計算します。
後者のgaussian(x,a,b,c) 関数は、a * exp( -(x-b)**2 / (2 * c**2) ) の値を計算します(指数部分母に係数 2 がかかる事に注意して下さい)。

なお、このモジュールでは varfloat 型や varcomplex 型など、多倍長精度のものも提供されますが、
ただアルゴリズムが実装されているだけであり、演算誤差の蓄積や、桁落ち等に対する特別な措置は行われません。

つまり、最終桁まで正しい値が得られる訳ではなく、演算結果の末尾に、常に誤差蓄積による正しくない部分が含まれます。
この誤差部分の長さは、実装のアルゴリズムの違いや、引数による収束速度の違い、桁落ちの度合いなど、場合によって異なります。
例えば、一般に特異点の近傍では収束が著しく遅くなり、それに伴って誤差蓄積も増大します。

従って、 varfloat 型や varcomplex 型などの多倍長精度の関数を使用する場合は、
必要な桁数よりも、十分に大きな桁数で関数を呼び出し、得られた結果から不要な(誤差を含む)部分を切り捨てて下さい。


目次 - Index

float gauss(float x, float a, float b, float c)
実数のガウス関数です。a * exp( -(x-b)**2 / c**2 ) の値を返します。gaussian 関数と異なるのは、指数部分母に 2 がかからない点です。
varfloat gauss(varfloat x, varfloat a, varfloat b, varfloat c)
実数のガウス関数です。a * exp( -(x-b)**2 / c**2 ) の値を返します。gaussian 関数と異なるのは、指数部分母に 2 がかからない点です。
float gaussian(float x, float a, float b, float c)
実数のガウス関数です。gauss 関数と異なるのは、指数部分母に 2 がかかる点です。a * exp( -(x-b)**2 / (2 * c**2) ) の値を返します。
varfloat gaussian(varfloat x, varfloat a, varfloat b, varfloat c)
実数のガウス関数です。gauss 関数と異なるのは、指数部分母に 2 がかかる点です。a * exp( -(x-b)**2 / (2 * c**2) ) の値を返します。

構造体 - Structs

- なし - None -


変数 - Variables

- なし - None -


関数 - Functions

文法的定義
- Signature
float gauss(float x, float a, float b, float c)
関数名
- Name
gauss
役割
- Role
実数のガウス関数です。a * exp( -(x-b)**2 / c**2 ) の値を返します。gaussian 関数と異なるのは、指数部分母に 2 がかからない点です。
引数
- Arguments
(float型) x : 座標変数です。
(float型) a : 指数部にかかる係数です。
(float型) b : 座標のオフセット値です。
(float型) c : 指数部内分母の2次平方根です。
d : 指数部内分母の1次係数です。
戻り値
- Return
(float型) 指数関数の値です。
文法的定義
- Signature
varfloat gauss(varfloat x, varfloat a, varfloat b, varfloat c)
関数名
- Name
gauss
役割
- Role
実数のガウス関数です。a * exp( -(x-b)**2 / c**2 ) の値を返します。gaussian 関数と異なるのは、指数部分母に 2 がかからない点です。
引数
- Arguments
(varfloat型) x : 座標変数です。
(varfloat型) a : 指数部にかかる係数です。
(varfloat型) b : 座標のオフセット値です。
(varfloat型) c : 指数部内分母の2次平方根です。
d : 指数部内分母の1次係数です。
戻り値
- Return
(varfloat型) 指数関数の値です。
文法的定義
- Signature
float gaussian(float x, float a, float b, float c)
関数名
- Name
gaussian
役割
- Role
実数のガウス関数です。gauss 関数と異なるのは、指数部分母に 2 がかかる点です。a * exp( -(x-b)**2 / (2 * c**2) ) の値を返します。
引数
- Arguments
(float型) x : 座標変数です。
(float型) a : 指数部にかかる係数です。
(float型) b : 座標のオフセット値です。
(float型) c : 指数部内分母の平方根です。
戻り値
- Return
(float型) 指数関数の値です。
文法的定義
- Signature
varfloat gaussian(varfloat x, varfloat a, varfloat b, varfloat c)
関数名
- Name
gaussian
役割
- Role
実数のガウス関数です。gauss 関数と異なるのは、指数部分母に 2 がかかる点です。a * exp( -(x-b)**2 / (2 * c**2) ) の値を返します。
引数
- Arguments
(varfloat型) x : 座標変数です。
(varfloat型) a : 指数部にかかる係数です。
(varfloat型) b : 座標のオフセット値です。
(varfloat型) c : 指数部内分母の平方根です。
戻り値
- Return
(varfloat型) 指数関数の値です。


スポンサーリンク



この階層の目次
お知らせ

Vnanoがオープンベータ版に移行、VCSSLの実行環境で標準で実行可能に
2021年04月07日 - ソフト内組み込み用スクリプトエンジン&言語「 Vnano 」がオープンベータ版に移行し、併せて、VCSSLの実行環境でもVnanoコードの実行が可能になりました。詳細をお知らせします。

リニアングラフの最新版をリリース、2D版でも描画エンジンの直接操作が可能に
2021年04月03日 - リニアングラフ2D/3Dの最新版をリリースしました。それぞれのアップデート内容をお知らせします。今回から、2D版でもJava言語APIによる描画エンジンの直接操作が可能になりました。

RINPn のオープンベータ版をリリース! 詳細な公式ガイドも同梱&公開
2021年03月08日 - 2019年より開発進行中のプログラム関数電卓「 RINPn(りんぷん)」が、正式リリースに向けた最終準備段階として、オープンベータ版へと移行しました。その詳細をお知らせします。

新着
Vnano版 | ローレンツ方程式を数値的に解くプログラム

ローレンツ方程式を4次ルンゲ=クッタ法によって解き、グラフ描画用のデータを出力するプログラムです。
2021年02月12日
Vnano版 | 積分値のグラフ描画用データを出力するプログラム

数値的に積分を行い、結果の関数をグラフに描くためのデータを出力するコードです。
2020年12月20日
Vnano版 | 積分値を求めるプログラム (数値積分)

矩形法/台形法/シンプソン法を用いて、積分の値を数値的に求めるコードです。
2020年12月20日
3Dグラフを回転アニメーションさせるツール

3Dグラフを、Z軸まわりにゆっくりと回転アニメーションさせるツールです。全角度のグラフを、連番の画像ファイルに保存する事もできます。
2019年10月09日
[公式ガイドサンプル] ユーザーのGUI操作に対して処理を行う

「VCSSL GUI開発ガイド」内のサンプルコードです。ユーザーがGUIを操作した際に行う処理を実装します。
2019年07月28日
開発元Twitterアカウント