本文整理汇总了Python中sympy.core.Basic.sqrt方法的典型用法代码示例。如果您正苦于以下问题:Python Basic.sqrt方法的具体用法?Python Basic.sqrt怎么用?Python Basic.sqrt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sympy.core.Basic
的用法示例。
在下文中一共展示了Basic.sqrt方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: radsimp
# 需要导入模块: from sympy.core import Basic [as 别名]
# 或者: from sympy.core.Basic import sqrt [as 别名]
def radsimp(expr):
"""
Rationalize the denominator.
Examples:
=========
>>> from sympy import *
>>> radsimp(1/(2+sqrt(2)))
1 - 1/2*2**(1/2)
>>> x,y = map(Symbol, 'xy')
>>> e = ( (2+2*sqrt(2))*x+(2+sqrt(8))*y )/( 2+sqrt(2) )
>>> radsimp(e)
x*2**(1/2) + y*2**(1/2)
"""
n,d = fraction(expr)
a,b,c = map(Wild, 'abc')
r = d.match(a+b*Basic.sqrt(c))
if r is not None:
a = r[a]
if r[b] == 0:
b,c = 0,0
else:
b,c = r[b],r[c]
syms = list(n.atoms(type=Basic.Symbol))
n = collect( (n*(a-b*Basic.sqrt(c))).expand(), syms )
d = a**2 - c*b**2
return n/d
示例2: _eval_apply
# 需要导入模块: from sympy.core import Basic [as 别名]
# 或者: from sympy.core.Basic import sqrt [as 别名]
def _eval_apply(cls, arg):
arg = Basic.sympify(arg)
if isinstance(arg, Basic.Number):
if isinstance(arg, Basic.NaN):
return S.NaN
elif isinstance(arg, Basic.Infinity):
return S.Infinity
elif isinstance(arg, Basic.Integer):
if arg.is_positive:
return Basic.Factorial(arg-1)
else:
return S.ComplexInfinity
elif isinstance(arg, Basic.Rational):
if arg.q == 2:
n = abs(arg.p) / arg.q
if arg.is_positive:
k, coeff = n, S.One
else:
n = k = n + 1
if n & 1 == 0:
coeff = S.One
else:
coeff = S.NegativeOne
for i in range(3, 2*k, 2):
coeff *= i
if arg.is_positive:
return coeff*Basic.sqrt(S.Pi) / 2**n
else:
return 2**n*Basic.sqrt(S.Pi) / coeff