
Matlab在石油工程中应用
小游园
30天从入门到放弃;30天从入门到精通。
展开
-
matlab gui表格的设置和编辑方法
在matlab gui界面设计时,常常用到表格,用于输入或导入数据,从而进行计算。本期将讲解matlab gui的表格控件的设置和使用方法。首先在gui界面中建立一个表格:双击表格进入属性界面:在Data中可以编辑表格的行、列属性,包括名称、数量、宽度是否可编辑等。记住属性中的Tag(标签)名称,这个名称为表格所对应的句柄名,用于传输数据使用。一般情况下,表格默认的设置...原创 2020-05-04 11:14:29 · 20317 阅读 · 4 评论 -
根据井深选用不同的水泥种类及性能
%根据井深选用不同的水泥种类及性能h = input(‘井深:’)%h为井深,m;%G为国产以温度系列为标准的四种油井水泥%t1水泥初凝时间,min%t2为水泥浆时间,min%p为抗压强度,MPa%f1为静止流动度,mm%f2为水泥浆流动度,mmif(h>0&&h<=1500) G=‘45℃水泥’; t1=‘ 90-150,’; ...原创 2020-04-26 16:24:42 · 531 阅读 · 0 评论 -
matlab gui背景图片掩盖axes的解决方法
Matlab gui界面为了设计的更加美观,常常需要导入背景图片,导入背景图片的代码很容易获取。以下是从百度经验上获取的一段导入背景图片的代码:ha=axes('units','normalized','pos',[0 0 1 1]);uistack(ha,'down');ii=imread('beijing.jpg');%设置程序的背景图为beijing1.j...原创 2020-04-26 16:19:06 · 3990 阅读 · 3 评论 -
雅可比迭代
function [x, k] = LinJacobi(A,b,ep,it_max)% 求线性方程组的Jacobi迭代法,调用格式为% [x, k] = LinJacobi(A,b,ep,it_max)% 其中 A 为线性方程组的系数矩阵,b 为常数项,ep 为精度要求,默认为1e-5, % it_max 为最大迭代次数,默认为100% x 为线性方程组的解,k迭代次数if ...原创 2020-04-19 13:55:50 · 769 阅读 · 0 评论 -
把MATLAB计算的曲线曲面导入ANSYS
function mat2ans(filename,x,y,z)% 把MATLAB计算的曲线曲面导入ANSYSt=0:pi/10:2*pi;[x,y,z]=cylinder(2+cos(t));filename=strcat('c1.txt');if(ischar(filename)==0) error('Invalid filename');endif(ndims(z)...原创 2020-04-19 13:54:50 · 1506 阅读 · 0 评论 -
固井水泥浆体系、性能设计
%固井水泥浆体系、性能设计%思路:先根据各次下入套管深度不同,选用以温度系列为标准的四种油井水泥,确定基础性能;% 再根据地层抗盐特性、井温差异,加入适当外加剂,形成不同的水泥浆体系;% 按抗盐特性,将水泥浆体系分为常规固井水泥浆体系和高抗盐固井水泥浆体系,设计相应外加剂;% 按井温,将常规体系又可分为中温、高温、超高温三种,高抗盐体系可分为中高温...原创 2020-04-19 13:53:57 · 2007 阅读 · 1 评论 -
matlab gui界面的简要使用和基本逻辑
我们通常使用m函数的方法来编写matlab程序,但这种方法很难做到人机交互。在之前的文章中我们提到过通过调用txt文本的方法来得到我们想要的数据,但是这种方法不宜面对大量的数据,操作起来也比较繁琐,使用条件相对严苛。Matlab gui则是一种比较全面的方法,能够让我们更方便的实现人机交互。Matlab gui这种方法有点像VB中我们显示人机交互界面的方法,但操作起来更加简便。首先在命令行...原创 2020-04-19 13:51:40 · 1512 阅读 · 0 评论 -
二叉树及其Python实现
一、二叉树二叉树是树结构中一种比较简单的结构,存储效率高,操作算法相对简单,且任何树都很容易转化成二叉树结构,因此二叉树在树结构中起着非常重要的作用。下面两个图所示就是二叉树,其中图(a)是一棵非完全二叉树,图(b)是一棵完全二叉树。二叉树在使用之前要首先被建立,在使用的过程中主要涉及到在树上查找节点,也就是二叉树的遍历。本文主要给出了二叉树的建立、先序遍历和层次遍历的python实现,...原创 2020-04-12 16:00:53 · 575 阅读 · 0 评论 -
Matlab统计绘图
一、P-P图p-p图用来检测数据是否服从指定的分布,和normplot定义类似,normplot函数是检测是否服从正态分布,而porbplot不仅可以检测是否服从正态分布,还可以检测是否服从其他指定的分布,只需在调用函数的时候指定一下是哪种分布。 调用格式: probplot(‘name’,x) :x是输入检验的数据,‘name’指定检验哪种分布,name可以取 name ...原创 2020-04-12 15:59:58 · 3334 阅读 · 0 评论 -
我国不同类别水泥对应的质量标准及物理性能
我国油气井水泥以温度系列为标准,分为47℃、75℃、95℃和120℃四种,它们各自对应着不同的质量标准及物理性能。%我国不同类别水泥对应的质量标准及物理性能X_in=input('水泥类别:')X=[1,2,3,4]%x代表我国不同类别水泥1-4分别代表45℃水泥75℃水泥95℃水泥120℃水泥四种不同类别水泥y=[5,5,5,6]%...原创 2020-04-12 15:59:25 · 879 阅读 · 0 评论 -
Matlab似然函数
1. 箱线图箱线图,是利用数据中的五个特征值——最小值、第一四分位点、中值、第三四分位点、最大值来描述数据的图形。箱线图可以粗略的估计数据是否具有对称性,粗略观察数据的分散程度,特别可用于对几个样本的比较。调用格式:boxplot(X,‘Name’,value);‘Name’是箱线图的一些属性,value是该属性的值例如:Name为‘notch’,当value为1时,产生的是凹盒图(有切...原创 2020-04-05 10:38:05 · 3307 阅读 · 0 评论 -
支持向量机算法在MATLAB中的应用——Libsvm参数
Libsvm的相关应用:SVM的五种模型:C-SVC Nu-SVC One-class SVM Epsilon-SVR 回归 Nu-SVR 回归参数-s详解:(采用哪种SVM模型来处理)0:C-SVC1:Nu-SVC2:One-class SVM3:Epsilon-SVR 回归4:Nu-SVR 回归参数-t详解:(选择核函数的类型)0:linear(线性)...原创 2020-03-27 18:54:55 · 1033 阅读 · 0 评论 -
PDC钻头刀翼的设计方法
PDC钻头的刀翼形状受冠部形状和切削齿分布的影响较大,因此没有统一的设计方法,本文提供一种PDC钻头刀翼设计方法和程序,仅供交流使用。PDC刀翼的形态,主要又钻头外圆和样条曲线GAD和CBE组成。图中给出了参考的设计数值,实际设计数值应由切削齿分布自行调整。MATLAB设计程序:clear;clc;hold on[R0,yc0,Ax0,Ay0,Bx0,By0,...原创 2020-03-27 12:58:27 · 2278 阅读 · 0 评论 -
Matlab检验函数
1、ztest()函数ztest()函数对已知方差的单个总体均值进行Z检验,调用格式为[h,sig,ci,zval] = ztest(x,mu0,sigma,alpha,tail)进行显著性水平为alpha的Z假设检验,用来检验标准差为sigma时的正态分布样本的均值与mu0的关系,可通过指定tail的值来选择备择假设的类型:tail = 0或'both',检验假...原创 2020-03-17 13:21:19 · 10797 阅读 · 0 评论 -
MATLAB-井深结构设计思路
作者:SuZ原创 2020-03-17 13:18:13 · 859 阅读 · 0 评论 -
基于IADC的钻头选型程序
自20世纪80年代末,PDC钻头首次投入工业使用以来,其使用越来越广泛,如何优选PDC钻头已成为人们广泛关注的问题。学者们通过研究,已提出多种PDC钻头的选型方法,如:通过钻头使用效果进行优选的方法、通过岩石力学参数优选的方法、钻头结构参数优选法和根据地层综合系数分析的方法等。随着有限元技术和编程语言的进步,利用钻头参数和数据库等优选钻头的方法更加便捷和实用。本问将介绍一种基于IADC(国际钻...原创 2020-03-17 13:08:06 · 782 阅读 · 0 评论 -
Matlab几种信号的产生
一 简谐信号:x=A*sin(thelta)t=0:0.01:1;thelta=2*pi*5*t+pi/4;x=3*sin(thelta);subplot(211)plot(t,x,'k');ylabel('x(t)')subplot(212)stem(t,x,'filled','k');ylabel('x(n)')二 随机信号:x=rand(size(t))或...原创 2020-03-08 11:48:26 · 3885 阅读 · 1 评论 -
双因素试验的方差分析及其Maltab实现
一、原理介绍因素水平的改变所造成的试验结果的改变,称为主效应。当某一因素的效应随另一因素的水平不同而不同,则称这两个因素之间存在交互作用。由于交互作用引起的试验结果的改变称为交互效应。二、函数anova2matlab通过函数anova2来实现单因素方差分析。函数语法及参数说明如下:p = anova2 (x,reps,displayopt)进行双因素方差分析,以比较样本X中两列...原创 2020-03-08 11:38:34 · 6180 阅读 · 1 评论 -
SVM在MATLAB中的应用
主要语句:svmtrain(...); %通过训练集来训练模型 svmpredict(...); %对测试集进行预测例子:>>model=svmtrain(train_label,train_matrix,[‘libsvm_options’]);model是训练出的模型,在svmpredict里应用,来对训练集的标签进行测试。 train_label是m*1列向...原创 2020-03-01 14:14:15 · 1504 阅读 · 0 评论 -
Matlab应用聚类分析
1.function[X]=F_JlSjBzh(cs,X)%%模糊聚类分析数据标准化变换%%X原始数据矩阵;cs=0,不变换;cs=1,标准差变换:cs=2,极差变换if(cs==0)return;end[n,m]=size(X);%%获得矩阵的行列数if(cs==1)%%平移•标准差变换for(k=1:m)xk=0;for(i=1:n)xk=xk+X(i,...原创 2020-03-01 14:11:22 · 508 阅读 · 0 评论 -
单因素试验的方差分析及其MATLAB实现
一、原理简介一个复杂的事物,其中往往有许多因素互相制约又互相依存。方差分析的目的是通过数据分析找出对该事物有显著影响的因素,各因素之间的交互作用,以及显著影响因素的最佳水平等。一项试验有多个影响因素,如果只有一个在发生变化,则称单因素分析。假设某一试验有s个不同条件,则在每个条件(或称水平)下进行试验,可得s个总体,分别记为,各总体的平均数表示为,各总体的方差表示为。现在,在这s个总体服从...原创 2020-03-01 14:07:42 · 10084 阅读 · 0 评论 -
Matlab生成脉动压裂注入流量数据
% 三角形波,锯齿脉动波 t=0:0.01:10; X2=abs(sawtooth(2*t,0.5)); plot(t,X2)% 正弦脉动波x=[pi:pi/20:5*pi];y=abs(sin(x));plot(x,y);作者:ZhaoH原创 2020-03-01 14:03:35 · 457 阅读 · 0 评论 -
非线性回归分析及其Matlab实现
回归分析简介回归分析(regression analysis)是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。如果只有一个自变量,则称之为一元回归分析;如果具有多个自变量,则称之为多元回归分析。如果自变量与因变量之间的函数关系是线性函数,则称之为线性回归分析,否则称之为非线性回归分析。线性回归的函数表达式一般表示为:对于非线性回归分析,需要根据实际情况来确定函...原创 2020-02-23 15:14:22 · 28174 阅读 · 5 评论 -
关于sw导入曲线的具体说明
在之前的文章(将matlab程序生成的曲线导入solidworks中并生成实体)中笔者介绍了一种将matlab生成的曲线导入solidworks中,并绘制草图实体的方法。这种方法主要是通过插入xyz坐标来导入样条曲线。但是在之前的文章中插入的曲线是由许多点组成的,这不免会使读者产生误解,片面的认为这种方法生成的曲线必须在matlab中生成相同的样条曲线。实际上,这种通过导入xyz坐标来生成样条...原创 2020-02-23 14:58:42 · 8041 阅读 · 1 评论 -
Butterworth数字滤波器设计
MATLAB语句: [b,a]=butter(n,wn,’ftype’)设计一个阶数为n,截止频率为wn的数字低通滤波器。若参数ftype取‘high’或‘stop’,则用来设计相应的高通或带阻滤波器。返回值a和b为系统函数的分子和分母的系数。例 : 设计一个阶数为9阶、截止频率为300Hz的高通Butterworth滤波器,采样频率为1000。并画出它的频率特性。程序: ...原创 2020-01-12 16:46:31 · 2652 阅读 · 0 评论 -
元线性回归分析及其Matlab实现
回归分析简介回归(regression)一词最早由英国科学家弗朗西斯·高尔顿(Francis Galton)提出。高尔顿发现:“子辈的平均身高是其父辈平均身高以及他们所处族群平均身高的加权平均和”,这种现象称为“均值回归或者平庸回归”[1]。回归分析(regression analysis)是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。按照自变量的多少,可分为一元回归分析和多元...原创 2020-01-12 16:42:02 · 2741 阅读 · 0 评论 -
MATLAB求解微分方程
%% 求解微分方程%龙格库塔法% t0=0;tf=10; %范围0-10% y0=2; %初始值y0% [t,y]=ode23('funt',[t0,tf],y0); %2、3阶龙格库塔法% y1=sqrt(t+1)+1; %原方程% plot(t,y,'b.',t,y1,'r-')%% 求解高阶微分方程% t0=0;...原创 2020-01-05 18:51:02 · 697 阅读 · 0 评论 -
三维散点绘制三维曲面图
%输入数据A=[176.923 87.4359 -383.59160.563 95.493 -421.408175.034 91.2752 -401.611133.165 84.3038 -378.734183.704 82.4691 -369.383222.345 88.2759 -412.69145.08 77.9421 -384.823178.701 77.6623 -3...原创 2020-01-05 18:50:22 · 8302 阅读 · 3 评论 -
使用matlab设计PDC钻头的冠部形态
冠部形态的设计是PDC钻头设计的第一步,冠部形态直接影响到PDC钻头的工作性能。目前,成功应用于石油钻井的PDC钻头剖面形状可归纳为四种,即直线-圆弧-直线形、直线-圆弧形、直线-双圆弧形和直线-圆弧-抛物线形。以其中的直线-圆弧形为例,从上图中可知:该类型剖面表达式为:使用上面的计算式对剖面曲线进行编程:clear;clc;[Dpz,R0z,al...原创 2020-01-05 18:42:49 · 2387 阅读 · 0 评论 -
MATLAB矩阵基本操作
%% 矩阵基本操作% A = rand(5)%随机生成5行5列0-1的数% B = det(A)%矩阵的行列式% r = rank(A)%求矩阵的秩% tr = trace(A)%求矩阵的迹%% 向量的范数% V = [1,2,3,4,5]% v1 = norm(V,1)%元素和(1-范数)% v2 = norm(V)%平方和开根号(2-范数)% vinf = norm(V,i...原创 2020-01-05 18:38:03 · 1434 阅读 · 0 评论 -
Matlab读取文件里所有图片
主要使用了imread函数,for循环指令,即函数imread用于读取图片文件中的数据,for用于读取所有图片。可以在matlab的命令窗口中输入doc imread或者help imread即可获得该函数的帮助信息。clear;clc[f,p]=uigetfile('*.*','选择图像文件');if fA=imread(strcat(p,f));imshow(A);end下面...原创 2019-12-30 11:37:50 · 2226 阅读 · 1 评论 -
BP神经网络非线性函数拟合
基于BP神经网络的非线性函数拟合算法流程可以分为BP神经网络构建、BP神经网络训练和BP神经网络预测三步。BP神经网络构建:根据拟合非线性函数特点确定BP神经网络结构。BP神经网络训练:用非线性函数输入输出数据训练神经网络,使训练后的网络能够预测非线性函数输出。BP神经网络预测:用训练好的网络预测函数输出,并对预测结果进行分析%输入数据x=rand(1,1500);y=ran...原创 2019-12-30 11:37:08 · 7177 阅读 · 0 评论 -
将matlab程序生成的曲线导入solidworks中并生成实体
将matlab程序生成的曲线导入solidworks中并生成实体,主要有以下几个步骤:1、通过程序生成曲线,将曲线的坐标写入到txt文件中;2、在solidworks中使用曲线功能导入txt坐标,生成实体曲线;3、将生成的曲线转换实体引用。具体步骤:1、用matlab生成曲线并将坐标写入txt文件中:%下面的代码生成的图形是一个直角三角形clear;clc;x1=0:1:100...原创 2019-12-30 11:09:12 · 17885 阅读 · 9 评论 -
基于MATLAB的图像卷积运算
卷积简介卷积广泛应用于信号、图像和机器学习等领域,但是对于非数学专业的同学来说,是一个比较陌生和懵懂的概念。卷积(Convolution)是数学上的一种积分变换,主要作用是为了获取某个函数的局部信息。。算法实现function [ mF, nF, half_mF, half_nF ] = FilterRadius( filter )%功能:% 获取滤波器的维数信息%输入参数: ...原创 2019-12-22 10:57:03 · 11345 阅读 · 1 评论 -
matlab求定积分
求f在区间[a,b]上对t的定积分。符号解:例如f=t^2*exp(-t);a=0,b=1>> clear>> syms t%定义符号变量>> f=t^2*exp(-t);>> int(f,t,0,1)ans =2 - 5*exp(-1)数值解:例如例如f=t^2*exp(-t^3);a=0,b=1>> clear...原创 2019-12-22 10:47:29 · 6900 阅读 · 0 评论 -
水下采油树海流载荷计算
分析采油树自海上钻井平台下放过程中,受到的海流载荷作用,再利用MATLAB求解海流载荷。随深度变化的海流速度 海流载荷利用MATLAB求解时,设置的参数为采油树水平拖拽系数为1.6,钻杆的外径为0.476 m,海水密度为1025kg/m3,该部分取海面的潮流速度为1.02 m/s,海面的风流速度为1m/s,水深为1500m,距海底高度为500m。% u1海面的潮流速度,...原创 2019-12-22 10:46:15 · 893 阅读 · 0 评论 -
西松模型的MATLAB程序编制
程序:%西松模型function F=xscuttermodel(~)a=input('请输入剪切强度值');%通过实验测量b=input('请输入切削深度值');%可调整的数值c=input('请输入内摩擦角');%通过实验测量d=input('请输入刀具倾角');%可调整的数值e=input('也称岩石切削摩擦角');%切削合力方向与刀具法线之间的夹角F...原创 2019-12-22 10:35:41 · 226 阅读 · 0 评论 -
Matlab高斯消去法
function [x]=gauss_bjd(A,b) %建立一个函数(A,b),bjd可以随便取名字n=size(A,1); %A可以取常数值for k=1:n-1 %第一个for循环,k的取值范围是1到n-1 for i=k+1:n ...原创 2019-12-15 15:47:22 · 10618 阅读 · 0 评论 -
MATLAB K-均值聚类
内容:K-均值聚类是典型的基于原型的目标函数聚类方法的代表,它是数据点到原型的某种距离作为优化的目标函数,利用函数求极值的方法得到迭代运算的调整规则,最终使得类内对象之间的距离最大,而类之间的距离最小。K-均值聚类常用函数:Idx=Kmeans(X,K) %K聚类数,X观测数据矩阵,Idx各点的聚类标号;[Idx,C]=Kmeans(X,K) % C: K*P的矩阵,存储K个聚类...原创 2019-12-15 15:46:32 · 2979 阅读 · 2 评论 -
西松模型的MATLAB程序编制
作者:GaiJM原创 2019-12-15 15:36:37 · 180 阅读 · 0 评论