Multi-body dynamics-SPH coupling calculation solving method and system

By implementing bidirectional coupling calculations of SPH and multibody dynamics through the MPMD parallel communication mechanism, the problems of high development complexity and low coupling calculation efficiency in existing technologies are solved, achieving efficient fluid-structure interaction simulation and suitable for flexible coupling between multibody dynamics software and SPH solvers.

CN120994392AActive Publication Date: 2025-11-21SHANGHAI SUOCHEN INFORMATION TECHNOLOGY CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202511157471.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-08-19
Publication Date
2025-11-21
Estimated Expiration
2045-08-19

AI Technical Summary

Technical Problem

Existing multibody dynamics and SPH coupling methods are complex to develop, inflexible, and difficult to promote in mature simulation software. Furthermore, traditional unidirectional coupling has limited accuracy, while bidirectional coupling has high computational complexity, making it difficult to efficiently realize fluid-structure interaction.

Method used

The system employs the MPMD parallel communication mechanism, which enables bidirectional coupling between the SPH solver and the multibody dynamics solver through the MPI inter-group communicator. It utilizes GPU parallel computing and asynchronous communication mechanisms to exchange force, torque, and configuration data in real time. The system allows for independent development of SPH and multibody dynamics solver programs and supports independent allocation of heterogeneous hardware resources.

Benefits of technology

It reduces development complexity, enhances the universality and application scenarios of coupled computation, improves computational efficiency and resource utilization, solves the mesh distortion problem, realizes strong coupling between fluid pressure and structural deformation, and is suitable for flexible coupling between multibody dynamics software and SPH solvers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120994392A_ABST
    Figure CN120994392A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-body dynamics-SPH coupling calculation solving method and system, and belongs to the technical field of computer simulation, according to the method, bidirectional coupling operation of an SPH solver and a multi-body dynamics solver is achieved through an MPMD heterogeneous process group, an SPH main control program group executes fluid particle acting force calculation and pressure field updating, and the MPMD heterogeneous process group executes fluid particle acting force calculation and pressure field updating; the multi-body dynamics slave control program group processes rigid body motion response, compute-intensive SPH simulation and logic-intensive multi-body dynamics solution are distributed in different process groups to run, independent distribution of heterogeneous hardware resources is supported, and the two parties exchange force, torque and configuration data in real time in a bidirectional mode through MPI inter-group communicators. According to the method, existing source codes do not need to be greatly integrated and modified, the development complexity and the technical threshold are reduced, and the overall calculation efficiency and the resource utilization rate are improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the technical field of computer simulation, and particularly relates to a multi-body dynamics-SPH coupling calculation solving method and system. BACKGROUND

[0002] Numerical simulation methods of continuous fluid medium can be divided into grid methods and meshless methods according to the discrete topological relationship of the calculation domain. The grid method is based on Euler / Lagrange grid to solve the Navier-Stokes equation, but it faces the problem of grid distortion when dealing with large deformation of free surface, and needs to rely on VOF and other methods to capture the interface. The dynamic grid update consumes 30%-50% of the computing resources, and the efficiency is limited. In contrast, the meshless method naturally tracks the interface through kernel function interpolation, avoiding the problem of grid distortion. Among them, the smoothed particle hydrodynamics (SPH) method solves the fluid dynamics problem through a particle discrete model. The discrete particles are free to move under the condition of no fixed connection, which can efficiently simulate scenes such as severe surface flow and fluid-rigid body interaction, and support coupling calculation with multi-body dynamics system.

[0003] Multi-body dynamics studies the motion law of multi-rigid / flexible body system under force, which helps to deeply understand the dynamic behavior of complex mechanical systems. Multi-body dynamics and SPH coupling research mainly solves the interaction problem between fluid and multi-body structure, which widely exists in the fields of ship and ocean engineering, aerospace engineering, machine and robot engineering, etc. According to the different coupling interaction mechanisms, the multi-body dynamics and SPH coupling method is divided into two collaborative modes of one-way coupling and two-way coupling. The one-way coupling only transmits the fluid load to the multi-body system, ignoring the reaction of the multi-body structure motion on the flow field, and the precision is limited. While the two-way coupling exchanges force and displacement data in real time, and accurately simulates the strong interaction between fluid and solid, but the implementation complexity is high.

[0004] The key of multi-body dynamics and SPH two-way coupling is the efficient transmission of force and displacement data. The current mainstream scheme adopts unified in-process coupling, that is, integrating SPH and multi-body dynamics solver in the same executable program, and realizing data interaction through direct memory access. The SPH module directly reads the real-time position / speed of the multi-body model, and feeds back the fluid force / torque to the multi-body module. This method does not rely on network communication or inter-process call, but it needs to deeply integrate the source codes of both parties, which is complex to develop and has low flexibility, greatly limiting its application scenarios, and it is difficult to promote in mature and packaged simulation software.

