www.gusucode.com > mbcdesign 工具箱 matlab 源码程序 > mbcdesign/@des_constraints/optConstr.m

    function [g]= optConstr(c,X);
%OPTCONSTR

%  Copyright 2000-2005 The MathWorks, Inc. and Ford Global Technologies, Inc.



% find nonlinear constraints
isnonlin=zeros(1,length(c.Constraints));
for n=1:length(c.Constraints)
   isnonlin(n)=~islinear(c.Constraints{n});
end

dim = find(size(X)==length(c.Factors));
g   = zeros(size(X,dim(1)),sum(isnonlin));
if dim==1;
   X=X';
end

m=0;
for n=find(isnonlin)
   m=m+1;
   g(:,m) = constraintDistance( c.Constraints{n}, X );
end