{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/230","repository_url":"https://api.github.com/repos/JuliaOpt/Optim.jl","labels_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/230/labels{/name}","comments_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/230/comments","events_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/230/events","html_url":"https://github.com/JuliaOpt/Optim.jl/issues/230","id":161211915,"number":230,"title":"simultaneous evaluation of hessian","user":{"login":"Linusnie","id":12471058,"avatar_url":"https://avatars.githubusercontent.com/u/12471058?v=3","gravatar_id":"","url":"https://api.github.com/users/Linusnie","html_url":"https://github.com/Linusnie","followers_url":"https://api.github.com/users/Linusnie/followers","following_url":"https://api.github.com/users/Linusnie/following{/other_user}","gists_url":"https://api.github.com/users/Linusnie/gists{/gist_id}","starred_url":"https://api.github.com/users/Linusnie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Linusnie/subscriptions","organizations_url":"https://api.github.com/users/Linusnie/orgs","repos_url":"https://api.github.com/users/Linusnie/repos","events_url":"https://api.github.com/users/Linusnie/events{/privacy}","received_events_url":"https://api.github.com/users/Linusnie/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-06-20T14:43:38Z","updated_at":"2016-06-20T18:35:27Z","closed_at":null,"body":"I have an objective function whose value, gradient and Hessian can be naturally computed through a common function. As far as I can tell there is currently no support for taking advantage of such structure.\r\n\r\nI think it would be appropriate to add a field similar to `fg!` in `TwiceDifferentiableFunction` that also updates the hessian, i.e. for example\r\n```\r\nfunction fgh!(x,g,h) \r\n    <computation of f_x, g_x, h_x>\r\n    g,h = g_x, h_x\r\n    return f_x\r\nend\r\n```\r\nSince newton() always computes gradients and hessians in succession anyway this should only require a slight modification.\r\n"},"comment":{"url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/comments/227229713","html_url":"https://github.com/JuliaOpt/Optim.jl/issues/230#issuecomment-227229713","issue_url":"https://api.github.com/repos/JuliaOpt/Optim.jl/issues/230","id":227229713,"user":{"login":"pkofod","id":8431156,"avatar_url":"https://avatars.githubusercontent.com/u/8431156?v=3","gravatar_id":"","url":"https://api.github.com/users/pkofod","html_url":"https://github.com/pkofod","followers_url":"https://api.github.com/users/pkofod/followers","following_url":"https://api.github.com/users/pkofod/following{/other_user}","gists_url":"https://api.github.com/users/pkofod/gists{/gist_id}","starred_url":"https://api.github.com/users/pkofod/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pkofod/subscriptions","organizations_url":"https://api.github.com/users/pkofod/orgs","repos_url":"https://api.github.com/users/pkofod/repos","events_url":"https://api.github.com/users/pkofod/events{/privacy}","received_events_url":"https://api.github.com/users/pkofod/received_events","type":"User","site_admin":false},"created_at":"2016-06-20T18:35:27Z","updated_at":"2016-06-20T18:35:27Z","body":"I think @mlubin's suggestion is better than going further down the `fg!` road. It is actually mentioned under Tips and Tricks in the upcoming updated documentation #224 (see http://pkofod.github.io/OptimDoc.jl/latest/user/tipsandtricks/, second section), I just havn't merged it yet. I am kind of looking for a good example. Maybe your problem can be mentioned? "}}
{"actor":{"display_login":"pkofod"}}