[0005] The information disclosed in this BACKGROUND section is only intended to increase an understanding of the general background of the application and is not intended to be a recognition or a suggestion that this information forms part of the prior art that is already known to those of ordinary skill in the art. SUMMARY

[0006] The application aims to provide a multi-body dynamics-SPH coupling calculation solving method and system, which adopts an MPMD (Multiple Program Multiple Data) parallel communication mechanism to exchange force and configuration data between coupling processes, and has the characteristics of strong program expandability, high universality, high coupling accuracy, parallel calculation acceleration, etc.

[0007] To achieve the above-mentioned purpose, the application provides a multi-body dynamics-SPH coupling calculation solving method, which adopts an MPMD parallel communication architecture to realize bidirectional coupling of an SPH solver and a multi-body dynamics solver, and includes the following steps:

[0008] Perform a main control flow, parse a solving file, and initialize a simulation environment;

[0009] Configure GPU parallel computing resources, and divide a fluid solving domain into a plurality of sub-solving regions according to the number of solving processes;

[0010] Exchange force, torque, and configuration data in real time through an MPI (Message Passing Interface) Inter-Communicator;

[0011] Respectively perform SPH fluid particle action force calculation and multi-body dynamics rigid body motion response calculation;

[0012] Cyclically update the state of all field particles until the termination condition is met.

[0013] Optionally, the MPMD parallel communication architecture starts a heterogeneous process group based on an SPH master program group and a multi-body dynamics slave program group, and the SPH master program group and the multi-body dynamics slave program group perform cross-group data synchronization through an MPI Inter-Communicator.

[0014] Optionally, the real-time exchange of force, torque, and configuration data adopts an asynchronous communication mechanism, and specifically includes:

[0015] The SPH process group sends fluid action force and torque to the multi-body dynamics process group;

[0016] The multi-body dynamics process group feeds back rigid body six-degree-of-freedom motion parameters to the SPH process group.

[0017] Optionally, the real-time exchange of force, torque, and configuration data is realized through MPI point-to-point communication, and the target process is located by the local rank of the opposite program group.

[0018] Optionally, according to the CFL condition, the maximum allowed advancing time step in each process is calculated, and the minimum value in the maximum allowed advancing time step is taken as the global advancing time step, and the step range of the global advancing time step is 10⁻ 4 to 10⁻ 6 second.

[0019] Optionally, after the step of dividing the fluid solving domain into a plurality of sub-solution regions according to the number of solving processes, the method further comprises assigning the sub-solution regions to the solving processes and enabling GPU parallel acceleration calculation, wherein the GPU parallel acceleration calculation specifically comprises:

[0020] binding the SPH process group to the GPU device, and calculating the fluid particle force by using the CUDA kernel;

[0021] allocating the multi-body dynamics process group to the multi-core CPU to execute the logic-intensive solution.

[0022] Optionally, the particles crossing the sub-solution region boundary are detected, and the particles crossing the sub-solution region boundary are migrated to the corresponding process through MPI communication according to the updated particle position information.

[0023] Optionally, the parameter configuration satisfies the following range:

[0024] The particle spacing is 0.01-5.0m;

[0025] The fluid density is 700-1300kg / m³;

[0026] C cfl The stability condition value is 0.1-0.5.

[0027] Optionally, in the step of cyclically updating the particle state of the whole field until the termination condition is met, the termination condition is configured as:

[0028] if the current time t is greater than or equal to tmax, or the time step n is greater than or equal to nmax, or an external termination instruction is received, then the simulation process is terminated, wherein tmax is a preset maximum simulation time, and nmax is a preset maximum step number.

[0029] The application further provides a multi-body dynamics-SPH coupling calculation solving system adopting the multi-body dynamics-SPH coupling calculation solving method, and the system comprises a main control module, a CUDA acceleration module, an SPH solving module, a multi-body dynamics solving module, an MPMD communication module and a dynamic load balancing module.

[0030] The main control module is used for executing the main loop control process, analyzing the solving file and initializing the simulation environment.

[0031] The CUDA acceleration module is used for configuring GPU parallel computing resources, dividing fluid sub-solution regions and distributing computing tasks;

[0032] The MPMD communication module is used for realizing cross-process data exchange between the SPH solution module and the multi-body dynamics solution module, and supporting real-time transmission of force, torque and configuration data;

[0033] The SPH solution module is used for executing particle action force calculation, pressure field updating and full-field particle state synchronization;

[0034] The multi-body dynamics solution module is used for receiving force / torque data transmitted by the SPH solution module, calculating rigid body six-degree-of-freedom motion response and feeding back configuration data;

[0035] The dynamic load balancing module realizes adaptive adjustment of particle distribution in the solution domain through particle position vector judgment and cross-process migration mechanism.

