钻具组合类

 钻具组合由钻杆、钻铤、钻头组成,为三类钻具设计类,并通过代码实现将钻 杆、钻铤和砖头组合起来


class drillPipe {   //钻杆
    private float innerDiameter;//内径
    private float outerDiameter;//外径
    private float bracketInnerDiameter;//节箍内径
    private float bracketOuterDiameter;//节箍外径
    private float wallThickness;//壁厚
    private float weight;//单位重量
    private int number;//钻杆数量
    private float length;//钻具长度

    public drillPipe(float innerDiameter, float outerDiameter, float bracketInnerDiameter, float bracketOuterDiameter, float wallThickness, float weight, int number, float length) {
        this.innerDiameter = innerDiameter;
        this.outerDiameter = outerDiameter;
        this.bracketInnerDiameter = bracketInnerDiameter;
        this.bracketOuterDiameter = bracketOuterDiameter;
        this.wallThickness = wallThickness;
        this.weight = weight;
        this.number = number;
        this.length = length;
    }

    public float getInnerDiameter() {
        return innerDiameter;
    }

    public float getOuterDiameter() {
        return outerDiameter;
    }

    public float getBracketInnerDiameter() {
        return bracketInnerDiameter;
    }

    public float getBracketOuterDiameter() {
        return bracketOuterDiameter;
    }

    public float getWallThickness() {
        return wallThickness;
    }

    public float getWeight() {
        return weight;
    }

    public int getNumber() {
        return number;
    }

    public float getLength() {
        return length;
    }

}

class drillCollar {   //钻铤
    private float innerDiameter;//内径
    private float outerDiameter;//外径
    private float wallThickness;//壁厚
    private float weight;//单位重量
    private int number;//钻铤数量
    private float length;//钻具长度
    private float totalLengh;//钻具总数量

    public drillCollar(float innerDiameter, float outerDiameter, float wallThickness, float weight, int number, float length) {
        this.innerDiameter = innerDiameter;
        this.outerDiameter = outerDiameter;
        this.wallThickness = wallThickness;
        this.weight = weight;
        this.number = number;
        this.length = length;
    }

    public float getInnerDiameter() {
        return innerDiameter;
    }

    public float getOuterDiameter() {
        return outerDiameter;
    }

    public float getWallThickness() {
        return wallThickness;
    }

    public float getWeight() {
        return weight;
    }

    public int getNumber() {
        return number;
    }

    public float getLength() {
        return length;
    }

    public float getTotalLengh() {
        return totalLengh;
    }
}

class drillBit {   //钻头
    private float weight;//重量
    private float size;//尺寸
    private float waterEye1;//水眼1
    private float waterEye2;//水眼2
    private float waterEye3;//水眼3
    private float useTime;//使用时间
    private float maxPressure;//最大承压

    public drillBit(float weight, float size, float waterEye1, float waterEye2, float waterEye3, float useTime, float maxPressure) {
        this.weight = weight;
        this.size = size;
        this.waterEye1 = waterEye1;
        this.waterEye2 = waterEye2;
        this.waterEye3 = waterEye3;
        this.useTime = useTime;
        this.maxPressure = maxPressure;
    }

    public float getWeight() {
        return weight;
    }

    public float getSize() {
        return size;
    }

    public float getWaterEye1() {
        return waterEye1;
    }

    public float getWaterEye2() {
        return waterEye2;
    }

    public float getWaterEye3() {
        return waterEye3;
    }

    public float getUseTime() {
        return useTime;
    }

    public float getMaxPressure() {
        return maxPressure;
    }
}

class drillCombination {   //钻具组合
    private float wellDepth;//井深
    private float drillToolTotalLength;//钻具总长度
    private drillPipe drillPipe; // 钻杆
    private drillCollar drillCollar; // 钻铤
    private drillBit drillBit; // 钻头


    public drillCombination(float wellDepth, float drillToolTotalLength, drillPipe drillPipe, drillCollar drillCollar, drillBit drillBit) {
        this.wellDepth = wellDepth;
        this.drillPipe = drillPipe;
        this.drillCollar = drillCollar;
        this.drillBit = drillBit;
    }

    public float getWellDepth() {
        return wellDepth;
    }

    public float getDrillToolTotalLength() {
        return drillToolTotalLength;
    }

    public drillPipe getDrillPipe() {
        return drillPipe;
    }

    public drillCollar getDrillCollar() {
        return drillCollar;
    }

    public drillBit getDrillBit() {
        return drillBit;
    }


