Функция math.Lgamma
Функция math.Lgamma вычисляет натуральный логарифм абсолютного значения гамма-функции для заданного числа.
Первый параметр — это число типа float64, для которого вычисляется логарифм гамма-функции.
Функция возвращает два значения: вычисленный логарифм (тип float64) и целочисленный знак (тип int), где 1 означает положительное значение гамма-функции, а -1 — отрицательное.
Синтаксис
math.Lgamma(x)
Пример
Давайте вычислим логарифм гамма-функции для числа 5.0:
package main
import (
"fmt"
"math"
)
func main() {
res, sign := math.Lgamma(5.0)
fmt.Printf("Lgamma(5.0) = %f, sign = %d\n", res, sign)
}
Результат выполнения кода:
"Lgamma(5.0) = 3.178054, sign = 1"
Пример
Давайте вычислим логарифм гамма-функции для отрицательного числа -3.5:
package main
import (
"fmt"
"math"
)
func main() {
res, sign := math.Lgamma(-3.5)
fmt.Printf("Lgamma(-3.5) = %f, sign = %d\n", res, sign)
}
Результат выполнения кода:
"Lgamma(-3.5) = -1.144730, sign = -1"
Пример
Давайте используем результат функции для восстановления значения гамма-функции через экспоненту:
package main
import (
"fmt"
"math"
)
func main() {
x := 5.5
lg, sign := math.Lgamma(x)
gamma := sign * math.Exp(lg)
fmt.Printf("Gamma(%.1f) = %f\n", x, gamma)
}
Результат выполнения кода:
"Gamma(5.5) = 52.342778"
Смотрите также
-
функцию
math.Gamma,
которая вычисляет значение гамма-функции непосредственно -
функцию
math.Exp,
которая вычисляет экспоненту числа для восстановления гамма-функции из логарифма -
функцию
math.Log,
которая вычисляет натуральный логарифм числа -
функцию
math.Pow,
которая возводит число в степень