A block storage method suitable for time domain finite difference method electric large size grid

By using block storage and virtual dataset mapping, the problems of memory consumption and parallel computing bottlenecks of large-size grid files are solved, achieving efficient parallel I/O access and improved computational efficiency.

CN121070286BActive Publication Date: 2026-02-03NANJING LINGSHU TECH CO LTD +1
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511605537.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-11-05
Publication Date
2026-02-03
Estimated Expiration
2045-11-05

AI Technical Summary

Technical Problem

Existing technologies suffer from memory consumption and I/O latency issues when reading and processing large-size electromagnetic wave finite-difference time-domain mesh files. Furthermore, file parsing becomes a computational bottleneck in parallel environments, and there is a lack of unified data description standards and maintainability.

Method used

A block storage method is adopted, which divides the mesh file into a master mesh file and block files. The mesh data is obtained by using the hexahedral meshing method and stored in HDF5 format. Continuous access to cellular entity data is realized through virtual dataset mapping, and conformal data storage is supported.

Benefits of technology

It achieves efficient parallel I/O access, reduces grid reading and parameter calculation time, and improves computational efficiency and data file scalability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121070286B_ABST
    Figure CN121070286B_ABST
Patent Text Reader

Abstract

The application discloses a block storage method suitable for a time domain finite difference method electric large-size grid, and relates to the technical field of software development.The method comprises the following steps: classifying a grid file, and acquiring grid data by using a hexahedral grid subdivision method; dividing a three-dimensional array of cell entities along three dimensions of x, y and z, and storing block files in an HDF5 format on a hard disk; mapping the three-dimensional array in a main grid file, mapping cell entity data dispersed in each block file into a continuous global array; and storing conformal data according to a conformal scheme.The block storage method of the electric large-size FDTD grid enables the FDTD solver to randomly read and write all the cells like accessing a single data set, while retaining the I / O advantage of parallel loading of sub-files, and meanwhile, the grid file is standardized and has expandability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of software development technology, and in particular to a block storage method applicable to electrically large grids using the finite-difference time-domain method. Background Technology

[0002] The finite-difference time-domain (FDTD) method for electromagnetic waves is a numerical method that directly solves Maxwell's equations in the time domain. It discretizes the spatial region into a regular grid (typically hexahedrons) and updates the electric and magnetic fields alternately over time. By calculating the changes in the electric and magnetic fields sequentially within each time step, FDTD can dynamically simulate the propagation, reflection, refraction, and absorption processes of electromagnetic waves in different media. This method has advantages such as simple algorithm structure, clear physical meaning, and ease of handling complex boundaries (such as PML absorbing layers), and is therefore widely used in antennas, electromagnetic compatibility, microwave devices, and optical waveguides.

[0003] Structured hexahedral meshes are a widely used meshing method in electromagnetic simulations. Their mesh cells are arranged regularly along three coordinate directions, naturally matching the Yee scheme for electromagnetic field discretization. Based on the variation of cell size, they can be divided into three categories: cubic meshes, uniform meshes, and non-uniform meshes. Cubic meshes have equal step sizes in all three directions, resulting in the simplest structure, smallest error, and highest numerical stability and accuracy. Uniform meshes allow for different step sizes in different directions, maintaining regularity while optimizing resolution in the propagation direction. Non-uniform meshes allow for variations in cell size in all directions, enabling local refinement in critical areas, improving computational efficiency and geometric adaptability. Overall, structured hexahedral meshes offer advantages such as simple algorithm implementation, regular storage structure, and high parallel computing efficiency, making them an ideal choice for explicit time-domain algorithms such as the Finite-Difference Time-Domain (FDTD) method.

[0004] After performing mesh generation for FDTD, the mesh file typically needs to include the following five types of core information: ① object identifier; ② material property identifier; ③ three-dimensional mesh line coordinates; ④ mesh cell type; ⑤ arrangement and topological relationship of each cell.

[0005] Traditionally, all data is encapsulated in a single file, which is then sequentially read and parsed by the solver during the startup phase. However, while this approach is simple to implement, it has two significant drawbacks: first, the memory usage and I / O latency during the reading phase increase linearly with the mesh size; second, in a parallel environment, file parsing is often fixed to a single computing node, causing that node to be overloaded and unable to parse in parallel with other processes, thus becoming a bottleneck in the overall computation process.

