Japanese English

Vnano Math プラグイン群
(org.vcssl.nano.plugin.math パッケージ)


概要

このパッケージ/サブパッケージ内のプラグイン群は、Vnano (VCSSL nano) のスクリプトから利用できる、初等的な数学・統計関数などを提供します。
なお、このプラグイン群の提供機能は、VCSSL の標準ライブラリである VCSSL Math ライブラリ および math.StatisticalFunction ライブラリ の機能のサブセット(※)になっています。 そのため、VCSSL のスクリプトにおいても、ほぼ同様の機能が標準で利用可能です。 ただし、その際は VCSSL スクリプトの先頭で「 import Math; import math.StatisticalFunction; 」と記述し、ライブラリを読み込む必要があります。

※ このプラグイン群が提供するいくつかの数学関数( sin 関数など )は、スカラだけでなく配列に対して処理を行えるように拡張されています。 この機能は現状ではVnanoでのみ対応しており、VCSSLではまだサポートされていません。

提供プラグインおよび機能一覧

MathElementaryXnci1Plugin
初等的な数学関数などを提供するプラグインです。
変数: PI
関数: rad(degree) / deg(radian) / sin(x) / cos(x) / tan(x) / asin(x) / acos(x) / atan(x) / sqrt(x) / ln(x) / log10(x) / pow(x,exponent) / exp(x) / abs(x)
MathStatisticalXnci1Plugin
初等的な統計関数などを提供するプラグインです。
関数: sum(...) / mean(...) / van(...) / van1(...) / sdn(...) / sdn1(...)

ライセンス

上記のプラグインは全て CC0 で公開されています。


MathElementaryXnci1Plugin
(org.vcssl.nano.math.xnci1.MathElementaryXnci1Plugin)

初等的な数学関数などを提供するプラグインです。

変数

変数 PI
円周率の値を格納しています。
データ型 float (定数)

関数

