Compare commits

...

1 Commits

Author SHA1 Message Date
11fe47bef1 add sigmoid function to basic models (#307)
All checks were successful
Build AppImage / Explore-Gitea-Actions (push) Successful in 2m13s
fixes #306

Co-authored-by: Dominik Demuth <dominik.demuth@physik.tu-darmstadt.de>
Reviewed-on: #307
2025-02-11 17:31:00 +00:00

View File

@ -203,6 +203,31 @@ class Sinc:
return c * np.sinc(((x-x0)/w)/np.pi)
class Sigmoid:
type = 'Basic'
name = 'Sigmoid'
equation = 'C / [1 + exp(-a * (x - x_{0})] + y_{0}'
params = ['C', 'a', 'x_{0}', 'y_{0}']
@staticmethod
def func(x, c, a, x0, y0):
"""
Sigmoid function
.. math::
y = C / [1 + exp(-a * (x - x_0))] + y_0
Args:
x (array_like): Input values
c (float): Prefactor
a (float): Steepness of the sigmoid
x0 (float): x position of the sigmoid's midpoint
y0 (float): y position of the sigmoid's midpoint
"""
return c / (1 + np.exp(-a * (x - x0))) + y0
class Sine:
"""
Wavy sine function