数模菜鸟教程
- 格式:doc
- 大小:53.50 KB
- 文档页数:10
MATLABappdesigner菜鸟进阶学习(三)3.创建确认对话框 在app设计中,确认对话框是不可缺少的存在,如关闭app前的提醒、修改参数之后的提醒,可以规避在操作过程中的失误,从⽽避免数据等的丢失3.1 创建对话框语法uiconfirm(f,message,title)uiconfirm(f,message,title,Name,Value)selection = uiconfirm(___) 其中,uiconfirm(,,)在⽬标图窗f中显⽰⼀个 App 内模态确认对话框。
此语法显⽰供⽤户选择的两个选项 OK 和 Cancel。
显⽰该对话框时,对话框后⾯的图窗不可访问,但可以访问 MATLAB® 命令提⽰。
uiconfirm(,,,) 显⽰确认对话框,其中有⼀个或多个可⾃定义对话框外观和⾏为的 Name,Value 对组参数。
例如,您可以在对话框中指定⼀组⾃定义选项,⽽不是默认的 OK 和 Cancel。
selection = uiconfirm(___) 以字符向量形式返回⽤户的选择。
可以结合上述任⼀语法使⽤ selection 输出参数。
如果使⽤此语法,显⽰对话框时 MATLAB 命令提⽰将不可访问。
message:要显⽰的消息,指定为字符向量、字符向量元胞数组或字符串数组。
当消息有多⾏⽂本时,指定元胞数组或字符串数组。
数组中的每个元素对应于⼀⾏⽂本。
title:对话框标题,指定为字符向量或字符串标量。
指定可选的、以逗号分隔的 Name,Value 对组参数。
Name 为参数名称,Value 为对应的值。
Name 必须放在引号中。
您可采⽤任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN 所⽰。
3.2 详述 根据不同的应⽤场景,对话框的个性化设计分别为下述⼏种3.2.1 指定不同的图标selection = uiconfirm(app.UIFigure,'Close document?','Confirm Close',...'Icon','warning'); 当你点击ok后,uiconfirm 将以字符向量形式返回该选项,即返回“ok”。
matlab数学建模程序代码【实用版】目录1.MATLAB 数学建模概述2.MATLAB 数学建模程序代码的基本结构3.常用的 MATLAB 数学建模函数和命令4.MATLAB 数学建模程序代码的编写流程5.MATLAB 数学建模程序代码的示例正文一、MATLAB 数学建模概述MATLAB(Matrix Laboratory)是一款强大的数学软件,广泛应用于数学建模、数据分析、可视化等领域。
通过 MATLAB,用户可以方便地进行数学计算、编写程序以及绘制图表等。
在数学建模领域,MATLAB 为研究人员和工程师提供了丰富的工具箱和函数,使得数学模型的构建、求解和分析变得更加简单高效。
二、MATLAB 数学建模程序代码的基本结构MATLAB 数学建模程序代码通常分为以下几个部分:1.导入 MATLAB 库:在建模过程中,可能需要使用 MATLAB 提供的某些库或工具箱,需要在代码开头进行导入。
2.定义变量和参数:在建模过程中,需要定义一些变量和参数,用于表示模型中的各个要素。
3.建立数学模型:根据实际问题,编写相应的数学表达式或方程,构建数学模型。
4.求解模型:通过调用 MATLAB 内置函数或使用自定义函数,对数学模型进行求解。
5.分析结果:对求解结果进行分析,提取所需的信息,例如计算均值、方差等统计量。
6.可视化结果:使用 MATLAB 绘制图表,将结果以直观的形式展示出来。
三、常用的 MATLAB 数学建模函数和命令MATLAB 提供了丰富的数学建模函数和命令,例如:1.线性规划:使用`linprog`函数求解线性规划问题。
2.非线性规划:使用`fmincon`或`fsolve`函数求解非线性规划问题。
3.优化问题:使用`optimize`函数求解优化问题。
4.数据处理:使用`mean`、`std`等函数对数据进行统计分析。
5.图表绘制:使用`plot`、`scatter`等函数绘制各种图表。
2017数学建模D题第一问的代码部分是模拟实现了一个特定的数学模型,用来解决相关问题。
数学建模是一门重要的学科,它主要研究如何用数学方法解决实际问题。
在数学建模比赛中,编写代码是不可或缺的一部分,能够有效地帮助解决问题并进行模拟实验。
下面我们将分步介绍2017数学建模D题第一问的代码部分。
一、问题分析在编写代码前,首先需要对题目进行仔细的分析和理解。
2017数学建模D题第一问要求建立数学模型,模拟实现某一过程,具体涉及到的数学知识和模型应用需要充分理解。
二、数据采集和预处理在编写代码时,需要采集相关的数据,并对数据进行预处理。
这一步骤包括数据的清洗、标准化等工作,确保数据的准确性和合理性。
三、模型建立根据题目要求,我们需要建立一个数学模型,来描述所涉及的过程。
模型的建立需要基于相关的数学原理和理论,包括概率统计、微积分、线性代数等。
四、算法设计在模型建立的基础上,需要设计相应的算法来实现模拟过程。
算法设计要考虑到模型的复杂性和实际问题的需求,确保算法的高效性和准确性。
五、代码实现根据模型和算法的设计,编写代码实现模拟过程。
编程语言的选择要根据具体问题和需求来确定,常用的编程语言包括Python、Matlab、C++等。
六、实验与结果分析实现代码后,需要进行相应的实验,并对实验结果进行分析。
分析结果需要跟题目要求进行对比,并对模型的有效性进行验证。
七、结论与讨论基于实验结果的分析,得出相应的结论,并对模型的优化和改进进行讨论。
结论要符合题目要求,并具有一定的实际意义。
总结:2017数学建模D题第一问的代码部分是一个复杂而又重要的过程,需要充分理解题目要求和相关数学知识,并进行严谨的分析和设计。
通过以上步骤的实施,可以完成对数学模型的建立和模拟实现,为实际问题的解决提供有效的方法和工具。
希望这篇文章能对读者对2017数学建模D题第一问的代码部分有所帮助。
八、优化与拓展在初步实现代码的基础上,我们可以进一步优化和拓展代码。
matlab数学建模常用模型及编程摘要:一、引言二、MATLAB 数学建模的基本概念1.矩阵的转置2.矩阵的旋转3.矩阵的左右翻转4.矩阵的上下翻转5.矩阵的逆三、MATLAB 数学建模的常用函数1.绘图函数2.坐标轴边界3.沿曲线绘制误差条4.在图形窗口中保留当前图形5.创建线条对象四、MATLAB 数学建模的实例1.牛顿第二定律2.第一级火箭模型五、结论正文:一、引言数学建模是一种将现实世界中的问题抽象成数学问题,然后通过数学方法来求解的过程。
在数学建模中,MATLAB 作为一种强大的数学软件,被广泛应用于各种数学问题的求解和模拟。
本文将介绍MATLAB 数学建模中的常用模型及编程方法。
二、MATLAB 数学建模的基本概念在使用MATLAB 进行数学建模之前,我们需要了解一些基本的概念,如矩阵的转置、旋转、左右翻转、上下翻转以及矩阵的逆等。
1.矩阵的转置矩阵的转置是指将矩阵的一行和一列互换,得到一个新的矩阵。
矩阵的转置运算符是单撇号(’)。
2.矩阵的旋转利用函数rot90(a,k) 将矩阵a 旋转90 的k 倍,当k 为1 时可省略。
3.矩阵的左右翻转对矩阵实施左右翻转是将原矩阵的第一列和最后一列调换,第二列和倒数第二列调换,依次类推。
matlab 对矩阵a 实施左右翻转的函数是fliplr(a)。
4.矩阵的上下翻转matlab 对矩阵a 实施上下翻转的函数是flipud(a)。
5.矩阵的逆对于一个方阵a,如果存在一个与其同阶的方阵b,使得:a·bb·a=|a|·|b|·I,则称矩阵b 是矩阵a 的逆矩阵。
其中,|a|表示矩阵a 的行列式,I 是单位矩阵。
在MATLAB 中,我们可以使用函数inv(a) 来求解矩阵a 的逆矩阵。
三、MATLAB 数学建模的常用函数在MATLAB 数学建模过程中,我们经常需要使用一些绘图和数据处理函数,如绘图函数、坐标轴边界、沿曲线绘制误差条、在图形窗口中保留当前图形、创建线条对象等。
数学建模实用教程一、原理主成分分析的目标是通过线性变换将高维数据转换为低维特征,同时最大化样本间的方差。
它的基本思想是通过找到方差最大的投影方向,将原始数据的维度降低;然后再在新的低维空间中找到方差最大的投影方向。
通过不断迭代,可以得到一组新的主成分,它们是原始数据中方差最大的线性组合。
二、数学模型设我们有一个包含n个样本和m个特征的数据矩阵X,其中每个样本用一个m维向量表示。
首先,我们需要将数据进行中心化处理,即减去每个特征的均值。
然后,计算数据的协方差矩阵C。
协方差矩阵的第i行第j列元素表示特征i和特征j之间的协方差。
接着,我们需要求解协方差矩阵的特征值和特征向量。
特征值表征了特征的方差,特征向量是协方差矩阵的特征值对应的单位化向量。
我们选择特征值最大的前k个特征向量作为主成分,它们可以表示数据的最大方差。
将原始数据投影到这些主成分上,就得到了降维后的数据。
三、实际应用主成分分析在实际应用中有广泛的应用。
首先,它可以用于降维。
通过保留主成分的一部分,可以将高维数据降低到低维,减少数据中的噪声和冗余信息。
其次,主成分分析还可以用于特征提取。
通过选择主成分,我们可以得到较少的特征,这些特征能够更好地表示原始数据的信息。
在图像和语音处理等领域,主成分分析可以用于特征提取和分类。
此外,主成分分析还可以用于数据可视化。
将数据投影到主成分上,可以将高维数据可视化为二维或三维的图形,以帮助我们更好地理解数据的结构和关系。
除了上述应用之外,主成分分析还可以与其他建模技术相结合,如聚类和分类等。
通过将主成分作为输入,我们可以得到更好的聚类和分类效果。
此外,主成分分析还可以用于异常检测和模式识别等领域。
总结:主成分分析是一种常用的数学建模技术,它可以用于降维、特征提取和数据可视化等多种应用。
本文介绍了主成分分析的基本原理、数学模型以及实际应用。
希望能帮助读者更好地理解和应用主成分分析。
matlab数学建模程序代码
当进行数学建模时,MATLAB是一个强大的工具,用于实现和测试模型。
下面是一个简单的MATLAB代码示例,演示如何使用MATLAB进行一维线性回归建模:
```matlab
%生成示例数据
x=[1,2,3,4,5];
y=[2.8,3.9,4.8,5.5,6.3];
%进行一维线性回归
coefficients=polyfit(x,y,1);
slope=coefficients(1);
intercept=coefficients(2);
%绘制原始数据和回归线
scatter(x,y,'o','DisplayName','原始数据');
hold on;
plot(x,polyval(coefficients,x),'r-','DisplayName','回归线');
hold off;
%添加标签和图例
xlabel('X轴');
ylabel('Y轴');
title('一维线性回归建模示例');
legend('show');
%输出回归方程的系数
fprintf('回归方程:y=%.2fx+%.2f\n',slope,intercept);
```
此代码生成了一些示例数据,然后使用一维线性回归对数据进行建模。
回归方程的系数将被计算,并且原始数据与回归线将在图上显示。
请注意,这只是一个简单的示例,实际上,你可能需要根据你的具体问题修改代码。
matlab菜鸟教程Matlab是一种强大的数值计算和科学数据可视化软件。
它被广泛应用于工程、科学和金融等领域。
本教程将介绍Matlab的基本语法、常用函数和数据处理技巧,帮助初学者快速上手使用Matlab进行编程和数据分析。
1. Matlab环境搭建安装Matlab:在MathWorks官网下载并安装Matlab软件,按照向导进行安装。
打开Matlab:双击桌面上的Matlab图标或在开始菜单中找到Matlab并点击打开。
2. Matlab基本语法变量和常量:使用等号(=)将数值或表达式赋给变量。
例如:x = 5, y = sin(x)。
数据类型:Matlab支持多种数据类型,包括数值型、字符型和逻辑型等。
常用的数值类型有整数型、浮点型和复数型。
矩阵和数组:Matlab中的基本数据结构是矩阵和数组。
可以使用方括号([])定义矩阵和数组,并进行矩阵运算。
函数调用:Matlab提供了丰富的内置函数,可以直接调用进行数值计算、数据处理和图形绘制等操作。
条件语句:使用if语句进行条件判断,根据不同的条件执行不同的操作。
循环语句:使用for循环和while循环重复执行一段代码,根据循环条件来控制循环的执行次数。
3. Matlab常用函数数值计算:Matlab提供了多种数值计算函数,如sin、cos、exp、log等,用于计算三角函数、指数函数和对数函数等。
数据处理:Matlab提供了丰富的数据处理函数,如mean、sum、max、min等,用于计算数组的均值、总和、最大值和最小值等。
图形绘制:Matlab可以绘制各种类型的图形,如线图、散点图、柱状图和饼图等。
可以使用plot、scatter、bar、pie等函数进行图形绘制。
数据导入和导出:Matlab可以方便地导入和导出各种数据格式,如文本文件、Excel文件和图像文件等。
可以使用readtable、writetable、imread、imwrite等函数进行数据的读写操作。
Eclipse 100 油藏数模软件使用手册二OO四年十月目录1 Eclipse 油藏模拟软件特点 (1)1.1Eclipse软件91年A版本的新进展概况 (1)1.2Eclipse100软件特点 (1)2 数据文件综述 (12)2.1 RUNSPEC部分 (15)2.2 GRID部分 (19)2.3 EDIT部分 (24)2.4 PROPS部分 (25)2.5 REGIONS部分 (31)2.6 SOLUTION部分 (32)2.7 SUMMARY(汇总)部分 (35)2.8 SCHEDULE部分 (42)3 关键字描述(按字母顺序排列) (47)ACTNUM 活节点的识别 (47)ADD 在当前BOX中指定的数组加一个常数 (48)ADDREG 给某一流动区域内指定的数组加一个常数 (49)ADDZCORN 给角点深度数组加一个常数 (49)APIGROUP 给API追踪中的油PVT表分组 (51)APIVD API追踪平衡的深度与原油比重(API)的关系 (51)AQANTRC 指定分析水层的示踪剂浓度 (51)AQUANCON 定义分析水层的相关数据 (52)AQUCON 数值化水层与油藏的连接 (53)AQUCT 说明Carter—Tracy水层的特征数据 (54)AQUFET Tetkovich水层说明数据 (55)AQUFETP 说明Fetkovich水层的特征数据 (56)AQUNUM 给一个网格块赋值一个数值化水层 (57)AQUTAB Carter—Tracy水层的影响函数表 (58)BDENSITY 盐水地面密度 (59)BOUNDARY 定义在打印网格表中显示的网格范围 (59)BOX 重新定义当前输入的BOX (60)CECON 生产井射开节点的经济极限 (61)COLLAPSE 识别在压缩VE选择中可压塌的单元 (62)COLUMNS 设置输入数据文件的左右范围 (62)COMPDAT 井完井段说明数据 (63)COMPFLSH 井射孔段的闪蒸转化比 (65)COMPIMB 井射开网格的渗吸表号 (67)COMPINJK 用户定义的注入井相对渗透率 (68)COMPLUMP 为自动修井而将射开网格归在一起 (69)COMPRP 重新标定井射开节点的饱和度数据 (70)COMPVE 垂直平衡(V.E.)运行时,井射孔深度的重设定 (72)COORD 坐标线 (75)COORDSYS 坐标系统信息 (76)COPY 从一个数组拷贝数据到另一数组 (77)COPYBOX 从一个BOX向另外一个拷贝一组网格数据 (77)CRITPERM 对VE节点压缩的渗透率标准 (78)DATE 输出日期到汇总文件 (79)DATES 模拟者事先指定报告日期 (79)DATUM 基准面深度,用于深度校正压力的输出 (80)BEBUG 控制检测输出 (80)DENSITY 地面条件下流体密度 (81)DEPTH 网块中心深度 (82)DIFFC 每一个PVT区域的分子扩散数据 (82)DIFFDP 在双重介质运行中,限制分子扩散 (83)DIFFMMF 基质一裂缝的扩散乘子 (83)DIFFMR R方向的扩散乘子 (83)DIFFMTHT θ方向扩散系数乘子 (84)DIFFMX X方向的扩散乘子 (84)DIFFMY Y方向的扩散乘子 (85)DIFFMZ Z方向的扩散乘子 (85)DIFFR R方向的扩散系数 (86)DIFFTHT θ方向的扩散系数 (86)DIFFX X方向扩散系数 (87)DIFFY Y方向扩散系数 (87)DIFFZ Z方向扩散系数 (88)DPGRID 对裂缝单元使用基质单元的网格数据 (88)DR R方向网格的大小 (88)DRSDT 溶解GOR的增加的最大速度 (89)DRV R方向网格大小(矢量) (89)DRVDT 挥发油的OGR的增加的最大速度 (90)DTHETA θ方向的网格大小 (90)DTHETAV 网格的角度大小(向量) (91)DX X方向的网格大小 (91)DXV X方向网格大小(向量) (91)DY Y方向网格大小 (92)DYV Y方向网格大小(向量) (92)DZ Z方向网格大小 (92)DZMTRX 基质块的垂直尺寸 (93)DZMTRXV 基质岩体块的垂直尺寸(向量) (93)DZNET 净厚度 (93)ECHO 接通重复输出开关 (94)EDITNNC 改变非相邻连接 (94)EHYSTR 滞后作用参数和模型选择 (95)END 标志SCHEDULE部分的结束 (95)ENDBOX 将BOX恢复到包含全部网格 (95)ENDNUM 端点标定与深度区域号 (95)ENKRVD 相对渗透率端点与深度关系表 (96)ENPTVD 饱和度端点与深度关系表 (97)EQLNUM 平衡区号数 (98)EQUALS 在目前的BOX中设置数组为常数 (99)EQUIL 平衡数据详述 (99)EXTRAPMS 对表的外插请求预告信息 (101)FIPNUM 流体储量区域号 (102)GCONINJE 对井组井/油田注入率的控制/限制 (102)GCONPRI 为“优先”而设的井组或油田产量限制 (104)GCONPROD 井组或油田的产率控制或限制 (104)GCONSALE 井组或油田的售气控制产率 (107)GCONSUMP 井组的气消耗率和引进率 (109)GCONTOL 井组控制目标(产率)允许差额 (110)GECON 井组或油田的经济极限数据 (111)GLIFTLIM 最大井组人工举升能力 (112)GRAVITY 地面条件下的流体密度 (113)GRIDFILE 控制几何文件网格的容量 (113)GRUPRIG 给井组配置修井设备 (113)GRUPTREE 建立多级井组控制的树状结构 (114)GSEPCOND 井组设置分离器 (115)IMBNUM 渗吸饱和度函数据区域号 (115)IMBNUMMF 基质—裂缝渗吸区域号 (116)IMPES 建立IMPES求解过程 (117)IMPLICIT 重建全隐式求解 (117)INCLUDE 包含数据文件名 (117)INIT 要求输出初始文件 (118)INRAD 径向模型的内径 (118)KRG 标定气相对渗透率的端点 (118)KRNUM 方向性相对渗透率表格数 (119)KRNUMMF 基岩—裂缝流动饱和度表号 (120)KRO 标定油相对渗透率端点 (120)KRW 标定水相对渗透率端点 (121)LOAD 调入一个SAVE文件以便执行一个快速重起动 (122)MESSAGES 重设置打印和停止限定的信息 (123)MINPV 设置活动网格的最小孔隙体积 (124)MINPVV 建立一个有效网格的最小孔隙空间 (124)MISCNUM 混合区数目 (125)MONITOR 请求实时显示输出 (125)MULTIPLY 当前定义区中的数组 (126)MULTR R方向传导率乘子 (126)MULTTHT THETA方向传导率乘子 (127)MULTX X方向传导率乘子 (127)MULTY Y方向传导率乘子 (127)MULTZ Z方向传导率乘子 (128)NEWTON 输出迭代计数到汇总文件 (128)NEWTRAN 标定使用块拐角传导率 (128)NEXTSTEP 建立下一时间步最大值 (129)NNC 非相邻连接的直接输入 (129)NOECHO 关闭输出的响应 (130)NOGGF 压缩网格几何模型文件 (130)NODPPM 非双孔的渗透率乘子 (130)NOWARN 压制ECLIPSE警报信息 (130)NTG 厚度净毛比 (130)OILAPI 初始原油API值,以便API示踪选择 (131)OLDTRAN 标定块中心传导率 (131)OLDTRANR 标定任意一块中心传导率 (131)OPTIONS 开启特别程序选择 (132)OUTRAD 径向模型外半径 (134)OVERBURD 岩石负载压力表 (135)PERMR R方向绝对渗透率 (135)PERMTHT θ方向绝对渗透率 (136)PERMX X方向绝对渗透率 (136)PERMY Y方向绝对渗透率 (136)PERMZ Z方向绝对渗透率 (137)PINCH 建立尖灭层上下的连接 (137)PINCHOUT 建立尖灭层上下的连接 (138)PMAX 模拟中的最大压力 (138)PMISC 与压力有关的可混性表 (138)PORO 网格孔隙度 (139)PORV 网格孔隙体积 (140)PRESSURE 初始压力 (140)PRIORITY 为井的优先级选项设置系数 (140)PRVD 原始压力与深度关系表 (142)PSEUDOS 为PSEUDO包要求输出的数据 (142)PVCO 含气原油PVT性质 (142)PVDG 干气的PVT性质(无挥发油) (144)PVDO 死油的PVT性质(无挥发气) (145)PVTG 湿气的PVT性质(有挥发油) (145)PVTNUM PVT区数目 (146)PVTO 活性油的PVT^性质(有溶解气) (147)PVTW 水PVT性质 (148)PVTWSALT 含盐的水PVT函数 (149)QDRILL 在钻井队列中安置井 (150)RESTART 设置重启动 (151)RESVNUM 对一给定油藏输入角点坐标数据 (153)ROCK 岩石压缩系数 (153)ROCKNUM 岩石压实表格区数 (154)ROCKTAB 岩石压实数据表 (154)ROCKTABH 滞后岩石压实数据表 (155)RPTGRID 从GRID部分输出控制 (156)RPTONLY 摘要输出的常规限制 (158)RPTPROPS 控制PROPS部分的输出 (158)RPTREGS 控制REGIONS部分的输出 (159)RPTRST 输到RESTART文件的控制 (159)RPTRUNSP 控制RUNSPEC部分的数据输出 (160)RPTSCHED 控制SCHEDULE部分的输出 (160)RPTSMRY 控制SUMARY部分的输出 (163)RPTSOL 控制SOLUTION部分的输出 (163)RS 初始溶解气油比 (165)RSCONST 为死油设置的一个常数Rs值 (165)RSCONSTT 为每一个死油PVT表设置的一个常数Rs值 (166)RSVD 用于平衡选择的RWJ深度关系表 (166)RUNSUM 所需的SUMMARY数据的制表输出 (167)RV 初始挥发油气比 (167)RVCONST 为干气设置的一个常数Rv值 (167)RVCONSTT 为每个干气PVT表设置一个常数Rv值 (168)RVVD 用于平衡选择的Rv与深度关系表 (168)SALT 初始盐浓度 (169)SALTVD 用于平衡的盐浓度与深度关系 (169)SAVE 用于快速重启文件而需输出的SAVE文件 (170)SCALELIM 设置饱和度表的标度限制 (170)SDENSITY 在地面条件的混相气密度 (170)SEPVALS 分离测试的Bo和Rs值 (171)SGAS 初始气饱和度 (173)SGCR 临界气饱和度的标度 (173)SGFN 气体饱和度函数 (174)SGL 原生气饱和度的标度 (175)SGOF 气/油饱和度函数与气饱和度 (176)SGU 最大气饱和度的饱和度表的标度 (177)SIGMA 双重孔隙基岩—裂缝的连结 (178)SIGMAV 双重孔隙度基岩—裂缝的连结(向量) (178)SLGOF 气/油饱和度函数与液体饱和度 (179)SOF2 油饱和度函数(2相) (180)SOF3 油饱和度参数(3相) (181)SOGCR 临界的气中含油饱和度的标度 (182)SOMGAS STONE1模型中含油饱和度最小值 (183)SOMWAT STONE1模型中最小油饱和度值 (184)SORWMIS 混相残余油饱和度数表 (185)SOWCR 标度临界水中含油的饱和度值 (186)SPECGRID 网格特性的详细说明 (187)STOG 油气表面张力与压力 (187)STONE1 三相油相对渗透率模型 (188)STONE2 三相油相对渗透率模型 (188)STOW 油水表面张力与对应压力 (188)SWAT 初始水饱和度 (189)SWATINIT 标定毛管压力的初始水饱和度 (190)SWCR 临界水饱和度的标度 (190)SWFN 水饱和度函数 (191)SWL 原生水饱和度的标定 (192)SWLPC 仅对毛管压力曲线标定原生水饱和度 (193)SWOF 水/油饱和度函数和对应的水饱和度 (193)SWU 饱和度数表中最大的含水饱和度的标定 (195)TBLK 示踪剂的初始浓度 (196)THPRES 门限压力 (196)TLMIXPAR Todd-Longstaff混合参数 (197)TNUM 示踪剂浓度区 (198)TOPS 每个网格的顶面深度 (198)TRACER 被动的示踪剂名 (199)TRACTVD 为示踪剂要求“流率极限传输” (199)TRANR R方向的传导率 (199)TRANTHT θ方向的传导率 (200)TRANX X方向的传导率 (200)TRANY Y方向的传导率 (201)TRANZ Z方向的传导率 (201)TSTEP 把模拟器推向新的报告时间 (202)TUNING 设置模拟器控制参数 (202)TVDP 初始示踪浓度与深度表 (204)TZONE 过度带控制选择 (205)VAPPARS 油挥发控制 (205)VEDEBUG 对垂向平衡和压缩垂向平衡选择控制调整 (205)VEFRAC 垂向平衡曲线系数的应用 (206)VEFRACP 垂向平衡拟毛管压力系数的使用 (207)VEFRACPV 垂向平衡拟毛管压力系数的使用 (207)VFPINJ 对注水井输入V.F.P表 (208)VFPPROD 对生产井输入V.F.P表 (209)WBOREVOL 对井筒贮存设置体积 (212)WCONHIST 历史拟合井观测产量 (213)WCONINJ 设有组控制的注入井的控制数据 (215)WCONINJE 对注入井控制数据 (217)WCONPROD 对生产井控制数据 (218)WCUTBACK 井减少限制 (220)WCYCLE 井自动循环开与关 (222)WDRILRES 防止在同一网格中同时开两口井 (222)WDRILTIM 新井自动开钻的控制条件 (223)WECON 生产井的经济极限数据 (224)WEFAC 设置井的效率系数(为停工期) (226)WELDEBUG 个别井的跟踪输出控制 (226)WELDRAW 设置生产井的最大允许压差 (227)WELOPEN 关闭或重开井或井的射开层 (228)WELPI 设置井的生产/注入指数值 (229)WELPRI 设置井的优先数 (229)WELSOMIN 自动开井的最小含油饱和度 (230)WELSPECS 井的综合说明数据 (230)WELTARG 重新设置井的操作目标或限制 (232)WGASPROD 为控制销气而设置的特别产气井 (233)WGRUPCON 为井组控制而给井设置指导产率 (234)WHISTCTL 给历史拟合井设置覆盖控制 (235)WLIFT 自动换管串和升举的开关数据 (235)WLIMTOL 经济和其它限制的容差分数 (236)WORKLIM 每次自动修井所花的时间 (237)WPIMULT 用给定值乘以井射开层地地层系数 (237)WPLUG 设置井的回堵长度 (238)WSALT 设置注入井的盐浓度 (238)WTEST 命令对已关着的井进行周期性测试 (239)WTRACER 给注水井设置示踪剂浓度 (240)ZCORN 网格块角点的深度 (241)1Eclipse 油藏模拟软件特点1.1Eclipse软件91年A版本的新进展概况详细说明见附录B11.新功能(1)提供了可供选择的通用的油PVT数据和饱和度数据的输入关键词;(2)对每一个PVT区设计了恒量Rs或Rv值;(3)分子扩散选择能模拟气的扩散和油的组份;(4)盐水选择能模拟不同矿化度盐水的流动。
MATLABappdesigner菜鸟进阶学习(⼀)⼀、App Designer启动1.打开⽅式(1)打开 App 设计⼯具的⾸页appdesigner(2)打开现有 App ⽂件appdesigner(filename)filename: App ⽂件的名称或路径,指定为字符向量或字符串标量。
可以在⽂件名中包括 .mlapp。
⼀次只能将⼀个⽂件名传递给 appdesigner 函数。
如果 filename 出现在搜索路径上的多个⽂件夹中,请包括该⽂件的路径。
⽂件指定必须使⽤⽂件的完整路径或相对路径,或者MATLAB 路径上的⽂件的名称。
⽰例: appdesigner('app1.mlapp') ⽰例: appdesigner("app1") ⽰例: appdesigner("C:\Documents\Data\watertables.mlapp")(3)菜单栏打开 新建——App2.⾸页 在⾸页中可以创建新的空⽩ App,或者新的具有⾃动调整布局功能的两栏式或三栏式 App,还可以:查看最近使⽤的 App 列表。
浏览精选⽰例以帮助快速⼊门。
参考指导教程,学习 App 设计⼯具的基础知识。
探索教程中重点介绍的 App 设计⼯具新功能。
2.1 常⽤组件2.1.1 下拉框 除了可以直接拖拽外,此处详注程序创建及编辑⽅式。
(1)程序⾃动⽣成下拉框 程序⾃动创建⼀个具有默认项⽬的下拉组件。
fig = uifigure;dd = uidropdown(fig);(2)程序创建下拉组件指定项内容。
fig = uifigure;dd = uidropdown(fig,'Items',{'Red','Yellow','Blue','Green'},...'Value','Blue');(3)创建可编辑的下拉列表fig = uifigure;dd = uidropdown(fig,'Editable','on');(4)属性Value - 值Items 的元素 | ItemsData 的元素 值,指定为 Items 或 ItemsData 数组的元素。
数学建模竞赛新手教程(1)--数模竞赛是什么数学建模竞赛,就是在每年叶子黄的时候(长沙的树叶好像一年到头都是绿的)开始的一项数学应用题比赛。
大家都做过数学应用题吧,不知道现在的教育改革了没有,如果没有大变化,大家都应该做过,比如说[树上有十只鸟,开枪打死一只,还剩几只],这样的问题就是一道数学应用题(应该是小学生的吧),正确答案应该是9只,是吧?这样的题照样是数学建模题,不过答案就不重要了,重要的是过程。
真正的数学建模高手应该这样回答这道题。
“树上有十只鸟,开枪打死一只,还剩几只?”“是无声手枪或别的无声的枪吗?”“不是。
”“枪声有多大?”“80-100分贝。
”“那就是说会震的耳朵疼?”“是。
”“在这个城市里打鸟犯不犯法?”“不犯。
”“您确定那只鸟真的被打死啦?”“确定。
”“OK,树上的鸟里有没有聋子?”“没有。
”“有没有关在笼子里的?”“没有。
”“边上还有没有其他的树,树上还有没有其他鸟?”“没有。
”“有没有残疾的或饿的飞不动的鸟?”“没有。
”“算不算怀孕肚子里的小鸟?”“不算。
”“打鸟的人眼有没有花?保证是十只?”“没有花,就十只。
”“有没有傻的不怕死的?”“都怕死。
”“会不会一枪打死两只?”“不会。
“所有的鸟都可以自由活动吗?”“完全可以。
”“如果您的回答没有骗人,打死的鸟要是挂在树上没掉下来,那么就剩一只,如果掉下来,就一只不剩。
”不是开玩笑,这就是数学建模。
从不同的角度思考一个问题,想尽所有的可能,正所谓的智者千虑,绝无一失,这,才是数学建模的高手。
然后,数学建模高手的搭挡----论文写作高手(暂称为写手吧),会把以上的思想用最好的方式表达出来。
一般的写手会直接把以上的文字放到论文里就成了。
但是专职的数学建模论文的写手不会这样做,她们会先分析这些思想,归整好条理;然后,她们会试着用图画来深入浅出的表达这些思想,或者再使用一些表格;这些都是在Word中进行,当然,如果有不喜欢Microsoft 的朋友或是国粹主义者喜欢用WPS什么的当然也可以。
她们都是这一行的专家,相信Word 什么的使用技巧,都够她们写一篇论文的了。
她们不一定会打字,但是输入公式的速度确是一流的。
她们一定会用一种画图软件,不管是Visio还是SmartDraw,她们都会用来明确而清晰的表达自己的思想。
好了,有了思想,也有了表达思想的人,还少一样东西----实现。
屈原老哥就有那么多的怀疑与问题,作为数学建模竞赛的评委当然也不是好骗的,不会那么容易的相信高手们的话。
所以要一个编程高手实现之(暂称为程序员吧)。
就上面所说的问题,程序员会编一个仿真的程序,实现以上所有的情况。
这个程序是这样子的,他对以上所提的每一个选项提供了选择接口,比如说,我们可以选择枪的声音的分贝数,可以从80到100分贝调节,或者干脆从0到200db均可,调节方式是无级变速方式,当然,电脑太慢,在遍历的时候可能要指定步长,嘿嘿,所以,最好买个好电脑,CPU一定不要用赛扬的,要用奔腾的,另外,为了程序员的安全,还要用液晶的显示器,要有UPS不间断电源,要有健康的座椅.....哈哈,扯远了。
仿真程序会尽一切可能按实际所限制的条件遍历所有的情况,看一看还剩下几只bird。
当然,这也不是实践。
真的做的绝的,会跑去烈士公园做实验,当然得拿一把枪,可以拿塑料子弹枪。
烈士公园离我们学校(路过就读于东点军校)很近,就在南门嘛。
那儿有一个地方养了很多鸽子。
虽然不能保证刚好10只鸽子,也不能保证刚好都在树上,但也可以将就着做实验,然后根距实验条件做一些修正。
哈哈,这样就完美了....把实践结果与仿真结果、理论结果做比较,再修改理论、仿真程序、论文,再做实验、做仿真,再比较,再修改,递归到时间的完结。
---------------------------to be continue------------------------------数学建模竞赛新手教程(2)--分工与合作我们应该如何分工?传统的标准答案是----数学,编程,写作。
但是对于每一个参加过数学建模竞赛的同学来说,感悟各不相同,所以答案也各不相同。
下面就是我的一家之言,有经验的朋友也可以一起讨论一下。
分工不用那么明确。
但有个前提是大家关系很好。
不然的话,很容易产生矛盾。
提醒一点,在搞竞赛的那几天,睡不好觉,心情急躁,很容易与搭档们发生冲突。
分工太明确了,会让人产生依赖思想,不愿去动脑子。
假如写手只是实现一个打字员的功能,把数模高手的思想表达出来,那是不够的,写手要有自己的思想,能够检查对方的错误,能够提出自己的思想。
按我的想法,理想的分工是这样的。
数学建模竞赛小组中的每一个人,都能胜任其它人的工作,就算小组只剩下她(他)一个人,也照样能够搞定数学建模竞赛。
在竞赛中的分工,只是为了提高工作的效率,做出更好的结果,并不是由于能力不适合做别的工作。
我一直都这么认为,只有能够独当一面的人,才能更好的与他人合作。
其实想想也应该是这样的,在以后的学习、工作、研究中,数学能力、编程能力、论文写作能力,哪一项是可以缺少的呢?当然,现实并非如此。
我们很难找到三个这样的人凑到一起。
所以,凑合着用吧,我给一点儿建议。
三个人中,一定要有一个人脑子比较活,善于思考问题,这个人,嗯,免强归于数学方面吧;一定要有一个人会编程序,能够实现一些算法。
这就够了,另外需要有一个论文写的比较好,不过写不好也没关系,也可以学嘛,多看一看别人的优秀论文,多用几次Word ,Visio就成了。
(强烈推荐一篇论文《Word在论文写作中的技巧》,这篇文章我这儿有,不过怎么让大家看到呢?待我想想,网上应该能搜到吧)。
说到看论文啊,我真是觉得,优秀的论文就像《九阴真经》一样,看了之后会让你功力大增的。
大家一定要多看,特别是想在数学建模竞赛中取得好成绩的朋友。
看过论文之后,明白的不仅仅是论文要怎么写,也在同时学到了作者的思考方式。
我建议,有决心的朋友不如背几篇优秀论文。
常常有人问,搞数学建模竞赛是不是需要我学习很多知识啊?比如《图论》、《概率论》、《神经网络》、《组合数学》、《小波分析》、《泛函》、《最优化》.....我的回答是,一门都不用,甚至连高等数学都可以不学,有我么多时间去学这么多课程,还不如把时间拿来去看懂别人的论文呢。
很多优秀的论文,其高明之处并不是用了多少数学知识,而是思维比较全面、帖合实际、能解决问题或是有所创新。
有时候,在论文中可能碰见一些没有学过的知识,怎么办?现学现用呗,在优秀论文中用过的数学知识就是最有可能在数学建模竞赛中用到的,你当然有必要去翻一翻啦。
有些同学觉得,参加数学建模竞赛的目的就是为了提高一下自己的数学水平,或是别的水平,我不以为然。
既然参加数学建模竞赛,其目的就应该是,而且是强烈的目的,去拿一等奖。
这样,会取得好成绩的。
分工就说到这儿,下面讲合作。
合作真的很难,哈哈,我也没心得。
上次合作做数模,我差点儿被气爆了,可能是我耐性不够吧。
我只能说一句话----以大局为重。
我想,如果合作者中有一个是小mm,肯定就不一样了吧,希望大家合作愉快!---------------------------to be continue------------------------------数学建模竞赛新手教程(4)--实战在竞赛开始的前一天,我和两位搭挡就开始往招待所里面搬运必要的作战武器了。
列个清单吧:>数学手册一套(5册)每一册都有一个拳头那么厚>高等数学教科书(东点军校出版),概率论(复旦大学),数值分析(东点军校),Matlab的一些参考书,C语言教程(谭浩强的那本),等等等等>三台自己的电脑,都是赛扬533、566之类的配置,且均有网卡、UPS不间断电源及网线(当时用的是同轴电缆),一个Modem。
软件有Matlab,VisualC++,Microsoft Word,Windows 2000操作系统(当时还没有学会Visio,其它软件好像就没有什么了)>从学院的机关里借了一台HP的Lasier Jet6.0打印机>.......这么多东西当然不是人力所能承受的,还好学校给了辆不大不小的车。
一却准备就绪,我们就入住了学校南门外的招待所里(以前条件一般,具说现在已经改建的上档次了哈哈,一般人住不上)。
老师告诉我们第二天早上8:00从网上Down题目,但不知道是谁传来了一个消息,说晚上题目就有可能从网上上着。
于是整个晚上我们都没有睡安稳,时不时上一下网,看一看能不能下载赛题了。
太是最终还是在第二天早上8:00才搞到题目/:)数学建模竞赛一般有三道题目,其中有两道是本科组的,两道是专科组的。
专科组与本科组有一道题是相同的。
题目分别是:血管的三维重建,公交车调度问题。
这两道题得选一道做。
选哪一道呢?仔细研究了一下,我们发现,公交车调度是一个最优化的问题,而血管的三维重建偏重于算法。
与是我们三人毫不犹豫的选择了血管的三维重建。
附带说一句,原因是什么呢?因为我们曾在一年前也做过一个最优化的问题,那一次是钢管运输问题,做的奇差,于是大家心有余悸,尽量不选这类题目。
(下面附上此题目)==============================================================题目见此帖:/newbbs/dispbbs.asp?boardID=3&ID=87===============================================================血管的三维重建,遇见的第一个困难就是----怎么把这些bmp的图像给读进来,存为二进制的矩阵?一开始,我们去图书馆找到了《bmp文件格式》的书,准备利用C程序把bmp给读出来。
刚准备着手去做的时候,我们却意外的发现Matlab中有现成的函数imread可以使!真是天助我也,马上把所有100张bmp图片给读了进来,把每一个切片图的bmp文件转化为一个512×512的0,1矩阵。
并利用save函数,打开ASCII开关,把每一个矩阵存都存为了txt的文档。
这样,C程序就可以直接使用了。
在上面的过程中,我们发觉题中给的bmp的命名不太好,它是从0 ,1 ,2......到99的,我们把这些名字改为了01,02,03,04,....99,把所有的文件名都改成了两位的,方便操作。
接下来就是如何得出结果了。
首先我们在图书馆里查了很久,看有没有论文解决相类似的问题。
不但要查中文的,还要查英文的。
顺便说一句,英语真的很重要,在网上,英文更是当之无愧的霸主,想利用网络查找资料,英语不好则寸步难行。
我们发现了医学上的CT成像技术有可以借鉴的地方。
这些资料不一定有用,但能够很好的开拓我们的思路,花时间在上面是值得的。