[0036] Compared with the prior art, the multi-body dynamics-SPH coupling calculation solution method and system have the following advantages or beneficial effects:

[0037] The present application decouples the development and integration process of the two solutions: the SPH solution and the multi-body dynamics solution are started in parallel through MPI as independent executable programs, and the exchange of force and configuration data is realized by using the inter-group communicator of MPI. This method does not need to make substantial integration modification to the existing source codes of the two parties, significantly reduces the development complexity and technical threshold, enables the mature and packaged multi-body dynamics software and SPH solver to be directly and flexibly coupled, greatly improves the universality and application scene range, and is particularly suitable for solvers that rely on MPI for multi-process parallel calculation.

[0038] Meanwhile, the present application distributes the computationally intensive SPH simulation and the logically intensive multi-body dynamics solution in different process groups for running, supports independent allocation of heterogeneous hardware resources, for example, allocates GPU acceleration for the SPH process group, allocates multi-core CPU for the multi-body dynamics process group, and realizes the overlap of communication and calculation through the asynchronous communication mechanism of MPI, effectively improves the overall calculation efficiency and resource utilization, and has significant parallel acceleration effect. In addition, the modular design and standardized MPI interface give the system stronger robustness and maintainability.

[0039] Further, the present application adopts the SPH meshless method which can naturally avoid the grid distortion problem, capture the interface details of large deformation of the free surface, save the dynamic grid maintenance overhead, and improve the calculation resource utilization. Through the bidirectional synchronization mechanism of force / configuration data, the strong coupling of fluid pressure and structure deformation is realized, and the problem of ignoring the disturbance of the multi-body structure motion to the flow field in the traditional one-way coupling is solved.

[0040] The application also realizes parallel calculation of SPH particle force through CUDA parallel calculation, and the multi-body dynamics process group monopolizes CPU processing logic tasks, thereby improving heterogeneous hardware utilization.

[0041] The application realizes real-time bidirectional synchronization of force / torque and configuration data based on MPI asynchronous communication, realizes parallel execution of data exchange and physical calculation, reduces the proportion of communication time consumption and synchronization waiting loss. Based on the dynamic adjustment of the communication cycle according to the CFL condition, the data exchange frequency can be optimized in real time according to the time step, and the numerical divergence risk is reduced under extreme working conditions. BRIEF DESCRIPTION OF DRAWINGS

[0042] Figure 1 Flowchart of the multi-body dynamics-SPH coupling calculation solving method of an embodiment of the application Figure 1 ;

[0043] Figure 2 Flowchart of the multi-body dynamics-SPH coupling calculation solving method of an embodiment of the application Figure 2 ;

[0044] Figure 3 Schematic diagram of the MPMD parallel communication architecture of an embodiment of the application

[0045] Figure 4 Structure diagram of the wave energy converter of an embodiment of the application

[0046] Figure 5 Schematic diagram of the wave energy converter coupling simulation result of an embodiment of the application

[0047] Figure 6 Schematic diagram of the buoy model of an embodiment of the application

[0048] Figure 7 Schematic diagram of the mooring buoy coupling simulation result of an embodiment of the application DETAILED DESCRIPTION

[0049] To make the purpose, technical scheme and advantages of the embodiments of the application clearer, the technical scheme in the embodiments of the application will be described clearly and completely below with reference to the drawings in the embodiments of the application. Obviously, the described embodiments are only part of the embodiments of the application, rather than all the embodiments of the application. Based on the embodiments in the application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the application.

[0050] The terms "first", "second", "third", "fourth" and the like in the description and in the claims of the present application, and above-mentioned drawings, if any, are used to distinguish between similar objects and not necessarily for describing a specific sequential or chronological order. It is to be understood that the use of the terms so

[0051] It should be understood that, in various embodiments of the present application, the size of the serial number of each process does not mean the order of execution, and the execution order of each process should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0052] It should be understood that, in the present application, "include" and "have" and any variants thereof are intended to cover non-exclusive inclusion, for example, a process, method, system, product or device that includes a series of steps or units does not have to be limited to those steps or units clearly listed, but can include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0053] It should be understood that, in the present application, "multiple" means two or more. "And / or" is only a description of the relationship between the associated objects, which means that there can be three relationships, for example, A and / or B can mean: A exists alone, A and B exist together, and B exists alone. The character " / " generally represents that the associated objects before and after are in an "or" relationship. "Include A, B and C", "include A, B, C" means that A, B and C are all included, "include A, B or C" means that one of A, B and C is included, "include A, B and / or C" means that any one or any two or three of A, B and C is included.

