为什么访问锯齿状数组元素时会收到System.NullReferenceException? [Gurobi优化]

时间:2019-07-17 10:27:18

标签: c# nullreferenceexception gurobi jagged-arrays

我正在使用Gurobi Optimizer工具解决优化模型问题。但是,我收到了System.NullReferenceException,无法弄清楚问题是锯齿状数组还是其他原因。

我的模型包含3个发电厂,它们可以工作3个小时,并且由于每个发电厂都具有不同数量的发电机,因此我决定使用锯齿状的阵列。因此,对于每个发电厂( t = 3 ),每小时( t = 3 ),所有发电机的输出功率都不同(稍后将它们相加以表示)相应电厂的总输出功率,例如P1 tot = P1 1 + P1 2 + P1 3 + P1 4 )。我创建了一个代表变量的锯齿状数组,然后使用for循环将其插入到模型中。

但是,当我进入包含“ k ”的 for循环时,出现了System.NullReferenceException问题。当该 for循环的代码放在 {} 中时,错误将显示在右方括号之后。如果没有括号(因为循环中只有一行),则在 for循环初始化后立即显示错误。

firebaseApp.auth()
.signInWithEmailAndPassword(email, password)
.then(() => firebaseApp.firestore().collection(collectionName).where("associatedID", "==", authID).get())
.then((snapshot) => {
    snapshot.docs.forEach(doc => {
        // Do stuff with data
    });
})
.then(() => {
    // Tell the user in the UI
})
.catch(function(error) {
   // Handle/report error, which may be from `signInWithEmailAndPassword`, your collection query, or an error raised by your code in the `then` handlers above
});

所以我想知道,在这种情况下是否可以通过Gurobi Optimizer使用锯齿状数组。 任何帮助表示赞赏。

0 个答案:

没有答案