Если вы не можете понять математику, вам не следует пытаться реализовать эту функцию. Вместо этого вы должны найти существующую реализацию, проверить и подтвердить ее, и использовать ее.
Существует очень много способов отменить перевод такого рода функции из псевдокода на язык программирования, что любой, кто пытается помочь вам в этом ошибочном предложении, делает вас и, следовательно, ваших клиентов, оказывает серьезную медвежью услугу.
Инструментом для понимания уравнения является математика {s}.