A Monte Carlo simulation method for atomic oxygen or ultraviolet flux on spacecraft surfaces

Through the data clipping method of multi-core parallel mechanism and spacecraft component structure relationship, the problem of high computational complexity of Monte Carlo simulation in the existing technology is solved, and more efficient calculation of atomic oxygen/ultraviolet radiation flux on the surface of the spacecraft is achieved, reducing the calculation cost and time and improving the calculation accuracy.

CN115186535BActive Publication Date: 2025-04-15HARBIN INST OF TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210759740.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-30
Publication Date
2025-04-15
Estimated Expiration
2042-06-30

AI Technical Summary

Technical Problem

The method of calculating the atomic oxygen/ultraviolet radiation flux of the spacecraft surface in the prior art leads to excessive computational complexity, low CPU/memory utilization, long task response time, and poor user experience.

Method used

The Monte Carlo simulation method is used to cut data by using the multi-core parallel mechanism and the spacecraft component structure relationship. The tasks are allocated by the main thread and the child thread, and the spacecraft component position relationship is used to cut irrelevant data, reasonably organize the sharing of grid data structures and computing task data, and reduce the overhead of multi-core parallel memory.

Benefits of technology

The calculation efficiency and accuracy of Monte Carlo simulation are improved, the calculation time and cost are reduced, the grid density and total number of experiments can be improved without changing the calculation results, and the calculation accuracy of atomic oxygen/ultraviolet irradiation flux on the surface of the spacecraft is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115186535B_ABST
    Figure CN115186535B_ABST
Patent Text Reader

Abstract

The present invention provides a Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft, and relates to the technical field of spacecraft simulation calculation. The method comprises: creating a main thread and a sub-thread, wherein the main thread unifies the random experimental parameters on each motion trajectory point of the spacecraft into the body coordinate system, and then divides a plurality of polygonal mesh units of the spacecraft surface into a first structural unit and a second structural unit according to the structural relationship of the spacecraft components, and assigns simulation tasks to each sub-thread; each sub-thread obtains the position coordinates and relative motion direction of the simulated particle according to the simulation task, and calculates the polygonal mesh unit touched by each simulated particle through the first structural unit and the second structural unit; the main thread obtains the atomic oxygen flux or ultraviolet flux on the surface of the spacecraft according to the calculation results of each sub-thread. The present invention can reduce the time of Monte Carlo simulation and improve the calculation accuracy and efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to the technical field of spacecraft simulation calculation, and in particular to a Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft. Background Art

[0002] The erosion / undercutting of protective coating materials on the surface of spacecraft greatly affects the length of its actual service life, and the erosion / undercutting phenomenon mainly comes from the continuous exposure of the outer surface of the spacecraft to the atomic oxygen environment and ultraviolet radiation. At present, most simulation software in the prior art uses Monte Carlo simulation to calculate the atomic oxygen / ultraviolet radiation flux of each unit on the surface of the spacecraft. This method divides the surface of the spacecraft into grid units, and then calculates the flux of each grid unit by counting the number of simulated particles that touch each grid unit in the total number of given experiments. In each random experiment, atomic oxygen particles / simulated ultraviolet irradiation particles are generated at random positions and their final speed is synthesized according to the flight speed of the spacecraft and the thermodynamic motion speed of atomic oxygen. The grid units touched during the movement of the simulated particles and the grid units touched after mirror reflection or diffuse reflection are calculated. On the one hand, this method ignores the positional relationship between spacecraft components when dividing the grid, so that each random test needs to traverse all grid cells on the surface of the spacecraft, causing the complexity of the flux calculation process to exceed linear growth; on the other hand, it does not fully utilize the multi-core parallel architecture and memory resources of modern computers, objectively causing problems such as low CPU / memory utilization, long task response time, and poor user experience. Summary of the invention

[0003] The problem solved by the present invention is that the method of using Monte Carlo simulation to calculate the atomic oxygen / ultraviolet radiation flux of each unit on the surface of a spacecraft in the prior art reduces the calculation accuracy and calculation efficiency.

[0004] To solve the above problems, the present invention provides a Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft, comprising the following steps:

[0005] Step S1, creating a main thread and sub-threads, and determining the number of the sub-threads according to the number of cores of the spacecraft simulation software running platform;

[0006] Step S2, after the main thread unifies the random experimental parameters at each point of the spacecraft's motion trajectory into the spacecraft's main coordinate system, the multiple polygonal mesh units divided on the spacecraft surface are divided into a first structural unit and a second structural unit according to the structural relationship of the spacecraft components;

[0007] Step S3, the main thread generates the number of simulated particles in each direction according to the total number of random experiments, and allocates the number of simulated particles corresponding to each direction to be generated to each sub-thread, so as to allocate simulation tasks to each sub-thread;

[0008] Step S4, each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to the simulation task and using the space environment parameters;

[0009] Step S5, each of the sub-threads calculates the polygonal mesh units touched by each of the simulated particles according to the position coordinates and the relative motion direction of the simulated particles through the first structural unit and the second structural unit;

[0010] Step S6, the main thread obtains the atomic oxygen flux or ultraviolet flux on the surface of the spacecraft according to the calculation results of each sub-thread in step S5.

[0011] Preferably, in step S2, the random experimental parameters are the subdivision nodes of the plurality of polygonal mesh units.

[0012] Preferably, in step S2, the first structural unit is used to organize all the polygonal mesh units into a first array, and each of the polygonal mesh units is stored consecutively in the array.

[0013] Preferably, in step S2, the second structural unit is used to set a bounding box of each component, and to store the start / end positions of the polygonal mesh units arranged in each of the bounding boxes in the first array.

[0014] Preferably, at each trajectory point of the spacecraft, the bounding box vertices in the first structural unit and the polygonal mesh unit vertices in the second structural unit are updated according to the motion parameters of the spacecraft, and the updated data are passed to each of the sub-threads by reference.

[0015] Preferably, in step S5, the polygonal mesh units touched by each of the simulated particles are calculated by the first structure unit and the second structure unit, including calculating the polygonal mesh units touched by each of the simulated particles during movement and the polygonal mesh units touched after mirror reflection or diffuse reflection by the first structure unit and the second structure unit.

[0016] Preferably, in step S5, each of the sub-threads calculates the polygonal mesh units touched by each of the simulated particles according to the position coordinates and the relative motion direction of the simulated particles and through the first structural unit and the second structural unit, including:

[0017] Step S51, enumerating each of the bounding boxes to determine whether the simulated particle will touch the bounding box; if so, calculating a first distance from the simulated particle to the bounding box, and putting the first distance and the bounding box into a mini-heap for management, so as to eliminate calculations on polygonal mesh units on the surfaces of other components;

[0018] Step S52, sequentially taking out the bounding boxes in the minimal heap, enumerating the polygonal mesh units of the components in the first bounding box, determining whether the simulated particle touches the polygonal mesh unit, and if so, calculating the second distance from the simulated particle to the polygonal mesh unit, and determining whether the polygonal mesh unit is the nearest polygonal mesh unit touched by the simulated particle, so as to obtain the nearest polygonal mesh unit touched by the simulated particle and the third distance from the simulated particle to the nearest polygonal mesh unit;

[0019] Step S53, determining to stop enumerating other bounding boxes in the minimal heap and clearing the minimal heap according to the first distance and the third distance, so as to cut off calculations on polygonal mesh units on the surfaces of other components;

[0020] Step S54, when the simulated particle undergoes specular reflection or diffuse reflection at the collision point with the nearest polygonal mesh unit or at the collision point with the bounding box, the movement process of the simulated particle repeats steps S51-S53 until the number of specular reflections or diffuse reflections reaches a set upper limit, thereby obtaining the polygonal mesh unit that the simulated particle finally touches.

[0021] Preferably, in step S53, according to the size of the first distance and the third distance, determining to stop enumerating other bounding boxes in the minimal heap and clearing the minimal heap to cut off calculations on polygonal mesh units on the surfaces of other components includes:

[0022] When the first distance is greater than the third distance, stop enumerating other bounding boxes in the minimal stack and clear the minimal stack.