[0054] It should be understood that, in the present application, "B corresponding to A", "B corresponding to A", "A corresponding to B" or "B corresponding to A" means that B is associated with A, and B can be determined according to A. Determining B according to A does not mean that B is determined only according to A, but B can also be determined according to A and / or other information. The matching of A and B means that the similarity of A and B is greater than or equal to a preset threshold.

[0055] The technical solutions of the present application will be described in detail below with specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in some embodiments.

[0056] First embodiment:

[0057] As Figure 1As shown, according to the multi-body dynamics-SPH coupling calculation solving method of the preferred embodiment of the application, the MPMD parallel communication architecture is used to realize the bidirectional coupling of the SPH solver and the multi-body dynamics solver, and the interaction force is calculated through the implicit coupling algorithm between the SPH particles and the rigid body, wherein the coupling term includes the moment of the fluid stress on the rigid body centroid and the reaction of the rigid body deformation on the fluid pressure, and the method includes the following steps:

[0058] A main control flow is executed to parse a solving file and initialize a simulation environment; specifically, the solving file containing the simulation time length, particle spacing, medium physical property parameters, rigid body mass properties and boundary constraints is parsed.

[0059] GPU parallel computing resources are configured, and the fluid solving domain is divided into a plurality of sub-solving regions according to the solving process number; specifically, the CUDA driver is called to detect available GPU devices, the fluid solving domain is divided into a corresponding number of sub-solving regions according to the set solving process number, and the sub-solving regions are sequentially placed into each solving process, and the GPU parallel acceleration calculation is enabled.

[0060] The force, moment and position data are exchanged in real time through an MPI Inter-Communicator; specifically, the MPI Inter-Communicator uses an asynchronous communication mechanism, and the data exchange is performed through non-blocking MPI communication, and the data exchange period is dynamically adjusted according to the CFL number of the current time step.

[0061] The SPH fluid particle interaction force calculation and the multi-body dynamics rigid body motion response calculation are performed respectively; specifically, the interaction force between the fluid particles and the interaction force between the fluid particles and the rigid body are calculated according to the SPH control equation and the basic equation of rigid body dynamics respectively; and all particles around the rigid body are traversed to accumulate the interaction force of the adjacent particles, and the interaction force of the fluid particles on the rigid body is calculated.

[0062] The full-field particle state is updated in a loop until the termination condition is met; specifically, the termination condition is configured as: if the current time t is greater than or equal to tmax, or the time step number n is greater than or equal to nmax, or an external termination instruction is received, the simulation process is terminated, wherein tmax is a preset maximum simulation time length, and nmax is a preset maximum step number; further, if the step length is continuously out of limit for multiple times, a warning is triggered.

[0063] In the embodiment of the application, the MPMD parallel communication architecture starts a heterogeneous process group based on an SPH master program group and a multi-body dynamics slave program group, and the SPH master program group and the multi-body dynamics slave program group perform cross-group data synchronization through an MPI Inter-Communicator.

[0064] In the embodiment of the present application, force, torque and position data are exchanged in real time through an MPI inter-group communicator, and the real-time exchange adopts an asynchronous communication mechanism, specifically including: the SPH process group sends fluid acting force and torque to the multibody dynamics process group; the multibody dynamics process group feeds back rigid body six-degree-of-freedom motion parameters to the SPH process group. SPH and multibody dynamics run as independent processes, avoiding source code intrusion.

[0065] In the embodiment of the present application, force, torque and position data are exchanged in real time through MPI point-to-point communication, and the target process is located by the local rank of the opposite program group. Through local rank positioning, the number of address conversions can be reduced, and communication delay can be reduced. The local rank isolates the communication domain and avoids global communication chain blockage. When particles migrate, the target process is accurately positioned by the local rank.

[0066] In the embodiment of the present application, according to the CFL condition, the maximum allowed time step in each process is calculated, and the minimum value among them is taken as the global time step. The step range of the global time step is 10 -4 to 10 -6 seconds.

[0067] In the embodiment of the present application, after the step of dividing the fluid solving domain into a plurality of sub-solution regions according to the number of solving processes, the sub-solution regions are distributed to each solving process, and GPU parallel acceleration calculation is enabled, wherein the GPU kernel is implemented by CUDA. Specifically, the GPU parallel acceleration calculation specifically includes:

[0068] Binding the SPH process group to the GPU device, and calculating the fluid particle acting force by using the CUDA kernel;

[0069] The multibody dynamics process group is distributed to a multi-core CPU to perform logic-intensive solving.

[0070] In the embodiment of the present application, particles crossing the sub-solution region boundary are detected, and the particles crossing the sub-solution region boundary are migrated to the corresponding process through MPI communication according to the updated particle position information. After the particle migration, dynamic load balancing control is triggered, and the computing resources are redistributed according to the particle density of each process.

[0071] In the embodiment of the present application, the parameter configuration satisfies the following range:

[0072] The particle spacing is 0.01-5.0m, which can balance the calculation resolution and calculation efficiency;

