8.5.11. MDOQuadExpr¶
-
class MDOQuadExpr¶
在MindOpt应用程序中表示二次表达式。二次表达式是在线性表达式外有二次项。
方法
构造一个具有常数值的二次表达式
用线性项构造一个二次表达式
用线性表达式构造二次表达式
将线性表达式添加到该二次表达式
向二次表达式添加一个常量
向这个二次表达式添加一个线性项
向这个二次表达式添加一个二次项
向这个二次表达式添加多个线性项
向这个二次表达式添加多个二次项
清除二次表达式中包含的所有项,并将常量重置为零
检索第i个二次项的系数
检索二次项中包含的线性表达式
问题解决后,该二次表达式的值
检索第i个二次项的第一个变量
检索第i个二次项的第二个变量
从这个二次表达式中删除第i个二次项
删除包含指定变量的所有项 (包括线性项和二次项)
检索该二次表达式中包含的二次项的数量
-
MDOQuadExpr(double constant = 0.0)¶
构造一个具有常数值的二次表达式
- Parameters
double constant=0.0 – 初始常量值
-
MDOQuadExpr(MDOVar var, double coeff = 1.0)¶
用线性项构造一个二次表达式
- Parameters
MDOVar var – 线性项的变量
double coeff=1.0 – 线性项的系数
-
MDOQuadExpr(const MDOLinExpr &le)¶
用线性表达式构造二次表达式
- Parameters
const MDOLinExpr& le – 初始线性表达式
-
void add(const MDOLinExpr le)¶
将线性表达式添加到该二次表达式
- Parameters
const MDOLinExpr le – 要添加的线性表达式
-
void addConstant(double c)¶
向二次表达式添加一个常量
- Parameters
double c – 要添加的值
-
void addTerm(double coeff, MDOVar var)¶
向这个二次表达式添加一个线性项
- Parameters
double coeff – 要添加的线性项的系数
MDOVar var – 要添加的线性项的变量
-
void addTerm(double coeff, MDOVar var1, MDOVar var2)¶
向这个二次表达式添加一个二次项
- Parameters
double coeff – 要添加的二次项的系数
MDOVar var1 – 要添加的二次项的第一个变量
MDOVar var2 – 要添加的二次项的第二个变量
-
void addTerms(const double *coeff, const MDOVar *var, int cnt)¶
向这个二次表达式添加多个线性项
- Parameters
const double* coeff – 要添加的线性项的系数
const MDOVar* var – 要添加的线性项的变量
int cnt – 要添加的线性项的数量
-
void addTerms(const double *coeff, const MDOVar *var1, const MDOVar *var2, int cnt)¶
向这个二次表达式添加多个二次项
- Parameters
const double* coeff – 要添加的二次项的系数
const MDOVar* var1 – 要添加的二次项的第一个变量
const MDOVar* var2 – 要添加的二次项的第二个变量
int cnt – 要添加的二次项的数量
-
void clear()¶
清除二次表达式中包含的所有项,并将常量重置为零
-
double getCoeff(int i)¶
检索第i个二次项的系数
- Parameters
int i – 二次项的索引
- Returns
第i个二次项的系数
-
MDOLinExpr getLinExpr()¶
检索二次项中包含的线性表达式
- Returns
二次项中包含的线性表达式
-
double getValue()¶
问题解决后,该二次表达式的值
- Returns
该二次表达式在问题求解后的值
-
void remove(int i)¶
从这个二次表达式中删除第i个二次项
- Parameters
int i – 要删除的二次项的索引
-
bool remove(MDOVar v)¶
删除包含指定变量的所有项 (包括线性项和二次项)
- Parameters
MDOVar v – 要删除的变量
- Returns
如果至少删除了1个项,则为True
-
int size()¶
检索该二次表达式中包含的二次项的数量
- Returns
该二次表达式中包含的二次项的数量
-
MDOQuadExpr(double constant = 0.0)¶