goソース読書ノート(math.4)

9520 ワード

goソース読書ノート(math.4)


参照godoc API

APIリスト


func NaN() float64


関数は、IEEE 754「これは数値ではありません」の値を返します.

func IsNaN(f float64) (is bool)


fがNaN値であるか否かを判断する

func Inf(sign int) float64


sign>=0が正無限大を返す場合、負無限大を返します.

func IsInf(f float64, sign int) bool


無限大数かどうかを判断する

func Float32bits(f float32) uint32


関数は、浮動小数点数fのIEEE 754フォーマットのバイナリで表される値に対応する4バイトの符号なし整数を返します(各ビット値は変化しません).主にビット演算などに用いられ、符号なし整数に変換され、浮動小数点演算器は使用されず、速度が速い

func Float32frombits(b uint32) float32


4バイトの符号なし整数を1ビットあたり一定にしてfloat 32値に変換し、Float 32 bitsに対応

func Float64bits(f float64) uint64


Float 32 bitsと同様

func Float64frombits(b uint64) float64


Float 32 frombitsと似ています

func Signbit(x float64) bool

func Signbit(x float64) bool {
    return Float64bits(x)&(1<<63) != 0
}

xが負数または負の0(0の表現)の場合、trueが返されます.

func Copysign(x, y float64) float64

// Copysign returns a value with the magnitude
// of x and the sign of y.
func Copysign(x, y float64) float64 {
    const sign = 1 << 63
    return Float64frombits(Float64bits(x)&^sign | Float64bits(y)&sign)
}

xの量値(絶対値)とyのフラグビット(正負番号)を持つ浮動小数点数を返します.

func Ceil(x float64) float64


xより小さくない最小整数(の浮動小数点値)を返します.
特殊値シーン
Ceil(±0) = ±0
Ceil(±Inf) = ±Inf
Ceil(NaN) = NaN

func Floor(x float64) float64


x以下の最小整数(浮動小数点値)を返します.
特殊値シーン
Floor(±0) = ±0
Floor(±Inf) = ±Inf
Floor(NaN) = NaN

func Trunc(x float64) float64


xの整数部分(浮動小数点数タイプ)を返します.
特殊値シーン
Trunc(±0) = ±0
Trunc(±Inf) = ±Inf
Trunc(NaN) = NaN

func Modf(f float64) (int float64, frac float64)


fの整数部と小数部を返し、1.1は1.0と0.1を返し、-1.1は-1.0と-0.1を返し、-0.1は-0.1と-0.1を返します.
特殊値シーン
Modf(±Inf) = ±Inf, NaN
Modf(NaN) = NaN, NaN

今日は遅すぎて、後で補充します.

func Nextafter(x, y float64) (r float64)


パラメータxからパラメータyの方向に、次の表すことができる数値.x=yがxを返す場合.
特殊値シーン
Nextafter(NaN, y) = NaN
Nextafter(x, NaN) = NaN

func Abs(x float64) float64


xの絶対値を返す

func Max(x, y float64) float64


xとyの大きいを返します.の

func Min(x, y float64) float64


は、xとyの中の小さいを返します.の

func Dim(x, y float64) float64


関数はx-yと0の大きい方を返します.
特殊値シーン
Dim(+Inf, +Inf) = NaN
Dim(-Inf, -Inf) = NaN
Dim(x, NaN) = Dim(NaN, x) = NaN

func Mod(x, y float64) float64


余剰演算は、x-Trunc(x/y)*yと理解でき、結果の正負番号はxと同じである

func Remainder(x, y float64) float64


IEEE 754は、xからx/yに最も近い整数値(x/yと同じ距離の2つの整数がある場合、その中の偶数をとる)とyの積を減算する差を求める.
以下はすべて数学用関数です......

func Sqrt(x float64) float64


xの二次方根を返す

func Cbrt(x float64) float64


xの三次方根を返す

func Hypot(p, q float64) float64


Sqrt(p*p+q*q)を返します.

func Sin(x float64) float64


正弦を求める

func Cos(x float64) float64


余弦を求める

func Tan(x float64) float64


正接を求める

func Sincos(x float64) (sin, cos float64)


xのsin値とcos値を返しますsin, cos = math.Sincos(x)

func Asin(x float64) float64


どうせ弦を求める

func Acos(x float64) float64


余弦をかえす

func Atan(x float64) float64


どうせ切る

func Atan2(y, x float64) float64


Atan(y/x)に似ていますが、x,yの正負に基づいて象限が決定されます

func Sinh(x float64) float64


双曲線サイン

func Cosh(x float64) float64


双曲線コサイン

func Tanh(x float64) float64


双曲線タンジェント

func Asinh(x float64) float64


逆双曲線サイン

func Acosh(x float64) float64


逆双曲線コサイン

func Atanh(x float64) float64


逆双曲線タンジェント

func Log(x float64) float64


しぜんたいすう

func Log1p(x float64) float64


Log(1+x)に等価でxが0に近づくと精度が高くなる

func Log2(x float64) float64


2をベースとした対数

func Log10(x float64) float64


10をベースとした対数

func Logb(x float64) float64


xのバイナリ指数値を返し、Trunc(Log 2(x))と理解できる.

func Ilogb(x float64) int


Logbに似ていますが、戻り値は整数です.

func Frexp(f float64) (frac float64, exp int)


標準化された小数fracと2の整数指数expを返し、f==frac*2**expを満たし、0.5<=Abs(frac)<1

func Ldexp(frac float64, exp int) float64


Frexpの逆関数、frac*2**expを返します

func Exp(x float64) float64


E**xを返します.x絶対値が大きいと0または+Infにオーバーフローする可能性があり、x絶対値が小さいと1にオーバーフローする可能性があります

func Expm1(x float64) float64


Exp(x)-1と等価ですが、xがゼロに近い場合はより正確です.x絶対値が大きいと-1または+Infにオーバーフローする可能性があります

func Exp2(x float64) float64


は、2*xを返します.

func Pow(x, y float64) float64


x**yを返します.

func Pow10(e int) float64


10**e

func Gamma(x float64) float64


ガンマ関数(xが正の整数の場合、値は(x-1)!)

func Lgamma(x float64) (lgamma float64, sign int)


Gamma(x)の自然対数と正負を返します

func Erf(x float64) float64


ごさかんすう

func Erfc(x float64) float64


ほじょごさかんすう

func J0(x float64) float64


第1クラスのベッセル関数、0次

func J1(x float64) float64


第1クラスのベッセル関数、1次

func Jn(n int, x float64) float64


第1クラスのベッセル関数,n次

func Y0(x float64) float64


第2クラスのベッセル関数、0次

func Y1(x float64) float64


第2クラスのベッセル関数、1次

func Yn(n int, x float64) float64


第2クラスのベッセル関数,n次