関数 rad( degree )
機能 度からラジアンへの変換関数です。引数 degree に指定した度の値が、ラジアンに変換されて返されます。引数に配列を指定した場合は、その各要素の値が変換されます。 なお、変換結果の値の範囲は特に調整されないため、負の度の値に対しては負のラジアン値が求まり、360度を超える値に対しては 2π を超えるラジアン値が求まります。
宣言形式 float[...] rad( const float &degree[...] )
引数 (float型、任意次元) degree: ラジアンに変換したい度の値。
戻り値 (float型、引数と同次元・同要素数) ラジアンに変換された値。
使用例 print( rad(180.0) ); // 3.14...
関数 deg( radian )
機能 ラジアンから度への変換関数です。引数 radian に指定したラジアンの値が、度に変換されて返されます。引数に配列を指定した場合は、その各要素の値が変換されます。 なお、変換結果の値の範囲は特に調整されないため、負のラジアンに対しては負の度が求まり、2πを超えるラジアンに対しては 360 度を超える値が求まります。
宣言形式 float[...] deg( const float &radian[...] )
引数 (float型、任意次元) radian: 度に変換したい度の値。
戻り値 (float型、引数と同次元・同要素数) 度に変換された値。
使用例 print( deg(PI) ); // 180.0
関数 sin( x )
機能 正弦(サイン)関数です。引数 x の単位はラジアンで指定します。引数 x に配列を指定した場合は、その各要素 x[i] に対する sin(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] sin( const float &x[...] )
引数 (float型、任意次元) x: ラジアン単位での、正弦関数の引数。
戻り値 (float型、引数と同次元・同要素数) 正弦関数の値。
使用例 print( sin(PI/2.0) ); // 1.0
関数 cos( x )
機能 余弦(コサイン)関数です。引数 x の単位はラジアンで指定します。引数 x に配列を指定した場合は、その各要素 x[i] に対する cos(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] cos( const float &x[...] )
引数 (float型、任意次元) x: ラジアン単位での、余弦関数の引数。
戻り値 (float型、引数と同次元・同要素数) 余弦関数の値。
使用例 print( cos(PI*2.0) ); // 1.0
関数 tan( x )
機能 正接(タンジェント)関数です。引数 x の単位はラジアンで指定します。引数 x に配列を指定した場合は、その各要素 x[i] に対する tan(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] tan( const float &x[...] )
引数 (float型、任意次元) x: ラジアン単位での、正接関数の引数。
戻り値 (float型、引数と同次元・同要素数) 正接関数の値。
使用例 print( tan(PI/4.0) ); // 0.99999... (真の値は 1 ですが、結果との不一致は表現精度や計算精度に関する微小な数値誤差によるものであり、バグではありません)
関数 asin( x )
機能 正弦関数の逆関数(アークサイン)です。結果 x の単位はラジアンです。引数 x に配列を指定した場合は、その各要素 x[i] に対する asin(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] asin( const float &x[...] )
引数 (float型、任意次元) x: 逆正弦関数の引数。
戻り値 (float型、引数と同次元・同要素数) ラジアン単位での、逆正接関数の値。
使用例 print( asin(1.0) ); // 1.5707963... (≒π/2)
関数 acos( x )
機能 余弦関数の逆関数(アークサイン)です。結果 x の単位はラジアンです。引数 x に配列を指定した場合は、その各要素 x[i] に対する acos(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] acos( const float &x[...] )
引数 (float型、任意次元) x: 逆余弦関数の引数。
戻り値 (float型、引数と同次元・同要素数) ラジアン単位での、逆余弦関数の値。
使用例 print( acos(-1.0) ); // 3.14... (≒π)
関数 atan( x )
機能 正接関数の逆関数(アークタンジェント)です。結果 x の単位はラジアンです。引数 x に配列を指定した場合は、その各要素に対する atan(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] atan( const float &x[...] )
引数 (float型、任意次元) x: 逆正接関数の引数。
戻り値 (float型、引数と同次元・同要素数) ラジアン単位での、逆正接関数の値。
使用例 print( atan(1.0) ); // 0.78539... (≒π/4)
関数 sqrt( x )
機能 平方根を求める関数です。引数 x に配列を指定した場合は、その各要素 x[i] に対する sqrt(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] sqrt( const float &x[...] )
引数 (float型、任意次元) x: 平方根を求めたい値。
戻り値 (float型、引数と同次元・同要素数) 平方根の値。
使用例 print( sqrt(4.0) ); // 2.0
関数 ln( x )
機能 自然数 e を底とする対数関数(自然対数)です。引数 x に配列を指定した場合は、その各要素 x[i] に対する ln(x[i]) の値を格納する配列が返されます。
宣言形式 float[...] ln( const float &x[...] )
引数 (float型、任意次元) x: 自然対数を求めたい値。
戻り値 (float型、引数と同次元・同要素数) 自然対数の値。
使用例 print( ln(10.0) ); // 2.3025...
関数 log10( x )
機能 10 を底とする対数関数(常用対数)です。引数に配列を指定した場合は、その各要素に対する常用対数値を格納する配列が返されます。
宣言形式 float[...] log10( const float &x[...] )
引数 (float型、任意次元) x: 常用対数を求めたい値。
戻り値 (float型、引数と同次元・同要素数) 常用対数の値。
使用例 print( log10(10.0) ); // 1.0
関数 pow( x, exponent )
機能 x の exponent 乗を求める関数です。引数 x に配列を指定した場合は、その各要素に対する exponent 乗の値を格納する配列が返されます。
宣言形式 float[...] pow( const float &x[...], const float &exponent )
引数 (float型、任意次元) x: 「機能」の項目参照。
(float型) exponent: 「機能」の項目参照。
戻り値 (float型、引数と同次元・同要素数) x の exponent 乗の値。
使用例 print( pow(2.0,3.0) ); // 8.0
関数 exp( exponent )
機能 自然対数の低 e の exponent 乗を求める関数です。引数に配列を指定した場合は、その各要素を指数とした(〜乗をとった)値を格納する配列が返されます。
宣言形式 float[...] exp( const float &exponent[...] )
引数 (float型、任意次元) exponent: 「機能」の項目参照。
戻り値 (float型、引数と同次元・同要素数) 自然対数の低 e の exponent 乗の値。
使用例 print( exp(2.0) ); // 7.38905... (≒ e の2乗)
関数 abs( x )
機能 絶対値関数です。引数に配列を指定した場合は、その各要素の絶対値を格納する配列が返されます。
宣言形式 float[...] abs( const float &x[...] )
引数 (float型、任意次元) x: 絶対値を求めたい値。
戻り値 (float型、引数と同次元・同要素数) 絶対値。
使用例 print( abs(-1.23) ); // 1.23