[0073] The fluid density is 700-1300kg / m³, which can accurately match the marine engineering scene;

[0074] C cflThe stable condition value is 0.1-0.5, by setting this value, the particle migration mechanism can be coordinated to reduce the load fluctuation rate.

[0075] Second embodiment:

[0076] The application also provides another embodiment of a multi-body dynamics-SPH coupling calculation solving method, which realizes data exchange between SPH and multi-body dynamics heterogeneous solving processes by using MPMD parallel communication architecture, and the key features include SPH and multi-body dynamics coupling implementation steps and an MPMD-based parallel communication method for SPH and multi-body dynamics coupling, and the implementation process is as shown in Figure 2 and Figure 3 The specific steps include the following steps:

[0077] Step 1: Execute the main control process, parse the solving file containing the simulation time or the total number of simulation steps, the particle spacing, the medium physical property parameters, the rigid body mass attribute and the boundary constraint, and initialize the simulation environment; specifically, the key parameters parsed include the simulation termination condition (simulation time or total number of simulation steps), particle spacing, fluid density (such as 1000 kg / m³ for water medium), rigid body mass attribute and motion constraint condition, and the initialized solving domain includes fluid particles and rigid body boundary definition.

[0078] Step 2: Call the CUDA driver to detect available GPU devices, divide the fluid solving domain into a corresponding number of sub-solution regions according to the set number of solving processes, and sequentially put the sub-solution regions into each solving process, and enable GPU parallel acceleration calculation; specifically, automatically detect the number of available GPUs, divide the fluid domain into equal-size sub-regions according to the total number of processes, such as 4 processes corresponding to 4 sub-domains, each sub-domain binds an independent GPU device, and enables CUDA parallel calculation kernel.

[0079] Step 3: Perform pressure field initialization based on the initial particle distribution; specifically, the pressure field initialization method based on the initial particle distribution is adopted, the static pressure distribution is calculated through the state equation, and the fluid static equilibrium is ensured.

[0080] Step 4: Write the system state parameters at the initial time into the result file; specifically, output the particle position, velocity and pressure data of the full field at the initial time in VTK format, and the file is named in the sequence of "timestep_00000.VTK".

[0081] Step 5: Each step loop starts with a condition judgment: if the current time t≥tmax (preset maximum simulation time) or the time step n≥nmax (preset maximum step number) or an external termination instruction is received, the simulation process is terminated; otherwise, go to step 6 to perform physical calculation.

[0082] Step 6: Calculate the interaction force between fluid particles; specifically, calculate the kernel function interaction force between fluid particles, use the kernel function to calculate the pressure term and viscosity term, and set the action radius to 3-3.5 times the particle spacing.

[0083] Step 7: Calculate the maximum allowed time step for each process according to the CFL condition, and take the minimum value as the global time step; specifically, each process calculates the maximum time step according to the particle properties, CFL condition, and the maximum time step of the previous process. cfl Stable condition calculation of the maximum time step of the current process, taking the global minimum value as the time step through communication operation, typical value is 10 -4 -10 -6 seconds.

[0084] Step 8: Start the rigid body motion calculation process, calculate the interaction between fluid particles and the interaction between fluid particles and rigid bodies according to the SPH control equation and the basic equation of rigid body dynamics;

[0085] Step 9: Traverse all particles around the rigid body, accumulate the force received from nearby particles, and calculate the force of the fluid particles on the rigid body;

[0086] Step 10: Integrate the force of the boundary particles around the rigid body on the rigid body to obtain the resultant force (such as three axial components) and the resultant moment (such as three axial components);

[0087] Step 11: Send the force / momentum data to the multi-body dynamics solver (such as CRUX) through MPI asynchronous communication, receive the returned rigid body six-degree-of-freedom motion parameters, including position, Euler angle, linear velocity, angular velocity;

[0088] Step 12: Update the boundary particle state according to the position data passed by the multi-body dynamics solver, including: position update: based on the displacement of the rigid body centroid and the rotation angle; velocity update: superimpose the translational velocity and rotational linear velocity of the rigid body.

[0089] Step 13: Calculate the interaction between these boundary particles and the surrounding fluid particles according to the updated rigid body particle state, and realize the update of the full-field particle state;

[0090] Step 14: Update the particle pressure field; specifically, use the explicit pressure update scheme to correct the particle pressure value according to the density change rate.

[0091] Step 15: According to the updated particle position information, judge whether the particle is located in the current solving process, and migrate the particles not in the current process to the corresponding process through MPI point-to-point communication;

[0092] Step 16: Determine whether the current time step meets the specified step number or time interval requirement (such as every 100 steps or every 0.1 seconds), and output the current solution domain result to the VTK file if the requirement is met;

