fun(x,Y,userdata)
   function [df,  userdata] = objgrad(x,Y,userdata)
   function [ddf, userdata] = objhess(x,Y,userdata)</pre><p>which should return:</p>
         <div>
            <ul>
               <li>function value of the objective as a scalar <tt>f</tt>,
               </li>
               <li>gradient of the objective as a (possibly sparse) vector <tt>df</tt>   of dimensions <tt>(Nx+NYnnz) x 1</tt>,
               </li>
               <li>hessian of the objective as a (possibly sparse) matrix <tt>dd