{"action":"closed","number":13601,"pull_request":{"url":"https://api.github.com/repos/sympy/sympy/pulls/13601","id":152278032,"html_url":"https://github.com/sympy/sympy/pull/13601","diff_url":"https://github.com/sympy/sympy/pull/13601.diff","patch_url":"https://github.com/sympy/sympy/pull/13601.patch","issue_url":"https://api.github.com/repos/sympy/sympy/issues/13601","number":13601,"state":"closed","locked":false,"title":"New vector","user":{"login":"BMaxV","id":5713211,"avatar_url":"https://avatars0.githubusercontent.com/u/5713211?v=4","gravatar_id":"","url":"https://api.github.com/users/BMaxV","html_url":"https://github.com/BMaxV","followers_url":"https://api.github.com/users/BMaxV/followers","following_url":"https://api.github.com/users/BMaxV/following{/other_user}","gists_url":"https://api.github.com/users/BMaxV/gists{/gist_id}","starred_url":"https://api.github.com/users/BMaxV/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BMaxV/subscriptions","organizations_url":"https://api.github.com/users/BMaxV/orgs","repos_url":"https://api.github.com/users/BMaxV/repos","events_url":"https://api.github.com/users/BMaxV/events{/privacy}","received_events_url":"https://api.github.com/users/BMaxV/received_events","type":"User","site_admin":false},"body":"This is a new module that I would like to someday replace the sympy.vector module, in some form or way.\r\n\r\n**Why is this change necessary?**\r\n\r\nIt's not necessary, what you have works.\r\n\r\n**If it's not necessary, why should sympy.vector be touched at all?**\r\n\r\nBecause frankly, things are a bit messy: You have sympy.matrices, there is a sympy.physics.vector module, a sympy.liealgebras (wich I believe stands for linear algebras?), sympy.tensor and finally sympy.vector module. Most of which implement some common functions, like the dot and cross products and all of which aren't very pythonic in the way they use classes. In short, to clean things up and to provide a nice, clean standard that can be use by everyone.\r\n\r\n**Why is this implementation even good or better than the ones we have?**\r\n\r\nUnlike the others, it only depends on sympy and I only use very basic functions that are already defined for sympy expressions, like basic math operations and substitution. That would enable me or someone else to maybe prune some other parts of sympy without impacting this module.\r\n\r\n**What can this module do then?**\r\n\r\nI have looked at what the old vector class did and tried to reach feature parity. Meaning, these are vectors you can treat like you would expect and they should just \"work\". I have also included the differential field and vector field functions, gradient, divergence and curl. \r\n\r\nOne thing I have not added are reference frames, because in my opinion they're not required for vector operations. Since they seem to be used elsewhere (sympy.physics), I would write a replacement to accomodate that use.\r\n\r\nAnother thing I have added, but that I'm not sure about are dyadics, since it wasn't really clear on wikipedia if that reference to the sum of the parts or the matrix form. I have included both, but maybe renaming is required.\r\n\r\nLastly these vectors only support three dimensios. If you need them to be larger, I'll have to rewrite a few bits and pieces.\r\n\r\nIf this module doesn't support something that's used somewhere else in sympy, just tell me and I'll add that.\r\n\r\nI would of course also write the new documentation if this gets accepted and you point me the right way.","created_at":"2017-11-13T16:05:52Z","updated_at":"2018-02-11T17:17:11Z","closed_at":"2018-02-11T17:17:11Z","merged_at":null,"merge_commit_sha":"39bf73e3896b0d28030207308afe1ce2daa243cb","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/sympy/sympy/pulls/13601/commits","review_comments_url":"https://api.github.com/repos/sympy/sympy/pulls/13601/comments","review_comment_url":"https://api.github.com/repos/sympy/sympy/pulls/comments{/number}","comments_url":"https://api.github.com/repos/sympy/sympy/issues/13601/comments","statuses_url":"https://api.github.com/repos/sympy/sympy/statuses/13819a73a2ec81ac04e4ace26b98c84bb47277db","head":{"label":"BMaxV:new_vector","ref":"new_vector","sha":"13819a73a2ec81ac04e4ace26b98c84bb47277db","user":{"login":"BMaxV","id":5713211,"avatar_url":"https://avatars0.githubusercontent.com/u/5713211?v=4","gravatar_id":"","url":"https://api.github.com/users/BMaxV","html_url":"https://github.com/BMaxV","followers_url":"https://api.github.com/users/BMaxV/followers","following_url":"https://api.github.com/users/BMaxV/following{/other_user}","gists_url":"https://api.github.com/users/BMaxV/gists{/gist_id}","starred_url":"https://api.github.com/users/BMaxV/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BMaxV/subscriptions","organizations_url":"https://api.github.com/users/BMaxV/orgs","repos_url":"https://api.github.com/users/BMaxV/repos","events_url":"https://api.github.com/users/BMaxV/events{/privacy}","received_events_url":"https://api.github.com/users/BMaxV/received_events","type":"User","site_admin":false},"repo":{"id":110434247,"name":"sympy","full_name":"BMaxV/sympy","owner":{"login":"BMaxV","id":5713211,"avatar_url":"https://avatars0.githubusercontent.com/u/5713211?v=4","gravatar_id":"","url":"https://api.github.com/users/BMaxV","html_url":"https://github.com/BMaxV","followers_url":"https://api.github.com/users/BMaxV/followers","following_url":"https://api.github.com/users/BMaxV/following{/other_user}","gists_url":"https://api.github.com/users/BMaxV/gists{/gist_id}","starred_url":"https://api.github.com/users/BMaxV/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BMaxV/subscriptions","organizations_url":"https://api.github.com/users/BMaxV/orgs","repos_url":"https://api.github.com/users/BMaxV/repos","events_url":"https://api.github.com/users/BMaxV/events{/privacy}","received_events_url":"https://api.github.com/users/BMaxV/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/BMaxV/sympy","description":"A computer algebra system written in pure Python","fork":true,"url":"https://api.github.com/repos/BMaxV/sympy","forks_url":"https://api.github.com/repos/BMaxV/sympy/forks","keys_url":"https://api.github.com/repos/BMaxV/sympy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/BMaxV/sympy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/BMaxV/sympy/teams","hooks_url":"https://api.github.com/repos/BMaxV/sympy/hooks","issue_events_url":"https://api.github.com/repos/BMaxV/sympy/issues/events{/number}","events_url":"https://api.github.com/repos/BMaxV/sympy/events","assignees_url":"https://api.github.com/repos/BMaxV/sympy/assignees{/user}","branches_url":"https://api.github.com/repos/BMaxV/sympy/branches{/branch}","tags_url":"https://api.github.com/repos/BMaxV/sympy/tags","blobs_url":"https://api.github.com/repos/BMaxV/sympy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/BMaxV/sympy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/BMaxV/sympy/git/refs{/sha}","trees_url":"https://api.github.com/repos/BMaxV/sympy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/BMaxV/sympy/statuses/{sha}","languages_url":"https://api.github.com/repos/BMaxV/sympy/languages","stargazers_url":"https://api.github.com/repos/BMaxV/sympy/stargazers","contributors_url":"https://api.github.com/repos/BMaxV/sympy/contributors","subscribers_url":"https://api.github.com/repos/BMaxV/sympy/subscribers","subscription_url":"https://api.github.com/repos/BMaxV/sympy/subscription","commits_url":"https://api.github.com/repos/BMaxV/sympy/commits{/sha}","git_commits_url":"https://api.github.com/repos/BMaxV/sympy/git/commits{/sha}","comments_url":"https://api.github.com/repos/BMaxV/sympy/comments{/number}","issue_comment_url":"https://api.github.com/repos/BMaxV/sympy/issues/comments{/number}","contents_url":"https://api.github.com/repos/BMaxV/sympy/contents/{+path}","compare_url":"https://api.github.com/repos/BMaxV/sympy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/BMaxV/sympy/merges","archive_url":"https://api.github.com/repos/BMaxV/sympy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/BMaxV/sympy/downloads","issues_url":"https://api.github.com/repos/BMaxV/sympy/issues{/number}","pulls_url":"https://api.github.com/repos/BMaxV/sympy/pulls{/number}","milestones_url":"https://api.github.com/repos/BMaxV/sympy/milestones{/number}","notifications_url":"https://api.github.com/repos/BMaxV/sympy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/BMaxV/sympy/labels{/name}","releases_url":"https://api.github.com/repos/BMaxV/sympy/releases{/id}","deployments_url":"https://api.github.com/repos/BMaxV/sympy/deployments","created_at":"2017-11-12T13:19:50Z","updated_at":"2017-11-12T13:19:58Z","pushed_at":"2017-11-14T18:32:35Z","git_url":"git://github.com/BMaxV/sympy.git","ssh_url":"git@github.com:BMaxV/sympy.git","clone_url":"https://github.com/BMaxV/sympy.git","svn_url":"https://github.com/BMaxV/sympy","homepage":"http://sympy.org/","size":86407,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":null,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"sympy:master","ref":"master","sha":"e8f522a4e652e41ce24acb20576e88f5d786b19b","user":{"login":"sympy","id":260832,"avatar_url":"https://avatars1.githubusercontent.com/u/260832?v=4","gravatar_id":"","url":"https://api.github.com/users/sympy","html_url":"https://github.com/sympy","followers_url":"https://api.github.com/users/sympy/followers","following_url":"https://api.github.com/users/sympy/following{/other_user}","gists_url":"https://api.github.com/users/sympy/gists{/gist_id}","starred_url":"https://api.github.com/users/sympy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sympy/subscriptions","organizations_url":"https://api.github.com/users/sympy/orgs","repos_url":"https://api.github.com/users/sympy/repos","events_url":"https://api.github.com/users/sympy/events{/privacy}","received_events_url":"https://api.github.com/users/sympy/received_events","type":"Organization","site_admin":false},"repo":{"id":640534,"name":"sympy","full_name":"sympy/sympy","owner":{"login":"sympy","id":260832,"avatar_url":"https://avatars1.githubusercontent.com/u/260832?v=4","gravatar_id":"","url":"https://api.github.com/users/sympy","html_url":"https://github.com/sympy","followers_url":"https://api.github.com/users/sympy/followers","following_url":"https://api.github.com/users/sympy/following{/other_user}","gists_url":"https://api.github.com/users/sympy/gists{/gist_id}","starred_url":"https://api.github.com/users/sympy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sympy/subscriptions","organizations_url":"https://api.github.com/users/sympy/orgs","repos_url":"https://api.github.com/users/sympy/repos","events_url":"https://api.github.com/users/sympy/events{/privacy}","received_events_url":"https://api.github.com/users/sympy/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/sympy/sympy","description":"A computer algebra system written in pure Python","fork":false,"url":"https://api.github.com/repos/sympy/sympy","forks_url":"https://api.github.com/repos/sympy/sympy/forks","keys_url":"https://api.github.com/repos/sympy/sympy/keys{/key_id}","collaborators_url":"https://api.github.com/repos/sympy/sympy/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/sympy/sympy/teams","hooks_url":"https://api.github.com/repos/sympy/sympy/hooks","issue_events_url":"https://api.github.com/repos/sympy/sympy/issues/events{/number}","events_url":"https://api.github.com/repos/sympy/sympy/events","assignees_url":"https://api.github.com/repos/sympy/sympy/assignees{/user}","branches_url":"https://api.github.com/repos/sympy/sympy/branches{/branch}","tags_url":"https://api.github.com/repos/sympy/sympy/tags","blobs_url":"https://api.github.com/repos/sympy/sympy/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/sympy/sympy/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/sympy/sympy/git/refs{/sha}","trees_url":"https://api.github.com/repos/sympy/sympy/git/trees{/sha}","statuses_url":"https://api.github.com/repos/sympy/sympy/statuses/{sha}","languages_url":"https://api.github.com/repos/sympy/sympy/languages","stargazers_url":"https://api.github.com/repos/sympy/sympy/stargazers","contributors_url":"https://api.github.com/repos/sympy/sympy/contributors","subscribers_url":"https://api.github.com/repos/sympy/sympy/subscribers","subscription_url":"https://api.github.com/repos/sympy/sympy/subscription","commits_url":"https://api.github.com/repos/sympy/sympy/commits{/sha}","git_commits_url":"https://api.github.com/repos/sympy/sympy/git/commits{/sha}","comments_url":"https://api.github.com/repos/sympy/sympy/comments{/number}","issue_comment_url":"https://api.github.com/repos/sympy/sympy/issues/comments{/number}","contents_url":"https://api.github.com/repos/sympy/sympy/contents/{+path}","compare_url":"https://api.github.com/repos/sympy/sympy/compare/{base}...{head}","merges_url":"https://api.github.com/repos/sympy/sympy/merges","archive_url":"https://api.github.com/repos/sympy/sympy/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/sympy/sympy/downloads","issues_url":"https://api.github.com/repos/sympy/sympy/issues{/number}","pulls_url":"https://api.github.com/repos/sympy/sympy/pulls{/number}","milestones_url":"https://api.github.com/repos/sympy/sympy/milestones{/number}","notifications_url":"https://api.github.com/repos/sympy/sympy/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/sympy/sympy/labels{/name}","releases_url":"https://api.github.com/repos/sympy/sympy/releases{/id}","deployments_url":"https://api.github.com/repos/sympy/sympy/deployments","created_at":"2010-04-30T20:37:14Z","updated_at":"2018-02-11T13:37:54Z","pushed_at":"2018-02-11T17:15:39Z","git_url":"git://github.com/sympy/sympy.git","ssh_url":"git@github.com:sympy/sympy.git","clone_url":"https://github.com/sympy/sympy.git","svn_url":"https://github.com/sympy/sympy","homepage":"http://sympy.org/","size":88320,"stargazers_count":4598,"watchers_count":4598,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2188,"mirror_url":null,"archived":false,"open_issues_count":3116,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":2188,"open_issues":3116,"watchers":4598,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/sympy/sympy/pulls/13601"},"html":{"href":"https://github.com/sympy/sympy/pull/13601"},"issue":{"href":"https://api.github.com/repos/sympy/sympy/issues/13601"},"comments":{"href":"https://api.github.com/repos/sympy/sympy/issues/13601/comments"},"review_comments":{"href":"https://api.github.com/repos/sympy/sympy/pulls/13601/comments"},"review_comment":{"href":"https://api.github.com/repos/sympy/sympy/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/sympy/sympy/pulls/13601/commits"},"statuses":{"href":"https://api.github.com/repos/sympy/sympy/statuses/13819a73a2ec81ac04e4ace26b98c84bb47277db"}},"author_association":"NONE","merged":false,"mergeable":true,"rebaseable":true,"mergeable_state":"unstable","merged_by":null,"comments":4,"review_comments":0,"maintainer_can_modify":false,"commits":5,"additions":3527,"deletions":0,"changed_files":10}}
{"actor":{"display_login":"BMaxV"}}