[0093] Step 17: Return to step 5 to perform termination condition judgment, and enter the next round of loop with the updated global step size if the termination condition is not met.

[0094] Specifically, the parameter range of the embodiment of the present application is as follows:

[0095] Simulation termination condition: includes simulation duration or total simulation step number;

[0096] Particle spacing: depends on the accuracy requirement of the simulation problem scenario;

[0097] Fluid density: depends on the selected medium, such as the density of water being 1000 kg / m 3 ;

[0098] Rigid body mass properties and motion constraint conditions: depend on the specific multi-body dynamics model;

[0099] C cfl Stability condition: recommended value is 0.15;

[0100] File output interval: can be a simulation time interval or a simulation step interval;

[0101] Process number: includes multi-body dynamics process number and SPH process number, which also depends on the problem size and hardware conditions.

[0102] It should be noted that the MPMD (Multiple Program Multiple Data) mode of MPI (Message Passing Interface) allows different programs (executable files) to perform parallel computation on different processors or processes simultaneously and communicate through MPI. This is opposite to the SPMD (Single Program Multiple Data) mode, in which multiple processes run the same program but handle different data. The MPMD mechanism allows functionally heterogeneous executable programs to be started and executed in parallel within the same MPI job (Job), and the programs exchange data efficiently through MPI communication, which is particularly suitable for multi-solver coupling scenarios.

[0103] The SPH and multi-body dynamics coupling parallel communication architecture based on MPMD is as shown in Figure 2 The following command is used to start the coupling calculation process:

[0104] mpirun -np nx. / master : -np ny. / slave; This command creates a parallel job with total processes of nx + ny by MPI launcher mpirun. Where:

[0105] -np nx. / master: specifies to start nx processes to execute the master program master;

[0106] -np ny. / slave: specifies to start ny processes to execute the slave program slave;

[0107] Symbol explanation: key delimiter, used to indicate that MPI starts two independent ProgramGroups.

[0108] MPI runtime environment automatically creates an independent Intra-Communicator for each ProgramGroup, effectively organizing the communication between heterogeneous program modules:

[0109] Master ProgramGroup Communicator (MPI_COMM_MASTER): contains all nx processes executing master, which can communicate within the group through this domain.

[0110] Slave ProgramGroup Communicator (MPI_COMM_SLAVE): contains all ny processes executing slave, which can communicate within the group through this domain.

[0111] Cross-group data exchange is the core of coupled computing, which is realized through the Inter-Communicator mechanism of MPI. Inter-Communicator logically connects two independent ProgramGroups, allowing any process in the master group to directly communicate with any process in the slave group in a point-to-point manner, and also supports group-to-group collective communication operations. When communicating, the process specifies the local rank of the target process in the other program group, rather than the global rank.

[0112] The present application realizes the bidirectional coupling of heterogeneous solvers through the MPMD parallel communication architecture, so that the multi-body dynamics slave program and the SPH master program run as independent processes; real-time bidirectional synchronization of force, displacement / velocity, etc. Data is completed using the MPI Inter-Communicator, and finally the simulation calculation of SPH and multi-body dynamics coupling is completed.

[0113] Third embodiment:

[0114] The embodiment of the present application is aimed at offshore wave energy converter simulation, adopts an oscillating water column type wave energy device, establishes a fluid domain with a length of 300m, a width of 200m and a height of 20m, realizes high-precision wave simulation with a particle spacing of 0.1m, supports free surface capture, and sets the fluid density to 1025kg / m³ to accurately match the seawater properties. Regular waves with a wave height of 2.5m and a period of 5s are input, and the movement constraint of the wave energy plate (mass 800kg) is single-axis rotation around the base hinge. The simulation sets the termination condition as a physical time length of 120s, and the parallel resource allocation is 8 SPH process groups (bound to GPU) and 2 MBD process groups (control rigid body dynamics). During the coupling communication process, the SPH process group integrates the fluid force acting on the boundary particles of the wave energy plate in real time, transmits the torque data to the MBD process group through MPI asynchronous communication; the MBD solver (CRUX) solves the rigid body rotation response, and then returns the updated Euler angle and angular velocity through the inter-group communication domain to drive the SPH to update the motion state of the boundary particles. The simulation successfully captures the periodic swing (amplitude ±35°) of the wave energy plate, and the output pressure field and torque curve verify the fluid-structure coupling effect. The 8-GPU speedup ratio under the parallel architecture is 6.8 times, and the inter-group communication time consumption accounts for only 12%, which reduces the waiting delay through the asynchronous communication mechanism, as shown in Figure 4 、 Figure 5

[0115] Fourth embodiment:

