Hyperbolic Functions Calculator
Вычислите sinh, cosh, tanh и обратные гиперболические функции с проверкой идентичности.
Об этом инструменте
Гиперболические функции — это математические функции, аналогичные обычным тригонометрическим функциям, но действующие на гиперболах вместо окружностей. Шесть основных гиперболических функций — sinh, cosh, tanh, coth, sech и csch — часто встречаются в инженерии, физике и прикладной математике, особенно в сценариях, связанных с экспоненциальным ростом, теплопроводностью и распространением волн. Этот калькулятор вычисляет все шесть функций и их обратные (asinh, acosh, atanh, acoth, asech, acsch) с высокой точностью, что делает его незаменимым инструментом для студентов, инженеров и исследователей, работающих с гиперболическими соотношениями.
Чтобы использовать этот калькулятор, просто введите действительное число и выберите гиперболическую функцию для вычисления. Инструмент мгновенно возвращает результат вместе с дополняющей обратной функцией, позволяя проверить соотношения и убедиться в правильности расчётов. Для продвинутых пользователей функция проверки идентичностей отображает важные математические тождества, такие как cosh²(x) − sinh²(x) = 1, помогая понять структурные связи между гиперболическими функциями и подтвердить вычисленные результаты на соответствие известным свойствам.
Гиперболические функции незаменимы в областях, начиная от цепных линий в архитектуре и проектировании висячих мостов и заканчивая релятивистской физикой и расчётами энтропии в термодинамике. Обратные функции столь же важны для решения уравнений, в которых встречаются гиперболические функции. Этот инструмент принимает как малые, так и большие значения; при очень больших входных данных можно наблюдать экспоненциальный рост sinh и cosh — поведение, отличное от их тригонометрических аналогов.
Часто задаваемые вопросы
Реализация кода
import math
def calculate_hyperbolic(x: float) -> dict:
"""Calculate all hyperbolic functions and their inverses."""
results = {
"sinh": math.sinh(x),
"cosh": math.cosh(x),
"tanh": math.tanh(x),
"csch": 1 / math.sinh(x) if x != 0 else float('inf'),
"sech": 1 / math.cosh(x),
"coth": 1 / math.tanh(x) if x != 0 else float('inf'),
}
# Inverse hyperbolic (valid ranges)
if abs(x) >= 1:
results["asinh"] = math.asinh(x)
results["acosh"] = math.acosh(x) if x >= 1 else None
else:
results["asinh"] = math.asinh(x)
results["acosh"] = None # Domain: x >= 1
results["atanh"] = math.atanh(x) if abs(x) < 1 else None
return {k: round(v, 8) if isinstance(v, float) else v
for k, v in results.items()}
# Identity verifications
x = 1.5
r = calculate_hyperbolic(x)
print(f"x = {x}")
for name, value in r.items():
print(f" {name}({x}) = {value}")
# Verify identity: cosh²(x) - sinh²(x) = 1
print(f"\ncosh²(x) - sinh²(x) = {round(r['cosh']**2 - r['sinh']**2, 10)}")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.