Skip to content

Commit 429e733

Browse files
committed
Replace disp_steps_per_hour with steps_per_hour
Use the precomputed steps_per_hour variable when configuring dispatch.solver_params across multiple cmod implementations (etes_electric_resistance, etes_ptes, fresnel_physical, fresnel_physical_iph, mspt_iph, tcsmolten_salt, trough_physical, trough_physical_iph). This should fix the failing tests.
1 parent 80a6d8e commit 429e733

8 files changed

+8
-11
lines changed

ssc/cmod_etes_electric_resistance.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -740,7 +740,7 @@ class cm_etes_electric_resistance : public compute_module
740740
etes_dispatch_opt dispatch;
741741

742742
if (as_boolean("is_dispatch")) {
743-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
743+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
744744
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
745745
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
746746
dispatch.params.set_user_params(as_double("disp_time_weighting"), as_double("disp_csu_cost")*W_dot_cycle_des, as_double("disp_pen_delta_w"),

ssc/cmod_etes_ptes.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -839,7 +839,7 @@ class cm_etes_ptes : public compute_module
839839
etes_dispatch_opt dispatch;
840840

841841
if (as_boolean("is_dispatch")) {
842-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
842+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
843843
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
844844
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
845845
dispatch.params.set_user_params(as_double("disp_time_weighting"), as_double("disp_csu_cost")*W_dot_gen_thermo, as_double("disp_pen_delta_w"),

ssc/cmod_fresnel_physical.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,6 @@ static var_info _cm_vtab_fresnel_physical[] = {
224224
{ SSC_INPUT, SSC_NUMBER, "disp_pen_ramping", "Dispatch cycle production change penalty", "$/MWe-change", "", "Sys_Control", "is_dispatch=1", "", "" },
225225

226226
{ SSC_INPUT, SSC_NUMBER, "can_cycle_use_standby", "Can the cycle use standby operation?", "", "", "tou", "?=0", "", "SIMULATION_PARAMETER" },
227-
{ SSC_INPUT, SSC_NUMBER, "disp_steps_per_hour", "Time steps per hour for dispatch optimization calculations", "-", "", "tou", "?=1", "", "SIMULATION_PARAMETER" },
228227
{ SSC_INPUT, SSC_NUMBER, "disp_spec_presolve", "Dispatch optimization presolve heuristic", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
229228
{ SSC_INPUT, SSC_NUMBER, "disp_spec_bb", "Dispatch optimization B&B heuristic", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
230229
{ SSC_INPUT, SSC_NUMBER, "disp_reporting", "Dispatch optimization reporting level", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
@@ -1222,7 +1221,7 @@ class cm_fresnel_physical : public compute_module
12221221
double q_dot_cycle_des = W_dot_cycle_des / eta_cycle; //[MWt]
12231222
double q_dot_rec_des = q_dot_cycle_des * c_fresnel.m_solar_mult; //[MWt]
12241223

1225-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
1224+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
12261225
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
12271226
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
12281227

ssc/cmod_fresnel_physical_iph.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,6 @@ static var_info _cm_vtab_fresnel_physical_iph[] = {
218218
{ SSC_INPUT, SSC_NUMBER, "disp_mip_gap", "Dispatch optimization solution tolerance", "-", "", "Sys_Control", "is_dispatch=1", "", "" },
219219
{ SSC_INPUT, SSC_NUMBER, "disp_time_weighting", "Dispatch optimization future time discounting factor", "-", "", "Sys_Control", "?=0.99", "", "" },
220220

221-
/*LK Only*/{ SSC_INPUT, SSC_NUMBER, "disp_steps_per_hour", "Time steps per hour for dispatch optimization calculations", "-", "", "tou", "?=1", "", "SIMULATION_PARAMETER" },
222221
/*LK Only*/{ SSC_INPUT, SSC_NUMBER, "disp_spec_presolve", "Dispatch optimization presolve heuristic", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
223222
/*LK Only*/{ SSC_INPUT, SSC_NUMBER, "disp_spec_bb", "Dispatch optimization B&B heuristic", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
224223
/*LK Only*/{ SSC_INPUT, SSC_NUMBER, "disp_reporting", "Dispatch optimization reporting level", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
@@ -1142,7 +1141,7 @@ class cm_fresnel_physical_iph : public compute_module
11421141

11431142
double q_dot_rec_des = q_dot_pc_des * c_fresnel.m_solar_mult; //[MWt]
11441143

1145-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
1144+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
11461145
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
11471146
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
11481147

ssc/cmod_mspt_iph.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1635,7 +1635,7 @@ class cm_mspt_iph : public compute_module
16351635

16361636
double heater_startup_cost = 0.0;
16371637

1638-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
1638+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
16391639
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
16401640
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
16411641

ssc/cmod_tcsmolten_salt.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2088,7 +2088,7 @@ class cm_tcsmolten_salt : public compute_module
20882088
heater_startup_cost = as_double("disp_hsu_cost_rel") * q_dot_heater_des; //[$/start]
20892089
}
20902090

2091-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
2091+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
20922092
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
20932093
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
20942094
dispatch.solver_params.set_ampl_inputs(as_boolean("is_write_ampl_dat"), as_boolean("is_ampl_engine"), as_string("ampl_data_dir"), as_string("ampl_exec_call"));

ssc/cmod_trough_physical.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1901,7 +1901,7 @@ class cm_trough_physical : public compute_module
19011901

19021902
double q_dot_rec_des = q_dot_cycle_des*c_trough.m_solar_mult; //[MWt]
19031903

1904-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
1904+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
19051905
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
19061906
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
19071907
dispatch.solver_params.set_ampl_inputs(as_boolean("is_write_ampl_dat"), as_boolean("is_ampl_engine"), as_string("ampl_data_dir"), as_string("ampl_exec_call"));

ssc/cmod_trough_physical_iph.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,6 @@ static var_info _cm_vtab_trough_physical_iph[] = {
246246
{ SSC_INPUT, SSC_NUMBER, "disp_mip_gap", "Dispatch optimization solution tolerance", "-", "", "Sys_Control", "", "", "SIMULATION_PARAMETER" },
247247
{ SSC_INPUT, SSC_NUMBER, "disp_time_weighting", "Dispatch optimization future time discounting factor", "-", "", "Sys_Control", "?=0.999", "", "" },
248248

249-
{ SSC_INPUT, SSC_NUMBER, "disp_steps_per_hour", "Time steps per hour for dispatch optimization calculations", "-", "", "tou", "?=1", "", "SIMULATION_PARAMETER" },
250249
{ SSC_INPUT, SSC_NUMBER, "disp_spec_presolve", "Dispatch optimization presolve heuristic", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
251250
{ SSC_INPUT, SSC_NUMBER, "disp_spec_bb", "Dispatch optimization B&B heuristic", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
252251
{ SSC_INPUT, SSC_NUMBER, "disp_reporting", "Dispatch optimization reporting level", "-", "", "tou", "?=-1", "", "SIMULATION_PARAMETER" },
@@ -1768,7 +1767,7 @@ class cm_trough_physical_iph : public compute_module
17681767

17691768
double heater_startup_cost = 0.0;
17701769

1771-
dispatch.solver_params.set_user_inputs(as_integer("disp_steps_per_hour"), as_integer("disp_frequency"), as_integer("disp_horizon"),
1770+
dispatch.solver_params.set_user_inputs(steps_per_hour, as_integer("disp_frequency"), as_integer("disp_horizon"),
17721771
as_integer("disp_max_iter"), as_double("disp_mip_gap"), as_double("disp_timeout"),
17731772
as_integer("disp_spec_presolve"), as_integer("disp_spec_bb"), as_integer("disp_spec_scaling"), as_integer("disp_reporting"));
17741773

0 commit comments

Comments
 (0)