當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Matlab AMPL AMPL.getEntity用法及代碼示例

classmethod AMPL.getEntity(name)

用法

entity = getEntity(name)

cons = getConstraint(name)

var = getVariable(name)

set = getSet(name)

param = getParameter(name)

obj = getObjective(name)

說明

getEntity 是以下所有專用函數的通用版本,並獲取具有指定名稱的任何 AMPL 實體。

getConstraint獲取指定名稱對應的約束實體,

getVariable獲取指定名稱對應的變量實體,

getParameter獲取指定名稱對應的參數實體,

getSet獲取指定名稱對應的集合實體,並

getObjective 獲取指定名稱對應的目標實體。

輸出參數

entity

名稱對應的 Entity ,其類型由MATLAB動態解析

var

名稱對應的 Variable

set

名稱對應的 Set 集合

param

名稱對應的 Parameter

obj

名稱對應的 Objective

cons

名稱對應的 Constraint

示例

聲明一個模型並獲得對各種實體的編程訪問:

ampl.eval('param a := 5; set A = 1..3; var x{A} >= 0;');
ampl.eval('maximize z: sum{i in A} x[i]; c{i in A}: x[i] <= a;');
a = ampl.getParameter('a');
A = ampl.getSet('A');
x = ampl.getVariable('x');
z = ampl.getObjective('z');
c = ampl.getConstraint('c');
ampl.display(a)
ampl.display(A)
ampl.display(x)
ampl.display(z)
ampl.display(c)

這將給出:

ans =
   a = 5

ans =
   set A := 1 2 3;

ans =
   x [*] :=
   1  0
   2  0
   3  0
   ;

ans =
   z = 0

ans =
   c [*] :=
   1  0
   2  0
   3  0
   ;

相關用法


注:本文由純淨天空篩選整理自ampl.com大神的英文原創作品 getEntity。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。