    public void printCombinationDetails() {
        System.out.println("井深:" + wellDepth + " ft");
        System.out.println("钻具组合信息:");
        System.out.println("钻杆:");
        System.out.println("  内径:" + drillPipe.getInnerDiameter() + " in");
        System.out.println("  外径:" + drillPipe.getOuterDiameter() + " in");
        System.out.println("  节箍内径:" + drillPipe.getBracketInnerDiameter() + " in");
        System.out.println("  节箍外径:" + drillPipe.getBracketOuterDiameter() + " in");
        System.out.println("  壁厚:" + drillPipe.getWallThickness() + " in");
        System.out.println("  单位重量:" + drillPipe.getWeight() + " lbs/ft");
        System.out.println("  数量:" + drillPipe.getNumber() + " 根");
        System.out.println("  长度:" + drillPipe.getLength() + " ft");
        System.out.println("钻铤:");
        System.out.println("  内径:" + drillCollar.getInnerDiameter() + " in");
        System.out.println("  外径:" + drillCollar.getOuterDiameter() + " in");
        System.out.println("  壁厚:" + drillCollar.getWallThickness() + " in");
        System.out.println("  单位重量:" + drillCollar.getWeight() + " lbs/ft");
        System.out.println("  数量:" + drillCollar.getNumber() + " 根");
        System.out.println("  长度:" + drillCollar.getLength() + " ft");
        System.out.println("  钻具总长度:"+drillToolTotalLength);
        System.out.println("钻头:");
        System.out.println("  重量:" + drillBit.getWeight() + " lbs");
        System.out.println("  尺寸:" + drillBit.getSize() + " in");
        System.out.println("  水眼1:" + drillBit.getWaterEye1() + " 1/32in");
        System.out.println("  水眼2:" + drillBit.getWaterEye2() + " 1/32");
        System.out.println("  水眼3:" + drillBit.getWaterEye3() + " 1/32");
        System.out.println("  使用时间:" + drillBit.getUseTime() + " hrs");
        System.out.println("  最大承压:" + drillBit.getMaxPressure() + " klbf");
    }
}

class DrillingOperations { //钻井操作

    public void show() {
        System.out.println();
        System.out.println("--准备作业");
        System.out.println("---- 井位准备 ----");
        prepareWellSite();

        System.out.println("---- 组装钻机 ----");
        assembleDrillingRig();

        System.out.println("---- 钻探操作 ----");
        drillingOperation();

        System.out.println("----钻柱长度不够----");
        increaseDrillPipe();

        System.out.println("---- 钻头严重磨损 ----");
        changeDrillBit();

        System.out.println("---- 泥浆循环 ----");
        mudCirculation();

        System.out.println("---- 井壁稳定 ----");
        stabilizeWellbore();

        System.out.println("---- 采样和测试 ----");
        samplingAndTesting();
    }

    private void prepareWellSite() {
        // 井位准备的具体步骤
        System.out.println("  - 清理场地");
        System.out.println("  - 设置钻井平台");
        System.out.println("  - 安排设备");
    }

    private void assembleDrillingRig() {
        // 组装钻机的具体步骤
        System.out.println("  - 安装钻机塔架");
        System.out.println("  - 连接钻杆");
        System.out.println("  - 安装泥浆系统");
    }

    private void drillingOperation() {
        // 钻探操作的具体步骤
        System.out.println("  - 启动钻机");
        System.out.println("  - 调整钻速");
        System.out.println("  - 监测钻井参数");
    }

    private void increaseDrillPipe() {
        System.out.println("  - 提升钻柱");
        System.out.println("  - 增加钻杆");
        System.out.println("  - 继续作业");
    }

    private void changeDrillBit() {
        // 更换钻头的具体步骤
        System.out.println("  - 提升钻柱");
        System.out.println("  - 拆卸旧钻头");
        System.out.println("  - 安装新钻头");
    }

    private void mudCirculation() {
        // 泥浆循环的具体步骤
        System.out.println("  - 启动泥浆泵");
        System.out.println("  - 清洗井底");
        System.out.println("  - 监测泥浆参数");
    }

    private void stabilizeWellbore() {
        // 井壁稳定的具体步骤
        System.out.println("  - 灌注水泥");
        System.out.println("  - 监测井壁压力");
        System.out.println("  - 评估井壁稳定性");
    }

    private void samplingAndTesting() {
        // 采样和测试的具体步骤
        System.out.println("  - 获取岩芯样本");
        System.out.println("  - 分析岩芯数据");
        System.out.println("  - 进行地层测试");
    }
}

public class drillTool {
    public static void main(String[] args) {
        // 创建钻杆对象
        drillPipe drillPipe = new drillPipe(4.276f, 5.000f, 3.250f, 6.500f, 0.362f, 21.9f, 150, 30.6f);
        // 创建钻铤对象
        drillCollar drillCollar = new drillCollar(2.813f, 6.250f, 1.719f, 83.0f, 33, 29.6f);
        // 创建钻头对象
        drillBit drillBit = new drillBit(1000.0f, 8.500f, 11f, 11f, 11f, 0.0f, 67.4f);
        // 创建钻具组合对象
        drillCombination drillCombination = new drillCombination(5577f, 5575.9f, drillPipe, drillCollar, drillBit);
        // 打印钻具组合信息
        drillCombination.printCombinationDetails();
        //创建操作行为对象
        DrillingOperations operations = new DrillingOperations();
        operations.show();
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值