{"shas":[["0eb3dbb5ddd5f1812a5492cf85aecb2e60e9eac3","b958c3ef45b756747570442941c30f832e64d46a@web.de","Improve lower and upper gamma functions.\n\nThis commit adds differentiation, numerical evaluation and pretty printing\nof the aforementioned functions.\n\ndoc/src/modules/functions.txt: Add lowergamma.\n\nsympy/functions/special/gamma_functions.py:\n  (lowergamma.fdiff) New method.\n  (lowergamma._eval_evalf) Likewise.\n  (uppergamma._eval_evalf) Likewsie.\n  (uppergamma.fdiff) Fix old code.\n\nsympy/printing/latex.py:\n  (_print_uppergamma) New method.\n  (_print_lowergamma) Likewise.\nsympy/printing/pretty/pretty.py:\n  (_print_uppergamma) Likewise.\n  (_print_lowergamma) Likewise.\n\nsympy/functions/special/tests/test_gamma_functions.py:\n  (test_lowergamma) Extend test.\n  (test_uppergamma) Likewise.\n\nTODO:\n* evaluation at half-integers?","Tom Bachmann"],["01676ba6528fd852d2f1f27e0f93f5993d67d34c","b958c3ef45b756747570442941c30f832e64d46a@web.de","Start hyperexpand.\n\nThis commit starts the hypergeometric function expansion framework.\nIt implements the basic algorithm for hypergeometric functions\n(i.e. not Meijer G) and adds a few simple formulae.\n\nThere are a lot of shortcomings as detailed below under TODO. These\nwill be fixed in the next few commits.\n\nsympy/simplify/hyperexpand.py: New file.\nsympy/simplify/tests/test_hyperexpand.py: Likewise.\n\nTODO in next commits:\n* Improve find_instantiations.\n* PFDDuplication?\n* Add more formulae.\n  In particular figure out a \"minimal\" set of formulae from\n  \"integrals and series\"\n* Refactor in preparation of adding meijer g code.\n* More tests.\n* Partial simplification\n  (i.e. simplify a hypergeometric expression even if we cannot completely expand it).\n* Calling simplify() slows us down a lot...","Tom Bachmann"],["2c2b65ae39ff963e272b8edfda8d1646b204b371","b958c3ef45b756747570442941c30f832e64d46a@web.de","Add documentation for hyperexpand.\n\ndoc/src/modules/simplify.txt: Include description of hyperexpand().\ndoc/src/modules/hyperexpand.txt: New file.","Tom Bachmann"],["43de761c02e7459ed3a3c69aeee06d40ce71b113","b958c3ef45b756747570442941c30f832e64d46a@web.de","Make hyperexpand slightly more clever.\n\nThis commit implements tricks for recognising \"shifted sums\", i.e.\nhypergeometric functions that reduce to lower order + a polynomial\n(e.g. sum(x**n/n!, (n, 3, oo))).\n\nsympy/simplify/hyperexpand.py:\n  (MultOperator) New operator.\n  (try_shifted_sum) New function.\n  (_hyperexpand) Try it.\n\nTODO: maybe add a docstring?","Tom Bachmann"],["eaa6cb79a6ee6af31bc2cf0842d8b991ff9b7670","b958c3ef45b756747570442941c30f832e64d46a@web.de","Implement expansion of parametric expressions.\n\nsympy/simplify/hyperexpand.py:\n  (Mod1) New class.\n  (IndexPair.compute_buckets) Accept optional oabuckets, obbuckets parametrs.\n                              Use Mod1 class.\n  (IndexPair.reachable) New method.\n  (Formula.find_instantiations) Pass the parameter `a` we are solving for to\n                                `solve` explicitely.\n  (FormulaCollection.lokup_origin) Test directly all the instantiations using\n                                   the new `reachable` method.\n  (devise_plan) Pass abuckets and bbuckets to nip.compute_buckets, so that\n                Mod1 objects are unified.\n\nsympy/simplify/tests/test_hyperexpand.py:\n  (test_hyperexpand_parametric) New test.","Tom Bachmann"],["5995e1e2e5ac56f661839bf87f60cd886475c653","b958c3ef45b756747570442941c30f832e64d46a@web.de","Implement costum bases.\n\nThis commit implements the possiblity of specifying bases for formulae by\nhand, instead of having them computed.\nIt also adds one example of this.\n\nsympy/simplify/hyperexpand.py:\n  (add_formulae) Add one basis by hand.\n\n  (Formula.closed_form) Turn into a property.\n  (Formula._compute_basis) Take closed_form as argument.\n  (Formula.__init__) Accept optional B, C, M parameters.\n  (Formula.find_instantiations) Instantiate B, C, M.\n\nsympy/simplify/tests/test_hyperexpand.py\n  (test_hyperexpand_bases) New test for this.","Tom Bachmann"],["9e25a499227759720c6abffd90dccb92dbe7ff9a","b958c3ef45b756747570442941c30f832e64d46a@web.de","Improve find_instantiations\n\nWIP","Tom Bachmann"],["0b12b0b1db4248f6ab947cade3bfa620d538dd99","b958c3ef45b756747570442941c30f832e64d46a@web.de","Extend hypergeometric tables.\n\nThis is a WIP commit that will be extended as need arises, until I get around\nto putting in more extensive tables.\n\n* continue at page 500\n\nTODO\n* 3F2 starting from page 431\n* 4F3, etc\n* polynomial cases\n* add erfi function?\n* good bases\n* test more common forms (e.g. bessel)","Tom Bachmann"],["464f5e9a010028ee4f5ad45da978cb40ebaa2404","b958c3ef45b756747570442941c30f832e64d46a@web.de","Implement summation using hypergeometric functions.\n\nsympy/concrete/summations.py:\n  (eval_sum_hyper) New function.\n  (eval_sum_symbolic) Try eval_sum_hyper if all else fails.\n\nsympy/concrete/tests/test_sums_products.py:\n  (test_hypersum) New test.\n\nTODO\n* because of the way the rest of the summation stuff works, x**n comes out ugly\n* atan series comes out as logs (probably not much that can be done here)\n* testing the Piecewise results is ...","Tom Bachmann"]],"repo":"ness01/sympy","actor":"ness01","ref":"refs/heads/gsoc","size":9,"head":"464f5e9a010028ee4f5ad45da978cb40ebaa2404","actor_gravatar":"19a106c007b937829625d57470b0c19c","push_id":32087696}