[0006] One improvement approach is to adopt a custom binary header-body format: metadata such as object number, material number, mesh lines, and cell type are written into the header, while a large amount of cell information is stored centrally in the body, and multi-process concurrent reading is supported through file pointer offsets. Although this method can alleviate I / O overhead to some extent, it still cannot use parallel I / O for mesh reading and processing, and lacks a unified data description standard, which limits maintainability and portability.

[0007] Chinese patent application 202510924739.X, published on October 14, 2025, discloses a non-uniform hexahedral mesh generation method based on regional density distribution. The advantages of this application are: by identifying and calculating the density distribution of triangular facet regions, generating 3D mesh lines in Cartesian coordinates, reconstructing ray-intersecting hexahedral meshes, and outputting the mesh, it achieves the conversion from triangular facet meshes to non-uniform hexahedral meshes, solving the mesh generation and geometric target modeling problems of the Finite-Difference Time-Domain (FDTD) method. Therefore, how to adopt the hexahedral mesh generation method disclosed in patent application 202510924739.X and propose a memory-friendly, efficient, and scalable mesh storage strategy based on the Hierarchical Data Format (HDF5) is an urgent problem to be solved. Summary of the Invention

[0008] In view of this, this application provides a block storage method for electrically large grids applicable to the finite-difference time-domain method.

[0009] According to one aspect of this disclosure, a block storage method for electrically large meshes applicable to the finite-difference time-domain method is provided. The method includes classifying mesh files, obtaining mesh data using a hexahedral meshing method; dividing the three-dimensional array of the entity to which the cell belongs into blocks along the x, y, and z dimensions, and storing the block files on a hard disk using HDF5 format; establishing a mapping of the three-dimensional array in the main mesh file, mapping the cell entity data scattered in each block file into a continuous global array; and storing conformal data according to a conformal scheme.

[0010] In some embodiments, the mesh data includes mesh type, number of meshes in each direction in three-dimensional coordinates, mapping of model entities to material names, mesh line positions in each direction, three-dimensional array of entities to which the cells belong, and conformal data customized for a specific conformal scheme.

[0011] In some embodiments, grid files are classified into two types: main grid files and block files.

[0012] In some embodiments, establishing a mapping of a 3D array in the main mesh file, mapping cellular entity data scattered across various block files into a continuous global array includes the following steps: defining the target space of the virtual dataset; creating an H5S_SELECT_HYPERSLAB selection for each source dataset and defining the corresponding target selection in the virtual dataset space; binding the source file path, source dataset path, and their selection relationship to the virtual dataset creation attribute dcpl through H5Pset_virtual to form a one-to-one mapping between the source and virtual data; and finally using H5Dcreate or H5Dcreate2 to create the actual VDS using the dcpl attribute.

[0013] In some embodiments, the virtual dataset is a three-dimensional array of cellular entities in the main grid file.

[0014] In some embodiments, the source dataset is a three-dimensional array of several block files stored on a hard disk.

[0015] In some embodiments, the conformal scheme selects subpixel smoothing as the conformal scheme.

[0016] The beneficial effects of this invention are as follows: by storing electrically large FDTD meshes in blocks, the FDTD solver can perform random read and write operations on all cells as if accessing a single dataset, while retaining the I / O advantages of parallel loading of subfiles, and making the mesh file standardized and scalable. Attached Figure Description

[0017] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention, and not limitations on the present disclosure.

[0018] Figure 1 This is a diagram illustrating the block storage method for grid files.

[0019] Figure 2 This is a schematic diagram of grid segmentation.

[0020] Figure 3 A model file that has an intersection relationship.

[0021] Figure 4 for Figure 3 The schematic diagram of the block region corresponding to the model document.

[0022] Figure 5 This is a schematic diagram of the intersection of a hexahedron and a triangular facet.

[0023] Figure 6 for Figure 4A schematic diagram of the reciprocal of the equivalent dielectric constant in region ①.

[0024] Figure 7 for Figure 4 A schematic diagram of the reciprocal of the equivalent dielectric constant in region ②.

[0025] Figure 8 for Figure 4 A schematic diagram of the reciprocal of the equivalent dielectric constant in region ③.

[0026] Figure 9 for Figure 4 A schematic diagram of the reciprocal of the equivalent dielectric constant in region ④.

[0027] Figure 10 This diagram illustrates how grid reading time and parameter calculation time vary with the number of cores. Detailed Implementation

[0028] To make the objectives, technical solutions, and advantages of the embodiments of this disclosure clearer, the technical solutions of the embodiments of this disclosure will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this disclosure. All other embodiments obtained by those skilled in the art based on the described embodiments of this disclosure without creative effort are within the scope of protection of this disclosure.

