ConvexOptimizationSolutionsManualStephenBoydLievenVandenberghe