cvx is a modeling system for disciplined convex programming.
Disciplined convex programs,or DCPs, are convex optimization problems that are described using a limitedset of construction rules, which enables them to be analyzed and solved efficiently.cvx can solve standard problems such as linear programs (LPs), quadratic programs(QPs), second-order cone programs (SOCPs), andsemidefinite programs (SDPs);but compared to directly using a solver for one or these types of problems, cvx cangreatly simplify the task of specifying the problem. cvx can also solve much morecomplex convex optimization problems, including many involving nondifferentiable functions, such as ℓ1 norms. You can use cvx to conveniently formulate and solve constrained norm minimization, entropy maximization, determinant maximization,and many other problems.