我想在var中添加一个数字。当var小时,这个数字应该更大,当var大时,这个数字应该更小。我已经计算出最佳值:当var = 1时,函数应该加125.当var = 50时,函数应该加上420.我正在考虑sin函数,但我不知道如何“个性化”这个函数来使用它。 (我正在使用php)
答案 0 :(得分:0)
正弦函数是周期性的,可能不适合该任务。
你的例子不清楚:你说当var变小时加上'较大的数字,当var变大时加上较小的数字',但是加上125比1和420比50,这与文本相矛盾。
一种可能性是互惠功能 - 它符合您规定的要求,但不符合您的示例要求。
只给出2个数据点,我们可以推导出线性关系:
y = 125 + (420 - 125) / (50 - 1) * (x - 1)
大约是:
y = 119 + 6x
检查:
x = 1; y = 125
x = 50; y = 419
近似因子6是6.0204081632的舍入...这是小数部分的一个有趣的序列。
答案 1 :(得分:0)
尝试进行线性方程投影。
VarAdd = Var * Slop + Start;方程[1]
125 = 1 * Slop + Start --- 1
420 = 50 * Slop + Start -2
解决Slop和Start然后随时应用eq [1]。
答案 2 :(得分:0)
对于具有以下形式的函数:
f[x_] := x + Sin[y*x + z]
受限制
f[1] == 1 + 125 && f[50] == 50 + 420
你有
{{y -> 1/49 (-ArcSin[125] + ArcSin[420]),
z -> 1/49 (50 ArcSin[125] - ArcSin[420])}}
大约是
{{y -> 0. - 0.0247338 I, z -> 1.5708 - 5.49671 I}}
在0到70之间,这给出了:
仅使用实际值的近似函数是:
f(x) = x + 121.94629730754633 cosh(0.02473378688005212 x) +
121.94219707312345 sinh(0.02473378688005212 x)