public List <ActionFinancialEstimate> SkippingTestCostReduction(double oilPrice, Metrics measuredMetrics, ActionOutcome actionOutcome, CancellationToken cancellationToken) { var probabilityOfAnomaly = actionOutcome.probabilityOfAnomaly / 100; var potentialCostOfSkippikingATest = measuredMetrics.oilRate * probabilityOfAnomaly * oilPrice * 60000; var costReduction = actionOutcome.cost; var manHours = actionOutcome.manHours; var afe = new ActionFinancialEstimate { id = Guid.NewGuid().ToString(), action = actionOutcome.action, well = actionOutcome.well, impact = costReduction, cost = potentialCostOfSkippikingATest, manHours = manHours }; return(new List <ActionFinancialEstimate> { afe }); }
public List <ActionFinancialEstimate> InterventionRevenueGain(double oilPrice, Metrics measuredMetrics, ActionOutcome actionOutcome, CancellationToken cancellationToken) { var increaseInOilRate = actionOutcome.increaseInOilRate; var cost = actionOutcome.cost; var manHours = actionOutcome.manHours; // Oil rate is in thousand of barrels, and increase in oil rate is in percentage. var revenueIncrease = measuredMetrics.oilRate * oilPrice * 180000 * (increaseInOilRate / 100); var afe = new ActionFinancialEstimate { id = Guid.NewGuid().ToString(), action = actionOutcome.action, well = actionOutcome.well, impact = revenueIncrease, cost = cost, manHours = manHours }; return(new List <ActionFinancialEstimate>() { afe }); }