数学建模的方法:
一、机理分析法:根据对客观事物特性的认识从基本物理定律以及系统的结构数据来推导出模型。
二、数据分析法:通过对量测数据的统计分析,找出与数据拟合最好的模型
三、仿真和其他方法。
1、计算机仿真:实质上是统计估计方法,等效于抽样试验。包括离散系统仿真和连续系统仿真。
2、因子试验法:在系统上作局部试验,再根据试验结果进行不断分析修改,求得所需的模型结构。
3、人工现实法:基于对系统过去行为的了解和对未来希望达到的目标,并考虑到系统有关因素的可能变化,人为地组成一个系统。
数学建模的步骤:
一、模型准备:了解问题的实际背景,明确建模目的,搜集必需的各种信息,尽量弄清对象的特征。
二、模型假设:根据对象的特征和建模目的,对问题进行必要的、合理的简化,用精确的语言作出假设。
三、模型构成:根据所作的假设分析对象的因果关系,利用对象的内在规律和适当的数学工具,构造各个量间的等式关系或其它数学结构。
四、模型求解:可以采用解方程、画图形、证明定理、逻辑运算、数值运算等各种传统的和近代的数学方法进行求解。
五、模型分析:对模型解答进行数学上的分析。
数据库建立过程包括六个主要步骤:
1.需求分析:了解用户的数据需求、处理需求、安全和完整性需求。
2.概念设计:通过数据抽象,设计系统的概念模型,一般为e-r模型。
3.逻辑结构设计:设计系统的模式和外部模式,特别是关系模型的基本表和视图。
4.物理结构设计:设计数据的存储结构和访问方法,如索引的设计。
5.系统实现:组织数据存储,编写应用程序,试运行。
6.运维:系统投入运行,进行长期维护。
扩展资料:
数据库设计技巧:
1.原始文档与实体之间的关系
它可以是一对一、一对多、多对多。一般来说,它们是一对一的关系:也就是说,原始文档只对应于一个实体,而且只对应于一个实体。在特殊情况下,它们可能是一对多或多对一的,其中一个原始文档对应多个实体,或者多个原始文档对应一个实体。
这里的实体可以理解为基本表。在明确了这些对应关系之后,这对于输入接口的设计是非常有益的。
2.主键和外键
通常,实体不能同时没有主键和外键。在e-r关系图中,叶中的实体可以定义主键,也可以不定义主键(因为它没有后代),但是它必须有外键(因为它有父键)。
主键和外键的设计在全局数据库的设计中起着重要的作用。当全球数据库的设计完成后,一位美国的数据库设计专家说:“钥匙,钥匙无处不在,只有钥匙”,这是他的数据库设计经验,也是他高度抽象的信息系统核心思想(数据模型)的体现。
因为:主键是实体的高度抽象,主键和外键对,表示实体之间的连接。
3.基本表的属性
基表不同于中间表和临时表,因为它有以下四个特点:
原子性。基表中的字段没有分解。
原始性。基表中的记录是原始数据(底层数据)的记录。
先验性。所有输出数据都可以从基表和代码表中的数据派生出来。
稳定。表的基本结构比较稳定,表中的记录保存时间较长。
一旦理解了基本表的性质,就可以在设计数据库时将它们与中间表和临时表区分开。
建立数据模型
1、建立实体联系模型
11、实体联系模型的基本构成
实体联系(ER)数据模型所采用的三个主要概念是:实体集、联系集和属性。
实体集是具有相同类型及相同性质(属性)的实体集合。联系集是指同类联系的集合。
在ER模型中,用矩形框表示实体集(矩形框中写上实体名),用椭圆表示属性(椭圆中标上属性名),实体的主码用下划线表示。实体集之间的联系集用菱形表示,并用无向边与相关实体集连接,菱形中写上联系名,无向边上写上联系集的类型。
实体集之间的联系类型有一对一,一对多,多对多
12、多元联系
在ER模型中,可以表示两个以上实体集之间的联系,称为多元联系。
一个多元联系集总可以用多个不同的二元联系集来替代。考虑一个抽象的三元联系集R,它联系了实体集A、B、C。可引进一实体集E替代联系R,然后,为实体集E和A、B、C建立三个新的二元联系集,分别命名为RA、RB、RC。可以将这一过程直接推广到n元联系集的情况。所以,理论上可以限制E R模型中只包含二元联系集。
13、联系的属性
联系也可以具有单独的属性。
14、自身联系
在一个联系中,一个实体集可以出现两次或多次,扮演多个不同角色,此种情况称为实体集的自身联系。一个实体集在联系中出现多少次我们就从联系到这个实体集画多少条线,到实体集的每条线代表该实体集所扮演的不同角色。
15、子类和Is-a层次联系
在信息世界中,常常需要描述这样的实体集A,A属于另一实体集B。A中的实体都有特殊的属性需要描述,并且这些特殊属性对B中其他的实体无意义。在ER模型中,称A是B的子类,或B是A的父类。两类实体之间存在一种层次联系——Is-a(属于)。
如果A和B存在Is-a联系,则A中的每个实体a只和B中的一个实体b相联系,而B中的每一个实体最多和A中的一个实体相联系。从这个意义上说,A和B存在一对一的联系。但事实上,a和b是同一事物。A可以继承B中的所有属性,又可以有自己特殊的属性说明。用来区分A的主码也就是B的主码。
2、ER模型向关系模型的转化
ER模型是概念模型的表示。要使计算机能处理模型中的信息,首先必须将它转化为具体的DBMS能处理的数据模型。ER模型可以向现有的各种数据模型转换,而目前市场上的DBMS大部分是基于关系数据模型的, ER模型向关系数据模型的转换方法
关系模型的逻辑结构是一系列关系模式(表)的集合。将ER模型转化为关系模式主要需解决的问题是:如何用关系表达实体集以及实体集间的联系。
ER模型向关系模型转换的一般规则和步骤:
(1)将每一个实体集转换为一个关系模式,实体集的属性转换成关系的属性,实体集的码即对应关系的码。
(2)将每个联系集转换成关系模式。对于给定的联系R,由它所转换的关系具有以下属性:
联系R单独的属性都转换为该关系的属性;
联系R涉及到的每个实体集的码属性(集)转换为该关系的属性。转换后关系的码有以下几种情况:
· 若联系R为1∶1联系,则每个相关实体的码均可作为关系的候选码;
· 若联系R为1∶ n联系,则关系的码为n端实体的码;
· 若联系R为m∶ n联系,则关系的码为相关实体码的集合。
有时,联系本身的一些属性也必须是结果关系的码属性。
(3)根据具体情况,把具有相同码的多个关系模式合并成一个关系模式。
在前期项目的工作基础上,我们总结了大量的建模经验、教训,并结合地质专业技术人员的专业指导,针对华北平原地区的特点,提出一套建模流程。根据其构建流程,有条不紊地完成建立模型,模型制作的流程:
(1)数据的收集、整理与检查。包括剖面数据的预处理,钻孔数据的预处理,以及剖面数据与钻孔数据的配准等工作。并且通过Mapgis格式的华北地区底图,提取出地表离散点信息。此外,搜集了渤海地区的海底数据。
(2)数据导入到建模系统软件中,进行模型构建。将剖面数据、钻孔数据、地表离散点数据以及渤海海底数据等,导入到工区中,按照一定的建模顺序依次建立各模型元素。
(3)根据导入的数据,理清其对应的关系,依序建立各种地质体。按照上面建模过程中生成的地质元素,建立地质体模型。
(4)检查与校验。检查、校验所建立的三维可视化模型,如果发生错误,重复前面的步骤,进行模型的修改工作。
(一)导入剖面数据
剖面是地质专业人员根据工作要求,依据钻孔信息绘出的地层断面图,需要说明的是,剖面图也许不是地质情况的真实反映,但它包含着技术人员的推理和经验,可以说是地层情况最接近真实的反映。剖面图的存放格式,由于各技术队伍作图采用软件不同,图形存放的文件格式也不尽相同,主要有MAPGIS图形数据格式和AUTOCAD图形数据格式。本系统的数据输入可留出这两种图形文件数据接口。具体地说,若是MAPGIS图形格式,采用把图形数据转换成MAPGIS明码文件文本数据格式,再读入系统进行复原即可。若是AUTOCAD图形数据格式,可把DWG图形文件格式转换成DXF标准图形文件格式,读入系统即可。还可把MAPGIS和AUTOCAD两种图形文件混合输入。例如需在剖面图上添加岩性颜色,即可在MAPGIS中调用剖面,做岩性颜色区文件,再输出MAPGIS明码文件,可很好地解决剖面图剖面数据输入问题。对于三维建模系统来说,这种方式可很好地解决地下各含水层的表达问题。
MAPGIS明码文本文件包括两种文件,即WAL和DXF文件,WAL文件记录了测线的名称、段数和测点坐标等信息,DXF文件记录了剖面上的点和线等内容信息。通过读入这两种文件和一些变换便可以导入剖面信息,将剖面立在工区中(工区用来在三维地质体中划定一个待研究的区域,它是一个立方体,有一个顶面、一个底面及四个侧面。用户关心的所有地层、断面等都将包含在这个立方体中。)。从WAL文件中读出剖面线上每个点的位置信息,每两个相邻的点可以确定一个面。图5-93为剖面导入到工区中的情况。
将剖面信息导入后,用户便可以观察剖面上的各种信息,并对进行分析。剖面是生成地层、断层、透镜体等的主要数据源之一,用户要从剖面上拾取地层线、断层线、透镜体线用于在后面生成各种地质元素,并且可以根据地质专家的要求对这些线信息进行增加、修改、删除等编辑 *** 作。
图5—93 剖面导入到工区中
1拾取断层线
拾取断层线时,首先在树节点上选定一个剖面,选择拾取断层线功能,便可以用鼠标左键在剖面上拾取合适的线用来控制生成断层,拾取完后要指定所拾取折线所属的断层。同样,可以完成在剖面上增加一个断层线的功能,增加断层线时要根据专家的意见,合理增加,以便更好的控制断层的生成。当我们选中一个断层线时,可以对它进行编辑 *** 作。如图5—94。
2拾取地层线
在拾取地层线时,首先在树节点上先选定一个剖面,然后旋转观察各个剖面上的信息,以便确定哪些线属于同一个地层,确定后再对剖面上的线进行拾取。拾取完成后,要设置每一条线所属的地层,以便后面生成地层时进行识别。同样,可以完成在剖面上增加一个地层线的功能,增加地层线时要根据专家的意见,合理增加,以便合理的控制地层的形态。由于剖面图是在平面上绘制的,这样就会有一定的误差,表现在导入的剖面上,相同的地层线不能吻合,这样就会对生成的地层产生影响,需要进行一定的编辑。系统按照需要提供了这样的功能,首先在树上选中一条地层线节点,并选择编辑地层线功能,便可以完成对地层线的编辑 *** 作。如图5—95。
图5—94 拾取断层线
图5—95 拾取地层线
(二)导入钻孔数据
钻孔数据主要包括钻孔各地层深度、岩性、所属时代等与地质结构相关的内容。钻孔数量有240多个,主要分布在黑河流域平原区。钻孔数据已装订成册记录,为符合建模数据的要求,把钻孔全部录入到地下水资源数据系统Access数据库Gwexplore中。钻孔数据是地质技术人员在野外钻探现场记录并整理的第一手技术资料,它对于模型的生成起直接或间接校正的作用,因此,要对钻井数据进行充分利用。我们实现了对断层钻点、地层钻点以及透镜体钻点的加载和编辑功能。
1导入钻孔数据
导入钻孔数据时,首先切换到钻孔模型树下,选中“钻孔集”根节点,然后选择将导入的钻孔数据文件,连接数据库。完成了数据库的连接之后,用户可以选择导入所有钻孔或单个钻孔信息,这样就将钻孔信息加载到了工区中。同样,用户也可以选择断开与钻孔数据源的连接。如图5—96。
图5—96 导入钻孔
2编辑钻孔数据
导入了钻孔信息后,用户可以对钻孔进行一些编辑 *** 作。首先在屏幕上选择一个钻孔,如果该钻孔信息不符合实际情况,点击右键将该钻孔删除。
导入了钻孔数据后,选择一个钻孔,用户便可以在该钻孔上添加钻点信息,并设置该钻点所属地质元素类型,即断层、地层或透镜体,并且制定所属地质元素的名称,如图5-97,创建了一个钻点,并指定该钻点信息属于地层“第四含水层”。创建的钻点将严格控制地质元素的生成。
图5—97 创建一个地层钻点
(三)地表建模
1地表的生成
生成地表的主要数据是地表离散点数据,地表离散点数据由ARCINFO格式数据转换而来。组成等高线的平面线段与它的高程值一一对应,这样,就有了地表的三维坐标集。系统输入时,读入组成等值线的各个点,即读入各个线段的点,结合线段所对应的高程值,就形成了生成模型所需的离散点,系统使用这些离散点进行插值,生成地表。由于数据较多,这样离散点的密度也大,以MAPGIS明码文件存放的数据容量达到150多兆,如果把这些数据都输入到系统中,插值生成地表面,那么生成地表面的小三角形数量将会相当大,占用过多的计算机资源,对后续模型的构建影响很大。同时,生成地表面时速度慢,效果不理想。因此就需要对这些离散点进行抽稀处理。抽稀的效果是减少等值线上的点的数量,由于等值线上有大量的点存在,按比值抽稀不会对它的精度造成影响。抽稀后,生成模型所需的离散点密度降低,离散点的数量减少,系统生成地表面时速度加快,地表面的平滑度提高。对于地表面的一些坏点,如高程值过高或过低的点,即高程高于地表最高点,或高程低于地表最低点的高程,这些点是由于误差或数据转换时造成的,使用这样的点插值,就会造成地表面的起伏变化剧烈,地表面粗糟不平,影响地表面的光滑度。因此,对于这样的点需要在输入系统时进行剔除处理,即在系统输入模块中,采用门槛值进行限制,过高或过低的点剔除,不让其参与建模。
将处理后的离散点数据导入到工区中作为控制点,采用DSI插值技术生成三角网,用这个三角网来描述地表的形态。
2加载地表信息
(1)地理信息数据。地理信息数据包括河流、铁路、公路、湖泊、城市等点、线、面图元信息,这些信息对于增强三维可视化模型的内涵、增强模型的展示效果具有积极的作用。每项地理信息数据读入后,采用OpenGL技术来实现这些图元在三维模型中的显示状态,同时给出对应的属性信息内容。但建模系统目前不做GIS方面的分析功能,留待后续开发时进行功能增强。
(2)遥感影像。地表网格剖分完成以后,系统采用OpenGL的纹理映射技术,将卫星影像贴到地表,这样使整个模型看起来更加真实,效果更好。为减少内存占用量,卫星影像在保证可视化分辨率的前提下,转变为位图图像格式(bmp)读入。
为了使遥感影像与生成的地表网格贴合得很好,位置更准确,系统采用三点坐标定位的方法对进行校正。校正的方法是从上选取三点,确保这三点不在同一条直线上,将它们分别记作P1、P2和P3,用户要知道这三点的真实坐标值,为此可以选那些具有标识性的地理位置点。我们设贴到地表上时这三点的坐标为Old_P1、Old_P2和Old_P3,而输入的真实坐标为New_P1、New_P2和New_P3,依据最小二乘原理可以得到一个变换矩阵M。
用矩阵M对的四个顶点进行变换,即可以得到校正后的。图5—98是加载了地理信息和遥感影像的地表。
图5—98 加载信息后的地表形态
3网格大小的确定
模型所建的地质体如地表、地层、断层和透镜体等都是由网格相连构成面,面相包而组成体。构成模型的最小单位是小三角形,三角形的数量多少对模型的精度、系统运转的快慢有直接的影响。
一般来说,生成模型的三角形网格过大,则模型面比较粗糙,模型不精细,甚至不能表现面的形态特征,网格过小,则网格的密度大,对这些三角形运算需占用大量的系统资源,使计算机处理的数据量剧增,从而使机器运行速度慢,如果离散点数据量过多或过少,则会使模型面较复杂,不能表现模型面的总体特征。因此,在构建模型时,需要选择合适的网格大小。
经过实践,地表的网格大小选用50~200m的格网间距较好,机器速度和表面光滑度能达到协调统一。一般在模型初建中,选用200m的格网间距,机器速度快,如果需要对建模区域进行分割,如黑河流域模型,则在小盆地模型构建完成后,选用50m格网间距进行地表面生成,使地表面比较精细。
地层和断层由于使用剖面图上的线段进行建模,系统会自动在这些线段上加密离散点,选用100~200m的格网间距,对地层和断层的生成影响不大,精细度也符合要求。透镜体由于其面积小,对精度要求适中,因此网格大小选用50~100m的格网间距即可满足需要。
对于栅格数据,如遥感影像,其空间分辨率可根据模型显示的精度调整像素的大小。一般100~300dpi 即可。可根据需要把精细的具有800多兆的遥感影像生成BMP、JPG等图形格式,达到保证像素精度和减少内存占用量的需要。
(四)断面建模
1断面的生成
在断面建模之前,要先导入剖面图和钻孔以及断层线等信息。根据导入的剖面图、断层线和钻孔信息,来生成模型的断层。生成断层有两种方式,即根据剖面上的断层剖面线和根据离散点数据生成。
将剖面导入三维建模软件系统之后,对剖面上的断层线进行分析,选定属于相同断层的剖面断层线,然后进行剖分、插值生成断层。如图5—99所示。
图5—99 根据剖面上的断层线生成断层
通过导入的离散点也可以生成断层,或者在钻孔导入三维建模软件系统之后,通过在孔轨迹上指定断层上的钻点,然后通过剖分、插值生成断层。如图5—100所示。
图5—100 根据离散点生成断层
2断面的编辑
断层生成之后,根据需要可以编辑断层边界和使用控制点编辑断层,改变断层面的形状,还可以通过修改属性框中的内容来编辑断层的属性等。如图5—101所示。
图5—101 根据离散点生成断层
对地质体中的信息进行修改是重要的功能之一。课题组地质体模型的数据结构中,输入可以是点集合和折线集合,但是折线集合也被示为有序点的集合。所以,对于点的编辑和修改是所有编辑和修改的基础。由于一般图形平台中很难解决计算机图形学中的一个基本问题即“坐标变换”的深度问题,所以只能依赖于生成的三角网格面,实现沿着面和垂直面两个方向的空间点的“位置坐标”编辑,即标量编辑。采用标量编辑,解决了“坐标变换”的深度问题,实现了不依赖于三角网格面的空间点编辑。
此外,还采用了“三维空间矢量点”的编辑功能。“三维空间矢量点”是指工区种的三维点不仅含有“位置坐标”的概念,还赋予每个点一个“方向矢量”。这样,很容易对空间点进行方向上的编辑功能,我们称谓“三维空间矢量点编辑”。本系统中多处采用了这种编辑功能,例如断面上控制点的编辑、地层上控制点的编辑、光源矢量的编辑等。光源矢量的编辑效果如图5-102所示。
图5—102 光源矢量编辑功能
3定义断面关系
在建模时,对于工区中相交的两个断层,需要确认它们的相交关系,即哪一个是主切面,哪一个是被切面。通过定义它们的关系,实现主断层面剪切辅断层面的功能。在定义主断层面时,一般选择相对较高且长度大于被切断层面在其上的投影面的断层面,这样选择的要求可使系统较快地构建断面网格。
断层主辅关系定义之后,选择“更新断层”功能,生成切割后的断层。图5—103所示为定义断层关系之后重新生成的断层效果。
图5—103 定义断层关系
(五)地层面建模
1地层面的主要内容
三维地质构造模型中的地层,是由地层中的若干图元和图元集合组成,包括:
(1)地层顶面:是由已知的地层数据离散点拟和出的地质曲面。
(2)地层离散点集合:是地层等值线上的离散点。
(3)地层井点集合:是钻井钻探到的地层顶面上的井分位点。
(4)地层控制点集合:是用户在建模过程中手工可以添加到模型中的点,这些点在地层生成过程中会对地层形态起约束作用,用户可以通过编辑这些点,来改变地层的形态。
(5)地层上的断层线集合:是地层顶面被各个断层切割出的断层线的集合。
(6)地层等值线集合:是按照地层顶面深度在地层顶面上画出的等值线集合。
(7)地层断块:是地层被断层切割撕裂后形成的有顶有底有围边的封闭地质体。
我们建模时就是要根据这些数据来具体构建地层面。地层与地层之间可以相交,这导致地层形态变得复杂。有时某个地层会在与其他地层相交处缺失,从而出现所谓尖灭、侵入体和透镜体的现象。下面我们将具体针对每一种地层现象具体讨论其建模方法。
2层状地层
层状地层是地层形态中最简单的一种,既没有裂口、也不与其他地层切割,仅是一个单独的曲面。在这种情况下可以使用简单的剖分与插值算法来构造地层面。具体来讲,就是经过简单的三角剖分得到其三角网格,然后从已有离散点数据及剖面中的地层线数据中提取到离散点集合,以此作为依据对三角网格中的每个顶点进行插值,得到具有起伏形态的地层面。这里我们采用的生成连续曲面的方式是通过将平面细化为网格后,将三角网格的顶点插值生成曲面。曲面的光滑和精细程度由网格的密度决定。
根据如上的特点设计了复合法表示曲面的形式,即以矩形网格作为计算曲面,以三角网格作为显示曲面,由两种网格协作,共同表示连续曲面。矩形网格和三角网格表示同一个曲面,矩形网格用于查询计算,表示的曲面比实际曲面要大,因为只作为背景网格不参与显示,不关心曲面的边界。
3透镜体状地层建模
透镜体的生成有两种方式,即根据导入的物探等值线数据生成透镜体,也可以根据剖面上的透镜体线图元生成透镜体。透镜体顶面生成后,需要编辑透镜体尖灭线改变透镜体的大小,使用控制点调整透镜体形态,可以通过修改属性框来编辑透镜体的属性、提取透镜体表面等值线图等功能。
(1)生成透镜体顶面。生成透镜体首先需要生成透镜体顶面,根据导入的等值线离散点数据进行离散点化处理,然后进行限定剖分和插值或者剖面线图元可以生成透镜体顶面。如图5—104所示为通过在剖面上选择剖面线图元生成透镜体顶面。
(2)定义透镜体尖灭线。透镜体顶面生成之后根据实际的数据信息,可以定义透镜体的大小。通过在顶面上定义透镜体尖灭线来设置透镜体的大小。如图5—105所示:
(3)生成透镜体。透镜体尖灭线定义之后,可以生成透镜体。对生成的透镜体可以通过属性框来设置其属性信息,包括其显示方式、颜色、图元大小等与可视化显示及参数有关的属性项。图5—106所示为生成的透镜体。
(4)透镜体的编辑。系统自动生成的透镜体,有时不可能完全准确地表达实际的形态特征,需要对其上顶面或下底面添加控制点加以调整,通过人为的方式改变控制点的空间位置。重新生成透镜体,让控制点参与透镜体上下面的重新生成,则可以较好地改变透镜体的局部形态。
图5—104 生成透镜体顶面
图5—105 定义透镜体尖灭线
图5—106 生成的透镜体
具体的 *** 作是打开地质模型树窗口内的需要编辑的透镜体上、下面的“控制点集合”节点,然后选择主菜单“透镜体”下的“编辑控制点”功能项,通过鼠标在透镜体面需要调整的位置添加控制点,然后对添加的控制点进行编辑,重新生成透镜体,透镜体的形态即发生更改。
(5)透镜体顶底面等值线的提取。透镜体生成后,可以提取它的顶面和底面的等值线。
*** 作时,选定要提取等值线的透镜体上面或下面树节点下的“等值线集”项,选择主菜单“透镜体”下的“生成等值线”菜单项,即可提取该面的等值线。等值线的间距、标注高程、间隔、等值线颜色由技术人员在属性框中自己定义。
4侵入体状地层建模
若两个地层出现侵入体现象,则会在其中一个层面上出现闭合的“洞”,我们的剖分算法可以处理这样的情形。
在地下水地质结构中,存在着很多侵入岩的地质结构,是由于深部岩浆向上运移,侵入围岩而未到达地表所形成的蘑菇状、脉状等形态岩体,对这类地质体,建模时需具体分析,具体对待。但有相同一点,它们都可看作是非层状模型,当作一个小的子地质体,对这个子地质体进行建模,然后读入总模型中,即可实现模型的整体显示。地质体的建模将在下一节具体介绍。
5地层的编辑
地层面生成后,根据实际需要编辑地层上的控制点来局部改变地层面的形状,还可以通过修改属性框内容来编辑地层面的属性。
地层面生成后,不可能完全准确地表达地层的凸凹起伏状态,需要添加地层控制点加以调整,用人工拖动的方式改变控制点的位置,之后,让控制点参与地层面的重新生成,可以较好地改变地层面的局部形态。如图5—107所示。(a)图中使用了“三维空间矢量点编辑”功能。
图5—107 地层面编辑
6定义地层间关系
地层面在与断层相交之后,地层在和断层相交的地方要发生移动,形成断裂的地层。断裂地层的生成可以通过自动生成和人工设置两种方式实现。自动生成是三维建模软件系统根据断层两侧的地层离散点空间分布自动计算出两侧的变形量,图5—108即为自动生成的断裂地层:
图5—108 自动生成撕裂的地层
人工设置是通过人为设定断层的断距大小和变形方向生成断裂的地层。图5—109所示为人工设置生成断裂的地层。
图5—109 人工生成断裂的地层
7生成地层等值线
地层面生成后,三维建模软件系统可绘制用户指定含水层顶面/底面的等值线,此功能可以有效地解决等值线跨越断层的问题,绘制等值线结果可以以用户认可的形式提交给用户。该功能对于工程应用是一项很实用的功能。
对指定的地层选择“生成等值线”功能项,即可提取该地层的等值线。等值线的间距、标注间隔、等值线颜色由技术人员在属性框中自己定义。如图5—110所示。
(六)地质体建模
本算法是在已知地层面和断层面的情况下,采取变形场的方法来构造地质体。根据变形场建模的思想,所有的地质元素都是在逐步断裂的情况下,形变达到当前的形态的,所以地质体的围边也是由初始的形态变形而成的。初始状态的地层与断层面相交形成的围边具有形状简单的特点,一般情况只有四个拐点,初始地层面的围边易于求解,所以可以采用通常的方法求得初始地层的围边,然后将变形场逐级作用于初始围边,就可以得到当前状态下地层体的围边了。生成地层的具体算法如下:
图5—110 地层面等值线提取
(1)首先构建地层初始网格,及地层的初始外围边网格;
(2)按断裂顺序找到当前断裂的断面,直至地层没有新裂口为止;
(3)复制一份断层网格记为A,用地层裁剪断层网格A分为若干地层围边,分层后的断层网格被复制两份,一份是断层左侧地层裂口的内围边,一份是断层右侧地层裂口的内围边;
(4)将该断层的变形场作用到地层上及其围边上,地层的表面网格发生形变,围边网格发生变形;
(5)按步骤(2),(3),(4)作用于地层面即可得到地层的体网格。
虽然在这个过程中地层和断层有求交的 *** 作,但这种 *** 作可以保证是在连续地层面和断面之间的求交,所以稳定性高,初始地层面的易于求交简单。图5—111至5—118为华北平原的地质体模型。
(七)三维可视化方法
1生成剖面图
我们首先切换到地质模型树下,展开三维模型根节点,选中剖面集节点,也可以在剖面编辑菜单里面选择增加剖面选项,然后在三维图中画出剖面线,点击右键即可完成。我们也可以直接读取现有的剖面文件。
下面我们可以对剖面的属性进行编辑,如对剖面线的坐标的修改。先选中一个剖面,可以选择“剖面编辑”里面的“增加断层线”来建立断层线,我们也可以选取现已有的断层线,可以在属性框里对其属性进行修改。同样也可以在“剖面编辑”的菜单里选择增加地层线或增加透镜体线来建立地层线或透镜体线。图5—119为单面的三维剖面图。
模型还可以生成栅状的剖面形态图,如图5—120。
图5—111 华北平原三维地质模型图(贴有地表卫星)
图5—112 华北平原三维地质模型(岩性设置)
图5—113 华北平原三维地质模型图
图5—114 渤海水体模型
图5—115 第一含水层组模型
图5—116 第二含水层组模型
图5—117 第三含水层组模型
图5—118 第四含水层组模型
图5—119 三维地质模型剖切面图
图5—120 栅状剖面图
2生成剖切面
因为在没有计算机图形学的辅助之前,地质专家和地质工作者,就是通过二维的剖切面图来分析地质构造。现在,有了计算机三维建模,目的在于帮助他们建立三维空间想象能力,从而实现从二维平面图到三维地质体模型的过度。本模型使用的是基于Delaunay三角网格的剖切面(前文有介绍)。
下面主要是对地质体进行单面剖切,组合剖切和挖掘等功能。
图5—121 剖切面的属性框
(1)单面剖切。首先我们选择“可视化”中的“添加单面剖切面”,然后在三维图中用鼠标进行剖面线的绘制,点击右键即可完成。我们先做一个截面,被剖切的地质体根据截面的法向矢量与截面的两侧部分的法向矢量的夹角分为两部分(正侧与负侧)。模型默认显示的一侧是与截面的法向矢量夹角小于90度角(正侧)的。可以在剖切面的属性框里图5—121所示,进行切换剖切面对另一侧进行观察。
如图5—122为一个单面剖切的效果图:
图5—122 单面剖切面效果
(2)组合剖切。首先我们选择“可视化”中的“添加组合剖切面”,然后在三维图中用鼠标进行剖面线的绘制,点击右键即可完成。
组合剖切(多面剖切)是在单面剖切的基础上进行改进。我们先定义一个多截面的集合(本模型最多可以定义六个面)。首先可以根据截面集合中的第一个截面进行单面的剖切,储存下来然后使第一个剖切面失效,再进行第二个截面的剖切,储存下来后使其实效,同样可以依次类推,直到所以截面都剖切完以后,再使前面几个剖切面同时生效,这样就可以生成一个组合剖切面。
当然和单面剖切一样可以在属性框里进行剖切面的切换来观察另一侧。
如图5—123为一个组合剖切应用效果图:
图5—123 组合剖切面效果
3生成挖掘体
首先我们选择“可视化”中的“添加挖掘体”,然后在三维图中用鼠标进行多边行剖面线的绘制,点击右键即可完成。
挖掘剖切是组合剖切的一个特殊的应用,挖掘本身为一个封闭的多面剖切。
图5—124为一个挖掘应用效果图:
图5—124 棱柱挖掘效果图
用visio画数据库模型图步骤:
1、打开Visio 2003至程序的主界面,很快我们就可以看到许多预设的画图方案了,在左边的选择绘图类型的类别选项下,选择我们需要的“数据库”这一类型
2、在选中数据库类别之后,我们可以看到Visio 2003为我们预设了三种常用的数据库画图方案,我们选择双击最常用的“数据库模型图”
3、这时Visio 2003就进入了画图状态,看到界面的左边,选中“实体”这个画图模型,按住鼠标左键不放,直接拖动到中间的带有标尺的画图区域
4、接下来主要的工作就放在设置表的属性上了。看到程序主界面窗口下方的属性设置,现在左边的类别选中“定义”,依次输入数据表的物理名称和概念名称,注意如果物理名称和概念名称不一致的话要把键入时同步名称的勾取消掉才行
5、接来下类别选中“列”,根据实际情况分别填入列的在实际数据库中物理名称,数据类型,是主键的列以及不能为空的列要勾上“PK ”或者“必须的”
6、如果需要为列的字段添加注释,就选中相应的列之后,点击旁边的“编辑”,出现了列属性的编辑窗口,首先就要把“键入时同步名称”的勾去掉,然后在概念名称处就可以填写自己需要的列字段说明了,填完点“确定”以此为例完成对每一列的属性编辑
7、所有列编辑完之后,在画图区就可以看到数据库模型图的样子了。可以通过拖动调整整个数据库模型图的大小
8、最后要做的就是把这个数据库模型图保存出来以供使用,点击工具栏的“文件”,然后选择“另存为”,选好保存位置,保存类型可以选择为“jpg”,最后点击“保存”即可把这个画好的数据模型图以jpg的形式保存出来了,十分方便
数据库的设计过程大致可分为以下六个阶段:
1 需求分析阶段
需求收集和分析,结果得到数据字典描述的数据需求(和数据流图描述的处理需求)。
2 概念结构设计阶段
通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型,可以用E-R图表示。
3 逻辑结构设计阶段
将概念结构转换为某个DBMS所支持的数据模型(例如关系模型),并对其进行优化。
4 数据库物理设计阶段
为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法)。
5 数据库实施阶段
运用DBMS提供的数据语言(例如SQL)及其宿主语言(例如C),根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
6 数据库运行和维护阶段
数据库应用系统经过试运行后即可投入正式运行。在数据库系统运行过程中必须不断地对其进行评价、调整与修改。
建立数据模型的步骤包括:1制订目标2数据理解与准备3建立模型4模型评估5结果呈现6模型部署

