{"action":"created","issue":{"url":"https://api.github.com/repos/chebfun/chebfun/issues/1496","labels_url":"https://api.github.com/repos/chebfun/chebfun/issues/1496/labels{/name}","comments_url":"https://api.github.com/repos/chebfun/chebfun/issues/1496/comments","events_url":"https://api.github.com/repos/chebfun/chebfun/issues/1496/events","html_url":"https://github.com/chebfun/chebfun/pull/1496","id":76072672,"number":1496,"title":"Feature trigspec","user":{"login":"Hadrien-Montanelli","id":5701816,"avatar_url":"https://avatars.githubusercontent.com/u/5701816?v=3","gravatar_id":"","url":"https://api.github.com/users/Hadrien-Montanelli","html_url":"https://github.com/Hadrien-Montanelli","followers_url":"https://api.github.com/users/Hadrien-Montanelli/followers","following_url":"https://api.github.com/users/Hadrien-Montanelli/following{/other_user}","gists_url":"https://api.github.com/users/Hadrien-Montanelli/gists{/gist_id}","starred_url":"https://api.github.com/users/Hadrien-Montanelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hadrien-Montanelli/subscriptions","organizations_url":"https://api.github.com/users/Hadrien-Montanelli/orgs","repos_url":"https://api.github.com/users/Hadrien-Montanelli/repos","events_url":"https://api.github.com/users/Hadrien-Montanelli/events{/privacy}","received_events_url":"https://api.github.com/users/Hadrien-Montanelli/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"asgeirbirkis","id":3543429,"avatar_url":"https://avatars.githubusercontent.com/u/3543429?v=3","gravatar_id":"","url":"https://api.github.com/users/asgeirbirkis","html_url":"https://github.com/asgeirbirkis","followers_url":"https://api.github.com/users/asgeirbirkis/followers","following_url":"https://api.github.com/users/asgeirbirkis/following{/other_user}","gists_url":"https://api.github.com/users/asgeirbirkis/gists{/gist_id}","starred_url":"https://api.github.com/users/asgeirbirkis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asgeirbirkis/subscriptions","organizations_url":"https://api.github.com/users/asgeirbirkis/orgs","repos_url":"https://api.github.com/users/asgeirbirkis/repos","events_url":"https://api.github.com/users/asgeirbirkis/events{/privacy}","received_events_url":"https://api.github.com/users/asgeirbirkis/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/chebfun/chebfun/milestones/5","html_url":"https://github.com/chebfun/chebfun/milestones/v5.3","labels_url":"https://api.github.com/repos/chebfun/chebfun/milestones/5/labels","id":945403,"number":5,"title":"v5.3","description":"New features and speeding up Chebfun.\r\n\r\nPotential new features:\r\n* Removal of epslevels and .vscale properties.\r\n* Improvements to Chebfun constructor\r\n* Trigonometrical spectral discretization\r\n* chebfun2/explain movie\r\n* firpm\r\n* NH has observed that for periodic boundary conditions we can use _any_ of the MATLAB ode solvers (for non-periodic conditions we need ODE15S or ODE23T because  they support singular mass matrices).","creator":{"login":"asgeirbirkis","id":3543429,"avatar_url":"https://avatars.githubusercontent.com/u/3543429?v=3","gravatar_id":"","url":"https://api.github.com/users/asgeirbirkis","html_url":"https://github.com/asgeirbirkis","followers_url":"https://api.github.com/users/asgeirbirkis/followers","following_url":"https://api.github.com/users/asgeirbirkis/following{/other_user}","gists_url":"https://api.github.com/users/asgeirbirkis/gists{/gist_id}","starred_url":"https://api.github.com/users/asgeirbirkis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asgeirbirkis/subscriptions","organizations_url":"https://api.github.com/users/asgeirbirkis/orgs","repos_url":"https://api.github.com/users/asgeirbirkis/repos","events_url":"https://api.github.com/users/asgeirbirkis/events{/privacy}","received_events_url":"https://api.github.com/users/asgeirbirkis/received_events","type":"User","site_admin":false},"open_issues":11,"closed_issues":2,"state":"open","created_at":"2015-01-21T15:43:20Z","updated_at":"2015-06-18T09:52:09Z","due_on":null,"closed_at":null},"comments":10,"created_at":"2015-05-13T18:09:40Z","updated_at":"2015-07-21T08:05:03Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/chebfun/chebfun/pulls/1496","html_url":"https://github.com/chebfun/chebfun/pull/1496","diff_url":"https://github.com/chebfun/chebfun/pull/1496.diff","patch_url":"https://github.com/chebfun/chebfun/pull/1496.patch"},"body":"This branch implements a Fourier spectral method in coefficient space for solving linear, nonlinear and system of periodic ODEs. It uses the class `trigspec`, the equivalent of `ultraS` in the Fourier world.\r\nI added a class between `chebDiscretization` and `ultraS`/`trigspec`, called `spec`, because as we could expect, these two classes share many methods.  \r\n\r\nBy default, periodic ODEs will be solved with `trigcolloc`, but one can use `trigpsec` as follows:\r\n```\r\ndom = [0 2*pi];\r\na = chebfun(@(x) sin(x) + 2, dom);\r\nf = chebfun(@(x) cos(10*x), dom, 'periodic');\r\nL = chebop(@(u) diff(u) + a.*u, dom);\r\nL.bc = 'periodic';\r\npref = cheboppref();\r\npref.discretization = 'trigspec';\r\nu = solvebvp(L, f, pref); \r\nnorm(L*u-f,inf)\r\n```\r\n\r\n```\r\nans = 1.0134e-14\r\n```"},"comment":{"url":"https://api.github.com/repos/chebfun/chebfun/issues/comments/123206782","html_url":"https://github.com/chebfun/chebfun/pull/1496#issuecomment-123206782","issue_url":"https://api.github.com/repos/chebfun/chebfun/issues/1496","id":123206782,"user":{"login":"Hadrien-Montanelli","id":5701816,"avatar_url":"https://avatars.githubusercontent.com/u/5701816?v=3","gravatar_id":"","url":"https://api.github.com/users/Hadrien-Montanelli","html_url":"https://github.com/Hadrien-Montanelli","followers_url":"https://api.github.com/users/Hadrien-Montanelli/followers","following_url":"https://api.github.com/users/Hadrien-Montanelli/following{/other_user}","gists_url":"https://api.github.com/users/Hadrien-Montanelli/gists{/gist_id}","starred_url":"https://api.github.com/users/Hadrien-Montanelli/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Hadrien-Montanelli/subscriptions","organizations_url":"https://api.github.com/users/Hadrien-Montanelli/orgs","repos_url":"https://api.github.com/users/Hadrien-Montanelli/repos","events_url":"https://api.github.com/users/Hadrien-Montanelli/events{/privacy}","received_events_url":"https://api.github.com/users/Hadrien-Montanelli/received_events","type":"User","site_admin":false},"created_at":"2015-07-21T08:05:02Z","updated_at":"2015-07-21T08:05:02Z","body":"I am glad it's working well! \n\nHadrien \n\n\nFrom: \"Alex Townsend\" <notifications@github.com> \nTo: \"chebfun/chebfun\" <chebfun@noreply.github.com> \nCc: \"Hadrien Montanelli\" <montanelli@maths.ox.ac.uk> \nSent: Monday, 20 July, 2015 23:22:45 \nSubject: Re: [chebfun] Feature trigspec (#1496) \n\n\n\nI have been using trigspec for about a week for solving PDEs on the sphere. It's excellent! Thanks @Hadrien-Montanelli . \n\n(It's great to have the periodic analogue of the ultraspherical spectral method in Chebfun.) \n\n— \nReply to this email directly or view it on GitHub . \n\n\n"}}