javascript - OPL 脚本中的幂函数

标签 javascript cplex opl

我正在尝试在 OPL 脚本(执行 block )中初始化矩阵 每个元素必须设置为 float (> 0)

脚本中无法识别 pow 函数,因此我尝试了 ^ 运算符...但这不是我所期望的:引用文献说“^ 在 OPL 中表示幂,在脚本中表示按位异或”

所以现在我只使用了 for() 循环,它可以工作,但不接受 float 权力:

var temp;
for (var p = 1; p<=nbP; p++){
   for (var n = 1; n <= nbC; n++){
       temp = w[n][p] / i[p];
       MATRIX[n][p] = 1;
       for (var i = 1; i <= desiredPower; i++){
          MATRIX[n][p] = tempNGSI * MATRIX[n][p];
       }   
   }           
}

OPL 脚本中是否有与 pow() 等效的函数? 否则我该怎么办? 请注意,在脚本 block (execute{})之外无法识别 for() block

最佳答案

OPL 脚本(就像它的近亲 javascript)将基本数学函数封装在 Math 对象中。

for (var p = 1; p<=nbP; p++){
   for (var n = 1; n <= nbC; n++){
       MATRIX[n][p] = Math.pow(w[n][p] / i[p], desiredPower);
   }           
}

关于javascript - OPL 脚本中的幂函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24805552/

相关文章:

javascript - 使用 Jest 测试 Redux 和 Axios 获取中间件

javascript - 如果 ID 已在列表中,则不允许添加产品

javascript - 在构造函数与原型(prototype)中声明 javascript 对象方法

Cplex 中的 Python 稀疏矩阵?

javascript - JavaScript 中循环的性能问题

javascript - 从对象 dataURL 创建文件

c - 修复与删除 CPLEX 问题中的变量

mathematical-optimization - 为什么AMPL无法解决优化失败

optimization - 所有条目均位于隐含边界 CPLEX

syntax-error - CPLEX中没有运算符