一、制订目标
制订目标的前提是理解业务,明确要解决的商业现实问题是什么?
如:在社交平台KOL中,存在假粉丝的情况,如何识别假粉就是一个要解决的现实问题。
二、数据理解与准备
基于要解决的现实问题,理解和准备数据,一般需要解决以下问题:
需要哪些数据指标(即特征提取)(如:哪些指标能区别真粉和假粉?)
数据指标的含义是什么?
数据的质量如何?(如:是否存在缺失值?)
数据能否满足需求?
数据还需要如何加工?(如:转换数据指标,将类别型变量转化为0-1哑变量,或将连续型数据转化为有序变量)
探索数据中的规律和模式,进而形成假设。
需要注意的是,数据准备工作可能需要尝试多次。因为在复杂的大型数据中,较难发现数据中存在的模式,初步形成的假设可能会被很快推翻,这时一定要静心钻研,不断试错。
数据建模后需要评估模型的效果,因此一般需要将数据分为训练集和测试集。
三、建立模型
在准备好的数据基础上,建立数据模型,这种模型可能是机器学习模型,也可能不需要机器学习等高深的算法。选择什么样的模型,是根据要解决的问题(目标)确定的。
当然可以选择两个或以上的模型对比,并适当调整参数,使模型效果不断优化。
四、模型评估
模型效果的评估有两个方面:一是模型是否解决了需要解决的问题(是否还有没有注意和考虑到的潜在问题需要解决);二是模型的精确性(误差率或者残差是否符合正态分布等)。
如:在识别KOL假粉的问题中,需要评估的是:
模型能否识别出假粉?
识别的误差率是多少?粉丝识别误差率=(假粉误认为真粉的数量+真粉误认为假粉的数量)/总粉丝数
五、结果呈现
结果呈现主要关注以下三个方面:
模型解决了哪些问题?
解决效果如何?
如何解决问题?具体 *** 作步骤是什么?
六、模型部署
通过大量数据解决了一个或多个重要的现实问题,需要将方案落实下去,一般情况下需要通过线上技术环境部署落实,从而为后面不断优化模型、更好地解决问题打下基础。
以上就是关于建模方法全部的内容,包括:建模方法、简述一个数据库应用系统的建立过程、如何创建数据模型等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)