[0029] Unless otherwise defined, the technical or scientific terms used in this disclosure shall have the ordinary meaning understood by one of ordinary skill in the art to which this disclosure pertains. The terms "first," "second," and similar terms used in this disclosure do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Terms such as "comprising" or "including" mean that the element or object preceding the word encompasses the elements or objects listed after the word and their equivalents, without excluding other elements or objects. Terms such as "connected" or "linked" are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. Terms such as "upper," "lower," "left," and "right" are used only to indicate relative positional relationships; when the absolute position of the described object changes, the relative positional relationship may also change accordingly. To keep the following description of the embodiments of this disclosure clear and concise, detailed descriptions of some known functions and known components have been omitted.

[0030] Example 1, referring to Figures 1-10 This embodiment provides a block storage method for electrically large grids applicable to the finite-difference time-domain method, which includes the following steps:

[0031] S1 divides the mesh files into two types: master mesh files and block files. The mesh data is obtained using the hexahedral meshing method.

[0032] The main mesh file stores smaller, frequently accessed metadata such as geometry numbers, material numbers, three-dimensional mesh line coordinates, and element type identifiers; the block files are responsible for dividing the large 3D cell array into spatial blocks and writing them into multiple sub-files to reduce single-file size and decrease parallel I / O contention. Figure 1 As shown, a master mesh file and several block files together represent a hexahedral mesh.

[0033] Using the hexahedral meshing method, the following mesh data is obtained: mesh type, number of meshes in each direction in 3D coordinates, mapping between model entities and material names, mesh line positions in each direction, the 3D array of the entity to which the cell belongs, and conformal data customized for a specific conformal scheme. It should be noted that the hexahedral meshing method includes the following steps: S1: For the solution objective, triangular facets are used for meshing, and regions are divided according to different region densities to obtain the maximum and minimum mesh sizes for each region; S2: After executing step S1, n regions are obtained. In the Cartesian coordinate system, mesh lines are generated sequentially along the x, y, and z dimensions, starting optimization from the region with the smallest maximum mesh size. It should be noted that this hexahedral meshing method is existing technology and will not be elaborated upon here.

[0034] S2 divides the three-dimensional array of the entity to which the cell belongs into blocks along the x, y, and z dimensions, forming several blocks in a Rubik's Cube-like pattern, and stores the block file on the hard drive using HDF5 format. For example... Figure 2 This is a block grid formed by dividing a mesh file into two blocks on the x and y axes and one block on the z axis.

[0035] S3, establish the mapping of the three-dimensional array in the main mesh file.

[0036] Using the VDS feature in HDF5, firstly, define the target space DataSpace (i.e., the dimensions and data types of the virtual layout) of the virtual dataset. Here, the virtual dataset is a 3D array of cellular entities in the main mesh file. Then, create an H5S_SELECT_HYPERSLAB selection for each source dataset (specifying its data range and mapping area in the source file). Here, the source dataset is the 3D array data of several blocks written to the hard disk in the second step. Next, define the corresponding target selection (virtual coordinate area) in the virtual dataset space. Then, bind the source file path, source dataset path, and their selection relationship to the virtual dataset creation attribute (dcpl) through H5Pset_virtual, thus forming a one-to-one mapping between the source and virtual data. Finally, use H5Dcreate or H5Dcreate2 to create the real VDS using this dcpl. This allows the logical mapping of the 3D array of cellular entities to be established in the main mesh file, mapping the cellular entity data scattered in various block files into a continuous global array.

[0037] S4, Store conformal data according to the conformal scheme.

[0038] This storage method needs to support conformal finite-difference time (FDTD) to meet the user's requirements for using FDTD solvers. FDTD offers many conformal algorithms; this invention chooses subpixel smoothing as the conformal solution. Subpixel smoothing requires the model entity numbers and normal vectors of the intersections between the model's surface triangles and hexahedral cells, as well as the volume of the surface triangles cut off by the hexahedral cells. This invention uses the HDF5 variable-length data structure `hvl_t` to store these three variables to accommodate cases where the same hexahedral cell is cut off by multiple triangles. To test the robustness of this solution, based on... Figure 3 Test as shown. Figure 3 The hexahedral mesh is a simplified model of the intersection of a sphere and a hexahedron. Figure 4 The model is divided into blocks ①, ②, ③, and ④ for storage as a block storage strategy, and stored on the hard disk to form a main mesh file and four block files suitable for FDTD.

