A multi-radar networking grid-pointing method and device based on GPU parallel acceleration
Patent Information
- Application Number
- CN202611007442.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-08
- Publication Date
- 2026-10-09
- Estimated Expiration
- 2046-07-08
AI Technical Summary
[0005](1)格式异构问题:多型号雷达文件格式各异,每种格式需要独立的解析逻辑,缺少将不同格式归一化表达的统一内部体扫数据结构,导致下游格点化与产品模块需对接多种数据接口,增加了系统复杂度和维护成本
[0080] Beneficial effects: (1) Unlike existing technologies where each format needs to be independently connected to downstream modules, this invention designs a four-layer structure (site configuration, scanning strategy, radial data, field data) and introduces a unified field identifier and reverse lookup table mechanism to encapsulate the format differences of multiple radar models within the parsing module. All downstream modules only need to connect to a single data structure. By unifying the internal volume scan data structure, the volume scan data of different weather radar models are normalized and expressed. Downstream processing modules only need to connect to a single data interface, reducing system complexity and facilitating the expansion of support for new radar models.
Smart Images

Figure CN122574256B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of meteorological radar data processing technology, and in particular to a multi-radar group grid point generation method and device based on GPU parallel acceleration. Background Technology
[0002] Weather radar acquires atmospheric echo data in polar coordinates. A complete volume scan consists of several conical scanning surfaces with fixed elevation angles. Each scanning surface comprises hundreds of radial rays, and each ray has hundreds to thousands of range units arranged at equal intervals. The moment data output by the volume scan includes reflectivity factor, radial velocity, spectral width, and dual-polarization quantities such as differential reflectivity, differential phase rate, and correlation coefficient.
[0003] Multi-radar group gridding refers to mapping polar coordinate volume scan data from multiple weather radars onto a pre-defined regular rectangular coordinate grid, forming a three-dimensional gridded data volume of the coverage area. This process is fundamental to generating operational products such as combined reflectivity, echo top height, and vertical liquid water content. Currently, the new generation of weather radars includes various models, each with different volume scan file structures, moment data encoding methods, and included observation fields.
[0004] In terms of gridding processing, the existing technologies mainly have the following problems:
[0005] (1) Format heterogeneity problem: The file formats of various radar models are different, and each format requires independent parsing logic. There is a lack of a unified internal volume scan data structure to normalize and express different formats, which leads to the need for downstream gridding and product modules to connect to multiple data interfaces, increasing system complexity and maintenance costs.
[0006] (2) Real-time bottleneck: When dealing with large-scale 3D grids (e.g., horizontal resolution of 0.01 degrees and dozens of vertical height layers) and multiple radar inputs, the CPU serial gridding scheme takes a long time to process, making it difficult to meet the operational requirement of volume scanning every 6 minutes. The reason is that the core computation of gridding—finding the corresponding observation value in polar coordinate space for each grid point and interpolating it—is inherently highly parallel, but the CPU architecture is limited by the number of cores and cannot fully utilize it.
[0007] (3) Hard coding of fusion strategy: The fusion strategy of multiple radar overlapping areas is mostly implemented by hard coding, which is difficult to flexibly adapt to application scenarios of different frequency band combinations (such as S-band and X-band networking). In addition, the direct averaging of reflectivity fields in logarithmic dBZ space will introduce nonlinear bias, overestimating weak echo areas and underestimating strong echo areas.
[0008] (4) Insufficient GPU engineering: There are also GPU-based flat parallel solutions, but existing GPU gridding solutions lack systematic design in terms of memory management. Frequent memory allocation and release and synchronization waiting cause additional overhead. Data transfer between CPU and GPU does not make full use of paged memory and non-blocking flow mechanisms, which limits end-to-end throughput.
[0009] In summary, existing technologies have shortcomings in terms of real-time performance, data compatibility, fusion accuracy, and system flexibility. There is an urgent need for a multi-radar group grid point technology solution that can balance high efficiency, high compatibility, and high accuracy. Summary of the Invention
[0010] The present invention aims to at least partially solve one of the technical problems existing in the related art.
[0011] The purpose of this invention is to provide a multi-radar group grid point generation method and device based on GPU parallel acceleration. Without increasing GPU hardware resources, it improves the real-time performance of multi-radar group grid point generation processing and meets business timeliness requirements by optimizing the GPU parallel computing architecture and data organization method. At the same time, it realizes unified and compatible processing of heterogeneous data from multiple radar models and ensures the physical accuracy of multi-band fusion results.
[0012] To achieve the above objectives, the present invention provides a multi-radar group mesh point generation method based on GPU parallel acceleration, comprising the following steps:
[0013] S1. Obtain volume scan data files from multiple weather radars, identify the file format and compression method of each volume scan data file, decode the moment data, and parse the volume scan data of each weather radar into a unified internal volume scan data structure; the unified internal volume scan data structure contains a multi-level structure and uses a unified field to identify and mark each observation.
[0014] S2. Define the three-dimensional target grid region according to the configuration parameters, determine the center of the grid region, the horizontal and vertical resolution, and the number of grid points in each dimension; project the station coordinates of multiple radars into the local Cartesian coordinate system with the center of the grid region as the origin;
[0015] S3. For each grid point in the three-dimensional target grid region, calculate its corresponding polar coordinate spatial position based on the effective sphere radius model, determine the spatial mapping relationship in the elevation angle, azimuth angle and range dimensions of the weather radar, obtain the adjacent element pair index and score weight in each dimension, and construct a spatial mapping lookup table.
[0016] S4. Package the spatial mapping lookup table and the unified internal volume scan data structure into a contiguous memory layout, and asynchronously upload it to the GPU memory via paged memory and non-blocking stream.
[0017] S5. Initiate parallel gridded computation on the GPU. Each GPU computation thread corresponds to a grid column. Within the grid column, it loops layer by layer from the lowest altitude layer to the highest altitude layer. For each layer, it reads the search record of the grid point in each weather radar from the spatial mapping lookup table. Candidate values and interpolation weights are obtained by sampling from the unified internal volume scan data structure in the GPU memory using an interpolation method. The spatial mapping lookup table is reused by the computation thread corresponding to the grid column in the vertical loop of the same grid column.
[0018] S6. For candidate values from multiple weather radars at the same grid point, fuse them according to the fusion strategy, and determine the fusion weight by taking into account the distance, altitude error and filling status. For reflectivity fields, perform a weighted average in the transformed numerical space and then perform an inverse transformation. For non-reflectivity fields, perform a weighted average in the original numerical space.
[0019] S7. Derive two-dimensional business products from the fused three-dimensional gridded data volume and output them.
[0020] A further preferred technical solution of the present invention is that the unified internal volume scan data structure in step S1 includes four layers, namely, the site configuration layer, the scan strategy layer, the radial data layer, and the field data layer.
[0021] The site configuration layer includes longitude, latitude, altitude, and operating frequency; the scanning strategy layer includes the elevation angle value of each elevation scanning surface, the starting distance of the distance library, the distance library spacing, and the number of distance libraries; the radial data layer includes the azimuth angle and timestamp of each ray; the field data layer marks each observation with a unified field identifier and provides a field lookup table to support fast retrieval by identifier; the observations include reflectivity factor, radial velocity, spectral width, differential reflectivity, differential phase rate, and correlation coefficient.
[0022] Preferably, the grid points of the three-dimensional target grid region in step S2 are addressed using a row-major linear index, and the indexing formula is:
[0023] ;
[0024] in, , , These are the grid point indices in the x, y, and z directions, respectively. , These are the number of grid points in the x and y directions, respectively.
[0025] Preferably, in step S3, for each grid point in the three-dimensional target grid region, its corresponding polar coordinate spatial position is calculated based on an effective sphere radius model; specifically:
[0026] The local Cartesian coordinates of the grid points Converted to horizontal distance relative to the current radar and azimuth The calculation formula is:
[0027] ,
[0028] ;
[0029] Among them, azimuth angle Calculated using the arctangent in the four quadrants, according to , The positive and negative values determine the azimuth angle The quadrant in which it is located, with a value range of 0 to 360 degrees;
[0030] Then based on the effective sphere radius Calculate the beam center height :
[0031] ;
[0032] in, , Atmospheric refractive index is determined by looking up tables based on regional meteorological reanalysis data from the locations of each radar station. The value allows each radar to calculate beam propagation using the effective spherical radius corresponding to its respective site, under standard atmospheric conditions. ; The altitude of the radar antenna. Angle of elevation This is the slope distance.
[0033] Preferably, in step S3, the spatial mapping relationship is determined in the elevation angle, azimuth angle, and range dimensions of the weather radar, respectively, to obtain the adjacent element pair indices and score weights in each dimension; specifically:
[0034] Neighbor location search is performed in the elevation sequence of the weather radar to obtain adjacent elevation pairs and their corresponding fractional weights; neighbor location search is performed in the azimuth sequence, including the 360-degree circular boundary, to obtain adjacent azimuth pairs and their corresponding fractional weights; neighbor location search is performed in the range database sequence to obtain adjacent range database pairs and their corresponding fractional weights. The search results of each dimension are summarized into a spatial mapping search record for that grid point.
[0035] Preferably, in step S4, the spatial mapping lookup table and the unified internal volume scan data structure are packaged into a contiguous memory layout and asynchronously uploaded to the GPU memory via paged memory and a non-blocking stream; specifically including:
[0036] The spatial mapping lookup table and the radar observations and geometric parameters obtained by parsing the unified internal volume scan data structure for GPU interpolation sampling are packaged into a contiguous memory layout; the radar observations and geometric parameters include the observations in the field data layer, the elevation sequence and range library parameters in the scanning strategy layer, and the azimuth sequence in the radial data layer.
[0037] The GPU memory is managed using an incremental buffering strategy, which reallocates a larger buffer only when the current buffer capacity is insufficient.
[0038] After the spatial mapping lookup table and the unified internal volume scan data structure are asynchronously uploaded to the GPU memory via paged memory and non-blocking stream, the GPU can safely read the data through stream synchronization operation, and a synchronization ready signal is sent to the GPU for parallel gridded computation.
[0039] The 3D gridded data volume obtained in step S7 is asynchronously transmitted from the GPU memory to the host side via paged memory for use in product derivation.
[0040] Preferably, in step S5, when sampling candidate values and interpolation weights from the unified internal volume scan data structure in the GPU memory using an interpolation method, the interpolation method used is one of nearest neighbor interpolation, vertical linear interpolation, horizontal and vertical bilinear interpolation, and trilinear interpolation.
[0041] Preferably, in step S6, when fusing candidate values from multiple weather radars for the same grid point according to the fusion strategy, a fusion weight is used, which is the product of the distance weight, the altitude error weight, and the filling penalty factor.
[0042] The distance weights are of Gaussian or Cressman type, and the calculation formulas are as follows:
[0043] ,
[0044] ;
[0045] in, The horizontal distance from the grid point to the radar. For distance attenuation scale parameters, For Cressman's influence radius;
[0046] The formula for calculating the height error weight is:
[0047] ;
[0048] in, For candidate sampling height, For the target height, This is the height error attenuation scale parameter;
[0049] For reflectivity fields, first convert them to linear Z-space. The conversion formula is as follows:
[0050] ;
[0051] Then, the weighted average is inversely transformed and expressed as:
[0052] ;
[0053] in, The linear reflectance value of the c-th candidate value after transformation to linear Z-space; The reflectance field observation value for the c-th candidate value, in dBZ; The fusion weight for the c-th candidate value; This is the fused output value of the grid reflectivity field, in dBZ; For each candidate index, the summation symbol sums all valid candidate indices for that grid point;
[0054] The filling penalty factor is a configurable penalty coefficient with a value no greater than 1, applied to filling or extrapolating candidates.
[0055] After fusion, record the coverage count and the radar index that contributes the largest weight;
[0056] In multi-band scenarios, the weight coefficients of each candidate are adjusted according to a frequency band priority strategy, specifically as follows:
[0057] S-band is prioritized, while X-band is given increased weight to fill gaps when there are signal blind spots in the S-band and the height error improvement conditions are met. Frequency band offset corrections are applied to the observations of radars in different frequency bands before they are included in the fusion calculation.
[0058] Preferably, the two-dimensional business products derived from the fused three-dimensional gridded data volume in step S7 include at least one of combined reflectivity, echo top height, vertical liquid water content, and mixed reflectivity.
[0059] The combined reflectivity is taken as the maximum value of the reflectivity at each height level;
[0060] The echo top height is the height at which the reflectivity first reaches a given threshold, searched downwards from the highest layer.
[0061] The vertical liquid water content is divided along the vertical column volume:
[0062] ;
[0063] in, For the first Linear reflectivity factor of the layer, in mm / m , For the first Vertical thickness of the layer, in meters; The total number of height layers participating in the vertical integration;
[0064] The hybrid reflectivity generation strategy is as follows:
[0065] For areas close to the radar, the reflectivity at low elevation angles is sampled directly from the original volume scan data. For areas far from the radar, the gridded CAPPI results are used. The two are then stitched together in the transition region by distance weight. The areas close to the radar, the areas far from the radar, and the transition region between them are defined by configurable distance thresholds.
[0066] The steps for deriving two-dimensional business products are executed on the host-side processor or GPU parallel processing unit; the output is written in standard meteorological data format, with each product variable accompanied by coverage count and master radar index diagnostics.
[0067] Another aspect of the present invention provides a multi-radar group grid point generation device based on GPU parallel acceleration, comprising:
[0068] The processor is used to perform data acquisition, volume scan parsing, grid construction, spatial mapping lookup table pre-computation, product derivation, and output.
[0069] The main memory is used to store volume scan data, spatial mapping lookup tables, and intermediate results; the main memory includes paged memory regions allocated in a paged manner.
[0070] The GPU parallel processing unit is used to perform parallel gridding and fusion calculations. The GPU parallel processing unit is configured such that each calculation thread corresponds to a grid column, and the grid column is looped from the lowest altitude layer to the highest altitude layer. For each layer, the search record of the grid point in each weather radar is read from the spatial mapping lookup table, and candidate values and interpolation weights are obtained by sampling from the radar observations and geometric parameters in the GPU memory in an interpolation manner.
[0071] The device's video memory is used to store spatial mapping lookup tables, radar observations and geometric parameters, and gridded output results transmitted from the host computer.
[0072] A data transmission path connects the paged memory region of the main memory with the device's video memory, and asynchronous transmission is achieved through a non-blocking stream;
[0073] The processor is configured as follows:
[0074] The system acquires volume scan data files from multiple weather radars, identifies the file format and compression method of each volume scan data file, decodes the moment data, and parses the volume scan data of each weather radar into a unified internal volume scan data structure. The unified internal volume scan data structure contains a multi-level structure and uses a unified field to identify and mark each observation.
[0075] Define the three-dimensional target grid region based on the configuration parameters, determine the grid region center, horizontal and vertical resolution, and the number of grid points in each dimension; project the site coordinates of multiple radars into the local Cartesian coordinate system with the grid region center as the origin;
[0076] For each grid point in the three-dimensional target grid region, its corresponding polar coordinate spatial position is calculated based on the effective sphere radius model. The spatial mapping relationship is determined in the radar elevation angle, azimuth angle and range dimensions, respectively, and the adjacent element pair index and fraction weight of each dimension are obtained to form a spatial mapping lookup table.
[0077] The spatial mapping lookup table and the unified internal volume scan data structure are packaged into a contiguous memory layout and asynchronously uploaded to the GPU memory via paged memory and non-blocking stream.
[0078] Derive and output two-dimensional business products from the fused three-dimensional gridded data volume;
[0079] The GPU parallel processing unit is configured to: fuse candidate values from multiple weather radars at the same grid point according to a fusion strategy, and determine the fusion weight by considering distance, altitude error and filling status; for reflectivity fields, perform a weighted average in the transformed numerical space and then perform an inverse transformation; for non-reflectivity fields, perform a weighted average in the original numerical space.
[0080] Beneficial effects: (1) Unlike existing technologies where each format needs to be independently connected to downstream modules, this invention designs a four-layer structure (site configuration, scanning strategy, radial data, field data) and introduces a unified field identifier and reverse lookup table mechanism to encapsulate the format differences of multiple radar models within the parsing module. All downstream modules only need to connect to a single data structure. By unifying the internal volume scan data structure, the volume scan data of different weather radar models are normalized and expressed. Downstream processing modules only need to connect to a single data interface, reducing system complexity and facilitating the expansion of support for new radar models.
[0081] (2) Existing GPU parallel solutions mostly employ a flat mapping of one thread per grid point, failing to utilize the spatial locality of lookup tables in the vertical direction. In this invention, each GPU computing thread is responsible for a complete vertical cylinder at a fixed horizontal position, and multiple radars are sampled cyclically at multiple elevation angles within the column, with the same pre-computed spatial mapping lookup table reusable across multiple fields. With a parallel granularity of one GPU computing thread corresponding to one grid point column, the same pre-computed spatial mapping lookup table can be reused across multiple observation fields, avoiding redundant spatial mapping calculations.
[0082] (3) In the prior art, the CPU and GPU often use synchronous transmission or frequent memory allocation and release. In this invention, the host-side data is allocated using paged memory and asynchronously uploaded to the GPU memory via non-blocking streams. The host thread can continue to prepare subsequent data during the transmission. The device-side adopts an incremental buffer strategy to reduce the number of memory allocations. The combination of paged host memory and non-blocking streams allows the data preparation on the CPU side and the computation on the GPU side to overlap. The incremental strategy of the device buffer reduces the number of memory allocations and lowers the end-to-end processing latency.
[0083] (4) The reflectivity fields of this invention are weighted and averaged in linear Z-space rather than logarithmic dBZ-space, eliminating nonlinear bias. The multi-band fusion strategy (S-band priority, X-band gap filling, frequency band offset correction) and parameters such as distance weight type and filling penalty factor can all be adjusted through external configuration. The reflectivity fields are fused and weighted in linear Z-space rather than logarithmic dBZ-space, eliminating the nonlinear bias introduced by logarithmic averaging, making the fusion result more accurate in a physical sense. At the same time, the multi-band fusion strategy (such as S-band priority, X-band gap filling) and parameters such as distance weight type and filling penalty factor can all be adjusted through external configuration, adapting to different networking scenarios without modifying the core program.
[0084] (5) Existing GPU solutions typically do not have an automatic fallback mechanism. The system of this invention automatically detects GPU availability during runtime, automatically falls back to the CPU reference path when the GPU malfunctions, and caches the failure status within the same process to avoid repeated attempts. Attached Figure Description
[0085] Figure 1 This is a flowchart illustrating the overall process of the multi-radar group grid point generation method based on GPU parallel acceleration of the present invention.
[0086] Figure 2 This is a schematic diagram of the thread organization in GPU parallel gridding of this invention;
[0087] Figure 3 This is a flowchart of the multi-radar fusion weight calculation process in this invention;
[0088] Figure 4 This is a schematic diagram of the composition of the GPU parallel acceleration multi-radar group grid point generation device of the present invention. Detailed Implementation
[0089] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, embodiments of this invention, and should not be construed as limiting the invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention. In the description of this invention, it should be understood that the terminology used is for descriptive purposes only and should not be construed as indicating or implying relative importance.
[0090] To more clearly illustrate the technical solution of the present invention, some of the technical terms involved in the present invention are explained below.
[0091] Volume Scan: The process by which a weather radar rotates and scans at several fixed elevation angles to complete one full three-dimensional spatial sampling.
[0092] Gridding: The numerical computation process of mapping radar polar coordinate observation data onto a regular rectangular coordinate grid.
[0093] CAPPI (Constant Altitude Plan Position Indicator): A two-dimensional planar product obtained by extracting radar gridded data on a given altitude surface.
[0094] Composite Reflectivity (CR): A two-dimensional product composed of the maximum reflectivity of all height layers at each horizontal grid point.
[0095] Echo Top (ETOP): The highest height at each horizontal grid point that satisfies a given reflectivity threshold.
[0096] Vertically Integrated Liquid (VIL): The total amount of liquid water estimated by integrating reflectivity along a vertical column.
[0097] GPU (Graphics Processing Unit): A dedicated processor capable of handling large-scale data-parallel computation.
[0098] Pinned memory: A physical memory region allocated on the host side that cannot be swapped out, which can be read and written at high speed by the GPU through Direct Memory Access (DMA).
[0099] Non-blocking Stream: A command queue on the GPU that does not block the host thread after a command is submitted, allowing the host to continue performing other operations.
[0100] Neighbor lookup (also known as sandwich lookup): the process of finding adjacent element pairs and their interpolation weights on both sides of a target value in an ordered sequence.
[0101] Linear Z-space: Converts the reflectivity factor from logarithmic units (dBZ) to linear power units. The weighted average can be performed in the numerical space where the logarithmic domain is located to avoid the nonlinear bias of the logarithmic domain average.
[0102] Effective Earth radius: To simplify beam propagation calculations under atmospheric refraction conditions, the actual Earth radius is multiplied by the refractive factor. (Under standard atmospheric conditions) The equivalent radius obtained.
[0103] dBZ: The logarithmic unit of radar reflectivity factor, defined as follows: .
[0104] S-band: The radar operating band with frequencies of 2~4GHz, offering long detection range and minimal precipitation attenuation.
[0105] X-band: The radar operating band with frequencies of 8~12GHz, offering high spatial resolution but significant precipitation attenuation.
[0106] Hybrid Reflectivity: A representative reflectivity product obtained by combining close-range low-elevation angle direct sampling and long-range gridded results, weighted by distance.
[0107] Differential Reflectivity (ZDR): The logarithmic representation of the ratio of horizontally polarized to vertically polarized echo power, reflecting information about the shape of precipitation particles.
[0108] Specific Differential Phase (KDP): The rate of change of the phase difference between the horizontal and vertical polarizations of a radar signal along the distance.
[0109] Moment data: Observations obtained by weather radar through statistical processing of pulse signals, including reflectivity factor, radial velocity, spectral width, etc.
[0110] Cressman analysis: an objective weighted analysis method based on the radius of influence. The weight within the radius of influence decreases as the distance increases, while the weight outside the radius is zero.
[0111] CPU (Central Processing Unit): A host-side processor that executes general-purpose computing instructions.
[0112] The following is combined Figures 1-4 This invention describes a multi-radar group grid point generation method and apparatus based on GPU parallel acceleration.
[0113] Example 1: This example provides a multi-radar group grid point method based on GPU parallel acceleration.
[0114] The design concept of this invention is as follows: It eliminates format differences among multiple radar models by constructing a unified internal volume scan data structure; it pre-computes a spatial mapping lookup table between the target grid and the polar coordinate observation space and reuses it for multiple fields; it utilizes paged memory and non-blocking streams to achieve asynchronous data transmission from the CPU to the GPU; and it completes gridding and multi-radar fusion on the GPU with a parallel granularity of one computing thread corresponding to one grid column. Specifically:
[0115] Step 1: Data Acquisition and Analysis: Acquire volume scan data files from multiple weather radars, automatically identify file formats and compression methods, decode the volume scan data, and parse the volume scan data of each radar model into a unified internal volume scan data structure.
[0116] Step 2: Target grid construction: Define the preset 3D target grid region, determine the grid center position, horizontal and vertical resolution, and the number of grid points in each dimension.
[0117] Step 3: Pre-calculation of spatial mapping lookup table: For each target grid point, calculate its corresponding polar coordinate spatial position based on the effective sphere radius model. Perform neighbor location lookup in the radar's elevation, azimuth, and range database sequences to obtain the neighbor element pair indexes and fractional weights for each dimension, thus constructing a spatial mapping lookup table.
[0118] Step 4, GPU memory upload: Package the spatial mapping lookup table and radar observation data into a contiguous memory layout, and asynchronously upload them to GPU memory via paged memory and non-blocking stream.
[0119] Step 5: GPU Parallel Gridded Computation: Each GPU computing thread is responsible for a grid column, and it iterates layer by layer from low to high within the column, sampling candidate values and candidate weights from the radar data according to the selected interpolation method.
[0120] Step 6, Multi-radar fusion: For candidate values from multiple radars at the same grid point, the fusion weight is determined by combining the distance weight, altitude error weight, and filling penalty factor; reflectivity fields are weighted averaged in linear Z-space; in multi-band scenarios, the weights are adjusted according to configurable frequency band strategies.
[0121] Step 7: Product Output: Derive two-dimensional business products such as reflectivity, echo top height, vertical liquid water content, and mixed reflectivity from the three-dimensional gridded data volume, and publish them in a standard format.
[0122] For ease of description and to facilitate the deployment and implementation of specific solutions, the above steps are divided into several functional modules in this embodiment. Each module performs a specific function and can be deployed independently.
[0123] The M1 radar data acquisition module is responsible for reading volume scan data files from multiple weather radars from the local file system or network interface. This module automatically detects the compression format of the input file (such as common data compression formats like gzip and bzip2), decompresses it, and outputs the raw byte stream. It is deployed on the host-side processor.
[0124] The M2 data parsing module receives the raw byte stream output from M1, determines the specific format type of the volume scan file based on the file header feature fields, decodes the moment data (including unsigned 8-bit and unsigned 16-bit encoding methods), and outputs a unified internal volume scan data structure. This structure contains four layers: a station configuration layer (longitude, latitude, altitude, operating frequency), a scanning strategy layer (elevation angle values for each elevation scan surface, distance library start distance, distance library spacing, and distance library quantity), a radial data layer (azimuth angle and timestamp for each ray), and a field data layer (marking each observation with a unified field identifier and providing a field reverse lookup table to support fast retrieval by identifier). It is deployed on the host-side processor.
[0125] M3 Target Grid Construction Module: Defines a 3D target grid region based on configuration parameters. The grid region consists of the center latitude and longitude (or local origin coordinates), horizontal resolution, a list of vertical height layers, and the number of grid points in each dimension. , , Uniquely determined. Grid addressing uses a row-major linear index. The site coordinates of multiple radars are uniformly projected into a local Cartesian coordinate system with the center of the grid area as the origin. This is deployed on the host-side processor.
[0126] M4 Spatial Mapping Lookup Table Module: For each grid point in the target grid region, calculates its corresponding position in the polar coordinate space of each radar. First, the local Cartesian coordinates of the grid points are... Convert to horizontal distance and azimuth , Among them, azimuth angle Calculated using the arctangent in the four quadrants, according to , The positive and negative values determine the azimuth angle The quadrant in which the value is located ranges from 0 to 360 degrees; then, based on the effective sphere radius... (in Under standard atmospheric conditions Calculate the beam center height:
[0127] ;
[0128] in The altitude of the radar antenna. Angle of elevation This refers to the slant range. Neighbor location is performed in the radar's elevation sequence to obtain adjacent elevation angle pairs. and score weights Perform neighbor location lookup (including 360-degree circular boundary processing) in the azimuth sequence to obtain adjacent azimuth pairs and their fractional weights. Perform neighbor location lookup in the distance library sequence to obtain adjacent distance library pairs and their score weights. The search results from each dimension are summarized into a spatial mapping search record for that grid point. This is deployed on the host-side processor.
[0129] The M5 memory transfer module is responsible for data transfer between the host and GPU. It allocates memory on the host side using a page-locking method and initiates asynchronous transfer commands via non-blocking streams to copy data from the host to the GPU's video memory. After the transfer command is submitted, the host thread does not block and wait. On the device side, it employs an incremental buffering strategy, reallocating a larger buffer only when the current buffer capacity is insufficient. After the transfer is complete, stream synchronization ensures that the GPU can safely read the data. It is deployed between the host-side processor and the GPU's parallel processing unit.
[0130] The M6GPU parallel gridding module performs gridded computations on the GPU. Each computation thread corresponds to a grid column (i.e., a fixed horizontal position). The entire vertical column is looped from the lowest to the highest altitude layer within the column. For each layer, the elevation, azimuth, range, and score weights of the grid point in each radar are read from the spatial mapping lookup table, and samples are taken according to the selected interpolation method. The interpolation methods include: nearest neighbor interpolation (taking a single sample from the nearest elevation, nearest azimuth, and nearest range database), vertical linear interpolation (linearly weighting adjacent elevation angles on the nearest azimuth and nearest range databases), horizontal and vertical bilinear interpolation (bilinearly weighting the azimuth and range databases and then vertically interpolating the elevation angle), and trilinear interpolation (all three dimensions are involved in the weighting). As an optional implementation, a two-stage kernel can also be used: the first stage performs parallel sampling of all grid point-radar combinations to output candidate value arrays, and the second stage performs fusion of the candidate values for each grid point. Deployed on a GPU parallel processing unit.
[0131] The M7 multi-radar fusion module fuses candidate values from multiple radars at the same grid point according to a fusion strategy. The fusion weight is the product of the range weight, altitude error weight, and padding penalty factor. The range weight supports Gaussian type.
[0132] ;
[0133] And Cressman type:
[0134] ;
[0135] The height error weight is:
[0136] ;
[0137] in The horizontal distance from the grid point to the radar. For distance attenuation scale parameters, For Cressman's influence radius, For candidate sampling height, For the target height, This is the height error attenuation scale parameter.
[0138] Reflectivity fields are first converted to linear Z-space. Weighted average followed by inverse transformation:
[0139] ;
[0140] in, The linear reflectance value of the c-th candidate value after transformation to linear Z-space; The reflectance field observation value for the c-th candidate value, in dBZ; The fusion weight for the c-th candidate value; This is the fused output value of the grid reflectivity field, in dBZ; For each candidate index, the summation symbol sums all valid candidate indices for that grid point;
[0141] Non-reflectivity fields are directly weighted averaged in the original numerical space.
[0142] The filling penalty factor is a configurable penalty coefficient with a value no greater than 1, applied to filling or extrapolating candidates.
[0143] In multi-band scenarios, a frequency-band priority strategy is used to adjust weights: the S-band is assigned a higher weight by default, and the X-band's weight is increased to fill the gap region when there is a signal blind spot in the S-band and the height error improvement condition is met. It is deployed on a GPU parallel processing unit (executed within the same computing core as the M6, or executed by a separate second-stage core in a two-stage core implementation).
[0144] M8 Product Derivation Module: Derives 2D business products from 3D gridded data volumes. Combined reflectivity is calculated based on the maximum value of each height layer; echo top height is searched downwards from the highest layer to the height at which reflectivity first reaches a given threshold; vertical liquid water content is integrally distributed along the vertical cylinder.
[0145] ;
[0146] in For the first Linear reflectivity factor of the layer (in mm) / m ), This represents the vertical thickness of the layer (in meters). This represents the total number of height layers participating in the vertical integration. The mixed reflectivity is generated as follows: for areas close to the radar, low-elevation reflectivity is sampled directly from the raw volume scan data to reduce high-elevation beam obstruction bias; for areas far from the radar, gridded CAPPI results are used; the two are then weighted and stitched together in the transition region to obtain a representative reflectivity product that balances near-range accuracy and long-range coverage. The areas close to the radar, the distant areas, and the transition region between them are defined by configurable distance thresholds. Deployed on a host-side processor or GPU parallel processing unit.
[0147] The M9 formatted output module: writes the gridded results and derived products in a standard meteorological data format (such as NetCDF), with each product variable accompanied by diagnostic quantities such as coverage count and master radar index. It is deployed on the host-side processor.
[0148] The M10 backend runtime dispatch module automatically detects the availability of the GPU runtime environment during system startup. If the GPU is available, it selects the GPU path to execute M5, M6, and M7; if the GPU is unavailable or an exception occurred during the previous execution, it automatically switches to the CPU reference path to perform equivalent gridded computation, and caches this state within the same process to avoid repeated attempts, ensuring business continuity. It is deployed on the host-side processor.
[0149] The data flow and signal relationships between modules are as follows: Figure 1 As shown:
[0150] M1 (radar data acquisition module) outputs the raw byte stream and passes it to M2 (data parsing module).
[0151] M2 outputs a unified internal volume scan data structure (including four layers: site configuration, scan strategy, radial data, and field data), which is then passed to M4 (spatial mapping lookup table module) and M5 (video memory transfer module).
[0152] M3 (target grid construction module) outputs a 3D grid definition (including grid geometric parameters and the projection coordinates of each radar in the local coordinate system) and passes it to M4.
[0153] M4 receives the outputs from M2 and M3, generates a spatial mapping lookup table (each grid point corresponds to the elevation, azimuth, range, and fractional weights of each radar), and passes it to M5.
[0154] M5 receives radar observation data output from M2 and spatial mapping lookup table output from M4. After being packaged into a continuous byte stream via paged memory, it is asynchronously uploaded to GPU memory via a non-blocking stream for M6 and M7 to read. After the transmission is complete, a synchronization ready signal is sent to M6.
[0155] M6 (GPU Parallel Gridding Module) reads the spatial mapping lookup table and radar data from the GPU memory, performs parallel gridding calculations, and outputs an array of candidate values and an array of candidate weights, which are then passed to M7.
[0156] M7 (multi-radar fusion module) receives the candidate values and weights output by M6, performs fusion calculations, and outputs a three-dimensional gridded data volume (including grid values, coverage counts, master radar index, and quality weights). This data is then transmitted in reverse via M5 (GPU memory to host page memory, asynchronous and non-blocking) to M8.
[0157] M8 (product derivation module) receives the three-dimensional gridded data volume and outputs two-dimensional derived products (combined reflectivity, echo top height, vertical liquid water content, mixed reflectivity, etc.) to M9.
[0158] The M9 (formatted output module) receives product data output from the M8 and writes it into a standard format file.
[0159] M10 (backend runtime dispatch module) detects the GPU environment before M5 is executed, determines whether the data flow should follow the GPU path (M5→M6→M7) or the CPU reference path, and automatically switches in case of an anomaly.
[0160] As an optional implementation, a quality control unit (for pre-filtering artifacts and marking bit flags on volume scan data) and a signal processing unit (for performing differential phase rate estimation on the GPU) can be inserted between M2 and M4. The outputs of both remain the same internal volume scan data structure, without changing the interface of the downstream modules.
[0161] As an alternative implementation, when calculating the effective sphere radius, M4 can obtain different atmospheric refractive factors by looking up tables based on regional meteorological reanalysis data (such as ERA5 reanalysis data) of each radar station's location. This value allows each radar to use the effective spherical radius corresponding to its own site for beam propagation calculations, in order to adapt to the differences in atmospheric refraction conditions in different regions.
[0162] The specific operating logic and methods of some modules are explained in more detail below.
[0163] The logical scheme of the M4 space mapping lookup table module is as follows: Figure 1 As shown, the following logic is performed for each target grid point: (a) Convert the local Cartesian coordinates of the grid point to the horizontal range and azimuth relative to the current radar; (b) Calculate the beam center height for each elevation angle of the radar based on the effective sphere radius model; (c) Search for the target height in the elevation angle sequence, find the adjacent elevation angle pairs and fractional weights, and mark the target height as invalid if it is lower than the lowest elevation angle or higher than the beam height of the highest elevation angle; (d) Search for the target azimuth in the azimuth sequence, process the circular boundary from 360 degrees to 0 degrees, and find the adjacent azimuth pairs and fractional weights; (e) Calculate the library index corresponding to the target distance in the range library sequence based on the starting distance and spacing of the range library, and find the adjacent range library pairs and fractional weights; (f) Assemble the results of each dimension into a spatial mapping lookup record.
[0164] The logical scheme of the M6GPU parallel gridding module is as follows: Figure 2 As shown, after the GPU thread starts, it calculates the corresponding horizontal grid position based on the thread's global index. For each height level within that grid column. (From 0 to The following loop is executed: (a) Calculate the altitude of the current altitude layer; (b) Traverse all radars and read the lookup record for each grid point from the spatial mapping lookup table for each radar; (c) If the lookup record is valid, sample candidate values and candidate weights from the radar data according to the selected interpolation method (nearest neighbor / vertical linear / bilinear / trilinear); (d) If the candidate value is valid, calculate the fusion weight of the candidate (distance weight multiplied by altitude error weight multiplied by padding penalty factor) and add it to the fusion result; (e) After all radars have been traversed, perform linear Z-space inverse transform on reflectivity fields and directly output the weighted average value for non-reflectivity fields; (f) Write to the corresponding position in the output array.
[0165] The logic scheme of the M7 multi-radar fusion module is as follows: Figure 3 As shown, the following logic is executed for the candidate value set of each grid point: (a) Calculate the distance weight of each candidate (Gaussian or Cressman type, selected by configuration); (b) Calculate the height error weight of each candidate; (c) Multiply by the filling penalty factor to obtain the final weight; (d) Determine whether the current field is reflectivity: if yes, convert each candidate value from dBZ to linear Z value and then perform a weighted average and inverse transformation; if no, directly perform a weighted average; (e) In multi-band scenarios, adjust the weight coefficient of each candidate according to the frequency band priority strategy (such as S-band priority, X-band gap filling) - when the S-band radar has a signal blind zone at this grid point (beam height error exceeds the configuration threshold) and the height error of the X-band radar is lower than the improvement threshold, increase the weight of the X-band candidate; apply frequency band offset correction (configurable) to the observation values of different frequency band radars before participating in the fusion calculation; (f) Record the coverage count and the radar index that contributes the largest weight.
[0166] Example 2: This example provides a multi-radar group grid point generation device based on GPU parallel acceleration, such as... Figure 4 As shown, it includes:
[0167] The processor is used to perform data acquisition, volume scan parsing, grid construction, spatial mapping lookup table pre-computation, product derivation, and output.
[0168] The main memory is used to store volume scan data, spatial mapping lookup tables, and intermediate results; the main memory includes paged memory regions allocated in a paged manner.
[0169] The GPU parallel processing unit is used to perform parallel gridding and fusion calculations. The GPU parallel processing unit is configured such that each calculation thread corresponds to a grid column, and the grid column is looped from the lowest altitude layer to the highest altitude layer. For each layer, the search record of the grid point in each weather radar is read from the spatial mapping lookup table, and candidate values and interpolation weights are obtained by sampling from the radar observations and geometric parameters in the GPU memory in an interpolation manner.
[0170] The device's video memory is used to store spatial mapping lookup tables, radar observations and geometric parameters, and gridded output results transmitted from the host computer.
[0171] A data transmission path connects the paged memory region of the main memory with the device's video memory, and asynchronous transmission is achieved through a non-blocking stream;
[0172] The processor is configured as follows:
[0173] The system acquires volume scan data files from multiple weather radars, identifies the file format and compression method of each volume scan data file, decodes the moment data, and parses the volume scan data of each weather radar into a unified internal volume scan data structure. The unified internal volume scan data structure contains a multi-level structure and uses a unified field to identify and mark each observation.
[0174] Define the three-dimensional target grid region based on the configuration parameters, determine the grid region center, horizontal and vertical resolution, and the number of grid points in each dimension; project the site coordinates of multiple radars into the local Cartesian coordinate system with the grid region center as the origin;
[0175] For each grid point in the three-dimensional target grid region, its corresponding polar coordinate spatial position is calculated based on the effective sphere radius model. The spatial mapping relationship is determined in the radar elevation angle, azimuth angle and range dimensions, respectively, and the adjacent element pair index and fraction weight of each dimension are obtained to form a spatial mapping lookup table.
[0176] The spatial mapping lookup table and the unified internal volume scan data structure are packaged into a contiguous memory layout and asynchronously uploaded to the GPU memory via paged memory and non-blocking stream.
[0177] Derive and output two-dimensional business products from the fused three-dimensional gridded data volume;
[0178] The GPU parallel processing unit is configured to: fuse candidate values from multiple weather radars at the same grid point according to a fusion strategy, and determine the fusion weight by considering distance, altitude error and filling status; for reflectivity fields, perform a weighted average in the transformed numerical space and then perform an inverse transformation; for non-reflectivity fields, perform a weighted average in the original numerical space.
[0179] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0180] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platform, or of course by hardware.
[0181] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A multi-radar group grid point generation method based on GPU parallel acceleration, characterized in that, Includes the following steps: S1. Obtain volume scan data files from multiple weather radars, identify the file format and compression method of each volume scan data file, decode the moment data, and parse the volume scan data of each weather radar into a unified internal volume scan data structure; the unified internal volume scan data structure contains a multi-level structure and uses a unified field to identify and mark each observation. S2. Define the three-dimensional target grid region according to the configuration parameters, determine the center of the grid region, the horizontal and vertical resolution, and the number of grid points in each dimension; project the station coordinates of multiple radars into the local Cartesian coordinate system with the center of the grid region as the origin; S3. For each grid point in the three-dimensional target grid region, calculate its corresponding polar coordinate spatial position based on the effective sphere radius model, determine the spatial mapping relationship in the elevation angle, azimuth angle and range dimensions of the weather radar, obtain the adjacent element pair index and score weight in each dimension, and construct a spatial mapping lookup table. S4. Package the spatial mapping lookup table and the unified internal volume scan data structure into a contiguous memory layout, and asynchronously upload it to the GPU memory via paged memory and non-blocking stream. S5. Initiate parallel gridded computation on the GPU. Each GPU computation thread corresponds to a grid column. Within the grid column, it loops layer by layer from the lowest altitude layer to the highest altitude layer. For each layer, it reads the search record of the grid point in each weather radar from the spatial mapping lookup table. Candidate values and interpolation weights are obtained by sampling from the unified internal volume scan data structure in the GPU memory using an interpolation method. The spatial mapping lookup table is reused by the computation thread corresponding to the grid column in the vertical loop of the same grid column. S6. For candidate values from multiple weather radars at the same grid point, fuse them according to the fusion strategy, and determine the fusion weight by taking into account the distance, altitude error and filling status. For reflectivity fields, perform a weighted average in the transformed numerical space and then perform an inverse transformation. For non-reflectivity fields, perform a weighted average in the original numerical space. When fusing candidate values from multiple weather radars for the same grid point according to the fusion strategy, a fusion weight is used, which is the product of the distance weight, the altitude error weight, and the filling penalty factor. The distance weights are of Gaussian or Cressman type, and the calculation formulas are as follows: , ; in, The horizontal distance from the grid point to the radar. For distance attenuation scale parameters, For Cressman's influence radius; The formula for calculating the height error weight is: ; in, For candidate sampling height, For the target height, This is the height error attenuation scale parameter; For reflectivity fields, first convert them to linear Z-space. The conversion formula is as follows: ; Then, the weighted average is inversely transformed and expressed as: ; in, The linear reflectance value of the c-th candidate value after transformation to linear Z-space; The reflectance field observation value for the c-th candidate value, in dBZ; The fusion weight for the c-th candidate value; This is the fused output value of the grid reflectivity field, in dBZ; For each candidate index, the summation symbol sums all valid candidate indices for that grid point; The filling penalty factor is a configurable penalty coefficient with a value no greater than 1, applied to filling or extrapolating candidates. After fusion, record the coverage count and the radar index that contributes the largest weight; In multi-band scenarios, the weight coefficients of each candidate are adjusted according to a frequency band priority strategy, specifically as follows: S-band is prioritized, while X-band is given increased weight to fill gap regions when there are signal blind spots in S-band and the height error improvement conditions are met; frequency band offset corrections are applied to the observations of radars in different frequency bands before they are included in the fusion calculation. S7. Derive two-dimensional business products from the fused three-dimensional gridded data volume and output them.
2. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 1, characterized in that, The unified internal volume scan data structure described in step S1 includes four layers: site configuration layer, scan strategy layer, radial data layer, and field data layer. The site configuration layer includes longitude, latitude, altitude, and operating frequency; the scanning strategy layer includes the elevation angle value of each elevation scanning surface, the starting distance of the distance library, the distance library spacing, and the number of distance libraries; the radial data layer includes the azimuth angle and timestamp of each ray; the field data layer marks each observation with a unified field identifier and provides a field lookup table to support fast retrieval by identifier; the observations include reflectivity factor, radial velocity, spectral width, differential reflectivity, differential phase rate, and correlation coefficient.
3. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 1, characterized in that, In step S2, the grid points of the three-dimensional target grid region are addressed using a row-major linear index, and the index formula is as follows: ; in, , , These are the grid point indices in the x, y, and z directions, respectively. , These are the number of grid points in the x and y directions, respectively.
4. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 1, characterized in that, In step S3, for each grid point in the three-dimensional target grid region, its corresponding polar coordinate spatial position is calculated based on the effective sphere radius model; specifically: The local Cartesian coordinates of the grid points Converted to horizontal distance relative to the current radar and azimuth The calculation formula is: , ; Among them, azimuth angle Calculated according to the arctangent of the four quadrants, based on , The positive and negative values determine the azimuth angle The quadrant in which it is located, with a value range of 0 to 360 degrees; Then based on the effective sphere radius Calculate the beam center height : ; in, , Atmospheric refractive index is determined by looking up tables based on regional meteorological reanalysis data from the locations of each radar station. The value allows each radar to calculate beam propagation using the effective spherical radius corresponding to its respective site, under standard atmospheric conditions. ; The altitude of the radar antenna. Angle of elevation This is the slope distance.
5. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 4, characterized in that, In step S3, the spatial mapping relationship is determined in the elevation, azimuth, and range dimensions of the weather radar, respectively, to obtain the index and score weight of adjacent element pairs in each dimension; specifically: Neighbor location search is performed in the elevation sequence of the weather radar to obtain adjacent elevation pairs and their corresponding fractional weights; neighbor location search is performed in the azimuth sequence, including the 360-degree circular boundary, to obtain adjacent azimuth pairs and their corresponding fractional weights; neighbor location search is performed in the range database sequence to obtain adjacent range database pairs and their corresponding fractional weights. The search results of each dimension are summarized into a spatial mapping search record for that grid point.
6. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 1, characterized in that, In step S4, the spatial mapping lookup table and the unified internal volume scan data structure are packaged into a contiguous memory layout and asynchronously uploaded to the GPU memory via paged memory and a non-blocking stream; specifically, this includes: The spatial mapping lookup table and the radar observations and geometric parameters obtained by parsing the unified internal volume scan data structure for GPU interpolation sampling are packaged into a contiguous memory layout; the radar observations and geometric parameters include the observations in the field data layer, the elevation sequence and range library parameters in the scanning strategy layer, and the azimuth sequence in the radial data layer. The GPU memory is managed using an incremental buffering strategy, which reallocates a larger buffer only when the current buffer capacity is insufficient. After the spatial mapping lookup table and the unified internal volume scan data structure are asynchronously uploaded to the GPU memory via paged memory and non-blocking stream, the GPU can safely read the data through stream synchronization operation, and a synchronization ready signal is sent to the GPU for parallel gridded computation. The 3D gridded data volume obtained in step S7 is asynchronously transmitted from the GPU memory to the host side via paged memory for use in product derivation.
7. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 1, characterized in that, In step S5, when sampling candidate values and interpolation weights from the unified internal volume scan data structure in the GPU memory using an interpolation method, the interpolation method used is one of nearest neighbor interpolation, vertical linear interpolation, horizontal and vertical bilinear interpolation, and trilinear interpolation.
8. The multi-radar group grid point generation method based on GPU parallel acceleration according to claim 1, characterized in that, In step S7, the two-dimensional business products derived from the fused three-dimensional gridded data volume include at least one of combined reflectivity, echo top height, vertical liquid water content, and mixed reflectivity. The combined reflectivity is taken as the maximum value of the reflectivity at each height level; The echo top height is the height at which the reflectivity first reaches a given threshold, searched downwards from the highest layer. The vertical liquid water content is divided along the vertical column volume: ; in, For the first Linear reflectivity factor of the layer, in mm / m , For the first Vertical thickness of the layer, in meters; The total number of height layers participating in the vertical integration; The hybrid reflectivity generation strategy is as follows: For areas close to the radar, the reflectivity at low elevation angles is sampled directly from the original volume scan data. For areas far from the radar, the gridded CAPPI results are used. The two are then stitched together in the transition region by distance weight. The areas close to the radar, the areas far from the radar, and the transition region between them are defined by configurable distance thresholds. The steps for deriving two-dimensional business products are executed on the host-side processor or GPU parallel processing unit; the output is written in standard meteorological data format, with each product variable accompanied by coverage count and master radar index diagnostics.
9. A multi-radar group meshing device based on GPU parallel acceleration, the device being used to execute the multi-radar group meshing method based on GPU parallel acceleration as described in any one of claims 1-8, characterized in that, include: The processor is used to perform data acquisition, volume scan parsing, grid construction, spatial mapping lookup table pre-computation, product derivation, and output. The main memory is used to store volume scan data, spatial mapping lookup tables, and intermediate results; the main memory includes paged memory regions allocated in a paged manner. The GPU parallel processing unit is used to perform parallel gridding and fusion calculations. The GPU parallel processing unit is configured such that each calculation thread corresponds to a grid column, and the grid column is looped from the lowest altitude layer to the highest altitude layer. For each layer, the search record of the grid point in each weather radar is read from the spatial mapping lookup table, and candidate values and interpolation weights are obtained by sampling from the radar observations and geometric parameters in the GPU memory in an interpolation manner. The device's video memory is used to store spatial mapping lookup tables, radar observations and geometric parameters, and gridded output results transmitted from the host computer. A data transmission path connects the paged memory region of the main memory with the device's video memory, and asynchronous transmission is achieved through a non-blocking stream; The processor is configured as follows: The system acquires volume scan data files from multiple weather radars, identifies the file format and compression method of each volume scan data file, decodes the moment data, and parses the volume scan data of each weather radar into a unified internal volume scan data structure. The unified internal volume scan data structure contains a multi-level structure and uses a unified field to identify and mark each observation. Define the three-dimensional target grid region based on the configuration parameters, determine the grid region center, horizontal and vertical resolution, and the number of grid points in each dimension; project the site coordinates of multiple radars into the local Cartesian coordinate system with the grid region center as the origin; For each grid point in the three-dimensional target grid region, its corresponding polar coordinate spatial position is calculated based on the effective sphere radius model. The spatial mapping relationship is determined in the radar elevation angle, azimuth angle and range dimensions, respectively, and the adjacent element pair index and fraction weight of each dimension are obtained to form a spatial mapping lookup table. The spatial mapping lookup table and the unified internal volume scan data structure are packaged into a contiguous memory layout and asynchronously uploaded to the GPU memory via paged memory and non-blocking stream. Derive and output two-dimensional business products from the fused three-dimensional gridded data volume; The GPU parallel processing unit is configured to: fuse candidate values from multiple weather radars at the same grid point according to a fusion strategy, and determine the fusion weight by considering distance, altitude error and filling status; for reflectivity fields, perform a weighted average in the transformed numerical space and then perform an inverse transformation; for non-reflectivity fields, perform a weighted average in the original numerical space.
Citation Information
Patent Citations
Section interpolation method and device for weather radar body scanning data
CN119963722A
Adaptive cooperative scanning method of phased array radar for severe convective weather
CN121186786A