- lmm_constraint_new(model->getMaxminSystem(), this, core * powerScale * xbt_dynar_get_as(powerPeak, pstate, double)),
- core, xbt_dynar_get_as(powerPeak, pstate, double), powerScale) {
- p_powerEvent = NULL;
- p_powerPeakList = powerPeak;
+ lmm_constraint_new(model->getMaxminSystem(), this, core * speedScale * xbt_dynar_get_as(speedPeak, pstate, double)),
+ core, xbt_dynar_get_as(speedPeak, pstate, double), speedScale,
+ stateInitial) {
+ p_speedEvent = NULL;
+
+ // Copy the power peak array:
+ p_speedPeakList = xbt_dynar_new(sizeof(double), nullptr);
+ unsigned long n = xbt_dynar_length(speedPeak);
+ for (unsigned long i = 0; i != n; ++i) {
+ double value = xbt_dynar_get_as(speedPeak, i, double);
+ xbt_dynar_push(p_speedPeakList, &value);
+ }
+