[0023] Preferably, in step S3, the main thread generates the number of simulated particles in each direction according to the total number of random experiments, and allocates the number of simulated particles corresponding to each direction to be generated to each sub-thread, so as to allocate simulation tasks to each sub-thread, and further includes:

[0024] A second array is created for the simulation tasks of each of the sub-threads, and is transferred to each of the sub-threads by value.

[0025] Preferably, in step S4, each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to the simulation task and using the spatial environment parameters, including: each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to each orientation in the second array and the number of simulated particles corresponding to each orientation and using the spatial environment parameters.

[0026] The advantages of the Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft in the present invention over the prior art are: the present invention accelerates the Monte Carlo simulation calculation process of atomic oxygen / ultraviolet radiation flux on the surface of a spacecraft by pruning data based on a multi-core parallel mechanism and the structural relationship of spacecraft components, improves the low space utilization and data write conflicts caused by the direct superposition of the multi-core parallel mechanism and the pruning operation technology using the position relationship of spacecraft components, resulting in threads waiting for each other and low time efficiency, and reasonably organizes the grid data structure and reasonably arranges the data sharing and data collection in the calculation tasks without changing the calculation results, reduces the memory overhead of multi-core parallelism, and further improves the efficiency of Monte Carlo simulation, thereby greatly improving the grid density and the total number of experiments in Monte Carlo simulation, and finally improving the accuracy of atomic oxygen / ultraviolet radiation flux calculation, and greatly reducing the purpose of calculation time. The steps are simple, easy to implement, and the operation process is transparent to users. The Monte Carlo simulation with deep fusion of multi-core parallelism and data pruning proposed in the present invention can further significantly reduce the time and cost of Monte Carlo simulation without changing the calculation accuracy. It can also improve the accuracy of atomic oxygen / ultraviolet radiation flux by refining the spacecraft surface grid or increasing the total number of random experiments within the same calculation time, thus reducing the cost of calculation, use and research of atomic oxygen / ultraviolet radiation flux on the spacecraft surface, which is of great significance. It has obvious advantages and broad application prospects in the technical applications of spacecraft simulation software promotion, teaching, demonstration and optimization selection of spacecraft surface coating materials. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] Figure 1 This is a flow chart of a Monte Carlo simulation method for atomic oxygen or ultraviolet flux on a spacecraft surface in an embodiment of the present invention;

[0028] Figure 2 It is a schematic diagram of calculation results of the Monte Carlo simulation method of atomic oxygen flux on the surface of a spacecraft under a single core without considering the structural relationship of the spacecraft components in an embodiment of the present invention;

[0029] Figure 3 Schematic diagram of calculation results of the Monte Carlo simulation method of atomic oxygen flux on the surface of a spacecraft in an embodiment of the present invention;

[0030] Figure 4 It is a schematic diagram of calculation results of the Monte Carlo simulation method of the ultraviolet flux on the surface of a spacecraft under a single core without considering the structural relationship of the spacecraft components in an embodiment of the present invention;

[0031] Figure 5 Schematic diagram of calculation results of the Monte Carlo simulation method of ultraviolet flux on the surface of a spacecraft in an embodiment of the present invention. DETAILED DESCRIPTION

[0032] The technical solutions in the embodiments of the present application will be described clearly and in detail below with reference to the accompanying drawings.

[0033] In the description of the embodiments of the present application, the description of the term "some embodiments" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same implementation or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any one or more embodiments or examples in a suitable manner.

[0034] It should also be noted that in the description of the embodiments of the present application, the term "include" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article, or terminal device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article, or terminal device. In the absence of further restrictions, the elements defined by the sentence "include..." do not exclude the existence of other identical elements in the process, method, article, or terminal device including the elements.

[0035] like Figure 1 As shown, in order to solve the above technical problems, an embodiment of the present invention provides a Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft, comprising the following steps:

[0036] Step S1, creating a main thread and sub-threads, and determining the number of the sub-threads according to the number of cores of the spacecraft simulation software running platform;

[0037] Step S2, after the main thread unifies the random experimental parameters at each point of the spacecraft's motion trajectory into the spacecraft's main coordinate system, the multiple polygonal mesh units divided on the spacecraft surface are divided into a first structural unit and a second structural unit according to the structural relationship of the spacecraft components;

