mpt_call_quadprog

Purpose

A gateway function to QUADPROG solver (without errorchecks)

Syntax

R = mpt_call_quadprog(S)

Description

The function implements call to QUADPROG solver based on formulation from Opt class. Only QP and LP problems are supported. It is assumed that QP/LP entering this function (for LP ../../../../fig/mpt/modules/solvers/mpt_call_quadprog1.png) is of the form

../../../../fig/mpt/modules/solvers/mpt_call_quadprog10.png

which is passed to QUADPROG solver directly. For LP QUADPROG solver passes the data to LINPROG automatically.

Input Arguments

S

Structure of the Opt class

Class: struct

S.H

Quadratic part of the objective function.

Class: double

Default: []

S.f

Linear part of the objective function.

Class: double

S.A

Linear part of the inequality constraints ../../../../fig/mpt/modules/solvers/mpt_call_quadprog2.png.

Class: double

S.b

Right hand side of the inequality constraints ../../../../fig/mpt/modules/solvers/mpt_call_quadprog3.png.

Class: double

S.Ae

Linear part of the equality constraints ../../../../fig/mpt/modules/solvers/mpt_call_quadprog4.png.

Class: double

Default: []

S.be

Right hand side of the equality constraints ../../../../fig/mpt/modules/solvers/mpt_call_quadprog5.png.

Class: double

Default: []

S.lb

Lower bound for the variables ../../../../fig/mpt/modules/solvers/mpt_call_quadprog6.png.

Class: double

Default: []

S.ub

Upper bound for the variables ../../../../fig/mpt/modules/solvers/mpt_call_quadprog7.png.

Class: double

Default: []

S.n

Problem dimension (number of variables).

Class: double

S.m

Number of inequalities in ../../../../fig/mpt/modules/solvers/mpt_call_quadprog8.png.

Class: double

S.me

Number of equalities in ../../../../fig/mpt/modules/solvers/mpt_call_quadprog9.png.

Class: double

S.problem_type

A string specifying the problem to be solved.

Class: char

S.test

Call (false) or not to call (true) MPT global settings.

Class: logical

Default: false

Output Arguments

R

result structure

Class: struct

R.xopt

Optimal solution.

Class: double

R.obj

Optimal objective value.

Class: double

R.lambda

Lagrangian multipliers.

Class: double

R.exitflag

An integer value that informs if the result was feasible (1), or otherwise (different from 1).

Class: double

R.how

A string that informs if the result was feasible ('ok'), or if any problem appeared through optimization.

Class: char

See Also

mpt_solve


© 2010-2013 Martin Herceg: ETH Zurich, herceg@control.ee.ethz.ch