System constraints

Replaces stateConstraint method logic with a list of constraint objects for each DrakeSystem.  These can handled more elegantly (preserving the structure of the constraints, and avoiding function handles) by the optimization classes.  

Taking another crack at finishing and merging this (just had a rough time bringing it back in line w/ master).  

done.

On Oct 5, 2014, at 7:15 PM, Hongkai Dai <notifications@github.com> wrote:

> In systems/@DrakeSystem/DrakeSystem.m:
> 
> > +      obj.num_xcon_ineq = obj.num_xcon_ineq - sum(obj.state_constraints{id}.lb ~= obj.state_constraints{id}.ub);
> > +      obj.state_constraints{id} = con;
> > +      obj.state_constraint_xind{id} = xind;
> > +      obj.num_xcon_eq = obj.num_xcon_eq + sum(con.lb == con.ub);
> > +      obj.num_xcon_ineq = obj.num_xcon_ineq + sum(con.lb ~= con.ub);
> > +    end
> > +    
> > +    function displayStateConstraints(obj)
> > +      for i=1:length(obj.state_constraints)
> > +        disp(obj.state_constraints{i});
> > +      end
> > +    end
> > +  end
> > +
> > +  methods (Sealed)
> > +    function prog = addStateConstraintsToProgram(obj,prog,indices)
> add documentation for indices?
> 
> —
> Reply to this email directly or view it on GitHub.
>