Well measurements now can be stored in database
also added some more sample data
This commit is contained in:
@@ -27,7 +27,7 @@ public class Well {
|
||||
protected Simulation sim;
|
||||
protected Database db;
|
||||
|
||||
// IO
|
||||
/* IO */
|
||||
AnalogIn inclinometer;
|
||||
AnalogIn loadCell;
|
||||
DigitalOut runCommand;
|
||||
@@ -36,7 +36,7 @@ public class Well {
|
||||
private double currentDownholePosition;
|
||||
private double currentDownholeLoad;
|
||||
|
||||
// CARDS
|
||||
/* CARDS */
|
||||
private Card currentCard;
|
||||
private Card[] cardStorage = new Card[100];
|
||||
|
||||
@@ -46,7 +46,7 @@ public class Well {
|
||||
public static final int BAD_STATUS = 0;
|
||||
public static final int GOOD_STATUS = 1;
|
||||
|
||||
// USER INPUTS
|
||||
/* USER INPUTS */
|
||||
private double dt;
|
||||
private double tubingHeadPressure;
|
||||
private double fluidGradient;
|
||||
@@ -139,24 +139,24 @@ public class Well {
|
||||
private double fluidGasRatio; // MCF of gas per 1 BBL fluid
|
||||
|
||||
// Measurements
|
||||
private Measurement strokeSpeed = new Measurement();
|
||||
private Measurement downholeGrossStroke = new Measurement();
|
||||
private Measurement downholeNetStroke = new Measurement();
|
||||
private Measurement fluidLevel = new Measurement();
|
||||
private Measurement fluidLoad = new Measurement();
|
||||
private Measurement inflowRate = new Measurement();
|
||||
private Measurement peakPolishedRodLoad = new Measurement();
|
||||
private Measurement minPolishedRodLoad = new Measurement();
|
||||
private Measurement percentRun = new Measurement();
|
||||
private Measurement polishedRodHP = new Measurement();
|
||||
private Measurement pumpHP = new Measurement();
|
||||
private Measurement fluidProduced = new Measurement();
|
||||
private Measurement oilProduced = new Measurement();
|
||||
private Measurement waterProduced = new Measurement();
|
||||
private Measurement gasProduced = new Measurement();
|
||||
private Measurement pumpIntakePressure = new Measurement();
|
||||
private Measurement surfaceStrokeLength = new Measurement();
|
||||
private Measurement tubingMovement = new Measurement();
|
||||
private Measurement strokeSpeed = new Measurement("Stroke Speed", true, db, 0.5, 600);
|
||||
private Measurement downholeGrossStroke = new Measurement("Downhole Gross Stroke", true, db, 0.5, 600);
|
||||
private Measurement downholeNetStroke = new Measurement("Downhole Net Stroke", true, db, 0.5, 600);
|
||||
private Measurement fluidLevel = new Measurement("Fluid Level", true, db, 10, 600);
|
||||
private Measurement fluidLoad = new Measurement("Fluid Load", true, db, 20, 600);
|
||||
private Measurement inflowRate = new Measurement("Inflow Rate", true, db, 0.5, 600);
|
||||
private Measurement peakPolishedRodLoad = new Measurement("Peak PRL", true, db, 50, 600);
|
||||
private Measurement minPolishedRodLoad = new Measurement("Min PRL", true, db, 50, 600);
|
||||
private Measurement percentRun = new Measurement("Percent Run", true, db, 1.0, 600);
|
||||
private Measurement polishedRodHP = new Measurement("Polished Rod HP", true, db, 0.25, 600);
|
||||
private Measurement pumpHP = new Measurement("Pump HP", true, db, 0.25, 600);
|
||||
private Measurement fluidProduced = new Measurement("Fluid Produced", true, db, 1.0, 600);
|
||||
private Measurement oilProduced = new Measurement("Oil Produced", true, db, 1.0, 600);
|
||||
private Measurement waterProduced = new Measurement("Water Produced", true, db, 1.0, 600);
|
||||
private Measurement gasProduced = new Measurement("Gas Produced", true, db, 1.0, 600);
|
||||
private Measurement pumpIntakePressure = new Measurement("Pump Intake Pressure", true, db, 5.0, 600);
|
||||
private Measurement surfaceStrokeLength = new Measurement("Surface Stroke", true, db, 0.5, 1800);
|
||||
private Measurement tubingMovement = new Measurement("Tubing Movement", true, db, 0.5, 600);
|
||||
|
||||
Well(String wellName, int inclinometerChannel, int loadCellChannel, int runCommandChannel){
|
||||
this.wellName = wellName;
|
||||
@@ -529,6 +529,13 @@ public class Well {
|
||||
inputTable.addRule();
|
||||
inputTable.addRow("Number of Tapers", getNumTapers());
|
||||
inputTable.addRule();
|
||||
inputTable.addRow("Buoyant Force Total", buoyantForceTotal);
|
||||
inputTable.addRow("Weight Data Total", weightDataTotal);
|
||||
inputTable.addRow("Annular Force Data Total", annularForceDataTotal);
|
||||
inputTable.addRow("Rod Depth Total", rodDepthTotal);
|
||||
inputTable.addRow("Rod Weight Air Total", rodWeightAirTotal);
|
||||
inputTable.addRow("Rod Weight Fluid Total", rodWeightFluidTotal);
|
||||
inputTable.addRule();
|
||||
V2_AsciiTableRenderer rend = new V2_AsciiTableRenderer();
|
||||
rend.setTheme(V2_E_TableThemes.UTF_LIGHT.get());
|
||||
rend.setWidth(new WidthAbsoluteEven(50));
|
||||
@@ -547,6 +554,23 @@ public class Well {
|
||||
taperTable.addRow("Rod Material", getRodMaterial(i));
|
||||
taperTable.addRow("Rod Young's Modulus", getRodYM(i));
|
||||
taperTable.addRule();
|
||||
taperTable.addRow("a", a[i]);
|
||||
taperTable.addRow("Area", area[i]);
|
||||
taperTable.addRow("Pressure", pressure[i]);
|
||||
taperTable.addRow("Buoyant Force", buoyantForce[i]);
|
||||
taperTable.addRow("Stretch", stretch[i]);
|
||||
taperTable.addRow("WeightData", weightData[i]);
|
||||
taperTable.addRow("Annular Force Data", annularForceData[i]);
|
||||
taperTable.addRow("force", force[i]);
|
||||
taperTable.addRow("Alpha", alpha[i]);
|
||||
taperTable.addRow("xOverA", xOverA[i]);
|
||||
taperTable.addRow("Factor", factor[i]);
|
||||
taperTable.addRow("Lag Index", lagIndex[i]);
|
||||
taperTable.addRow("Length Required", lengthRequired[i]);
|
||||
taperTable.addRow("Center Point", centerPoint[i]);
|
||||
taperTable.addRow("Rod Depth", rodDepth[i]);
|
||||
taperTable.addRow("Rod Weight in Air", rodWeightAir[i]);
|
||||
taperTable.addRow("Rod Weight in Fluid", rodWeightFluid[i]);
|
||||
rend.setTheme(V2_E_TableThemes.UTF_LIGHT.get());
|
||||
rend.setWidth(new WidthAbsoluteEven(50));
|
||||
rt = rend.render(taperTable);
|
||||
@@ -554,7 +578,6 @@ public class Well {
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
|
||||
};
|
||||
|
||||
public void updateTapers(){
|
||||
@@ -851,7 +874,7 @@ public class Well {
|
||||
cardStorage[j + 1] = cardStorage[j];
|
||||
}
|
||||
cardStorage[0] = currentCard;
|
||||
currentCard.printCard("none", true);
|
||||
currentCard.printCard("csv", true);
|
||||
strokesSinceStart++;
|
||||
strokesToday++;
|
||||
strokesLifetime++;
|
||||
|
||||
Reference in New Issue
Block a user