[0038] Step S3, the main thread generates the number of simulated particles in each direction according to the total number of random experiments, and allocates the number of simulated particles corresponding to each direction to be generated to each sub-thread, so as to allocate simulation tasks to each sub-thread;

[0039] Step S4, each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to the simulation task and using the space environment parameters;

[0040] Step S5, each of the sub-threads calculates the polygonal mesh units touched by each of the simulated particles according to the position coordinates and the relative motion direction of the simulated particles through the first structural unit and the second structural unit;

[0041] Step S6, the main thread obtains the atomic oxygen flux or ultraviolet flux on the surface of the spacecraft according to the calculation results of each sub-thread in step S5.

[0042] Therefore, in this embodiment, the main thread is used for data loading, task division, and coordinated calculation, and the sub-thread is used to implement specific random simulation calculations.

[0043] It should be noted that this embodiment is not a simple superposition of the two technologies of multi-core parallel mechanism and pruning operation using the position relationship of spacecraft components, but a deep fusion of multi-core parallel mechanism and data pruning technology to accelerate the Monte Carlo simulation calculation of atomic oxygen / ultraviolet radiation flux on the surface of the spacecraft, reasonably organize the grid data structure, reasonably arrange the data sharing and data collection in the calculation task without changing the calculation result, reduce the memory overhead of multi-core parallelism, and further improve the efficiency of Monte Carlo simulation on ordinary desktop computers, so that the grid density and the total number of experiments in the Monte Carlo simulation can be greatly improved, thereby improving the low space utilization caused by direct superposition of technologies and the low time efficiency caused by threads waiting for each other due to data write conflicts, and achieving the purpose of performance improvement of deep combination of technologies better than that of simple technology superposition. Therefore, the present invention can not only use the multi-core parallel mechanism to improve CPU / memory utilization, achieve the purpose of reducing software operation platform configuration and saving costs, but also use multi-threaded parallelism to achieve the purpose of large-scale reduction of calculation time, and can also achieve the purpose of improving calculation accuracy in the same time by refining the spacecraft surface grid.

[0044] In addition, in this embodiment, the first structural unit is located at the bottom layer of the spacecraft structure, and the second structural unit is located at the top layer of the spacecraft structure. Thus, the positional relationship of the spacecraft component structure organizes the subdivided grid of the spacecraft surface into a two-layer structure, which is simple in structure and facilitates subsequent calculations.

[0045] In some embodiments, in step S2, the random experiment parameter is a subdivision node of a plurality of the polygonal mesh units, thereby determining the position of each polygonal mesh unit.

[0046] In some embodiments, in step S2, the first structural unit is used to organize all the polygonal mesh units into a first array, and each of the polygonal mesh units is stored continuously in the array. The second structural unit is used to set the bounding box of each component, and to store the start / end position of the polygonal mesh units set in each of the bounding boxes in the first array. Introducing the position relationship of spacecraft components in the calculation process to cut off components that are not related to the simulated particles can greatly improve the calculation efficiency.

[0047] In some embodiments, at each trajectory point of the spacecraft, the bounding box vertices in the first structural unit and the polygonal mesh unit vertices in the second structural unit are updated according to the motion parameters of the spacecraft, and the updated data is passed to each of the sub-threads by reference. This avoids each sub-thread from updating data independently, improves efficiency, and saves space.

[0048] In some embodiments, in step S3, the main thread generates the number of simulated particles in each direction according to the total number of random experiments, and allocates the number of simulated particles corresponding to each direction to be generated to each sub-thread, so as to allocate simulation tasks to each sub-thread, and further includes:

[0049] The simulation tasks of each sub-thread are used to create a second array, and are transmitted to each sub-thread by value transmission, so that each sub-thread can complete the corresponding simulation task in sequence, and the calculation is simple.

[0050] In some preferred embodiments, the orientation of the simulated particle is represented by parameters 0-5, namely, front, back, left, right, top, and bottom, and the length of the second array is 6, so the representation method is simple.

[0051] In some embodiments, in step S4, each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to the simulation task and using the spatial environment parameters, including: each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to each orientation in the second array and the number of simulated particles corresponding to each orientation and using the spatial environment parameters. Thus, the method is simple.

