
Python在石油工程中应用
应用Python语言对石油工程岩石力学的基本原理,基本方程,编写相关函数并绘制相关图表。具体包括岩石力学的基本变形理论和强度理论,孔隙弹性理论的有效应力定律和本构方程,深部地层地应力的各种测量方法,在地应力、井内压力和泥浆化学联合作用下的各种井眼围岩的应力状态,重点以井壁稳定、水力压裂、套管损坏、油井出砂和地层参数的地震、测井解释为重点,应用Python阐述岩石力学在石油工程中应用的研究进展。
小游园
30天从入门到放弃;30天从入门到精通。
展开
-
pyhton_基尼指数计算
1.定义:基尼指数(基尼不纯度):表示在样本集合中一个随机选中的样本被分错的概率。 注意: Gini指数越小表示集合中被选中的样本被分错的概率越小,也就是说集合的纯度越高,反之,集合越不纯。def gini_index_single(a,b): single_gini = 1 - ((a/(a+b))**2) - ((b/(a+b))**2) return round(single_gini,4)# 求取基尼指数def gini_index(a,b,c,d,e,f...原创 2020-07-01 14:45:29 · 1566 阅读 · 0 评论 -
fluent动网格profile文件的编写
在fluent中指定部件运动主要有两种方式:profile文件和UDF宏文件。当运动方程已知时,利用UDF宏指定运动非常方便,而profile方法则适合当需要指定的运动无任何函数关系的情况。标准瞬态Profile文件可表述为以下格式:((profile-name transient n periodic?)(field_name_1 a1 a2 a3…an)(field_name_2 b1 b2 b3…bn)...(field_name_r r1 r2 r3 …rn))原创 2020-07-01 14:40:47 · 10917 阅读 · 1 评论 -
Python绘图布局、图例说明、边界
当绘画完成后,会发现X、Y轴的区间是会自动调整的,并不是跟传入的X、Y轴数据中的最值相同。为了调整区间可以使用下面的方式:ax.set_xlim([xmin, xmax]) #设置X轴的区间ax.set_ylim([ymin, ymax]) #Y轴区间ax.axis([xmin, xmax, ymin, ymax]) #X、Y轴区间ax.set_ylim(bottom=-10) #Y轴下限ax.set_xlim(right=25) #X轴上限具体效果如...原创 2020-07-01 14:39:54 · 10997 阅读 · 0 评论 -
使用python对Apriori算法进行学习
Apriori的原理解释:假设我们在经营一家商品种类并不多的杂货店,我们对那些经常在一起被购买的商品非常感兴趣。我们只有4种商品:商品0,商品1,商品2和商品3。那么所有可能被一起购买的商品组合都有哪些?这些商品组合可能只有一种商品,比如商品0,也可能包括两种、三种或者所有四种商品。我们并不关心某人买了两件商品0以及四件商品2的情况,我们只关心他购买了一种或多种商品from numpy import *def loadDataSet(): return [[1, 3, 4], [2, 3.原创 2020-06-15 15:24:34 · 652 阅读 · 0 评论 -
Python break语句
Python break语句,就像在C语言中,打破了最小封闭for或while循环。break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。break语句用在while和for循环中。如果使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。 如下例:for letter in 'Python': # 第一个实例 if letter == 'h': break print '当前字母 :', letter var =.原创 2020-06-15 15:23:44 · 813 阅读 · 0 评论 -
python list列表添加元素
Python中使用+运算符可以将多个序列连接起来;列表是序列的一种,所以也可以使用+进行连接,这样就相当于在第一个列表的末尾添加了另一个列表。language = ["Python", "C++", "Java"]birthday = [1991, 1998, 1995]info = language + birthdayprint("language =", language)print("birthday =", birthday)print("info =", in..原创 2020-06-15 15:23:07 · 3440 阅读 · 0 评论 -
使用python对决策树算法进行学习
#-*-coding:utf-8-*-from math import logimport operatordef calcShanonEnt(dataSet): ''' 计算给定数据集的香农熵 :param dataSet: :return:shanonEnt ''' numEntries = len(dataSet) labelCounts={} for featVec in dataSet: currentLab.原创 2020-06-08 17:43:57 · 360 阅读 · 0 评论 -
Python函数定义和调用
Python中函数的应用非常广泛,比如 input() 、print()、range()、len() 函数等等,这些都是 Python 的内置函数,可以直接使用。除了可以直接使用的内置函数外,Python还支持自定义函数,即将一段有规律的、可重复使用的代码定义成函数,从而达到一次编写、多次调用的目的。如len() 函数,通过它我们可以直接获得一个字符串的长度,如果没有 len() 函数,要想获取一个字符串的长度,可用如下代码:n=0for c in "http://c.biancheng.net原创 2020-06-08 17:42:07 · 2204 阅读 · 0 评论 -
abaqus钻头钻进模拟
在之前的文章中,笔者介绍了二维切削的模拟方法,本次笔者将介绍三维钻头钻进岩石的模拟方法。步骤一:准备模型由于在abaqus中绘图和装配比较繁琐,笔者选择在solidwork中提前建好模型,并进行装配,再以x.t格式存储和导入abaqus。步骤二:材料属性的设置材料属性的设置比较重要,它直接影响到模拟结果的准确性,由于本次是做算例讲解,为了简便仅给出基础数据:岩石属性:密度:2.79e-009;弹性:杨氏模量:70000,泊松比:0.33塑性:钻头属性:传导原创 2020-06-08 17:40:47 · 5840 阅读 · 4 评论 -
TensorFlow2.0代码案例
import tensorflow as tfimport numpy as npinput_xs = np.random.rand(1000)input_ys = 3 * input_xs + 0.217weight = tf.Variable(1., dtype=tf.float32, name="weight")bias = tf.Variable(1., dtype=tf.float32, name="bias")def model(xs): logits = tf.mult.原创 2020-06-08 17:39:07 · 1982 阅读 · 0 评论 -
使用python对信息熵进行计算
在机器学习中的决策树类算法中主要依靠信息熵的大小来选择重要的特征属性作为节点换分数据集从而获得训练结果#-*-coding:utf-8-*-from math import logimport operatordef calcShanonEnt(dataSet): ''' 计算给定数据集的香农熵 :param dataSet: :return:shanonEnt ''' numEntries = len(dataSet) labelCou原创 2020-06-02 00:25:59 · 3179 阅读 · 0 评论 -
Python for循环语句
Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。语法:for循环的语法格式如下:for iterating_var in sequence: statements(s)实例for letter in 'Python': # 第一个实例print '当前字母 :', letterfruits = ['banana', 'apple', 'mango']for fruit in fruits: # 第二个实例print '当前水果 :'...原创 2020-06-02 00:25:07 · 346 阅读 · 0 评论 -
Python算术运算符用法
print()函数使用以%开头的转换说明符对各种类型的数据进行格式化输出。+ 加法运算符加法运算符很简单,和数学中的规则一样:m = 10n = 97sum1 = m + nx = 7.2y = 15.3sum2 = x + yprint("sum1=%d, sum2=%.2f" % (sum1, sum2) )运行结果:sum1=107, sum2=22.50拼接字符串当+用于数字时表示加法,但是当+用于字符串时,它还有拼接字符串(将两个字符..原创 2020-06-02 00:24:16 · 1286 阅读 · 0 评论 -
机器学习笔记对sklearn的线性回归器进行学习
#-*-coding:utf-8-*-from sklearn.datasets import load_bostonfrom sklearn.model_selection import train_test_splitimport numpy as npfrom sklearn.preprocessing import StandardScalerfrom sklearn.linear_model import LinearRegressionfrom sklearn.linear_mo.原创 2020-05-25 11:18:56 · 512 阅读 · 0 评论 -
python字符串拼接、查找、分割、替换
1.字符串定义字符串:以双引号或单引号包围的数据2.字符串的拼接练习:a = 'hello'b = 'world'c = a + bprint(c)运行结果:helloworld3.字符串的查找方法 count 计数功能,返回自定字符在字符串中的个数 find 查找,返回从左第一个指定字符的索引,找不到返回-1 rfind 查找,返回从右第一个指定字符的索引原创 2020-05-25 11:18:03 · 473 阅读 · 0 评论 -
地层三压力预测
# -*- coding: UTF-8 -*-import mathimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom pylab import mplmpl.rcParams['font.sans-serif'] = ['SimHei']mpl.rcParams['axes.unicode_minus'] = False# ==================================...原创 2020-05-25 11:16:02 · 4249 阅读 · 6 评论 -
一个圆形水池的静力分析
APDL:/prep7 !------------------------------------------- ET,1,SHELL63 !壳单元 MP,EX,1,2.1e5 !C20 混凝土 MP,NUXY,1,0.2 R,1,200, , , , , , !壁厚 200 R,2,150, , , , , , !肋厚 150 !------------------------------------------- !建模 k,1,0,0,0 k,2,325,0,0 k,3,32.原创 2020-05-18 14:27:39 · 930 阅读 · 0 评论 -
pyhton_批量文本整合进单一文本
将多个文本整合到单个文本中方便后续进行数据处理#-*-coding:utf-8-*-import os,shutilfor i in range(1,10): file_list=os.listdir("word_count\\"+str(i)) for file in file_list: with open("word_count\\"+str(i)+'\\'+file,'r',encoding='utf-8',errors='ignore') as f:原创 2020-05-18 14:27:04 · 178 阅读 · 0 评论 -
Python条件语句
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。Python 编程中 if 语句用于控制程序的执行,基本形式为:if 判断条件: 执行语句……else:执行语句……其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句。...原创 2020-05-18 14:26:05 · 398 阅读 · 0 评论 -
Python符串格式化输出
print()函数使用以%开头的转换说明符对各种类型的数据进行格式化输出,具体请看下表。转换说明符只是一个占位符,它会被后面表达式(变量、常量、数字、字符串、加减乘除等各种形式)的值代替。【实例】输出一个整数:age=8print("C语言中文网已经%d岁了!"%age)运行结果:C语言中文网已经8岁了!在print()函数中,由引号包围的是格式化字符串,它相当于一个字符串模板,可以放置一些转换说明符(占位符)。本例的格式化字符串中包含一个%s说明符,它最终会被后..原创 2020-05-18 14:25:20 · 473 阅读 · 0 评论 -
matlab判断图中距离几个点总距离最小的点的坐标
本方法可用于寻找距离图中几个点总距离最小的点的坐标,在储运联合站位置选择等方面可以应用。下面附详细代码:clear;clc;x=[39496497 39498814 39495320 39498306 39501067];y=[4218695 4218832 4218558 4217348 4217954];dist=@(var) sum(sqrt((var(1)-x).^2+(var(2)-y).^2));%var(1)=x;var(2)=yvar0=rand(2,1);[var,minD.原创 2020-05-18 14:24:37 · 6644 阅读 · 0 评论 -
python双增式轨道设计
import pandas as pdimport numpy as npfrom numpy import sinfrom numpy import cosfrom numpy import tanfrom numpy import arctanfrom numpy import arccosimport matplotlib.pyplot as pltfrom pylab import mplfrom mpl_toolkits.mplot3d import Axes3Dmpl....原创 2020-05-18 14:23:43 · 627 阅读 · 1 评论 -
图像卷积及其Python实现
卷积简介卷积(Convolution)是数学上的一种积分变换,主要作用是为了获取某个函数的局部信息,被广泛应用于信号、图像和机器学习等领域。本文给出了图像卷积的Python实现。算法实现from PIL import Imageimport numpy as npimport matplotlib.pyplot as pltclass ImageCov( object ): ...原创 2020-05-04 11:19:41 · 4657 阅读 · 4 评论 -
pyhton_机器学习笔记对sklearn的集成分类器进行学习
使用泰坦尼克生还数据集,利用sklearn决集成分类器对对其进行预测分类,#-*-coding:utf-8-*-import pandas as pdfrom sklearn.model_selection import train_test_splitfrom sklearn.feature_extraction import DictVectorizerfrom sklearn...原创 2020-05-04 11:18:34 · 428 阅读 · 0 评论 -
python自学
#集合:是无序的、不重复的;1、去重;2、关系测试#创建集合#创建数字集合number=set([1,3,5,7,9]) #数字型集合str_type=set(["im","is","are"])#字符串集合#列表转换成集合list_1=[1,4,5,7,9]list_1=set(list_1) #赋值print(list_1,type(list_1))#type(...原创 2020-05-04 11:17:48 · 361 阅读 · 0 评论 -
Python字符串及其基本操作
Python要求字符串必须使用引号括起来,使用单引号也行,使用双引号也行,只要两边的引号能配对即可。Python字符串和转义字符字符串既可用单引号括起来,也可用双引号括起来,它们没有任何区别。例如如下程序:str1 = 'Charlie'str2 = "C语言中文网"print(str1)print(str2)如果字符串内容本身包含了单引号或双引号,此时就需要进行特殊处...原创 2020-05-04 11:17:07 · 457 阅读 · 0 评论 -
python求最优解
以股票求资金最优组合为例原理如下,输入数据尚未给定#构建有效前沿,指定收益率,波动率最小,求资金组合import scipy.optimize as scodef f(w): w=np.array(w) Rp_opt=np.sum(w*R_mean) Vp_opt=np.sqrt(np.dot(w,np.dot(R_cov,w.T))) return n...原创 2020-05-04 11:13:36 · 3054 阅读 · 0 评论 -
pyhton_机器学习笔记对sklearn的决策树分类器进行学习
使用泰坦尼克生还数据集,利用sklearn决策树分类器对对其进行预测分类,决策树的优点在于逻辑推断可以有非常直观和清晰的解释,便于模型的可视化,同时决策树属于有参数模型,需要花费更多时间在训练数据上。#-*-coding:utf-8-*-import pandas as pdfrom sklearn.model_selection import train_test_splitfr...原创 2020-04-26 16:25:49 · 264 阅读 · 0 评论 -
基于Python的图像双线性插值
双线性插值对于曲面z=f(x,y),双线性插值是一种比较简单的插值方法。双线性插值需要已知曲面上的四个点,然后以此构建一张曲面片,得到双线性插值函数,进而可以根据该曲面片内部各个点处的横坐标和纵坐标来快速计算该点的竖坐标。具体的计算公式如下: (1)其中各个坐标如下图所示:对于图像而言,相邻的四个像素,除了对角线上两个点外,其它点的距离都是1,因此上述公式中的各个点的横坐标和...原创 2020-04-19 13:58:28 · 2507 阅读 · 0 评论 -
对cvs文本关键词进行词频统计
#-*-coding:utf-8-*-import osimport jsondata={}with open('2009_all_keywords.txt','r',encoding='utf-8',errors='ignore') as f: txt_read = f.read() txt_read= txt_read.strip() txt = txt_re...原创 2020-04-19 13:56:29 · 732 阅读 · 0 评论 -
python梯度下降算法
x = [(2, 0, 3), (1, 0, 3), (1, 1, 3), (1, 4, 2), (1, 2, 4)]y = [5, 6, 8, 10, 11]epsilon = 0.002alpha = 0.02diff = [0, 0]max_itor = 1000error0 = 0error1 = 0cnt = 0m = len(x)theta0 = 0theta1...原创 2020-04-19 13:50:41 · 229 阅读 · 0 评论 -
PyQt5之菜单编程
PyQt5是Qt移植到Python上形成的GUI编程框架,自问世以来受到了越来越多的Python程序员的喜爱,因为其具有如下优秀的特征:基于高性能的Qt的GUI控件集。 可跨平台运行于Mac OS、Linux、Windows等主流OS上。 使用signal/slot也就是信号/槽机制具有类型安全和Qt对象松散耦合的优点。 对Qt库完全封装,Qt里有啥,PyQt5里都有。 使用Qt de...原创 2020-04-12 15:52:54 · 1021 阅读 · 0 评论 -
Python套管扶正器偏心距计算
# -*- coding: UTF-8 -*-import mathimport numpy as npimport matplotlib.pyplot as plt# ===================================================================# 算法——套管扶正器计算# ==========================...原创 2020-04-12 15:49:15 · 457 阅读 · 0 评论 -
pyhton_使用pandas将txt数据导入mysql
#-*-coding:utf-8-*-import pandas as pdimport os,shutilfrom sqlalchemy import create_enginecol_list=[ 'A', 'B', 'C', 'D', 'E', 'F', ...原创 2020-04-05 10:39:16 · 336 阅读 · 0 评论 -
多维数据的信息增益及Python实现
二、案例 日期 天气 气温 湿度 是否刮风 是否外出散步 1 下雨 68 80 否 是 2 下雨...原创 2020-04-05 10:37:11 · 927 阅读 · 0 评论 -
非参数统计单样本非参数检验之符号检验
作者:GuHP原创 2020-04-05 10:27:15 · 1965 阅读 · 0 评论 -
python线性回归
import tensorflow as tfimport numpy as npfrom sklearn.datasets import load_irisdata = load_iris()#加载数据iris_target = data.targetiris_data = np.float32(data.data)iris_target = np.float32(tf.keras...原创 2020-04-05 10:22:02 · 247 阅读 · 0 评论 -
二维随机变量的联合熵和条件熵的Python实现
import mathimport numpy as np###########################################'''统计数组中的不同数据及其出现次数''''''返回值:diffData,存储data中出现的不同数据'''''' diffDataNum, 存储不同数据的出现次数'''######################...原创 2020-03-27 12:55:19 · 3550 阅读 · 2 评论 -
信息熵及其Python的实现
一、熵熵,在信息论中是用来刻画信息混乱程度的一种度量。熵最早源于热力学,后应广泛用于物理、化学、信息论等领域。1850年,德国物理学家鲁道夫·克劳修斯首次提出熵的概念,用来表示任何一种能量在空间中分布的均匀程度。1948年,Shannon在Bell System Technical Journal上发表文章“A Mathematical Theory of Communication”,将信息...原创 2020-03-27 12:48:52 · 9651 阅读 · 2 评论 -
python常用概率分布直方图绘制
import numpy.random as nprimport matplotlib.pyplot as pltfrom pylab import mplmpl.rcParams['font.sans-serif'] = ['SimHei']mpl.rcParams['axes.unicode_minus'] = FalseI=1000x_norm = npr.normal(l...原创 2020-03-27 12:39:53 · 3473 阅读 · 0 评论