Mol(Math Object Library) fot .Net
The BigDecimal type exposes the following members.
コンストラクター
名前 | 説明 | |
---|---|---|
![]() | BigDecimal |
初期値(文字列)を指定したコンストラクター
|
メソッド
名前 | 説明 | |
---|---|---|
![]() ![]() | Abs |
与えられた BigDecimal の絶対値(|a|)を返します。
戻り値は BigDecimal の新しいインスタンスです。
|
![]() ![]() | Add |
c = a + b: BigDecimal 同士の足し算を実行します。
c が null の時は新しい c が作成されます。戻り値は c が返ります。
c != null の場合、 c の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
mx がゼロ(または負)の時は計算の打ち切りは起こりません。
mx が正の時は、計算結果が mx 桁以上の時、mx+1 桁目を RoundMode の指定に従って丸めて計算を中断します。
|
![]() ![]() | CheckInfinity |
BigDecimal v の値が無限ならゼロ以外の整数(正なら正の整数、負なら負の整数)を返します。
非数(NaN)または有限の値なら 0 を返します。
|
![]() ![]() | CheckNaN |
BigDecimal v が 非数(NaN)以外なら 0、非数(NaN)ならゼロ以外の整数を返します。
|
![]() ![]() | CheckNumber |
BigDecimal v の値が有限ならゼロ以外の整数(正なら正の整数、負なら負の整数)を返します。
非数(NaN)または ±Infinity なら 0 を返します。
|
![]() ![]() | CheckZero |
BigDecimal v が 0 以外なら 0、+0 なら正の整数、-0 なら負の整数を返します。
|
![]() | Clone |
自分自身を複製して新しい BigDecimal オブジェクトを作成します。
|
![]() | Compare(BigDecimal) |
引数の BigDecimal と値を比較します。自身を a 、引数を b とします。
|
![]() ![]() | Compare(BigDecimal, BigDecimal) |
2つの BigDecimal(a,b) の値を比較します。
|
![]() | DigitCount()()()() |
前後のゼロを取り去ったの全桁数を返します。
|
![]() ![]() | DigitCount(BigDecimal) |
前後のゼロを取り去った a の全桁数(有効桁数)を返します。
|
![]() | Dispose |
インターフェース IDispose の実装。
C++ Dll に割り当てられたメモリー資源を解放します。
メモリー資源は当然ながらガベージコレクションによって解放されますが、いつ解法されるかはわかりません。
以後、完全に使用しないと判明したオブジェクトは Dispose() を呼び出して積極的に資源を解法することをお勧めします。
(Overrides _Mol..::..Dispose()()()().) |
![]() ![]() | Div |
c = a / b: BigDecimal 同士の割り算を実行します。
c が null の時は新しい c が作成されます。戻り値は c が返ります。
c != null の場合、 c の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
同様に余り r が null の時は新しい r が作成されます。
mx がゼロ(または負)の時、c の桁数は a の桁数、b の桁数、double の桁数の和程度になります。
計算が結果が mx 桁以上の時、mx+1 桁目を RoundMode の指定に従って丸めて計算を中断します。
|
![]() | Equals |
基底オブジェクトの比較関数をオーバーライドします。
(Overrides Object..::..Equals(Object).) |
![]() | Exponent()()()() |
指数部分の値を返します。
|
![]() ![]() | Exponent(BigDecimal) |
BigDecima オブジェクト a の指数部分を返します。
|
![]() | GetHashCode |
基底オブジェクトのハッシュ関数をオーバーライドします。
(Overrides Object..::..GetHashCode()()()().) |
![]() ![]() | IsInfinity |
BigDecimal v の値が無限なら true、非数(NaN)または有限の値なら false を返します。
|
![]() ![]() | IsNaN |
BigDecimal v が 非数(NaN)なら true、非数(NaN)以外なら false を返します。
|
![]() ![]() | IsNumber |
BigDecimal v の値が有限なら true、非数(NaN)または ±Infinity なら false を返します。
|
![]() ![]() | IsZero |
BigDecimal v が 0 なら true、ゼロ以外なら false を返します。
|
![]() | LengthRound(Int32) |
有効数字列の左端から指定した桁数(n+1)位置で丸め操作を実行します。
従って有効桁数は最大で n 桁になります。
丸めは RoundMode (RoundMode) の指定に従って実行されます。
戻り値は BigDecimal の新しいインスタンスです。
|
![]() | LengthRound(Int32, BigDecimal..::..ROUND_MODE) |
有効数字列の左端から指定した桁数(n+1)位置で丸め操作を実行します。
従って有効桁数は最大で n 桁になります。
丸めは mode (BigDecimal..::..ROUND_MODE) の指定に従って実行されます。
戻り値は BigDecimal の新しいインスタンスです。
|
![]() ![]() | LengthRound(BigDecimal, Int32) |
有効数字列の左端から指定した桁数(n+1)位置で丸め操作を実行します。
従って有効桁数は最大で n 桁になります。
丸めはデフォルト (BigDecimal..::..ROUND_MODE) の指定に従って実行されます。
|
![]() ![]() | LengthRound(BigDecimal, Int32, BigDecimal..::..ROUND_MODE) |
有効数字列の左端から指定した桁数(n+1)位置で丸め操作を実行します。
従って有効桁数は最大で n 桁になります。
丸めは mode (BigDecimal..::..ROUND_MODE) の指定に従って実行されます。
|
![]() ![]() | Mul |
c = a * b: BigDecimal 同士の掛け算を実行します。
c が null の時は新しい c が作成されます。戻り値は c が返ります。
c != null の場合、 c の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
mx がゼロ(または負)の時は計算の打ち切りは起こりません。
mx が正の時は、計算が結果が mx 桁以上の時、mx+1 桁目を RoundMode の指定に従って丸めて計算を中断します。
|
![]() ![]() | Negate |
BigDecimal 値の符号を反転します。
v の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
|
![]() ![]() | Parse |
数値を表現する文字列から BigDecimal オブジェクトを作成します。
文字列が数値を表現していないときは例外が発生します。
|
![]() | PointRound(Int32) |
少数点の位置から指定した桁数(pos)分だけ左(posが負)、または右(posが正)の位置で丸め操作を実行します。
つまり、pos >=0 なら、小数点以下 pos+1 位の数字を操作します(少数点以下は、最大 pos 桁になります)。
pos が負のときは小数点以上 pos 桁目をを操作します(小数点位置から左に少なくとも pos 個の 0 が並びます)。
丸めは RoundMode (RoundMode) の指定に従って実行されます。
戻り値は BigDecimal の新しいインスタンスです。
|
![]() | PointRound(Int32, BigDecimal..::..ROUND_MODE) |
少数点の位置から指定した桁数(pos)分だけ左(posが負)、または右(posが正)の位置で丸め操作を実行します。
つまり、pos >=0 なら、小数点以下 pos+1 位の数字を操作します(少数点以下は、最大 pos 桁になります)。
pos が負のときは小数点以上 pos 桁目をを操作します(小数点位置から左に少なくとも pos 個の 0 が並びます)。
丸めは mode (BigDecimal..::..ROUND_MODE) の指定に従って実行されます。
戻り値は BigDecimal の新しいインスタンスです。
|
![]() ![]() | PointRound(BigDecimal, Int32) |
少数点の位置から指定した桁数(pos)分だけ左(posが負)、または右(posが正)の位置で丸め操作を実行します。
つまり、pos >=0 なら、小数点以下 pos+1 位の数字を操作します(少数点以下は、最大 pos 桁になります)。
pos が負のときは小数点以上 pos 桁目をを操作します(小数点位置から左に少なくとも pos 個の 0 が並びます)。
丸めはデフォルト (BigDecimal..::..ROUND_MODE) の指定に従って実行されます。
|
![]() ![]() | PointRound(BigDecimal, Int32, BigDecimal..::..ROUND_MODE) |
少数点の位置から指定した桁数(pos)分だけ左(posが負)、または右(posが正)の位置で丸め操作を実行します。
つまり、pos >=0 なら、小数点以下 pos+1 位の数字を操作します(少数点以下は、最大 pos 桁になります)。
pos が負のときは小数点以上 pos 桁目をを操作します(小数点位置から左に少なくとも pos 個の 0 が並びます)。
丸めは mode (BigDecimal..::..ROUND_MODE) の指定に従って実行されます。
|
![]() | Sqrt()()()() |
平方根を計算します。計算する桁数は MaxDigits に依存します。
戻り値は BigDecimal の新しいインスタンスです。
|
![]() | Sqrt(Int32) |
平方根を計算します。戻り値は BigDecimal の新しいインスタンスです。
|
![]() ![]() | Sqrt(BigDecimal, BigDecimal) |
c = Sqrt(a): a の平方根を計算して c に格納します。
c == null なら c を新規に作成します。c の有効桁数は MaxDigits に依存します。
c != null の場合、 c の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
|
![]() ![]() | Sqrt(BigDecimal, BigDecimal, Int32) |
c = Sqrt(a): a の平方根を計算して c に格納します。
c == null なら c を新規に作成します。
c != null の場合、 c の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
|
![]() ![]() | Sub |
c = a - b: BigDecimal 同士の引き算を実行します。
c が null の時は新しい c が作成されます。戻り値は c が返ります。
c != null の場合、 c の内容が変更されます。この動作は double 等の値型と異なりますので注意してください。
mx がゼロ(または負)の時は計算の打ち切りは起こりません。
mx が正の時は、計算が結果が mx 桁以上の時、mx+1 桁目を RoundMode の指定に従って丸めて計算を中断します。
|
![]() | ToDouble(Int32%) |
double 近似値を計算します。
近似値は仮数部分(=戻り値:0<=仮数部分<1.0))と指数部分(=exponent) に分割されて
表現されます。従って double 値 => 仮数部分 * 10**exponent で近似されます。
|
![]() ![]() | ToDouble(Int32%, BigDecimal) |
BigDecimal の double 近似値を計算します。
近似値は仮数部分(=戻り値:0<=仮数部分<1.0))と指数部分(=exponent) に分割されて
表現されます。従って a => 仮数部分 * 10**exponent で近似されます。
|
![]() | ToString()()()() |
文字列表現を作成します。
(Overrides Object..::..ToString()()()().) |
![]() | ToString(String) |
文字列表現を作成します。
|
![]() ![]() | TryParse |
数値を表現する文字列から BigDecimal オブジェクトを作成します。
|
演算子
名前 | 説明 | |
---|---|---|
![]() ![]() | Addition |
BigDecimal a と b の演算子 + を定義します。
|
![]() ![]() | Division |
BigDecimal a と b の演算子 / を定義します。
c の有効桁数は a と b の有効桁数によって決定されます。
また、丸め操作は実行されません。
|
![]() ![]() | Equality |
BigDecimal a と b の演算子 == を定義します。
|
![]() ![]() | GreaterThan |
BigDecimal a と b の演算子 > を定義します。
|
![]() ![]() | GreaterThanOrEqual |
BigDecimal a と b の演算子 >= を定義します。
|
![]() ![]() | Inequality |
BigDecimal a と b の演算子 != を定義します。
|
![]() ![]() | LessThan |
BigDecimal a と b の演算子 < を定義します。
|
![]() ![]() | LessThanOrEqual |
BigDecimal a と b の演算子 <= を定義します。
|
![]() ![]() | Multiply |
BigDecimal a と b の演算子 * を定義します。
|
![]() ![]() | Subtraction |
BigDecimal a と b の演算子 - を定義します。
|
![]() ![]() | UnaryNegation |
BigDecimal a の単項演算子 - を定義します。
|
![]() ![]() | UnaryPlus |
BigDecimal a の単項演算子 + を定義します。
|
フィールド
プロパティ
名前 | 説明 | |
---|---|---|
![]() ![]() | MaxDigits |
四則演算 (+ - * /) の結果として得られる数値の(デフォルトの)最大有効桁数です。
MaxDigits のデフォルト値は 0 で、これは有効桁数無制限という意味になります。
ただし、割り算の場合は、0 でも有効桁数は有限となります。
|
![]() ![]() | MaxDouble |
Double の最大値です(BigDecimalの値が double で表現可能かどうか調べるような場合に使用します)。
戻り値は新規作成されたインスタンスです。
|
![]() ![]() | MinDouble |
Double の最小値です(BigDecimalの値が double で表現可能かどうか調べるような場合に使用します)。
戻り値は新規作成されたインスタンスです。
|
![]() | MolHandle |
Mol.C++.dll(ネイティブDLL)と Mol.Net.Dll(.Net 用マネージドDLL)間の情報を管理するハンドル。
NativeDll クラスでユーザ作成のネイティブDLLを作成する場合等に利用できます。
(Inherited from _Mol.) |
![]() | MolType |
Molオブジェクトの属性(_Mol..::..MOL_TYPE)。
(Inherited from _Mol.) |
![]() ![]() | One |
BigDecimal の 1 を返します。
戻り値は新規作成されたインスタンスです。
|
![]() ![]() | Pt5 |
BigDecimal の 0.5 を返します。
戻り値は新規作成されたインスタンスです。
|
![]() ![]() | RaiseException |
true なら計算結果が非数値(NaN)や無限(+Infinity や -Infinity)等になった時例外を発生します。
false(デフォルト)なら計算を続行します。
|
![]() ![]() | RoundMode |
計算時の丸め方法を指定します。
|
![]() ![]() | Ten |
BigDecimal の 10 を返します。
戻り値は新規作成されたインスタンスです。
|
![]() ![]() | Three |
BigDecimal の 3 を返します。
戻り値は新規作成されたインスタンスです。
|
![]() ![]() | Two |
BigDecimal の 2 を返します。
戻り値は新規作成されたインスタンスです。
|
![]() | UserType |
Molオブジェクトの追加属性(_Mol..::..USER_TYPE)。
例えば一般行列でも要素が対称なら、その属性を積極的にセットすることでソルバーは最適な手法を選択することができます。
当然ながら、間違った設定は間違った値や計算不能な状態に陥りますので注意して設定してください。
(Inherited from _Mol.) |
![]() | ValueType |
値のタイプ(BigDecimal..::..DECIMAL_TYPE)を返します。
|
![]() ![]() | Zero |
BigDecimal の 0 を返します。
戻り値は新規作成されたインスタンスです。
|