Skip to content

Commit

Permalink
Drilling well counts updates, pump costs updates
Browse files Browse the repository at this point in the history
  • Loading branch information
mjprilliman committed Jan 2, 2025
1 parent 89fceab commit d55411d
Show file tree
Hide file tree
Showing 3 changed files with 4 additions and 3 deletions.
3 changes: 2 additions & 1 deletion shared/lib_geothermal.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1616,7 +1616,7 @@ double CGeothermalAnalyzer::GetNumberOfWells(void)
mo_geo_in.md_ProdWellFriction * pow(mo_geo_in.md_FailedProdFlowRatio, 2) - pressureHydrostaticPSI());
double inj_failed_inj_rate = (mo_geo_in.md_FailedProdFlowRatio > 0) ? (mo_geo_in.md_FailedProdFlowRatio * mo_geo_in.md_ReservoirDeltaPressure) *
(mo_geo_in.md_InjWellPressurePSI + geothermal::MetersToFeet(GetResourceDepthM()) * InjectionDensity() / 144.0 + (pressure_well_head) -
mo_geo_in.md_InjWellFriction * pow(mo_geo_in.md_FailedProdFlowRatio, 2) - pressureHydrostaticPSI()) * mo_geo_in.md_FailedProdFlowRatio * mo_geo_in.md_ReservoirDeltaPressure : 0.0;
mo_geo_in.md_InjWellFriction * pow(mo_geo_in.md_FailedProdFlowRatio, 2) - pressureHydrostaticPSI()) : 0.0;
double inj_rate_failed_prod_wells = MIN(prod_failed_inj_rate, flowRatePerWell()); //Injectivity of failed production well?
double inj_rate_failed_inj_wells = MIN(inj_failed_inj_rate, flowRatePerWell());
double inj_rate_successful_inj_wells = flowRatePerWell() / mo_geo_in.md_RatioInjectionToProduction;
Expand Down Expand Up @@ -1654,6 +1654,7 @@ double CGeothermalAnalyzer::GetNumberOfWells(void)
else {
inj_wells_drilled = mp_geo_out->md_NumberOfWellsInj / (mo_geo_in.md_DrillSuccessRate);
}
mp_geo_out->md_NumberOfWellsInj = inj_flow / inj_rate_successful_inj_wells - successful_inj_wells_exploration;
mp_geo_out->md_NumberOfWellsInjDrilled = inj_wells_drilled;
//mp_geo_out->md_NumberOfWellsProdDrilled = mp_geo_out->md_NumberOfWellsProdExp / mo_geo_in.md_DrillSuccessRate;
/*
Expand Down
2 changes: 1 addition & 1 deletion ssc/cmod_geothermal.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -400,7 +400,7 @@ class cm_geothermal : public compute_module

// assign values for UI results
assign("num_wells_getem_output", var_data((ssc_number_t)geo_outputs.md_NumberOfWells));
assign("num_wells_getem_inj", var_data((ssc_number_t)geo_outputs.md_NumberOfWellsInj));
assign("num_wells_getem_inj", var_data((ssc_number_t)geo_outputs.md_NumberOfWellsInjDrilled));
assign("plant_brine_eff", var_data((ssc_number_t)geo_outputs.md_PlantBrineEffectiveness));
assign("pump_watthr_per_lb", var_data((ssc_number_t)geo_outputs.md_PumpWorkWattHrPerLb));
assign("pumpwork_prod", var_data((ssc_number_t)geo_outputs.md_pumpwork_prod));
Expand Down
2 changes: 1 addition & 1 deletion ssc/cmod_geothermal_costs.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -815,7 +815,7 @@ class cm_geothermal_costs : public compute_module
assign("total_gathering_cost", var_data(static_cast<ssc_number_t>(gathering_cost_total)));

double indirect_pump_gathering_cost = (total_pump_cost + gathering_cost_total) * (1.0 / (1 - 0.12) - 1);
assign("indirect_pump_gathering_cost", var_data(static_cast<ssc_number_t>(indirect_pump_gathering_cost);
assign("indirect_pump_gathering_cost", var_data(static_cast<ssc_number_t>(indirect_pump_gathering_cost)));

//OM Cost calculations
/*
Expand Down

0 comments on commit d55411d

Please sign in to comment.