[0039] The subpixel smoothing scheme first performs a rotational transformation on the dielectric tensor in the interface normal coordinate system, and then averages it according to the volume ratio of the irregular polyhedron formed by the intersection of triangular facets and hexahedrons on the model surface, such as... Figure 5An irregular polyhedron, formed by the intersection of a hexahedral cell and two triangular facets on the model surface, can be averaged using first-order perturbation theory based on the ratio of its volume to the original hexahedral cell volume. This yields an equivalent dielectric tensor insensitive to first-order interface geometric changes. This tensor is then rotated back to the Cartesian system, and its diagonal and off-diagonal components are stored according to the Yee grid positions. Simultaneously, a more stable FDTD discretization method for anisotropic media is employed. This preprocessing, without altering the FDTD main loop, significantly reduces interface discretization errors. In 2D / 3D examples, it exhibits smaller errors compared to simple arithmetic / harmonic averaging and restores first-order convergence caused by the interface to second-order convergence.

[0040] Figures 6-9 This represents the calculation result of a certain component of the dielectric tensor obtained using the subpixel smoothing scheme. Figure 6 Corresponding to Figure 4 Block ① of the model Figure 7 Corresponding to Figure 4 Block ② of the model Figure 8 Corresponding to Figure 4 Block ③ of the model Figure 9 Corresponding to Figure 4 Block ④ of the model.

[0041] Figure 10 The time curves for subpixel smoothing combined with CPU parallel computing show that as the number of parallel cores increases, the computation time for conformal parameters and the mesh reading time are significantly reduced. This fully demonstrates that this scheme can retain the advantages of parallel I / O and reduce the solver's mesh reading and parameter computation time.

[0042] This completes the block storage for electrically large grids applicable to the Finite-Difference Time-Domain (FDTD) method.

[0043] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.

[0044] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative examples of implementing the claims.

[0045] The above description is only a specific embodiment of this disclosure, but the protection scope of this disclosure is not limited thereto. The protection scope of this disclosure should be determined by the protection scope of the claims.

Claims

1. A block storage method for electrically large grids applicable to the finite-difference time-domain method, comprising: The mesh files are classified into two types: main mesh files and block files. The hexahedral meshing method is used to obtain mesh data. The main mesh file is responsible for storing metadata, while the block files are responsible for writing the large-scale three-dimensional cell array into multiple sub-files according to spatial blocks. The three-dimensional array of the entity to which the cell belongs is divided into blocks along the three dimensions of x, y, and z, and the block files are stored on the hard disk in HDF5 format; Establish a mapping of the 3D array in the main mesh file, mapping the cellular entity data scattered in various block files into a continuous global array; Conformal data is stored according to the conformal scheme.

2. The block storage method for electrically large grids applicable to the finite-difference time-domain method as described in claim 1, characterized in that: The mesh data includes mesh type, number of meshes in each direction in three-dimensional coordinates, mapping between model entities and material names, mesh line positions in each direction, three-dimensional array of entities to which the cells belong, and conformal data customized for conformal schemes.

3. The block storage method for electrically large grids applicable to the finite-difference time-domain method as described in claim 2, characterized in that: Establishing a mapping of the 3D array in the main mesh file, mapping the cellular entity data scattered across various block files into a continuous global array, includes the following steps: Define the target space of the virtual dataset. Create an H5S_SELECT_HYPERSLAB selection for each source dataset. Define the corresponding target selection in the virtual dataset space; H5Pset_virtual binds the source file path, the source dataset path, and the selection relationship between the two to the virtual dataset creation attribute dcpl, forming a one-to-one mapping between the source and virtual data. Finally, use H5Dcreate or H5Dcreate2 to create a real VDS using the dcpl attribute.

4. The block storage method for electrically large grids applicable to the finite-difference time-domain method as described in claim 3, characterized in that: The virtual dataset is a three-dimensional array of cellular entities in the main grid file.

5. The block storage method for electrically large grids applicable to the finite-difference time-domain method as described in claim 3, characterized in that: The source dataset is a three-dimensional array of several block files stored on the hard disk.

6. The block storage method for electrically large grids applicable to the finite-difference time-domain method as described in claim 1, characterized in that: The conformal scheme selects subpixel smoothing as the conformal scheme.

Citation Information

Patent Citations

  • Non-uniform hexahedral mesh generation method based on regional density distribution rule

    CN120782995A

  • Storage space division method and system for three-dimensional grid data

    CN110110158A

  • Multi-source marine environment data storage method and system based on HDF5

    CN120336278A