我一直在尝试让这个函数工作,但没有用。有没有人能给我们一些启发呢?
它是一个带有一些应用边界/变形的Sigmoid。Here's the link to the function in desmos。这是完美的工作。它看起来是这样的:

这就是公式:

但是当我试图将它‘翻译’成我的Javascript代码时,我无法让它像预期的那样执行。这是我尝试过的:
y = m*((0.5/(1/(1+(Math.pow(Math.E,((-1)*d))))-0.5))*((1/((1+(Math.pow(Math.E, (((-1)*d)*(1/h)*x-1))))))-0.5))+0.5;函数没有像预期的那样被绑定,它应该像Desmos示例中那样通过0,0传递……但事实并非如此!我知道可能有太多的括号,解决方案将是显而易见的人对此有更好的理解,所以,你可以帮助我吗?
谢谢你!!
发布于 2020-05-28 01:15:14
您不小心将最后一个+0.5放在括号之外。
注意:您不需要使用(-1)*d,因为它等同于-d。
以下是我的改进版本:
y = m*((0.5/(1/(1+(Math.pow(Math.E, -d)))-0.5))*((1/((1+(Math.pow(Math.E, -d*((1/h)*x-1))))))-0.5)+0.5);我使用desmos上指定的变量进行了尝试
m = 2;
d = 1;
h = 0.5;
// you wanted to check for this point
x = 0;
/* [The code above] */我在0, 1 and 42上测试了它的值,每次它都有效(不是科学的,而是实际的证明^^)
https://stackoverflow.com/questions/62048393
复制相似问题