{"action":"created","issue":{"url":"https://api.github.com/repos/sympy/sympy/issues/16473","repository_url":"https://api.github.com/repos/sympy/sympy","labels_url":"https://api.github.com/repos/sympy/sympy/issues/16473/labels{/name}","comments_url":"https://api.github.com/repos/sympy/sympy/issues/16473/comments","events_url":"https://api.github.com/repos/sympy/sympy/issues/16473/events","html_url":"https://github.com/sympy/sympy/pull/16473","id":426440228,"node_id":"MDExOlB1bGxSZXF1ZXN0MjY1MjkwODMy","number":16473,"title":"Calculus: Added functions to evaluate stationary points and maximum/minimum","user":{"login":"supreet11agrawal","id":25703456,"node_id":"MDQ6VXNlcjI1NzAzNDU2","avatar_url":"https://avatars3.githubusercontent.com/u/25703456?v=4","gravatar_id":"","url":"https://api.github.com/users/supreet11agrawal","html_url":"https://github.com/supreet11agrawal","followers_url":"https://api.github.com/users/supreet11agrawal/followers","following_url":"https://api.github.com/users/supreet11agrawal/following{/other_user}","gists_url":"https://api.github.com/users/supreet11agrawal/gists{/gist_id}","starred_url":"https://api.github.com/users/supreet11agrawal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/supreet11agrawal/subscriptions","organizations_url":"https://api.github.com/users/supreet11agrawal/orgs","repos_url":"https://api.github.com/users/supreet11agrawal/repos","events_url":"https://api.github.com/users/supreet11agrawal/events{/privacy}","received_events_url":"https://api.github.com/users/supreet11agrawal/received_events","type":"User","site_admin":false},"labels":[{"id":240115053,"node_id":"MDU6TGFiZWwyNDAxMTUwNTM=","url":"https://api.github.com/repos/sympy/sympy/labels/calculus","name":"calculus","color":"0000Ff","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2019-03-28T11:26:36Z","updated_at":"2019-03-31T13:33:59Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/sympy/sympy/pulls/16473","html_url":"https://github.com/sympy/sympy/pull/16473","diff_url":"https://github.com/sympy/sympy/pull/16473.diff","patch_url":"https://github.com/sympy/sympy/pull/16473.patch"},"body":"\r\n<!-- Your title above should be a short description of what\r\nwas changed. Do not include the issue number in the title. -->\r\n\r\n#### References to other Issues or PRs\r\n<!-- If this pull request fixes an issue, write \"Fixes #NNNN\" in that exact\r\nformat, e.g. \"Fixes #1234\". See\r\nhttps://github.com/blog/1506-closing-issues-via-pull-requests . Please also\r\nwrite a comment on that issue linking back to this pull request once it is\r\nopen. -->\r\nFixes #16239 \r\n\r\n#### Brief description of what is fixed or changed\r\nIn `calculus/util.py`\r\n\r\n* Added `stationary_points()`: This function evaluates and returns set of\r\nall the stationary points (where the slope of function is 0) of a function in\r\nthe given domain.\r\n\r\n* Added `minimize()`: This function returns the minimum value of a function\r\nin the given domain. If no domain is passed, then global minimum is returned.\r\n\r\n* Added `minimize()`: This function returns the maximum value of a function\r\nin the given domain. If no domain is passed, then global maximum is returned.\r\n\r\n\r\n#### Other comments\r\nI haven't added test cases as of now. I will add them after this PR is reviewed and changes are proposed in it.\r\n\r\nFuture Work:\r\n* [ ] Implement a function, maybe `stationary_values` which returns a list of stationary points and corresponding values.\r\n* [ ] Implement a function, `critical_points`( and maybe `critical_values` as well) which returns set of critical points.\r\n* [ ] Implement a function, `minima` which returns minima of an expression in the given domain.\r\n* [ ] Implement a function, `maxima` which returns maxima of an expression in the given domain.\r\n* [ ] Implement a function, `inflection_points` which returns the inflection points of an expression in the given domain.\r\n#### Release Notes\r\n\r\n<!-- Write the release notes for this release below. See\r\nhttps://github.com/sympy/sympy/wiki/Writing-Release-Notes for more information\r\non how to write release notes. The bot will check your release notes\r\nautomatically to see if they are formatted correctly. -->\r\n\r\n<!-- BEGIN RELEASE NOTES -->\r\n* calculus\r\n  * Added a function `stationary_points` to find stationary points of an expression in a given domain\r\n  * Added functions `minimize` and `maximize` to find minimum and maximum values of an expression in a given domain\r\n<!-- END RELEASE NOTES -->\r\n"},"comment":{"url":"https://api.github.com/repos/sympy/sympy/issues/comments/478342578","html_url":"https://github.com/sympy/sympy/pull/16473#issuecomment-478342578","issue_url":"https://api.github.com/repos/sympy/sympy/issues/16473","id":478342578,"node_id":"MDEyOklzc3VlQ29tbWVudDQ3ODM0MjU3OA==","user":{"login":"supreet11agrawal","id":25703456,"node_id":"MDQ6VXNlcjI1NzAzNDU2","avatar_url":"https://avatars3.githubusercontent.com/u/25703456?v=4","gravatar_id":"","url":"https://api.github.com/users/supreet11agrawal","html_url":"https://github.com/supreet11agrawal","followers_url":"https://api.github.com/users/supreet11agrawal/followers","following_url":"https://api.github.com/users/supreet11agrawal/following{/other_user}","gists_url":"https://api.github.com/users/supreet11agrawal/gists{/gist_id}","starred_url":"https://api.github.com/users/supreet11agrawal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/supreet11agrawal/subscriptions","organizations_url":"https://api.github.com/users/supreet11agrawal/orgs","repos_url":"https://api.github.com/users/supreet11agrawal/repos","events_url":"https://api.github.com/users/supreet11agrawal/events{/privacy}","received_events_url":"https://api.github.com/users/supreet11agrawal/received_events","type":"User","site_admin":false},"created_at":"2019-03-31T13:33:59Z","updated_at":"2019-03-31T13:33:59Z","author_association":"CONTRIBUTOR","body":"I think that Sympy should be able to find ranges for these expressions as they are quite basic.\r\nRegarding the name, I will change them to `minimum` and `maximum`. Although for both `argmin` and `minimum`, I think `minima` name might make more sense"}}
{"actor":{"display_login":"supreet11agrawal"}}