[0116] The embodiment of the present application simulates the stability of the buoy in the extreme sea state of a wave height of 4m and a wind speed of 25m / s, balances the large-scale calculation efficiency with a particle spacing of 0.1m, and sets the fluid density to 1025kg / m³. The buoy mass is 12kg, and the three anchor chains (length 80m / stiffness coefficient 5×10 6 N·m -1 ​) to realize the cooperative mooring constraint. The simulation termination condition is set to 100,000 time steps, the process group is dynamically allocated load in the ratio of SPH:MBD = 6:3, and the particle force calculation is processed in a streaming parallel manner by using a CUDA (Compute Unified Device Architecture, parallel computing platform and programming model). The coupling communication is realized through the following process: the SPH process group calculates the fluid force on the surface particles of the floating body and integrates the six-degree-of-freedom data, and transmits the data to the MBD process group through MPI point-to-point non-blocking communication (MPI_Isend / MPI_Irecv); the MBD solver calculates the six-degree-of-freedom motion parameters (position, angular velocity, etc.) of the floating body by fusing the anchor tension, and feeds back the data to the SPH process group to drive the boundary particle state update. The simulation reproduces the maximum inclination of the buoy of 28° and the peak anchor tension of 920 N, with an error of less than 7% compared with the engineering measurement. The dynamic particle migration mechanism effectively alleviates the uneven load of the sub-domain caused by the displacement of the floating body. The whole coupling simulation takes 4.2 hours (the traditional method takes 22.3 hours), and the calculation efficiency is improved by 5.3 times. Details are shown in Figure 6 、 Figure 7

[0117] Fifth embodiment:

[0118] The embodiment of the application also provides a multi-body dynamics-SPH coupling calculation and solving system, which comprises a main control module, a CUDA acceleration module, an SPH solving module, a multi-body dynamics solving module, an MPMD communication module and a dynamic load balancing module.

[0119] The main control module is used for executing a main loop control process, analyzing a solving file and initializing a simulation environment.

[0120] The CUDA acceleration module is used for configuring GPU parallel computing resources, dividing fluid sub-solution regions and allocating calculation tasks; based on the CUDA streaming parallel architecture, the fluid sub-domain is divided, asynchronous memory transmission is supported, and real-time simulation of ten million particles is supported.

[0121] The MPMD communication module adopts non-blocking MPI point-to-point communication to realize cross-process data exchange between the SPH solving module and the multi-body dynamics solving module, and supports bidirectional real-time transmission of force, torque and position data.

[0122] The SPH solving module is used for executing particle force calculation, pressure field updating and full-field particle state synchronization, adopts an SPH kernel function adaptive correction algorithm, supports dynamic smoothing length adjustment, and reduces the pressure field error.

[0123] The multi-body dynamics solving module is used for receiving force / torque data transmitted by the SPH solving module, calculating rigid body six-degree-of-freedom motion response and feeding back position data. ​

[0124] The dynamic load balancing module realizes adaptive adjustment of particle distribution in the solving domain through particle position vector judgment and cross-process migration mechanism, load fluctuation is reduced, and the stability of sub-solution region calculation is improved.

[0125] The system of the embodiment of the application realizes significant technical effects through the synergistic effect of various modules. The main control module accurately analyzes and solves files and completes simulation environment initialization, providing a stable and reliable starting basis for the entire calculation process; the CUDA acceleration module efficiently configures GPU parallel computing resources, divides fluid sub-solution regions and reasonably allocates calculation tasks, improving the calculation speed; the MPMD communication module efficiently realizes cross-process data exchange between the SPH solving module and the multi-body dynamics solving module, supports real-time transmission of force, torque and configuration data, and guarantees the timeliness and accuracy of data transmission; the SPH solving module accurately performs particle force calculation, pressure field updating and full-field particle state synchronization, the multi-body dynamics solving module quickly receives force / torque data and efficiently calculates rigid body six-degree-of-freedom motion response and timely feeds back configuration data, both of which have clear division of labor, efficient operation and improved processing efficiency of respective calculation tasks; the dynamic load balancing module realizes adaptive adjustment of particle distribution in the solving domain through particle position vector judgment and cross-process migration mechanism, effectively balances the load of each process, avoids waste of computing resources, and further improves the calculation efficiency and stability of the entire system.

[0126] It should be noted that the information interaction, execution process and the like between the above modules are based on the same concept as the method embodiments of the application, and are a system corresponding to the above multi-body dynamics-SPH coupling calculation solving method. All implementation manners in the above method embodiments are applicable to the embodiments of the system, and the specific functions and the technical effects brought by the implementation manners can be referred to the method embodiments part, which will not be described here.

[0127] The foregoing description of specific exemplary embodiments of the application is intended to be illustrative only and is not intended to limit the application to the precise forms described. Many modifications and variations are possible in light of the above teachings without departing from the spirit or essential characteristics of the application. The exemplary embodiments were chosen and described in order to explain the principles of the application and its practical application and to allow others skilled in the art to understand the application for various exemplary embodiments with various modifications being made to the application. The scope of the application is intended to be limited only by the claims and their equivalents.

