gpt4 book ai didi

math - golang 中模拟钟形曲线上的值

转载 作者:数据小太阳 更新时间:2023-10-29 03:26:03 26 4
gpt4 key购买 nike

我的数学有点初级,所以我提前为任何假设道歉。

我想获取存在于模拟钟形曲线上的值。我不想实际创建钟形曲线或绘制钟形曲线,我只想使用一个函数,给定输入值可以告诉我假设的钟形曲线上相应的 Y 轴值。

这里是完整的问题陈述:

我正在生成介于 0.0 和 1.0 之间的浮点值。

0.50代表钟形曲线上的2.0,也就是最大值。 < 0.50 和 > 0.50 的值开始在此钟形曲线上下降,因此例如 0.40 和 0.60 是相同的,可能类似于 1.8。为这个例子任意选择了 1.8,我想知道如何调整这个“梯度”。

现在我正在做一个非常粗略的实现,例如,对于任何 > 0.40 和 < 0.60 的值,函数返回 2.0,但我想“平滑”它并获得对下降/梯度的更多“控制”

关于如何在 Go 中实现这一点的任何想法

最佳答案

此处描述的高斯函数:https://en.wikipedia.org/wiki/Gaussian_function
呈钟形曲线。实现示例:

package main
import (
"math"
)

const (
a = 2.0 // height of curve's peak
b = 0.5 // position of the peak
c = 0.1 // standart deviation controlling width of the curve
//( lower abstract value of c -> "longer" curve)
)

func curveFunc(x float64) float64 {
return a *math.Exp(-math.Pow(x-b, 2)/(2.0*math.Pow(c, 2)))
}

关于math - golang 中模拟钟形曲线上的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41607610/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com