CN111966629A - 粒子模拟数据存储方法 - Google Patents
粒子模拟数据存储方法 Download PDFInfo
- Publication number
- CN111966629A CN111966629A CN202010594743.1A CN202010594743A CN111966629A CN 111966629 A CN111966629 A CN 111966629A CN 202010594743 A CN202010594743 A CN 202010594743A CN 111966629 A CN111966629 A CN 111966629A
- Authority
- CN
- China
- Prior art keywords
- data
- particle
- subgroup
- electromagnetic field
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000002245 particle Substances 0.000 title claims abstract description 73
- 238000004088 simulation Methods 0.000 title claims abstract description 31
- 238000000034 method Methods 0.000 title claims abstract description 14
- 238000013500 data storage Methods 0.000 title claims abstract description 8
- 230000005672 electromagnetic field Effects 0.000 claims abstract description 24
- 239000013598 vector Substances 0.000 claims description 7
- 101150087985 SUB11 gene Proteins 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- IYLGZMTXKJYONK-ACLXAEORSA-N (12s,15r)-15-hydroxy-11,16-dioxo-15,20-dihydrosenecionan-12-yl acetate Chemical compound O1C(=O)[C@](CC)(O)C[C@@H](C)[C@](C)(OC(C)=O)C(=O)OCC2=CCN3[C@H]2[C@H]1CC3 IYLGZMTXKJYONK-ACLXAEORSA-N 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000005684 electric field Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- JQQQEJZYKNGYBP-WXIWBVQFSA-N n-[4-[(e)-(carbamothioylhydrazinylidene)methyl]phenyl]acetamide;pyridine-4-carbohydrazide Chemical compound NNC(=O)C1=CC=NC=C1.CC(=O)NC1=CC=C(\C=N\NC(N)=S)C=C1 JQQQEJZYKNGYBP-WXIWBVQFSA-N 0.000 description 2
- IYLGZMTXKJYONK-UHFFFAOYSA-N ruwenine Natural products O1C(=O)C(CC)(O)CC(C)C(C)(OC(C)=O)C(=O)OCC2=CCN3C2C1CC3 IYLGZMTXKJYONK-UHFFFAOYSA-N 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/113—Details of archiving
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
粒子模拟数据存储方法,属于粒子模拟仿真技术领域。本发明包括下述步骤:1)设置指向同一文件名的三个一级子组,分别为电流功率时变信息子组、粒子群位置速度信息子组和电磁场信息子组;2)在电流功率时变信息子组下建立功率属性区和功率数据区;3)在粒子群信息子组下建立粒子属性区和粒子数据区;4)在电磁场信息子组下建立电磁场属性区和电磁场数据区;5)将以上数据封装为HDF5格式的文件。本发明与原有的以文本文件存储的方式相比,当数据量非常大的时候,依然可以对文件进行操作。
Description
技术领域
本发明属于粒子模拟仿真技术领域。
背景技术:
随着计算机的高速发展,扩大了粒子模拟的研究和应用范围,粒子模拟技术是通过粒子模拟软件对电真空微波源器件进行建模、计算并对计算后的数据进行后处理的一系列技术,主要的粒子模拟软件包括CHIPIC,MAGIC,VSIM,CST等。这些粒子模拟软件虽然在计算时采用的算法有所不同,但是他们通常都是将仿真的数据存储到文本文件中,比如*.grd文件中存储observe和range类型的数据,*.par文件中存储phasespace类型的数据,*.fld文件中存储contour和vector类型的数据。在仿真数据量不大的情况下,这种方式存储数据比较方便且易于对文件进行处理。然而在仿真数据量非常大的情况下,这种存储数据的方式就存在着如下的问题:
1.当数据量达到数十G或更大的时候,存储的文本文件无法操作。
2.当数据后处理程序处理数据时,需要读取文本文件,然而文本文件只能采取顺序读取的方式,当每次要访问某一段数据的信息时,就不得不将前面的数据均进行一遍遍历,这就会导致在进行数据处理时效率比较低。
除此之外,这种以文本方式存储数据的方法还存在着一个问题:不同的粒子模拟软件存储数据的文本文件格式各不相同,无法实现与其他软件(如MATLAB等)间数据的兼容。因此有必要寻找一种数据接口作为粒子模拟的标准数据接口,可以对粒子模拟产生的数据进行高效的处理。
发明内容
本发明所要解决的技术问题是,提供一种粒子模拟数据存储方法,能够解决粒子模拟中以文本文件方式存储大量仿真数据而导致的文件无法操作以及后处理程序对于文件读取效率低下的问题。
本发明解决所述技术问题采用的技术方案是,粒子模拟数据存储方法,其特征在于,包括下述步骤:
1)设置指向同一文件名的三个一级子组,分别为电流功率时变信息子组、粒子群位置速度信息子组和电磁场信息子组;
2)在电流功率时变信息子组下根据数据段个数建立相应个数的二级子组,在二级子组中设置属性区和数据区,所述属性区记录的数据包括观测时间点、观测范围、电流值、功率值和场变量值等描述信息,所述数据区记录的数据包括空间电流功率坐标数据和时间数据;
3)在粒子群位置与速度信息子组下按照数据段个数建立二级子组,在二级子组中设置相应的属性区和数据区,所述粒子位置属性区记录的数据包括观测时间点、粒子类型、荷质比率、粒子分量和宏粒子源,所述粒子位置数据区记录的数据包括各粒子具体的位置坐标;
4)在电磁场信息子组下根据数据段个数建立二级子组,在二级子组中设置属性区和数据区,所述电磁场属性区记录的数据包括观测时间点、观察分量、横切位置、最大矢量和等值区域信息,所述电磁场数据区记录的数据包括磁场等值线坐标数据或者磁场矢量坐标数据。
5)将以上数据封装为HDF5格式的文件。
本发明与原有的以文本文件存储的方式相比,当数据量非常大的时候,依然可以对文件进行操作,同时后处理程序处理此种基于HDF5的标准的粒子模拟数据时,读取效率得到了大大的提高。另外,HDF5文件可以作为粒子模拟软件与其他实用软件间的标准数据接口,实现粒子模拟软件与其他实用软件的兼容。
附图说明
图1为本发明的实现流程图。
图2为粒子模拟仿真中数据段的一般形式示意图。
图3为本发明的仿真数据的格式示意图。
图4为CHIPIC软件仿真后产生的三种不同的数据段示意图。
具体实施方式
参见图1。
为了解决粒子模拟中以文本文件方式存储大量仿真数据而导致的文件无法操作以及后处理程序对于文件读取效率低下的问题,以及粒子模拟软件数据与其他软件格式不兼容的问题,本发明采用HDF5文件作为粒子模拟中的标准数据接口,根据仿真数据的特征设计HDF5文件的内部结构。
本发明提供一种基于HDF5的粒子模拟标准接口设计方法,包括:
步骤一:在HDF5文件中新增多个一级子组。粒子模拟仿真后通常会产生不同类型的数据段,每一个数据段均由两部分组成,一部分为数据描述信息,另一部分则是数据本身。这些数据段有的表示粒子的运动轨迹,有的表示电磁场等值线等。对于每一个新增的一级子组,均代表一种数据段类型,符合该类型的数据段全部存入该子组中。
步骤二:在HDF5文件中,设定好一级子组后,又针对一级子组新增二级子组。因为对于每一个一级子组,存入的均是符合该子组对应数据段类型的所有数据段,所以,每一个新增的二级子组存放其中一段该类型数据段。
步骤三:对于每一个二级子组,为其添加数据属性(attribute)。数据属性在HDF5中被设计为key-value的形式。key即为属性的名称,value为该子组对应数据段中的数据描述信息,每一个value值即为数据描述信息中的一条信息。这里一般将key和value的数据类型设置为字符串类型。
步骤四:对于每一个二级子组,为其添加数据集(dataset)。用于存放该子组对应数据段中的数据本身,这些数据通常为离散数据。若这些数据为a行,b列的,那么可以在这些子组中添加一个数据空间为a*b,数据类型为浮点数型的数据集。
作为一种实施方式,粒子模拟数据存储方法,包括下述步骤:
1)设置指向同一文件名的三个一级子组,分别为电流功率时变信息子组、粒子群位置与速度信息子组和电磁场信息子组;
2)在电流功率时变信息子组下根据数据段个数建立相应个数的二级子组,在二级子组中设置属性区和数据区,所述属性区记录的数据包括观测时间点、观测范围、电流值、功率值和场变量值等描述信息,所述功率数据区记录的数据包括空间电流功率坐标数据和时间数据;
3)在粒子群位置与速度信息子组下按照数据段个数建立二级子组,在二级子组中设置相应的属性区和数据区,所述粒子位置属性区记录的数据包括观测时间点、粒子类型、荷质比率、粒子分量和宏粒子源,所述粒子位置数据区记录的数据包括各粒子具体的位置坐标;
4)在电磁场信息子组下根据数据段个数建立二级子组,在二级子组中设置属性区和数据区,所述电磁场属性区记录的数据包括观测时间点、观察分量、横切位置、最大矢量和等值区域信息,所述电磁场数据区记录的数据包括磁场等值线坐标数据或者磁场矢量坐标数据
5)将以上数据封装为HDF5格式的文件。
参见图2,图2示出粒子模拟仿真中产生的不同数据段的一般形式,均是由数据描述信息加上数据本身组成。其中数据段1为描述粒子运动轨迹,为第一种数据段类型。数据段2为描述电磁场等值线信息,为第二种数据段类型。首先在HDF5文件中新增两个一级子组G1,G2,分别用于存储数据段类型1和数据段类型2中的所有数据段。在图2产生的数据段中,每种类型的数据段均只有1段,因此在第一层的两个子组中分别新建一个二级子组,如在G1中增加子组SUB11,在G2中增加子组SUB21。其中SUB11即存储数据段1,SUB21存储数据段2。数据段1中有两条数据描述信息,因此为SUB11增加数据属性的时候可以设值为attr1=信息1,attr2=信息2,其中attr+序号为数据属性中的key,value即为对应数据描述信息中的每一条信息,其中key和value通常设值为字符串类型,SUB21中也是一样增加数据属性即可。最后是为每一个二级子组添加数据集,在SUB11中有两个一维的数据,因此可以为其新增一个数据空间为1x2,数据类型为浮点型的数据集,对于SUB22也是同理。设计后的HDF5文件与图3类似,区别在于图3中多了一种数据段类型,并且每种数据段类型都有3段符合该类型的数据段。
对于后处理程序来说,以这种方式设计文件接口的好处在于读取效率的提高。通常后处理程序是实现数据的可视化,主要是通过选取适当电场,磁场,时间观测点条件下的数据绘制图形。因为这些条件均存储在数据描述信息中,因此要想选取相应的条件就必须读取文件,以文本文件的方式只能顺序读取文件,每次选取相应条件时候就必须将数据段中的数据也遍历一遍,读取的效率非常低。而对于结合了粒子模拟仿真数据特征的HDF5文件,每次读取想要的条件的时候只需要遍历相应子组中的数据属性而不必要遍历数据,数据描述信息和数据实现了分离,效率得到了提高。
将粒子模拟软件中的数据接口设计为这种格式的HDF5文件,可以实现各个粒子模拟软件之间文件的兼容。同时,对于支持HDF5文件的其他领域的软件,如MATLAB等,也可以实现对于文件的操作。下面举一个实例对本发明进行说明。
对于三维粒子模拟软件CHIPIC,对其添加HDF5文件接口,其具体步骤包括:
步骤一:设计HDF5文件的一级子组的结构。CHIPIC软件在对粒子进行仿真之后会产生三种不同类型的数据段,如图4所示,其中数据段类型1用来描述粒子在不同时间观测点上的运动轨迹,可以新建一级子组的名称为GRD,用来存放该类型数据段。同理新建第一层的另外两个子组PAR,FLD,存放的数据段分别描述粒子在相空间上的运动轨迹以及电磁场等值线信息。
步骤二:设计HDF5文件的二级子组的结构。对于第一层的子组GRD,PAR,FLD,其存放的相应的数据段类型均含有多段。每一种数据段类型有多少段,即建立相应个数的二级子组数即可。如数据段类型1总共有3段,则在GRD中建立子组sub11,sub12,sub13,对于其余的两种数据类型,也是如此。
步骤三:设计HDF5文件的二级子组的数据属性(attribute)。对于sub11来说,其存放的应该是数据类型1的其中一段,那么该组的数据属性(attribute)中存放的就是对应数据段的数据描述信息,这些数据属性是观测时间点,观测范围,电场大小,磁场大小等等。设计如下表所示。其中每一个属性对应的key即为attr+数字的形式,value为相应的属性值,其中key和value的数据类型均为字符串类型。对于PAR,FLD组子组中的数据属性,也按照上述设计即可。
步骤四:设计HDF5文件中二级子组的数据集。对于数据集来说,存放的就是所在子组对应数据段中的数据本身。对于数据段类型1和数据段类型2,他们都是存储的都是二维的坐标数据,那么在相应的GRD,PAR组子组中建立数据空间为2xN,数据类型为浮点型的数据集,用于存放这些坐标数据。对于数据段类型3,数据段中的数据可以分为3种,前两种数据代表的是X1,X2方向粒子的网格坐标信息,最后一种数据代表的是该网格上粒子位置的索引。三种数据均为1维,数量分别是a,b,ab。因此可以在每一个FLD组的子组中建立三个数据空间分别为1xa,1xb,1xab,数据类型为浮点数的数据集。
实施例:
在存储电流功率时变信息时,对应的grd(一级子组)文件中包含多个观测命令结果,比如:
OBSERVE CIRCUIT观测随时间而变化的电流
OBSERVE FIELD观测随时域变化的电磁场
OBSERVE FIELD_INTEGRAL观测电磁场随时域的积分
OBSERVE FIELD_POWER观测电磁场或粒子的功率随时间的变化
OBSERVE INTERVAL观测指定的记录时间间隔的数据
每一种观测结果是一个数据段,将其设置为一个二级子组sub。
Claims (1)
1.粒子模拟数据存储方法,其特征在于,包括下述步骤:
1)设置指向同一文件名的三个一级子组,分别为电流功率时变信息子组、粒子群位置速度信息子组和电磁场信息子组;
2)在电流功率时变信息子组下建立功率属性区和功率数据区,所述功率属性区记录的数据包括观测时间点、观测范围、电流值、功率值和场变量值信息,所述功率数据区记录的数据包括空间电流功率坐标数据和时间数据;
3)在粒子群信息子组下建立粒子属性区和粒子数据区,所述粒子属性区记录的数据包括观测时间点、粒子类型、荷质比率、粒子分量和宏粒子源信息,所述粒子位置数据区记录的数据包括各粒子具体的位置坐标;
4)在电磁场信息子组下建立电磁场属性区和电磁场数据区,所述电磁场属性区记录的数据包括观测时间点、观察分量、横切位置、最大矢量和等值区域信息,所述电磁场数据区记录的数据包括磁场等值线坐标数据或者磁场矢量坐标数据;
5)将以上数据封装为HDF5格式的文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010594743.1A CN111966629A (zh) | 2020-06-28 | 2020-06-28 | 粒子模拟数据存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010594743.1A CN111966629A (zh) | 2020-06-28 | 2020-06-28 | 粒子模拟数据存储方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111966629A true CN111966629A (zh) | 2020-11-20 |
Family
ID=73362116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010594743.1A Pending CN111966629A (zh) | 2020-06-28 | 2020-06-28 | 粒子模拟数据存储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111966629A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140164444A1 (en) * | 2012-12-01 | 2014-06-12 | The Regents Of The University Of California | System and method of managing large data files |
CN109597575A (zh) * | 2018-11-29 | 2019-04-09 | 中国科学院合肥物质科学研究院 | 一种基于hdf5的分块式数据存储及读取方法 |
CN109829073A (zh) * | 2018-12-29 | 2019-05-31 | 深圳云天励飞技术有限公司 | 一种图像搜索的方法及装置 |
CN109918371A (zh) * | 2019-01-25 | 2019-06-21 | 中国石油天然气股份有限公司 | 一种地震解释成果数据的存储、访问的方法、装置和系统 |
-
2020
- 2020-06-28 CN CN202010594743.1A patent/CN111966629A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140164444A1 (en) * | 2012-12-01 | 2014-06-12 | The Regents Of The University Of California | System and method of managing large data files |
CN109597575A (zh) * | 2018-11-29 | 2019-04-09 | 中国科学院合肥物质科学研究院 | 一种基于hdf5的分块式数据存储及读取方法 |
CN109829073A (zh) * | 2018-12-29 | 2019-05-31 | 深圳云天励飞技术有限公司 | 一种图像搜索的方法及装置 |
CN109918371A (zh) * | 2019-01-25 | 2019-06-21 | 中国石油天然气股份有限公司 | 一种地震解释成果数据的存储、访问的方法、装置和系统 |
Non-Patent Citations (2)
Title |
---|
安然;: "HDF5文件格式在飞行试验数据管理中的应用" * |
王广红;黄连生;高格;傅鹏;何诗英;王泽京;: "EAST极向场电源的数据存储及读取方法" * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | A unified algorithm based on HTS and self-adapting PSO for the construction of octagonal and rectilinear SMT | |
CN110825375B (zh) | 一种量子程序的转化方法、装置、存储介质和电子装置 | |
Eldawy et al. | A demonstration of spatialhadoop: An efficient mapreduce framework for spatial data | |
Ma et al. | Query processing of massive trajectory data based on mapreduce | |
Abraham et al. | Particle swarm optimisation based Diophantine equation solver | |
CN104866371A (zh) | 一种基于Agent行动图的作战建模方法与仿真系统 | |
Kumar et al. | PIDX: Efficient parallel I/O for multi-resolution multi-dimensional scientific datasets | |
CN102937993B (zh) | 一种用于访问关键字的方法及装置 | |
CN113506364A (zh) | 模型创建方法、系统、设备及存储介质 | |
Sehrish et al. | Spark and HPC for high energy physics data analyses | |
CN112015735A (zh) | 一种非结构化网格的数据存储结构及数据存储方法 | |
Lawson et al. | Empress: extensible metadata provider for extreme-scale scientific simulations | |
US20160364908A1 (en) | Analysis Model Creation Assistance System, Analysis Model Creation Assistance Device and Analysis Model Creation Assistance Program | |
CN111966629A (zh) | 粒子模拟数据存储方法 | |
Johnpaul et al. | A Cypher query based NoSQL data mining on protein datasets using Neo4j graph database | |
Guo et al. | Efficient triangulation of Poisson-disk sampled point sets | |
Dong et al. | Terabyte-scale particle data analysis: an arrayudf case study | |
CN112069135B (zh) | 一种海量地震数据可视化存储方法 | |
Ziegeler et al. | In situ analysis as a parallel i/o problem | |
Nucha et al. | Computing contour trees for 2d piecewise polynomial functions | |
Grzesiak-Kopeć et al. | Hypergraphs and extremal optimization in 3D integrated circuit design automation | |
Furcy et al. | Optimal program-size complexity for self-assembly at temperature 1 in 3D | |
Chang et al. | Automatic multigrid generation for an unstructured parallel overset-grid solver | |
Ingole et al. | Instruction set design for elementary set in tensilica xtensa | |
Wang et al. | Intelligent welding robot path planning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20201120 |