Claims

1. A multi-body dynamics-SPH coupling computational solving method, characterized in that, The MPMD parallel communication architecture is used to realize the bidirectional coupling of the SPH solver and the multi-body dynamics solver, including the following steps: A main control flow is executed, a solving file is parsed, and a simulation environment is initialized; GPU parallel computing resources are configured, and the fluid solving domain is divided into a plurality of sub-solution regions according to the number of solving processes; Force, torque and position data are exchanged in real time through an MPI inter-group communicator; SPH fluid particle action force calculation and multi-body dynamics rigid body motion response calculation are respectively performed; The full-field particle state is updated in a loop until a termination condition is met.

2. The multi-body dynamics-SPH coupling computational solving method according to claim 1, wherein, The MPMD parallel communication architecture starts a heterogeneous process group based on an SPH master program group and a multi-body dynamics slave program group, and the SPH master program group and the multi-body dynamics slave program group perform cross-group data synchronization through an MPI inter-group communicator.

3. The multi-body dynamics-SPH coupling computational solving method according to claim 2, wherein, Real-time exchange of force, torque and position data is performed using an asynchronous communication mechanism, which specifically includes: The SPH process group sends fluid action force and torque to the multi-body dynamics process group; The multi-body dynamics process group feeds back six-degree-of-freedom motion parameters of the rigid body to the SPH process group.

4. The multi-body dynamics-SPH coupling computational solving method according to claim 3, wherein, Real-time exchange of force, torque and position data is achieved through MPI point-to-point communication, and the target process is located by the local rank of the opposite program group.

5. The multi-body dynamics-SPH coupling computational solving method of claim 1, wherein, According to CFL condition, the maximum allowed advancing time step in each process is calculated, and the minimum value among them is taken as the global advancing time step, the step range of which is 10 -4 to 10 -6 seconds.

6. The multibody dynamics-SPH coupling computational solving method of claim 1, wherein, After the step of dividing the fluid solving domain into a plurality of sub-solution regions according to the number of solving processes, the sub-solution regions are distributed to each solving process, and GPU parallel acceleration calculation is enabled, wherein the GPU parallel acceleration calculation specifically includes: Binding the SPH process group to the GPU device, and using the CUDA kernel to calculate the fluid particle action force; The multi-body dynamics process group is distributed to the multi-core CPU to perform logic-intensive solving.

7. The multi-body dynamics-SPH coupling computational solving method according to claim 6, wherein, Particles crossing the sub-solution region boundary are detected, and the particles crossing the sub-solution region boundary are migrated to the corresponding process through MPI communication according to the updated particle position information.

8. The multi-body dynamics-SPH coupling computational solving method according to any one of claims 1 to 7, characterized in that, The parameter configuration meets the following ranges: Particle spacing is 0.01-5.0 m; The fluid density is 700-1300 kg / m³; C cfl The stability condition takes values from 0.1 to 0.

5.

9. The multibody dynamics-SPH coupling computational solving method according to claim 8, wherein, In the step of updating the full-field particle state in a loop until the termination condition is met, the termination condition is configured as: If the current time t ≥ tmax or the time step number n ≥ nmax or an external termination instruction is received, the simulation process is terminated, wherein tmax is a preset maximum simulation time, and nmax is a preset maximum step number.

10. A multi-body dynamics-SPH coupling computational solving system, characterized in that, The system includes a main control module, a CUDA acceleration module, an SPH solving module, a multi-body dynamics solving module, an MPMD communication module and a dynamic load balancing module. The main control module is used to execute a main loop control flow, parse a solving file and initialize a simulation environment; The CUDA acceleration module is used to configure GPU parallel computing resources, divide fluid sub-solution regions and distribute computing tasks; The MPMD communication module is used to realize cross-process data exchange between the SPH solving module and the multi-body dynamics solving module, and supports real-time transmission of force, torque and position data; The SPH solving module is used to perform particle action force calculation, pressure field update and full-field particle state synchronization; The multi-body dynamics solving module is configured to receive the force / torque data transmitted by the SPH solving module, calculate rigid body six-degree-of-freedom motion response, and feed back the configuration data. The dynamic load balancing module realizes self-adaptive adjustment of particle distribution in the solving domain through the particle position vector judgment and the cross-process migration mechanism.

Citation Information

Patent Citations

  • Heterogeneous parallel system, molecular dynamics calculation method and medium

    CN117709174A

  • High-precision fluid-solid coupling simulation method based on flexible multi-body dynamics

    CN117787121A

  • Parallel algorithm for molecular dynamics simulation

    US20140257769A1

  • System, method and computer-accessible medium for an inter-process communication tools coupling system

    US20250013509A1