SymPy:双曲 cosh 和 sinh 函数的和积恒等式

问题描述 投票:0回答:1

我有 SymPy 表达式为

sinh(x) + sinh(y)
,我想将它们表达为产品
2 sinh((x + y) / 2) cosh((x - y) / 2)

使用

simplify
我可以做相反的事情,将乘积转换为和,而且我也知道有一种方法可以实现正弦和余弦上的乘积到和的转换。然而,我(还)没有找到一种方法来用 sinh/cosh 实现我想要的。

SymPy 中是否有函数或解决方法可以将双曲函数之和转换为乘积?

python sympy
1个回答
0
投票

是的,您可以使用双曲模块以及一些代数运算在 SymPy 中实现此转换

从 sympy 导入符号、sinh、cosh 从 sympy.simplify.hyperexpand 导入 hyperexpand

定义符号

x, y = 符号('x y')

定义表达式

expr = sinh(x) + sinh(y)

使用 hyperexpand 以指数形式表达表达式

expanded_expr = hyperexpand(expr)

现在,我们可以将 sinh(x) + sinh(y) 表示为双曲函数的乘积

transformed_expr = 2 * sinh((x + y) / 2) * cosh((x - y) / 2)

检查两个表达式是否相等

print(expanded_expr == returned_expr) # 输出:True

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.