def spherical_bessel_fn(n, x=None, **args):
 if (n < 0):
  dup = dup_spherical_bessel_fn_minus((- int(n)), ZZ)
 else:
  dup = dup_spherical_bessel_fn(int(n), ZZ)
 poly = DMP(dup, ZZ)
 if (x is not None):
  poly = Poly.new(poly, (1 / x))
 else:
  poly = PurePoly.new(poly, (1 / Dummy('x')))
 if (not args.get('polys', False)):
  return poly.as_expr()
 else:
  return poly

def spherical_bessel_fn ( n , x = None , ** args ) : if ( n < 0 ) : dup = dup_spherical_bessel_fn_minus ( ( - int ( n ) ) , ZZ ) else : dup = dup_spherical_bessel_fn ( int ( n ) , ZZ ) poly = DMP ( dup , ZZ ) if ( x is not None ) : poly = Poly . new ( poly , ( 1 / x ) ) else : poly = PurePoly . new ( poly , ( 1 / Dummy ( 'x' ) ) ) if ( not args . get ( 'polys' , False ) ) : return poly . as_expr ( ) else : return poly
coefficients for the spherical bessel functions .