Как реализовать следующую функцию гиперболи c в Python? - PullRequest
0 голосов
/ 04 апреля 2020

Я новичок Python, и у меня возникла следующая проблема: у меня есть набор значений от 0 до 1, и я хочу реализовать нелинейную функцию, которая выводит значения от 0 до 100 следующим образом:

enter image description here

(извините за отсутствие математического описания этой функции, я не уверен, как она называется - кривая по сути является четвертью круга)

Я чувствую, что это должно быть очень просто, но я не знаю, как поступить.

Большое спасибо заранее!

1 Ответ

1 голос
/ 04 апреля 2020

Уравнение , которое вы ищете, равно

sqrt(100**2 - 100**2(x-1)**2)

Таким образом:

arr = np.random.random_sample(100) #100 numbers between 0 and 1
hyp = lambda x: (100**2 - 100**2*(x-1)**2)**0.5
print(hyp(arr)) #[98.18880326, 68.95051961, 98.81540216, 26.98951239...]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...