def testGamma(self): self.compare(mathics.Expression('Gamma', mathics.Symbol('Global`z')), sympy.gamma(sympy.Symbol('_Mathics_User_Global`z'))) self.compare( mathics.Expression('Gamma', mathics.Symbol('Global`z'), mathics.Symbol('Global`x')), sympy.uppergamma(sympy.Symbol('_Mathics_User_Global`z'), sympy.Symbol('_Mathics_User_Global`x')))
def testGamma(self): self.compare( mathics.Expression("Gamma", mathics.Symbol("Global`z")), sympy.gamma(sympy.Symbol("_Mathics_User_Global`z")), ) self.compare( mathics.Expression( "Gamma", mathics.Symbol("Global`z"), mathics.Symbol("Global`x") ), sympy.uppergamma( sympy.Symbol("_Mathics_User_Global`z"), sympy.Symbol("_Mathics_User_Global`x"), ), )
def testDerivative(self): self.compare( mathics.Expression( 'D', mathics.Symbol('Global`x'), mathics.Symbol('Global`y')), sympy.Derivative( sympy.Symbol('_Mathics_User_Global`x'), sympy.Symbol('_Mathics_User_Global`y')))
def testAdd(self): self.compare( mathics.Expression( 'Plus', mathics.Integer(1), mathics.Symbol('Global`x')), sympy.Add( sympy.Integer(1), sympy.Symbol('_Mathics_User_Global`x')))
def testDerivative2(self): kwargs = {'converted_functions': set(['Global`f'])} head = mathics.Expression( mathics.Expression('System`Derivative', mathics.Integer(1), mathics.Integer(0)), mathics.Symbol('Global`f')) expr = mathics.Expression(head, mathics.Symbol('Global`x'), mathics.Symbol('Global`y')) sfxy = sympy.Function(str('_Mathics_User_Global`f'))( sympy.Symbol('_Mathics_User_Global`x'), sympy.Symbol('_Mathics_User_Global`y')) sym_expr = sympy.Derivative(sfxy, sympy.Symbol('_Mathics_User_Global`x')) self.compare_to_sympy(expr, sym_expr, **kwargs)
def testIntegrate(self): self.compare( mathics.Expression( 'Integrate', mathics.Symbol('Global`x'), mathics.Symbol('Global`y')), sympy.Integral( sympy.Symbol('_Mathics_User_Global`x'), sympy.Symbol('_Mathics_User_Global`y')))
def testConvertedFunctions(self): kwargs = {'converted_functions': set(['Global`f'])} marg1 = mathics.Expression('Global`f', mathics.Symbol('Global`x')) sarg1 = sympy.Function(str('_Mathics_User_Global`f'))( sympy.Symbol('_Mathics_User_Global`x')) self.compare(marg1, sarg1, **kwargs) marg2 = mathics.Expression('Global`f', mathics.Symbol('Global`x'), mathics.Symbol('Global`y')) sarg2 = sympy.Function(str('_Mathics_User_Global`f'))( sympy.Symbol('_Mathics_User_Global`x'), sympy.Symbol('_Mathics_User_Global`y')) self.compare(marg2, sarg2, **kwargs) self.compare( mathics.Expression('D', marg2, mathics.Symbol('Global`x')), sympy.Derivative(sarg2, sympy.Symbol('_Mathics_User_Global`x')), **kwargs)
def testDerivative(self): self.compare( mathics.Expression( "D", mathics.Symbol("Global`x"), mathics.Symbol("Global`y") ), sympy.Derivative( sympy.Symbol("_Mathics_User_Global`x"), sympy.Symbol("_Mathics_User_Global`y"), ), )
def testIntegrate(self): self.compare( mathics.Expression( "Integrate", mathics.Symbol("Global`x"), mathics.Symbol("Global`y") ), sympy.Integral( sympy.Symbol("_Mathics_User_Global`x"), sympy.Symbol("_Mathics_User_Global`y"), ), )
def testDerivative2(self): kwargs = {"converted_functions": set(["Global`f"])} head = mathics.Expression( mathics.Expression( "System`Derivative", mathics.Integer(1), mathics.Integer(0) ), mathics.Symbol("Global`f"), ) expr = mathics.Expression( head, mathics.Symbol("Global`x"), mathics.Symbol("Global`y") ) sfxy = sympy.Function(str("_Mathics_User_Global`f"))( sympy.Symbol("_Mathics_User_Global`x"), sympy.Symbol("_Mathics_User_Global`y"), ) sym_expr = sympy.Derivative(sfxy, sympy.Symbol("_Mathics_User_Global`x")) self.compare_to_sympy(expr, sym_expr, **kwargs)
def testConvertedFunctions(self): kwargs = {"converted_functions": set(["Global`f"])} marg1 = mathics.Expression("Global`f", mathics.Symbol("Global`x")) sarg1 = sympy.Function(str("_Mathics_User_Global`f"))( sympy.Symbol("_Mathics_User_Global`x") ) self.compare(marg1, sarg1, **kwargs) marg2 = mathics.Expression( "Global`f", mathics.Symbol("Global`x"), mathics.Symbol("Global`y") ) sarg2 = sympy.Function(str("_Mathics_User_Global`f"))( sympy.Symbol("_Mathics_User_Global`x"), sympy.Symbol("_Mathics_User_Global`y"), ) self.compare(marg2, sarg2, **kwargs) self.compare( mathics.Expression("D", marg2, mathics.Symbol("Global`x")), sympy.Derivative(sarg2, sympy.Symbol("_Mathics_User_Global`x")), **kwargs )
def testExpression(self): self.compare( mathics.Expression('Sin', mathics.Symbol('Global`x')), sympy.sin(sympy.Symbol('_Mathics_User_Global`x')))
def testList(self): self.compare(mathics.Expression('List', mathics.Integer(1)), [1])
def testAdd(self): self.compare( mathics.Expression("Plus", mathics.Integer(1), mathics.Symbol("Global`x")), sympy.Add(sympy.Integer(1), sympy.Symbol("_Mathics_User_Global`x")), )
def testExpression(self): self.compare( mathics.Expression("Sin", mathics.Symbol("Global`x")), sympy.sin(sympy.Symbol("_Mathics_User_Global`x")), )