[0052] In some embodiments, in step S5, the polygonal mesh units touched by each of the simulated particles are calculated by the first structure unit and the second structure unit, including the polygonal mesh units touched by each of the simulated particles during the motion process and the polygonal mesh units touched after the specular reflection or diffuse reflection. Thus, the specular reflection or diffuse reflection of the simulated particles during the motion process is fully considered, making the calculation more accurate and improving the calculation precision.

[0053] In some embodiments, in step S5, each of the sub-threads calculates the polygonal mesh units touched by each of the simulated particles according to the position coordinates and the relative motion direction of the simulated particles and through the first structure unit and the second structure unit, including:

[0054] Step S51, enumerating each of the bounding boxes to determine whether the simulated particle will touch the bounding box; if so, calculating a first distance from the simulated particle to the bounding box, and putting the first distance and the bounding box into a mini-heap for management, so as to eliminate calculations on polygonal mesh units on the surfaces of other components;

[0055] Step S52, sequentially taking out the bounding boxes in the minimal heap, enumerating the polygonal mesh units of the components in the first bounding box, determining whether the simulated particle touches the polygonal mesh unit, and if so, calculating the second distance from the simulated particle to the polygonal mesh unit, and determining whether the polygonal mesh unit is the nearest polygonal mesh unit touched by the simulated particle, so as to obtain the nearest polygonal mesh unit touched by the simulated particle and the third distance from the simulated particle to the nearest polygonal mesh unit;

[0056] Step S53, determining to stop enumerating other bounding boxes in the minimal heap and clearing the minimal heap according to the first distance and the third distance, so as to cut off calculations on polygonal mesh units on the surfaces of other components;

[0057] Step S54, when the simulated particle undergoes specular reflection or diffuse reflection at the collision point with the nearest polygonal mesh unit or at the collision point with the bounding box, the movement process of the simulated particle repeats steps S51-S53 until the number of specular reflections or diffuse reflections reaches a set upper limit, thereby obtaining the polygonal mesh unit that the simulated particle finally touches.

[0058] Therefore, through two calculation pruning operations, the speed of Monte Carlo simulation is greatly accelerated and the calculation efficiency is improved.

[0059] In some embodiments, in step S53, determining to stop enumerating other bounding boxes in the minimal heap and clearing the minimal heap according to the first distance and the third distance to cut off calculations on polygonal mesh units on surfaces of other components includes:

[0060] When the first distance is greater than the third distance, stop enumerating other bounding boxes in the minimal stack and clear the minimal stack.

[0061] In this way, the calculation of polygonal mesh units in other unprocessed packaging boxes is cut off, the method is simple, and the calculation efficiency is improved.

[0062] In some embodiments, in step S6, the main thread applies for independent space for each of the sub-threads to record the atomic oxygen flux or ultraviolet flux of each polygonal grid unit in the simulation task completed by each of the sub-threads, thereby effectively avoiding write conflicts and improving computing efficiency.

[0063] In this embodiment, in step S6, after each thread completes the simulation task at a given track point, the main thread counts the sum of the atomic oxygen flux or ultraviolet flux of each sub-thread, records the flux distribution, releases the space used by each sub-thread, and outputs the final result as the instantaneous flux. Thus, the method is simple and the calculation is accurate.

[0064] In this embodiment, step S6 further includes: after all simulation tasks of the sub-threads are completed, the main thread terminates the operation of the sub-threads, and obtains the atomic oxygen flux or ultraviolet flux on the surface of the spacecraft according to the calculation results of each of the sub-threads in step S5. Thus, the calculation is accurate.

