Simulation and calculation method for satellite networking area coverage performance
By using a heterogeneous multiprocessor architecture with multiple CPUs and multiple GPUs and the CUDA architecture, efficient parallel simulation and calculation of satellite network coverage performance were achieved, solving the problem of low computing efficiency in large-scale satellite networking and improving computing speed and accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-11
- Publication Date
- 2026-03-31
AI Technical Summary
Large-scale satellite networking is not efficient in calculating the coverage effectiveness of remote sensing, communication, and navigation in ground areas. Traditional serial simulation evaluation algorithms have a large computational load and cannot meet the needs of high-performance simulation operation and dynamic and rapid indicator evaluation.
A heterogeneous multiprocessor hybrid architecture with multiple CPUs and multiple GPUs is adopted. Through a three-level parallel mechanism of multiple CPU threads, multiple GPU devices, and multiple GPU threads, combined with the CUDA architecture and calculation and statistical methods for different levels of satellite network coverage performance indicators, efficient parallel simulation and calculation of satellite network coverage performance are achieved.
While ensuring computational accuracy, it effectively reduces computation time, enabling efficient parallel operation of satellite network coverage performance simulation and optimizing the utilization of simulation resources.
Smart Images

Figure CN116150943B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of satellite simulation technology, specifically to a method for simulating and calculating the regional coverage effectiveness of satellite networking. Background Technology
[0002] Simulation of the spatiotemporal coverage performance of large-scale satellite networks over ground areas is the foundation for simulation of the performance of satellite networking and systematic applications. Because this type of simulation involves a large number of satellites and a large mission area, the traditional serial simulation evaluation algorithm has a very large computational load, which cannot meet the requirements of high-performance simulation operation and dynamic and rapid indicator evaluation. Summary of the Invention
[0003] In view of this, the present invention aims to propose a simulation and calculation method for the coverage effectiveness of satellite networking areas, which solves the problem of low calculation efficiency of large-scale, multi-task satellite networking for remote sensing, communication, navigation and other coverage areas in existing simulation systems, and effectively reduces calculation time while ensuring calculation accuracy.
[0004] This invention provides a simulation and calculation method for the regional coverage effectiveness of satellite networking, the method comprising:
[0005] S100, executes simulation scene editing and initialization;
[0006] S200 uses multiple simulation CPU threads to simulate the space state of each satellite in a satellite network in parallel, where the number of satellite networks can be one or more.
[0007] S300: Through at least one computing CPU thread, write the data obtained after performing simulation scene editing and initialization in step S100, and the spatial state data of each satellite obtained in step S200, into the GPU.
[0008] The S400 uses GPUs to perform parallel calculations of the coverage performance metrics for each satellite constellation.
[0009] Preferably, step S100 includes:
[0010] Set the simulation duration, simulation step size, scenario initial epoch time, and satellite initial state;
[0011] Select the satellite networking mission type. The satellite networking mission types include three types: remote sensing, communication, and navigation.
[0012] The target area is divided, with at least one target area, and each satellite network corresponds to at least one target area; and
[0013] Associate each satellite network with its corresponding target area;
[0014] The process of dividing the target region includes: setting the precision value of the grid division of the target region; dividing each target region into grid points according to the set precision value; representing each grid point by latitude and longitude; and describing the boundary range of the corresponding target region by the latitude and longitude set of the polygon vertices of each target region.
[0015] Preferably, in step S200, each satellite corresponds to a simulated CPU thread.
[0016] Preferably, in step S200, simulating the space state of a single satellite includes:
[0017] Calculate the satellite's instantaneous orbital six-root number, inertial frame position, nadir position, orbital altitude, and satellite attitude;
[0018] When the satellite's mission type is remote sensing, it is also necessary to calculate the simulation time T from the previous step. K-1 up to the current simulation time T K The satellite sensor's field of view covers the Earth, and the satellite sensor's field of view covers the Earth as {L(T K-1 ),L(T K ),R(T K ),R(T K-1 A rectangle formed by four vertices, where each vertex is represented by latitude and longitude in a fixed Earth coordinate system, where L(T) K ) and R(T K ) for satellite sensors in T K At any given moment, the two points where the line of sight at the lateral field of view boundary intersects with the Earth, L(T) K-1 ) and R(T K-1 ) for satellite sensors in T K-1 The two points where the line of sight at the lateral field of view boundary intersects with the Earth at any given moment.
[0019] Preferably, step S300 includes:
[0020] S310 calls the same number of computing CPU threads according to the number of satellites in the network. Each computing CPU thread corresponds to one satellite network, and each satellite network corresponds to one target area.
[0021] In the S320, multiple computing CPU threads run in parallel, queuing up to call GPU devices. Each computing CPU thread writes the corresponding satellite networking data to the corresponding GPU.
[0022] The data written to the GPU includes:
[0023] Latitude and longitude information of all grid points in the target area;
[0024] The inertial frame position, nadir position, and orbital altitude of each satellite in the satellite constellation;
[0025] For satellites performing remote sensing missions, this also includes the Earth coverage area of the satellite sensor's field of view;
[0026] For satellites performing navigation and communication missions, the minimum observation elevation angle is also included.
[0027] Preferably, in step S400, calculating the coverage performance index for each satellite network includes:
[0028] The S410, based on CUDA, performs its first multi-threaded mesh partitioning, with all GPU threads calling the first kernel function in parallel, targeting T... K single satellite at any time Sat i (i∈[1,M]) For a single grid point P in the target region j The visibility index v(Sat) of (j∈[1,N]) i ,P j ,T K The calculation is performed to obtain the set of visibility indices for each satellite relative to each grid point. Write to the GPU's global memory;
[0029] S420, based on the calculation results of the first kernel function in step S410, a second multi-threaded mesh partitioning is performed based on CUDA. All GPU threads call the second kernel function in parallel to calculate the coverage performance index of each grid point in the target area for the satellite network.
[0030] For satellite networking of navigation tasks, it is also necessary to calculate the navigation accuracy factor of the satellite networking for each grid point in the target area.
[0031] S430: Based on the calculation results of the two kernel functions in steps S410 and S420, the third kernel function of the GPU is called, and a reduction algorithm is used to calculate the target region {P1, P2, ..., P} for the satellite network. j ,...,P N The overall coverage effectiveness index of}(j∈[1,N]) is statistically calculated;
[0032] For satellite networking of navigation missions, it is also necessary to calculate the overall navigation accuracy factor index of the satellite networking for the target area.
[0033] S440, the GPU parallel processing ends, and all calculation results are written back to the CPU.
[0034] Preferably, step S410 includes:
[0035] For satellites used in remote sensing missions, the visibility index v(Sat) i ,P j ,T K The calculation method for the discriminant point P is as follows: j Is it in the satellite sensor Sat i Field of view coverage {L(T)} K-1 ),L(T K ),R(T K ),R(T K-1 Within the polygonal area, the horizontal / vertical intersection point count method is used for discrimination.
[0036] For satellites performing communication and navigation missions, the visibility index v(Sat) i ,P j ,T K The calculation method is as follows: Let the latitude and longitude of the ground grid points be λ0 and φ0, respectively, and the latitude and longitude of the satellite sub-satellite points be λ0 and φ0, respectively. s φ s If the minimum observation elevation angle of the observation point relative to the satellite is e, then the Earth's central angle γ corresponding to the sub-satellite coverage area is:
[0037]
[0038] The elevation angle e is:
[0039]
[0040] Among them, R e where is the Earth's radius, h is the satellite's orbital altitude, and e is the orbital height. min Given the minimum observation elevation angle of the satellite, the visibility index v(Sat) i ,P j ,T K The function is:
[0041]
[0042] Preferably, step S420 includes:
[0043] Calculation at T K At any given time, the satellite network {Sat1,Sat2,...,Sat i ,...,Sat M}(i∈[1,M]) global over the target region {P1,P2,...,P j ,...,P N The instantaneous visibility and instantaneous coverage multiplicity of each grid point in the data are two metrics.
[0044] Among them, in T K At any given time, the satellite network is configured for a single grid point P. jThe instantaneous visibility index for (j∈[1,N]) is represented as C(P j ,T K The instantaneous coverage multiplicity index is represented by N. FC (P j ,T K After the calculation is complete, the visibility index and instantaneous coverage multiplicity index of each grid point are written to the GPU global memory. The calculation formulas are as follows:
[0045]
[0046]
[0047] Statistics in (0,T) K Within the time period, the satellite network {Sat1,Sat2,...,Sat... i ,...,Sat M}(i∈[1,M]) global over the target region {P1,P2,...,P j ,...,P N Each grid point P in} j The visible time set TWS(P) of (j∈[1,N]) j ,T K After the statistics are completed, the set of visible times for each grid point is written to the GPU global memory. (TWS(P)) j ,T K This can be represented as:
[0048]
[0049] Among them, TW(P j ,T p ,T q ) indicates that in (0,T) K A subset of time periods with consecutive visibility values of 1 can be represented as:
[0050] TW(P j ,T p ,T q )={(T p ,T q ]|C(P j ,T p+1 )×C(P j ,T p+2 )×……×C(P j ,T q-1 )×C(P j ,T q )=1};
[0051] Then in (0,T) KDuring the time period, the satellite network is positioned relative to point P. j Number of coverages n C (P j ,T K ) equals the visible time set TWS(P j ,T K The number of elements in a denoted is given by the formula:
[0052] n C (P j ,T K ) = |TWS(P j ,T K )|;
[0053] Based on simulation analysis, given T k-1 Time-based satellite networking to point P j The set of visible moments is represented as:
[0054]
[0055] Then T k Time-based satellite networking to point P j The set of visible moments is calculated using the following formula:
[0056]
[0057] Statistics in (0,T) K Within the time period, the satellite network {Sat1,Sat2,...,Sat... i ,...,Sat M}(i∈[1,M]) global over the target region {P1,P2,...,P j ,...,P N}(j∈[1,N]) is the cumulative coverage performance index for each grid point. After the calculation is completed, the corresponding performance indexes of all grid points are written to the GPU global memory. The specific indexes include: total coverage time, coverage time percentage, cumulative average coverage time, cumulative maximum coverage time, cumulative maximum coverage gap, cumulative average coverage gap, cumulative maximum revisit time, and cumulative minimum / maximum coverage multiplicity.
[0058] in:
[0059] Total coverage time refers to the time within (0, T) K The total duration of time during which the satellite network's visibility to ground grid points is 1 within the simulation period, assuming it lies in the range (0, T). K During the time period, the satellite network is positioned relative to point P. j The total coverage time is expressed as t TC (P j ,T K ), then t TC(P j ,T K The formula for calculating ) is:
[0060]
[0061] Since each simulation calculation is based on the result of the previous simulation calculation, therefore t TC (P j ,T K The calculation formula for each simulation step is as follows:
[0062] t TC (P j ,T K )=t TC (P j ,T K-1 )+(T K -T K-1 )×C(P j ,T K );
[0063] Coverage time percentage refers to the time within (0,T) K During the simulation period, the percentage of time the satellite network covers the ground grid points is equal to its total coverage time divided by the total time duration T. K Let (0,T) K During the time period, the satellite network is positioned relative to point P. j The percentage of coverage time is expressed as t PC (P j ,T K ), then t PC (P j ,T K The formula for calculating ) is:
[0064]
[0065] The cumulative average coverage time is calculated as follows: Let (0, T) K During the time period, the satellite network is positioned relative to point P. j The average coverage time is expressed as t MeanC (P j ,T K If the cumulative average coverage time is:
[0066]
[0067] The cumulative maximum coverage time is equal to (0, T) K The longest continuous coverage time within the time period, satellite network coverage of point P j The maximum coverage time is expressed as t MaxC (P j ,T KIf the cumulative maximum coverage time is 1, then the formula for calculating the cumulative maximum coverage time is:
[0068]
[0069] The cumulative maximum coverage gap represents the longest period of continuous invisibility of a satellite network to a ground point, denoted as (0, T). K During the time period, the satellite network is positioned relative to point P. j The maximum coverage gap is expressed as t MaxCG (P j ,T K If the cumulative maximum coverage gap is 1, then the formula for calculating the cumulative maximum coverage gap is:
[0070]
[0071] Where M = n C (P j ,T K ), The visible time set TWS(P) j ,T K The i-th consecutive visible time period subset sorted by time from smallest to largest;
[0072] The cumulative average coverage gap represents the average duration of coverage interruption for ground points caused by the satellite network. It is equal to the total coverage interruption time divided by the number of coverage interruptions. Let's assume the interval is (0, T). K During the time period, the satellite network is positioned relative to point P. j The maximum coverage gap is expressed as t MeanCG (P j ,T K If the cumulative average coverage gap is 1, then the formula for calculating the cumulative average coverage gap is:
[0073]
[0074] Where M = n C (P j ,T K ), The visible time set TWS(P) j ,T K The i-th consecutive visible time period subset sorted by time from smallest to largest;
[0075] The cumulative maximum revisit time is the time interval between the satellite's revisit to a ground point, which is the time interval from the start time of the last continuous coverage to the start time of this continuous coverage. The maximum revisit time is the maximum value of this time interval, within the range (0, T). K During the time period, the satellite network is positioned relative to point P. j Maximum revisit time t MaxRT (P j ,T K The formula for calculating ) is:
[0076]
[0077] Where M = n C (P j ,T K ), The visible time set TWS(P) j ,T K The i-th consecutive visible time period subset sorted by time from smallest to largest, i = 1, 2, ..., n C (P j ,T K And 1≤p i <q i ≤K;
[0078] The cumulative minimum / maximum coverage multiples are statistically analyzed in (0, T). K During the time period, the satellite network is positioned relative to point P. j Each time step covers the minimum, maximum, and average multiplicity of the multiplicity, grid point P. j The minimum and maximum coverage multiplicity are denoted as min_N. FC (P j ,T K max_N FC (P j ,T K The calculation formulas are as follows:
[0079] min_N FC (P j ,T K )=min{N FC (P j ,T t |t=1,2,……,K};
[0080] max_N FC (P j ,T K )=max{N FC (P j ,T t |t=1,2,……,K};
[0081] For satellite constellations used for navigation missions, T also needs to be calculated. k The navigation accuracy factor index for each grid point in the target area is calculated based on the satellite network. The navigation accuracy factor includes spatial accuracy factor, clock error accuracy factor, and geometric accuracy factor. After calculation, the navigation accuracy factor index of each grid point is written to the GPU global memory. Assuming there are n navigation satellites in the network, the details are as follows:
[0082] Calculate the cofactor matrix Q based on the grid point locations and satellite locations:
[0083]
[0084]
[0085]
[0086]
[0087] Where (x0, y0, z0) are the coordinates of the grid point, (x i ,y i ,z i ) represents the coordinate components of navigation satellite i in the protocol Earth coordinate system at epoch t;
[0088] The spatial precision factor PDOP, clock error precision factor TDOP, and geometric precision factor GDOP are calculated separately as follows:
[0089]
[0090]
[0091]
[0092] Preferably, step S430 includes:
[0093] Using a reduction algorithm, the instantaneous maximum, minimum, and average coverage multiplicity N of the satellite network for grid points in the target area is statistically analyzed. FC_Max (T K ), N FC_Min (T K ), N FC_Mean (T K The formula is as follows:
[0094]
[0095]
[0096]
[0097] According to N FC_Max (T K ), N FC_Min (T K ), N FC_Mean (T KThe calculation formula calculates the total coverage time, coverage time percentage, cumulative average coverage time, cumulative maximum coverage time, cumulative maximum coverage gap, cumulative average coverage gap, cumulative maximum revisit time, spatial precision factor, clock bias precision factor, and geometric precision factor, and writes the calculation results to the GPU global memory after the calculation is completed.
[0098] Using a reduction algorithm, calculate T k The time-based satellite network provides a set of visible timeframes (TWS) for the entire region. k The set of visible times for the entire region is the union of the set of visible times for each grid point, and is represented as:
[0099]
[0100] For the set of grid points {P1, P2, ..., P} j ,...,P N}(j∈[1,N]), computed in (0,T) K The cumulative percentage of coverage of the target area by the satellite network within the time period is calculated using the following formula:
[0101]
[0102] After the calculation is completed, the cumulative coverage percentage of the target area is written to the GPU global memory.
[0103] Preferably, in the first multi-threaded mesh partitioning, the number of X-dimensional thread blocks in the thread mesh is:
[0104]
[0105] The number of thread blocks in the Y-dimensional thread grid is:
[0106] gridDim.y = threadIdx.y = number of satellites or sensors;
[0107] The number of threads in a thread block of dimension X is:
[0108] blockDim.x = an integer multiple of the thread bundle size;
[0109] The number of threads in a Y-dimensional thread block is:
[0110] blockDim.y = 1;
[0111] The total number of threads in the X-dimensional thread grid is:
[0112] threadCountX=gridDim.x*blockDim.x;
[0113] Total number of threads in the Y-dimensional thread grid:
[0114] threadCountY = Number of satellites or sensors;
[0115] In the second multi-threaded mesh partitioning, the number of thread blocks in the X-dimensional thread grid is:
[0116] The number of thread blocks in the Y-dimensional thread grid is:
[0117] gridDim.y=threadIdx.y=1;
[0118] The number of threads in a thread block of dimension X is:
[0119] blockDim.x = an integer multiple of the thread bundle size;
[0120] The number of threads in a Y-dimensional thread block is:
[0121] blockDim.y = 1;
[0122] The total number of threads in the X-dimensional thread grid is:
[0123] threadCountX=gridDim.x*blockDim.x;
[0124] Total number of threads in the Y-dimensional thread grid:
[0125] threadCountY = 1.
[0126] The simulation and calculation method for satellite network coverage performance of this invention supports a heterogeneous multiprocessor hybrid architecture with multiple CPUs and GPUs. Through a three-level parallel mechanism involving multiple CPU threads, multiple GPU devices, and multiple GPU threads, it effectively utilizes novel processors, communication, and synchronization mechanisms to optimize simulation resources, achieving efficient parallel operation of satellite network coverage performance simulation. By organically combining the CUDA architecture with calculation and statistical methods for different levels of satellite network coverage performance indicators, and fully leveraging CUDA's parallel storage, communication, and computation mechanisms, it achieves a hierarchical parallel, efficient parallel simulation and calculation method for satellite network coverage performance, ensuring computational accuracy while effectively reducing computation time. Attached Figure Description
[0127] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0128] Figure 1This is a flowchart illustrating the simulation and calculation method for the regional coverage performance of satellite networking according to an embodiment of the present invention.
[0129] Figure 2 This is a flowchart illustrating a sub-step of the simulation and calculation method for satellite network regional coverage effectiveness according to an embodiment of the present invention.
[0130] Figure 3 This is a flowchart illustrating another sub-step of the simulation and calculation method for satellite network area coverage effectiveness according to an embodiment of the present invention.
[0131] Figure 4 This is a schematic diagram of the overall principle block diagram of the simulation and calculation method for the regional coverage performance of satellite networking according to an embodiment of the present invention;
[0132] Figure 5 This is a schematic diagram illustrating the detailed principle of the simulation and calculation method for the regional coverage performance of satellite networking according to an embodiment of the present invention.
[0133] Figure 6 This is a schematic diagram of the first multi-threaded mesh partitioning in an embodiment of the present invention;
[0134] Figure 7 This is a schematic diagram of the second multi-threaded mesh partitioning in an embodiment of the present invention. Detailed Implementation
[0135] The description of the embodiments in this specification should be taken in conjunction with the accompanying drawings, which should form part of the complete specification. In the drawings, the shape or thickness of the embodiments may be exaggerated and may be indicated in a simplified or convenient manner. Furthermore, parts of the various structures in the drawings will be described separately; it is worth noting that elements not shown in the figures or not described in words are in a form known to those skilled in the art.
[0136] The descriptions of the embodiments herein, including any references to directions and orientations, are for ease of description only and should not be construed as limiting the scope of the invention. The following description of preferred embodiments involves combinations of features, which may exist independently or in combination; the invention is not particularly limited to the preferred embodiments. The scope of the invention is defined by the claims.
[0137] like Figure 1 and Figure 4 The diagram illustrates a simulation and calculation method for the regional coverage effectiveness of satellite networking according to an embodiment of the present invention. The method includes:
[0138] S100, Simulation Scene Editing and Initialization.
[0139] In this embodiment, it specifically includes:
[0140] ① Set the simulation duration, simulation step size, initial epoch time of the scenario, and initial satellite state. The simulation duration and simulation step size are in seconds; the initial epoch time is in the format of year, month, day, hour, minute, and second; add satellites to the simulation scenario (set the initial satellite state) including setting the initial six orbital elements, sensor field of view parameters, communication / navigation maximum elevation angle, and other satellite parameters for all satellites.
[0141] ② Satellite networking mission type selection and target area delineation. There must be at least one target area, and each satellite network corresponds to at least one target area. Satellite networking mission types include remote sensing, communication, and navigation. Target area delineation includes: setting the grid division precision value for the target area; dividing each target area into grid points according to the set precision value; each grid point is represented by latitude and longitude; and the boundary range of the corresponding target area is described by the latitude and longitude set of the polygon vertices of each target area.
[0142] ③ Associate each satellite network with its corresponding target area. Associating each satellite network with its corresponding target area includes configuring the satellite network's Earth mission parameters, including the network type (remote sensing, communication, navigation), the set of satellites participating in the network, and the target area of the mission. Each network mission consists of a set of [network satellite set, target area].
[0143] The S200 uses multiple simulation CPU threads to simulate the space state of each satellite in a satellite network in parallel, where the number of satellite networks can be one or more.
[0144] When there are multiple satellite networks, different satellite networks can be any type of remote sensing, communication, and navigation. That is, satellite networks can be any combination of the above three mission types and different numbers of satellite networks.
[0145] In this embodiment, multiple CPU threads are activated as simulation CPU threads for satellite state, used to simulate the instantaneous spatial state of the satellite. Preferably, one simulation CPU thread is activated for each satellite simulation instance (i.e., each satellite in the satellite network), and all simulation CPU threads are scheduled in parallel to perform simulation initialization of the state of all satellites.
[0146] In this embodiment, within each simulation step, multiple satellite state simulation CPU threads simulate the instantaneous spatial state of each satellite instance in parallel, providing input data for subsequent satellite network coverage performance simulation and calculation. Here, it is assumed that the simulation time corresponding to the current Kth step is T. K seconds, the previous simulation time was T. K-1 If the time interval is seconds, then the simulation step size = T K -T K-1 .
[0147] Specifically, for satellite networking of three mission types—remote sensing, navigation, and communication—the following simulation calculations are performed within each satellite simulation instance: using satellite orbit predictors such as two-body, J2 / J3 / J4, high-precision, or SPG4, the instantaneous orbital six-root number, inertial frame position, nadir position, satellite orbital altitude, and satellite attitude are calculated at the current simulation moment.
[0148] In particular, for satellite constellations used in remote sensing missions, it is also necessary to calculate the time from the previous simulation time T. K-1 up to the current simulation time T K The Earth coverage area of the satellite sensor's field of view. The calculation method is as follows: assuming the satellite sensor is at T... K The two points where the line of sight at the lateral field of view boundary intersects the Earth at any given time are L(T) K ) and R(T K ), then T K-1 Time to T K The Earth coverage area of the satellite sensor's field of view at a given time can be approximated as {L(T)} K-1 ),L(T K ),R(T K ),R(T K-1 A rectangle formed by four vertices, each vertex represented by (geographic longitude, geographic latitude) in a fixed Earth coordinate system. L(T) K ) and R(T K According to T K The parameters are obtained by determining the satellite's inertial frame position, satellite attitude, sensor lateral field of view, and the transformation relationship between the inertial frame and the Earth-fixed coordinate system. For navigation and communication satellites, the satellite's parameters are considered, while for remote sensing satellites, the parameters of the satellite's sensors are considered.
[0149] S300: Using at least one computing CPU thread, write the simulation scene editing and initialization data from step S100, and the spatial state data of each satellite from step S200, to the GPU.
[0150] like Figure 2 and Figure 5 As shown, in this embodiment, step S300 includes:
[0151] S310 calls the same number of computing CPU threads according to the number of satellites in the network. Each computing CPU thread corresponds to one satellite network, and each satellite network corresponds to one target area.
[0152] Specifically, one or more CPU threads are activated as CPU threads for calculating coverage performance. Preferably, the same number of CPU threads as the number of satellite networking tasks are activated, and each CPU thread simulates and calculates the coverage performance indicators of its corresponding set of satellite networks for the target area.
[0153] In the S320, multiple CPU threads run in parallel, queuing to access the GPU. Each CPU thread writes the corresponding satellite networking data to the relevant GPU. The data written to the GPU includes:
[0154] Latitude and longitude information of all grid points in the target area;
[0155] The inertial frame position, nadir position, and orbital altitude of each satellite in the satellite constellation;
[0156] For satellites performing remote sensing missions, this also includes the Earth coverage area of the satellite sensor's field of view;
[0157] For satellites performing navigation and communication missions, the minimum observation elevation angle is also included.
[0158] In this context, the i-th CPU thread calls the k-th GPU device, specifically k = i % total number of GPU devices (% is the modulo operator). For example, if there are 5 CPU threads and 4 GPU devices, then the 1st to 4th CPU threads will call the 1st to 4th GPU devices in sequence, and the 5th CPU thread will call the 1st GPU device.
[0159] The S400 uses GPUs to perform parallel calculations of the coverage performance metrics for each satellite constellation.
[0160] Each GPU device calculates the coverage performance index for each set of <networked satellites, target area>. Assume the set of M satellites or sensors participating in the network is {Sat1, Sat2, ..., Sat...} i ,...,Sat M}, where 1≤i≤M. Then:
[0161] like Figure 3 and Figure 5 As shown, in this embodiment, step S400 includes:
[0162] The S410, based on CUDA, performs its first multi-threaded mesh partitioning, with all GPU threads calling the first kernel function in parallel, targeting T... K single satellite at any time Sat i (i∈[1,M]) For a single grid point P in the target region j The visibility index v(Sat) of (j∈[1,N]) i ,P j ,TK The calculation is performed to obtain the set of visibility indices for each satellite relative to each grid point. Write to the GPU's global memory.
[0163] CUDA (Compute Unified Device Architecture) is a hardware and software system that uses GPUs as data parallel computing devices. It was launched by NVIDIA in June 2007 and is widely used in intensive computing acceleration in scientific research and financial fields such as meteorological simulation, numerical analysis, bioinformatics, fluid mechanics, and computational chemistry. The acceleration effect ranges from 10 to 100 times, which is closely related to hardware configuration and specific algorithms.
[0164] like Figure 6 As shown, in this embodiment, in the first multi-threaded mesh partitioning, the number of X-dimensional thread blocks in the thread mesh is:
[0165]
[0166] The number of thread blocks in the Y-dimensional thread grid is:
[0167] gridDim.y = threadIdx.y = number of satellites or sensors;
[0168] The number of threads in a thread block of dimension X is:
[0169] blockDim.x = an integer multiple of the thread bundle size;
[0170] The number of threads in a Y-dimensional thread block is:
[0171] blockDim.y = 1;
[0172] The total number of threads in the X-dimensional thread grid is:
[0173] threadCountX=gridDim.x*blockDim.x;
[0174] Total number of threads in the Y-dimensional thread grid:
[0175] threadCountY = Number of satellites or sensors.
[0176] In this embodiment, step S410 includes:
[0177] For satellites used in remote sensing missions, the visibility index v(Sat) i ,P j ,T K The calculation method for the discriminant point P is as follows: j Is it in the satellite sensor Sat iField of view coverage {L(T)} K-1 ),L(T K ),R(T K ),R(T K-1 Within the polygonal region, the discrimination method uses the number of horizontal / vertical intersection points.
[0178] For satellites performing communication and navigation missions, the visibility index v(Sat) i ,P j ,T K The calculation method is as follows: Let the latitude and longitude of the ground grid points be λ0 and φ0, respectively, and the latitude and longitude of the satellite sub-satellite points be λ0 and φ0, respectively. s φ s If the minimum observation elevation angle of the observation point relative to the satellite is e, then the Earth's central angle γ corresponding to the sub-satellite coverage area is:
[0179]
[0180] The elevation angle e is:
[0181]
[0182] Among them, R e where is the Earth's radius, h is the satellite's orbital altitude, and e is the orbital height. min Given the minimum observation elevation angle of the satellite, the visibility index v(Sat) i ,P j ,T K The function is:
[0183]
[0184] S420: Based on the calculation results of the first kernel function in step S410, a second multi-threaded mesh partitioning is performed based on CUDA. All GPU threads call the second kernel function in parallel to calculate the coverage performance index of each grid point in the target area for the satellite network.
[0185] For satellite constellations used for navigation missions, it is also necessary to calculate the navigation accuracy factor for each grid point in the target area.
[0186] like Figure 7 As shown, in this embodiment, in the second multi-threaded mesh partitioning, the number of thread blocks in the X-dimensional thread grid is:
[0187]
[0188] The number of thread blocks in the Y-dimensional thread grid is:
[0189] gridDim.y=threadIdx.y=1;
[0190] The number of threads in a thread block of dimension X is:
[0191] blockDim.x = an integer multiple of the thread bundle size;
[0192] The number of threads in a Y-dimensional thread block is:
[0193] blockDim.y = 1;
[0194] The total number of threads in the X-dimensional thread grid is:
[0195] threadCountX=gridDim.x*blockDim.x;
[0196] Total number of threads in the Y-dimensional thread grid:
[0197] threadCountY = 1.
[0198] In this embodiment, step S420 includes:
[0199] Calculation at T K At any given time, the satellite network {Sat1,Sat2,...,Sat i ,...,Sat M}(i∈[1,M]) global over the target region {P1,P2,...,P j ,...,P N The instantaneous visibility and instantaneous coverage multiplicity of each grid point in the data are two metrics.
[0200] Among them, in T K At any given time, the satellite network is configured for a single grid point P. j The instantaneous visibility index for (j∈[1,N]) is represented as C(P j ,T K The instantaneous coverage multiplicity index is represented by N. FC (P j ,T K After the calculation is complete, the visibility index and instantaneous coverage multiplicity index of each grid point are written to the GPU global memory. The calculation formulas are as follows:
[0201]
[0202]
[0203] Statistics in (0,T) K Within the time period, the satellite network {Sat1,Sat2,...,Sat... i ,...,Sat M}(i∈[1,M]) global over the target region {P1,P2,...,Pj ,...,P N Each grid point P in} j The visible time set TWS(P) of (j∈[1,N]) j ,T K After the statistics are completed, the set of visible times for each grid point is written to the GPU global memory. (TWS(P)) j ,T K This can be represented as:
[0204]
[0205] Among them, TW(P j ,T p ,T q ) indicates that in (0,T) K A subset of time periods with consecutive visibility values of 1 can be represented as:
[0206] TW(P j ,T p ,T q )={(T p ,T q ]|C(P j ,T p+1 )×C(P j ,T p+2 )×……×C(P j ,T q-1 )×C(P j ,T q )=1}; Formula (7)
[0207] Then in (0,T) K During the time period, the satellite network is positioned relative to point P. j Number of coverages n C (P j ,T K ) equals the visible time set TWS(P j ,T K The number of elements in a denoted is given by the formula:
[0208] n C (P j ,T K ) = |TWS(P j ,T K )|; Formula (8)
[0209] Based on simulation analysis, given T k-1 Time-based satellite networking to point P j The set of visible moments is represented as:
[0210]
[0211] Then T k Time-based satellite networking to point P j The set of visible moments is calculated using the following formula:
[0212]
[0213] Statistics in (0,T) K Within the time period, the satellite network {Sat1,Sat2,...,Sat... i ,...,Sat M}(i∈[1,M]) global over the target region {P1,P2,...,P j ,...,P N}(j∈[1,N]) is the cumulative coverage performance index for each grid point. After the calculation is completed, the corresponding performance indexes of all grid points are written to the GPU global memory. The specific indexes include: total coverage time, coverage time percentage, cumulative average coverage time, cumulative maximum coverage time, cumulative maximum coverage gap, cumulative average coverage gap, cumulative maximum revisit time, and cumulative minimum / maximum coverage multiplicity.
[0214] in:
[0215] Total Coverage: refers to the coverage time within the range (0, T). K The total duration of time during which the satellite network's visibility to ground grid points is 1 within the simulation period, assuming it lies in the range (0, T). K During the time period, the satellite network is positioned relative to point P. j The total coverage time is expressed as t TC (P j ,T K ), then t TC (P j ,T K The formula for calculating ) is:
[0216]
[0217] Since each simulation calculation is based on the result of the previous simulation calculation, therefore t TC (P j ,T K The calculation formula for each simulation step is as follows:
[0218] t TC (P j ,T K )=t TC (P j ,T K-1 )+(T K -T K-1 )×C(P j ,TK ); Formula (12)
[0219] Percent Coverage: refers to the coverage time within (0, T) K During the simulation period, the percentage of time the satellite network covers the ground grid points is equal to its total coverage time divided by the total time duration T. K Let (0,T) K During the time period, the satellite network is positioned relative to point P. j The percentage of coverage time is expressed as t PC (P j ,T K ), then t PC (P j ,T K The formula for calculating ) is:
[0220]
[0221] Cumulative average coverage time (Mean Coverage): Let (0, T) K During the time period, the satellite network is positioned relative to point P. j The average coverage time is expressed as t MeanC (P j ,T K If the cumulative average coverage time is:
[0222]
[0223] Maximum Coverage: equals (0, T) K The longest continuous coverage time within the time period, satellite network coverage of point P j The maximum coverage time is expressed as t MaxC (P j ,T K If the cumulative maximum coverage time is 1, then the formula for calculating the cumulative maximum coverage time is:
[0224]
[0225] Among them, TW(P) j ,T p ,T q ) and TWS (P j ,T K See formulas (6) and (7);
[0226] Maximum Coverage Gap: Represents the longest period of continuous invisibility of a ground point by a satellite constellation, denoted as (0, T). K During the time period, the satellite network is positioned relative to point P. jThe maximum coverage gap is expressed as t MaxCG (P j ,T K If the cumulative maximum coverage gap is 1, then the formula for calculating the cumulative maximum coverage gap is:
[0227]
[0228] Where M = n C (P j ,T K ), The visible time set TWS(P) j ,T K The i-th consecutive visible time period subset sorted by time from smallest to largest, see formulas (6) and (7);
[0229] Mean Coverage Gap: Represents the average duration of coverage interruptions to ground points caused by the satellite network. It is equal to the total duration of coverage interruptions divided by the number of coverage interruptions. Let's assume the interval is (0, T). K During the time period, the satellite network is positioned relative to point P. j The maximum coverage gap is expressed as t MeanCG (P j ,T K If the cumulative average coverage gap is 1, then the formula for calculating the cumulative average coverage gap is:
[0230]
[0231] Where M = n C (P j ,T K ), The visible time set TWS(P) j ,T K The i-th consecutive visible time period subset sorted by time from smallest to largest, see formulas (6) and (7);
[0232] Maximum Revisit Time: This refers to the time interval between the start of the last continuous coverage and the start of the current continuous coverage for a ground point. The maximum revisit time is the maximum value of this time interval, within the range (0, T). K During the time period, the satellite network is positioned relative to point P. j Maximum revisit time t MaxRT (P j ,T K The formula for calculating ) is:
[0233]
[0234] Where M = n C (Pj ,T K ), The visible time set TWS(P) j ,T K The i-th consecutive visible time period subset sorted by time from smallest to largest, i = 1, 2, ..., n C (P j ,T K And 1≤p i <q i ≤K, see formulas (6) and (7);
[0235] The cumulative minimum / maximum coverage multiples are statistically analyzed in (0, T). K During the time period, the satellite network is positioned relative to point P. j Each time step covers the minimum, maximum, and average multiplicity of the multiplicity, grid point P. j The minimum and maximum coverage multiplicity are denoted as min_N. FC (P j ,T K max_N FC (P j ,T K The calculation formulas are as follows:
[0236] min_N FC (P j ,T K )=min{N FC (P j ,T t )|t=1,2,……,K}; Formula (19)
[0237] max_N FC (P j ,T K )=max{N FC (P j ,T t )|t=1,2,……,K}; Formula (20)
[0238] For satellite constellations used for navigation missions, T also needs to be calculated. k The navigation accuracy factor (DOP) for each grid point in the target area is calculated using a satellite constellation. The DOP includes spatial accuracy factor (PDOP), clock error accuracy factor (TDOP), and geometric accuracy factor (GDOP). After calculation, the DOP for each grid point is written to the GPU's global memory. Assuming there are n navigation satellites in the constellation, the details are as follows:
[0239] Calculate the cofactor matrix Q based on the grid point locations and satellite locations:
[0240]
[0241]
[0242]
[0243]
[0244] Where (x0, y0, z0) are the coordinates of the grid point, (x i ,y i ,z i ) represents the coordinate components of navigation satellite i in the protocol Earth coordinate system at epoch t;
[0245] The spatial precision factor PDOP, clock error precision factor TDOP, and geometric precision factor GDOP are calculated separately as follows:
[0246]
[0247]
[0248]
[0249] S430: Based on the calculation results of the two kernel functions in steps S410 and S420, the third kernel function of the GPU is called, and a reduction algorithm is used to calculate the target region {P1, P2, ..., P} for the satellite network. j ,...,P N The overall coverage effectiveness index of}(j∈[1,N]) is statistically calculated.
[0250] For satellite constellations used for navigation missions, it is also necessary to calculate the overall navigation accuracy factor index of the satellite constellation for the target area.
[0251] In this embodiment, step S430 includes:
[0252] Using a reduction algorithm, the instantaneous maximum, minimum, and average coverage multiplicity N of the satellite network for grid points in the target area is statistically analyzed. FC_Max (T K ), N FC_Min (T K ), N FC_Mean (T K The formula is as follows:
[0253]
[0254]
[0255]
[0256] The total coverage time, coverage time percentage, cumulative average coverage time, cumulative maximum coverage time, cumulative maximum coverage gap, cumulative average coverage gap, cumulative maximum revisit time, spatial precision factor, clock bias precision factor, and geometric precision factor are calculated according to formulas (28), (29), and (30). After the calculation is completed, the results are written to the GPU global memory. It should be noted that in this embodiment, the instantaneous maximum, minimum, and average coverage weight N of the target area grid points are based on the satellite network. FC_Max (T K ), N FC_Min (T K ), N FC_Mean (T K The following example is used for illustration. However, those skilled in the art can reasonably extrapolate to the calculation of other coverage performance indicators. Therefore, due to space limitations, the embodiments of the present invention will not list each coverage performance indicator separately. Those skilled in the art can also extrapolate from formulas (28), (29) and (30).
[0257] Using a reduction algorithm, calculate T k The time-based satellite network provides a set of visible timeframes (TWS) for the entire region. k The set of visible times for the entire region is the union of the set of visible times for each grid point, and is represented as:
[0258]
[0259] For the set of grid points {P1, P2, ..., P} j ,...,P N}(j∈[1,N]), computed in (0,T) K The cumulative percentage of coverage of the target area by the satellite network within the time period is calculated using the following formula:
[0260]
[0261] After the calculation is completed, the cumulative coverage percentage of the target area is written to the GPU global memory.
[0262] S440, the GPU parallel processing ends, and all calculation results are written back to the CPU.
[0263] Then, the CPU thread can be returned to perform subsequent processing of coverage performance. After all coverage performance simulations have been completed by the CPU, it is determined whether the simulation has ended. If not, the next simulation step is entered, and the above steps are repeated; if it has ended (i.e., all simulation steps have been completed), the simulation is exited.
[0264] The simulation and calculation method for satellite network coverage performance of this invention supports a heterogeneous multiprocessor hybrid architecture with multiple CPUs and GPUs. Through a three-level parallel mechanism involving multiple CPU threads, multiple GPU devices, and multiple GPU threads, it effectively utilizes novel processors, communication, and synchronization mechanisms to optimize simulation resources, achieving efficient parallel operation of satellite network coverage performance simulation. By organically combining the CUDA architecture with calculation and statistical methods for different levels of satellite network coverage performance indicators, and fully leveraging CUDA's parallel storage, communication, and computation mechanisms, it achieves a hierarchical parallel, efficient parallel simulation and calculation method for satellite network coverage performance, ensuring computational accuracy while effectively reducing computation time.
[0265] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.
Claims
1. A simulation and calculation method for satellite networking area coverage efficiency, characterized in that, The method comprises: S100, performing simulation scene editing and initialization; S200, simulating the space state of each satellite of the satellite networking in parallel through multiple simulation CPU threads, wherein the number of satellite networkings is one or more; S300, writing the data obtained after performing simulation scene editing and initialization in step S100 and the space state data of each satellite obtained in step S200 into a GPU through at least one calculation CPU thread; S400, calculating the coverage performance index of each satellite networking in parallel through the GPU; In step S400, calculating the coverage performance index of each satellite networking comprises: The S410, based on CUDA, performs its first multi-threaded mesh partitioning, with all GPU threads calling the first kernel function in parallel, targeting T... K single satellite at any time , For a single grid point in the target area , Visibility metrics The calculation is performed to obtain the set of visibility indices for each satellite relative to each grid point. Write to the GPU's global memory; where, S420, performing a second multi-thread grid division based on CUDA according to the calculation result of the first kernel function in step S410, and all GPU threads call a second kernel function in parallel to calculate the coverage performance index of each grid point of the satellite networking for the target area; Wherein, for the satellite networking of the navigation type task, the navigation accuracy factor of each grid point of the satellite networking for the target area also needs to be calculated; S430, according to the calculation results of the two kernel functions in steps S410 and S420, calling a third kernel function of the GPU to statistically calculate the overall coverage performance index of the satellite networking on the target region 、 by using a reduction algorithm. Wherein, for the satellite networking of the navigation type task, the overall navigation accuracy factor index of the satellite networking for the target area also needs to be calculated; S440, the GPU parallel processing is ended, and all calculation results are written back to the CPU; In the first multi-thread grid division, the number of thread grid X dimension thread blocks is: ; The number of thread grid Y dimension thread blocks is: gridDim.y = threadIdx.y = the number of satellites or sensors; The number of X dimension threads of a thread block is: blockDim.x = an integer multiple of the size of a thread bundle; The number of Y dimension threads of a thread block is: blockDim.y = 1; The total number of X dimension threads of a thread grid is: threadCountX = gridDim.x*blockDim.x; The total number of Y dimension threads of a thread grid is: threadCountY = the number of satellites or sensors; In the second multi-thread grid division, the number of thread grid X dimension thread blocks is: ; The number of thread grid Y dimension thread blocks is: gridDim.y = threadIdx.y = 1; The number of X dimension threads of a thread block is: blockDim.x = an integer multiple of the size of a thread bundle; The number of Y dimension threads of a thread block is: blockDim.y = 1; The total number of X dimension threads of a thread grid is: threadCountX = gridDim.x*blockDim.x; The total number of Y dimension threads of a thread grid is: threadCountY = 1.
2. The simulation and calculation method of satellite networking regional coverage performance according to claim 1, characterized in that, Step S100 comprises: setting the simulation duration, simulation step, scene initial epoch time and satellite initial state; selecting the satellite networking task type, the satellite networking task type comprising three types of remote sensing, communication and navigation; dividing the target area, the number of target areas being at least one, and each satellite networking having a corresponding relationship with at least one target area; and associating each satellite networking with its corresponding target area; The dividing target area includes setting an accuracy value of grid division of the target area, each target area is divided into grid points according to the set accuracy value, each grid point is represented by longitude and latitude, and the boundary range of the corresponding target area is described by a set of longitude and latitude of polygon vertices of each target area.
3. The simulation and calculation method of satellite networking regional coverage performance according to claim 2, characterized in that, In step S200, each satellite corresponds to a simulation CPU thread.
4. The simulation and calculation method of satellite networking regional coverage performance according to claim 3, characterized in that, In step S200, the spatial state of a single satellite is simulated, including: calculating the instantaneous orbital six elements, the inertial system position, the subsatellite point position, the satellite orbital height and the satellite body attitude of the satellite; When the satellite's mission type is remote sensing, it is also necessary to calculate the simulation time T from the previous step. K-1 up to the current simulation time T K The satellite sensor's field of view covers the Earth's surface. A rectangle formed by four vertices, each vertex represented by latitude and longitude in a fixed Earth coordinate system, where L(T) K ) and R(T K ) for satellite sensors in T K At any given moment, the two points where the line of sight at the lateral field of view boundary intersects with the Earth, L(T) K-1 ) and R(T K-1 ) for satellite sensors in T K-1 The two points where the line of sight at the lateral field of view boundary intersects with the Earth at any given moment.
5. The simulation and calculation method of satellite networking regional coverage performance according to claim 4, characterized in that, Step S300 includes: S310, according to the number of satellite networking, calling the same number of calculation CPU threads, each calculation CPU thread corresponds to a satellite networking, and each satellite networking corresponds to a target area; S320, multiple calculation CPU threads run in parallel, queue calling GPU device, each calculation CPU thread writes the data of the corresponding satellite networking into the corresponding GPU; The data written into the GPU includes: the longitude and latitude information of all grid points of the target area; the inertial system position, the subsatellite point position and the satellite orbital height of each satellite of the satellite networking; for satellites of remote sensing type, the satellite sensor field of view ground coverage range is also included; for satellites of navigation and communication type, the minimum observation elevation angle is also included.
6. The simulation and calculation method of satellite networking regional coverage performance according to claim 5, characterized in that, In step S410, it includes: Visibility indicator for satellites for remote sensing type missions The calculation is as follows: the point P j is within the satellite sensor Sat i field of view coverage {L(T K-1 ), L(T K ), R(T K ), R(T K-1 )} polygon area, the discrimination method adopts horizontal / vertical intersection point number discrimination method; Visibility index for satellites for communication and navigation missions The calculation method is as follows: let the longitude and latitude of the ground grid point be , , the longitude and latitude of the subsatellite point be , , and the minimum observation elevation angle of the observation point to the satellite be , then the earth central angle corresponding to the subsatellite coverage area is : ; Elevation is: ; where is the radius of the Earth, is the satellite orbit altitude, is the satellite minimum observation elevation angle, then the visibility index is the function: 。 7. The simulation and calculation method of satellite networking regional coverage performance according to claim 5, characterized in that, In step S420, it includes: Calculation in At any moment, satellite networking , Overall target area The two metrics are instantaneous visibility and instantaneous coverage multiplicity of each grid point; wherein, at the moment, the instantaneous visibility index of the satellite mesh networking to a single grid point , is expressed as , and the instantaneous coverage multiplicity index is expressed as After the calculation is completed, the visibility index and the instantaneous coverage multiplicity index of each grid point are written into the GPU global memory, and the calculation formulas are respectively: ; ; Statistics in Time period, satellite networking , The overall target area Each grid point , The set of visible moments of each grid point , after the statistics end, write the set of visible moments of each grid point to the GPU global memory, Can be expressed as: ; wherein, represents that in a subset of time periods in which the visibility is continuously 1, can be represented as: ; Then in Satellite networking point-to-point within the time period Number of times of coverage Equal to the set of visible moments The number of elements is given by the formula: ; Based on simulation deduction, it is known that T k-1 The set of time instants at which the satellite constellation is visible from a point is represented as: ; Then T k The satellite group networking at the moment The visible moment set is calculated according to the following formula: ; Statistics in Satellite networking 、 The overall target area 、 The cumulative coverage performance index of each grid point, after the calculation is completed, the corresponding performance index of all grid points is written into the global memory of the GPU, and the specific index includes: total coverage time, coverage time percentage, cumulative average coverage time, cumulative maximum coverage time, cumulative maximum coverage gap, cumulative average coverage gap, cumulative maximum revisit time and cumulative minimum / maximum coverage number; wherein: The total coverage time refers to the sum of the time lengths during which the satellite constellation is visible to the ground grid points in the simulation time period, denoted as Tvis. The total coverage time of the satellite constellation to the point in the time period is expressed as Then The calculation formula of Tvis is: ; Since the simulation calculation of each step is based on the simulation calculation result of the previous step, therefore The calculation formula of each simulation is: ; The coverage time percentage refers to the ratio of the total coverage time of the satellite network to the total time length The coverage time percentage of the satellite network to the ground grid points in the simulation time period is equal to the total coverage time divided by the total time length , let The coverage time percentage of the satellite network to the point in the time period is expressed as , then The calculation formula of is: ; The cumulative average coverage time is calculated as follows: let The average coverage time of the satellite group networking to a point in a time period is expressed as The cumulative average coverage time is: ; The cumulative maximum coverage time equals The longest continuous coverage time within a given time period, point-to-point satellite network The maximum coverage time is expressed as The formula for calculating the cumulative maximum coverage time is: ; The cumulative maximum coverage gap represents the longest period of continuous invisibility between a satellite network and a ground point, set at... Satellite networking point-to-point within the time period The maximum coverage gap is expressed as The formula for calculating the cumulative maximum coverage gap is: ; wherein , is a set of visible instants is the ith subset of consecutive visible time periods ordered from small to large by time; The cumulative average coverage gap represents the average length of time of coverage interruption of the satellite constellation for a ground point, equal to the total time of coverage interruption divided by the number of coverage interruptions, provided that The maximum coverage gap of the satellite constellation for a point during the time period is represented as The cumulative average coverage gap is then calculated as: ; wherein , is a set of visible instants is the ith subset of consecutive visible time periods ordered from small to large by time; The cumulative maximum revisit time is the revisit time of a satellite to a ground point, which refers to the time interval from the starting time of the last continuous coverage to the starting time of this continuous coverage, and the maximum revisit time refers to the maximum value of the time interval, in The calculation formula of the maximum revisit time of the satellite constellation networking to the point in the time period is: The calculation formula of the maximum revisit time of the satellite constellation networking to the point in the time period is: ; wherein , is a set of visible instants the ith subset of consecutive visible time periods ordered from small to large by time, ; The cumulative minimum / maximum number of coverage repetitions is the statistics of the minimum value, the maximum value and the average value of the number of coverage repetitions of each time point covered by the satellite group networking in the time period, and the minimum and maximum coverage repetitions of the grid point are respectively represented as , , , , The calculation formulas are respectively: ; ; For satellite networking of navigation tasks, T k The navigation accuracy factor index of each grid point in the target area is calculated at the moment of satellite networking, including spatial accuracy factor, clock error accuracy factor and geometric accuracy factor. After the calculation is completed, the navigation accuracy factor index of each grid point is written into the global memory of GPU; assuming that n navigation satellites are networked, the specific process is as follows: According to the grid point position and the satellite position, the cofactor matrix Q is calculated: ; ; (i = 1, 2,..., n); ; wherein is the grid point position coordinate, is the epoch time navigation satellite coordinate components in the protocol earth coordinate system; respectively calculating the spatial accuracy factor PDOP, the clock error accuracy factor TDOP and the geometric accuracy factor GDOP as: ; ; 。 8.The simulation and calculation method of satellite networking area coverage performance according to claim 5, characterized in that, In step S430, it includes: The instantaneous maximum, minimum and average coverage multiplicity of the target area grid points by satellite networking are counted by using the reduction algorithm , , The formula is as follows: ; ; ; According to , , The calculation formula calculates the total coverage time, the coverage time percentage, the cumulative average coverage time, the cumulative maximum coverage time, the cumulative maximum coverage gap, the cumulative average coverage gap, the cumulative maximum revisit time, the spatial precision factor, the clock difference precision factor and the maximum, minimum and average values of the geometric precision factor, and the calculation results are written into the GPU global memory after the calculation is completed; The T is calculated by using the reduction algorithm k The visible time set TWS(T k The visible time set of the whole region is the union of the visible time set of each grid point, which is expressed as: ; For a set of regional grid points , , the cumulative coverage percentage of the target region by the satellite constellation in the time period is calculated, with the formula as follows: Cumulative area coverage percentage = ; After the calculation is completed, the cumulative coverage percentage index of the target area is written into the GPU global memory.
Citation Information
Patent Citations
GPU (graphic processing unit) implementing method based on backward projection InSAR (interfering synthetic aperture radar) imaging registration
CN102788979A
Coverage analysis method and system of satellite to earth
CN106469249A