m2m模型翻译
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

21 lines
653 B

6 months ago
  1. from itertools import product
  2. from sympy.core.symbol import symbols
  3. from sympy.functions.elementary.trigonometric import cos
  4. from sympy.core.numbers import pi
  5. from sympy.codegen.scipy_nodes import cosm1
  6. x, y, z = symbols('x y z')
  7. def test_cosm1():
  8. cm1_xy = cosm1(x*y)
  9. ref_xy = cos(x*y) - 1
  10. for wrt, deriv_order in product([x, y, z], range(0, 3)):
  11. assert (
  12. cm1_xy.diff(wrt, deriv_order) -
  13. ref_xy.diff(wrt, deriv_order)
  14. ).rewrite(cos).simplify() == 0
  15. expr_minus2 = cosm1(pi)
  16. assert expr_minus2.rewrite(cos) == -2
  17. assert cosm1(3.14).simplify() == cosm1(3.14) # cannot simplify with 3.14