[0065] Therefore, this embodiment performs data pruning based on the multi-core parallel mechanism and the structural relationship of the spacecraft components to accelerate the Monte Carlo simulation calculation process of the atomic oxygen / ultraviolet radiation flux on the spacecraft surface. Under the premise of not changing the calculation results, the grid data structure is reasonably organized, the data sharing and data collection in the calculation tasks are reasonably arranged, and the memory overhead of multi-core parallelism is reduced, and the efficiency of the Monte Carlo simulation is further improved, so that the grid density and the total number of experiments in the Monte Carlo simulation can be greatly improved, and the accuracy of the atomic oxygen / ultraviolet radiation flux calculation is finally improved, and the purpose of greatly reducing the calculation time is achieved. The steps are simple, easy to implement, and the operation process is transparent to the user. Moreover, the Monte Carlo simulation with deep fusion of multi-core parallelism and data pruning proposed in this embodiment can further greatly reduce the time and cost of the Monte Carlo simulation without changing the calculation accuracy, and can also improve the accuracy of the atomic oxygen / ultraviolet radiation flux by refining the spacecraft surface grid or increasing the total number of random experiments within the same calculation time, reducing the cost of calculation, use and research of the atomic oxygen / ultraviolet radiation flux on the spacecraft surface, which is of great significance. It has obvious advantages and broad application prospects in technical applications such as promotion of spacecraft simulation software, teaching, demonstration and optimization selection of spacecraft surface coating materials.

[0066] In order to verify the effectiveness of the Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the spacecraft surface based on the structural relationship of spacecraft components and the multi-core parallel mechanism in this embodiment, the same grid density, number of particles, number of particle reflections and number of cores are used in this embodiment to perform the calculation of the Monte Carlo simulation method of atomic oxygen / ultraviolet flux under a single core without considering the structural relationship of spacecraft components, as a comparison. Figure 2-5 As shown, Figure 2 This is a schematic diagram of the calculation results of the Monte Carlo simulation method of the atomic oxygen flux on the surface of the spacecraft under a single core without considering the structural relationship of the spacecraft components in this embodiment, and the calculation time under a single core is 666.234 seconds; Figure 3This is a schematic diagram of calculation results of the Monte Carlo simulation method of atomic oxygen flux on the surface of a spacecraft based on the structural relationship of spacecraft components and the multi-core parallel mechanism in this embodiment, and the calculation time under dual-core 4 threads is 24.318 seconds; Figure 4 This is a schematic diagram of the calculation results of the Monte Carlo simulation method of the ultraviolet flux on the surface of the spacecraft under a single core without considering the structural relationship of the spacecraft components in this embodiment, and the calculation time under a single core is 251.648 seconds; Figure 5 This is a schematic diagram of the calculation results of the Monte Carlo simulation method of the ultraviolet flux on the surface of the spacecraft based on the structural relationship of the spacecraft components and the multi-core parallel mechanism in this embodiment, and the calculation time under dual-core 4 threads is 18.194 seconds. Figure 2 and Figure 3 In the figure, the size of the atomic oxygen flux is represented by the change in color depth. The darker the color, the greater the atomic oxygen flux. Figure 4 and Figure 5 In the figure, the size of the ultraviolet radiation flux is represented by the change of color depth. The darker the color, the greater the ultraviolet radiation flux. It can be seen that the Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of the spacecraft based on the structural relationship of the spacecraft components and the multi-core parallel mechanism in this embodiment has greatly improved calculation efficiency compared with the Monte Carlo simulation method of atomic oxygen / ultraviolet flux under a single core without considering the structural relationship of the spacecraft components in this embodiment.

[0067] Although the present invention is disclosed as above, the protection scope of the present invention is not limited thereto. Those skilled in the art may make various changes and modifications without departing from the spirit and scope of the present invention, and these changes and modifications will fall within the protection scope of the present invention.

Claims

1. A Monte Carlo simulation method for atomic oxygen or ultraviolet flux on a spacecraft surface, characterized in that: The steps include: Step S1, creating a main thread and sub-threads, and determining the number of the sub-threads according to the number of cores of the spacecraft simulation software running platform; Step S2, after the main thread unifies the random experimental parameters at each point of the spacecraft's motion trajectory into the spacecraft's main coordinate system, the multiple polygonal mesh units divided on the spacecraft surface are divided into a first structural unit and a second structural unit according to the structural relationship of the spacecraft components; Step S3, the main thread generates the number of simulated particles in each direction according to the total number of random experiments, and allocates the number of simulated particles corresponding to each direction to be generated to each sub-thread, so as to allocate simulation tasks to each sub-thread; Step S4, each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to the simulation task and using the space environment parameters; Step S5, each of the sub-threads calculates the polygonal mesh units touched by each of the simulated particles according to the position coordinates and the relative motion direction of the simulated particles through the first structural unit and the second structural unit; Step S6, the main thread obtains the atomic oxygen flux or ultraviolet flux on the surface of the spacecraft according to the calculation results of each sub-thread in step S5.

2. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 1, characterized in that: In step S2, the random experimental parameters are the subdivision nodes of the plurality of polygonal mesh units.

3. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 2, characterized in that: In step S2, the first structural unit is used to organize all the polygonal mesh units into a first array, and each of the polygonal mesh units is stored consecutively in the array.

4. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 3, characterized in that: In step S2, the second structural unit is used to set the bounding box of each component and to store the start / end positions of the polygonal mesh units arranged in each of the bounding boxes in the first array.

5. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 4, characterized in that: At each trajectory point of the spacecraft, the bounding box vertices in the first structural unit and the polygonal mesh unit vertices in the second structural unit are updated according to the motion parameters of the spacecraft, and the updated data are passed to each of the sub-threads by reference.

6. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 5, characterized in that: In step S5, the polygonal mesh units that each simulated particle touches are calculated by the first structure unit and the second structure unit, including calculating the polygonal mesh units that each simulated particle touches during movement and the polygonal mesh units that each simulated particle touches after mirror reflection or diffuse reflection by the first structure unit and the second structure unit.

7. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 6, characterized in that: In step S5, each of the sub-threads calculates the polygonal mesh units touched by each of the simulated particles according to the position coordinates and the relative motion direction of the simulated particles and through the first structural unit and the second structural unit, including: Step S51, enumerating each of the bounding boxes to determine whether the simulated particle will touch the bounding box; if so, calculating a first distance from the simulated particle to the bounding box, and putting the first distance and the bounding box into a mini-heap for management, so as to eliminate calculations on polygonal mesh units on the surfaces of other components; Step S52, sequentially taking out the bounding boxes in the minimal heap, enumerating the polygonal mesh units of the components in the first bounding box, determining whether the simulated particle touches the polygonal mesh unit, and if so, calculating the second distance from the simulated particle to the polygonal mesh unit, and determining whether the polygonal mesh unit is the nearest polygonal mesh unit touched by the simulated particle, so as to obtain the nearest polygonal mesh unit touched by the simulated particle and the third distance from the simulated particle to the nearest polygonal mesh unit; Step S53, determining to stop enumerating other bounding boxes in the minimal heap and clearing the minimal heap according to the first distance and the third distance, so as to cut off calculations on polygonal mesh units on the surfaces of other components; Step S54, when the simulated particle undergoes specular reflection or diffuse reflection at the collision point with the nearest polygonal mesh unit or at the collision point with the bounding box, the movement process of the simulated particle repeats steps S51-S53 until the number of specular reflections or diffuse reflections reaches a set upper limit, thereby obtaining the polygonal mesh unit that the simulated particle finally touches.

8. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 7, characterized in that: In step S53, according to the first distance and the third distance, determining to stop enumerating other bounding boxes in the minimal heap and clearing the minimal heap to cut off calculations on polygonal mesh units on the surfaces of other components includes: When the first distance is greater than the third distance, stop enumerating other bounding boxes in the minimal stack and clear the minimal stack.

9. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 1, characterized in that: In step S3, the main thread generates the number of simulated particles in each direction according to the total number of random experiments, and allocates the number of simulated particles corresponding to each direction to be generated to each sub-thread, so as to allocate simulation tasks to each sub-thread, and further includes: A second array is created for the simulation tasks of each of the sub-threads, and is transferred to each of the sub-threads by value.

10. The Monte Carlo simulation method of atomic oxygen or ultraviolet flux on the surface of a spacecraft according to claim 9, characterized in that: In step S4, each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to the simulation task and using the spatial environment parameters, including: each of the sub-threads obtains the position coordinates and relative motion direction of the simulated particles according to each orientation in the second array and the number of simulated particles corresponding to each orientation and using the spatial environment parameters.

Citation Information

Patent Citations

  • Monte Carlo grid parallel dose calculation method and device and storage medium

    CN110504016A