MathStatisticalXnci1Plugin
(org.vcssl.nano.math.xnci1.MathStatisticalXnci1Plugin)

初等的な統計関数などを提供するプラグインです。

関数

関数 sum(...)
機能 和を求める関数です。
宣言形式 float sum( ... float )
引数 (float型、任意個数) 和を求めたい値。
戻り値 (float型) 和の値。
使用例 print( sum(1.0, 2.5, 4.0) ); // 7.5
関数 mean(...)
機能 平均値(算術平均)を求める関数です。
宣言形式 float mean( ... float )
引数 (float型、任意個数) 平均値を求めたい値。
戻り値 (float型) 平均値。
使用例 print( mean(1.0, 2.5, 4.0) ); // 2.5
関数 van(...)
機能 分散( 分母: N )を求める関数です。
宣言形式 float van( ... float )
引数 (float型、任意個数) 分散を求めたい値。
戻り値 (float型) 分散の値( 分母: n )。
使用例 print( van(1.0, 2.5, 4.0) ); // 1.5
関数 van1(...)
機能 分散( 分母: N-1 )を求める関数です。
宣言形式 float van( ... float )
引数 (float型、任意個数) 分散を求めたい値。
戻り値 (float型) 分散の値( 分母: n-1 )。
使用例 print( van1(1.0, 2.5, 4.0) ); // 2.25
関数 sdn(...)
機能 標準偏差( 分母: N )を求める関数です。
宣言形式 float sdn( ... float )
引数 (float型、任意個数) 標準偏差を求めたい値。
戻り値 (float型) 標準偏差の値( 分母: n )。
使用例 print( sdn(1.0, 2.5, 4.0) ); // 1.2247... (≒√1.5)
Function sdn1(...)
Feature 標準偏差( 分母: N-1 )を求める関数です。
宣言形式 float sdn1( ... float )
引数 (float型、任意個数) 標準偏差を求めたい値。
戻り値 (float型) 標準偏差の値( 分母: n-1 )。
使用例 print( sdn1(1.0, 2.5, 4.0) ); // 1.5 (=√2.25)

Japanese English
この階層の目次
お知らせ

各ソフトウェアをアップデート、リニアングラフのコマンド拡張やVCSSLの英語対応など
2024/02/05 - 各ソフトの一斉アップデートの内容をお知らせします。今回は、リニアングラフのコマンド機能を大幅拡張したのがメインです。また、VCSSLのメッセージ類の英語対応も行いました。

Vnano の Ver.1.1 で実装した反復計算高速化の内側
2024/01/17 - 前回のお知らせ記事の続編です。スクリプトエンジン Vnano の Ver.1.1 において実施した高速化を、エンジン内部の実装面から掘り下げて解説します。

スクリプトエンジン Vnano の Ver.1.1 を公開、同じ内容の反復実行が劇的に高速化
2023/12/22 - スクリプトエンジン Vnano の最新版を公開しました。同じ計算式やスクリプトを反復実行する速さが、大幅に向上しました。次期版リニアングラフ3D内での活用例を交えつつ、詳しく解説します。

新着
[公式ガイドサンプル] 各種の図形や画像を描画する

「VCSSL 2DCG開発ガイド」内のサンプルコードです。図形や画像などを描画します。
2022-12-16
角度の「度」とラジアンとを相互変換し、図示もするツール

45度などの「度」の値と、ラジアンの値とを相互に変換できるツールです。対応する角度の図示もできます。
2022-11-22
[公式ガイドサンプル] 立体モデルを回転させるアニメーション

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、アニメーションで回転させ続けます
2022-11-18
[公式ガイドサンプル] 立体モデルを回転させる

「VCSSL 3DCG開発ガイド」内のサンプルコードです。立体モデルを、指定した角度だけ回転させます。
2022-11-17
[公式ガイドサンプル] 四則演算の計算順序や、カッコを使った順序指定

「VCSSLスタートアップガイド」内のサンプルコードです。四則演算が計算される順序や、カッコを使って順序を指定する方法を例示します。
2022-10-31