A multi-body dynamics-sph coupling calculation solving method and system
By using the MPMD parallel communication mechanism and asynchronous communication, efficient bidirectional coupling between SPH and the multibody dynamics solver is achieved, which solves the problems of high development complexity and limited accuracy in the existing technology, improves computational efficiency and resource utilization, and is suitable for flexible coupling between multibody dynamics software and SPH solver.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-19
- Publication Date
- 2026-05-15
AI Technical Summary
Existing multibody dynamics and SPH coupling methods suffer from high development complexity and low flexibility in data exchange and integration, making them difficult to promote in mature simulation software. Furthermore, traditional unidirectional coupling has limited accuracy, while bidirectional coupling is highly complex to implement.
The system employs the MPMD parallel communication mechanism, and uses the MPI inter-group communicator to achieve bidirectional coupling between the SPH solver and the multibody dynamics solver. It utilizes GPU parallel computing and asynchronous communication to support real-time exchange of force, torque, and configuration data. The SPH and multibody dynamics solvers are developed independently, leveraging heterogeneous hardware resources.
It reduces development complexity, improves coupling accuracy and universality, enhances computational efficiency and resource utilization, solves mesh distortion problems, and achieves strong coupling between fluid pressure and structural deformation.
Smart Images

Figure CN120994392B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of computer simulation technology, and specifically relates to a multibody dynamics-SPH coupled calculation and solution method and system. Background Technology
[0002] Numerical simulation methods for continuous fluid media can be categorized into meshed and meshless methods based on the discrete topology of the computational domain. Meshed methods solve the Navier-Stokes equations using Eulerian / Lagrange grids, but they face the challenge of mesh distortion when dealing with large deformations of free surfaces, requiring methods such as VOF to capture the interface. Dynamic mesh updates consume 30%-50% of computational resources, limiting efficiency. In contrast, meshless methods naturally track the interface through kernel interpolation, avoiding mesh distortion. Among these methods, Smoothed Particle Hydrodynamics (SPH) solves hydrodynamic problems using a particle discrete model—discrete particles move freely without fixed connections—efficiently simulating scenarios such as intense surface flows and fluid-rigid body interactions, and supporting coupled computation with multibody dynamics systems.
[0003] Multibody dynamics studies the motion of multi-rigid / flexible body systems under forces, aiding in a deeper understanding of the dynamic behavior of complex mechanical systems. The coupling of multibody dynamics and SPH primarily addresses the interaction between fluids and multibody structures, a problem widely applicable in naval architecture and ocean engineering, aerospace engineering, and robotics. Based on different coupling mechanisms, multibody dynamics and SPH coupling methods are divided into two cooperative modes: unidirectional coupling and bidirectional coupling. Unidirectional coupling only transfers fluid loads to the multibody system, neglecting the reaction of the multibody structure's motion to the flow field, resulting in limited accuracy. Bidirectional coupling, on the other hand, exchanges force and displacement data in real time, accurately simulating fluid-structure interaction, but its implementation complexity is high.
[0004] The key to bidirectional coupling between multibody dynamics and SPH lies in the efficient transfer of force and configuration data. Current mainstream solutions employ unified in-process coupling, integrating SPH and the multibody dynamics solver into the same executable program, enabling data interaction through direct memory access. The SPH module directly reads the real-time position / velocity of the multibody model and feeds back fluid forces / torques to the multibody module. This method does not rely on network communication or inter-process calls, but it requires deep integration of both source codes, resulting in complex development and low flexibility, significantly limiting its application scenarios and making it difficult to promote in mature, encapsulated simulation software.
[0005] The information disclosed in this background section is intended only to enhance the understanding of the overall background of the invention and should not be construed as an admission or in any way implying that the information constitutes prior art known to those skilled in the art. Summary of the Invention
[0006] The purpose of this invention is to provide a multibody dynamics-SPH coupled calculation solution method and system, which uses the MPMD (Multiple Program Multiple Data) parallel communication mechanism to exchange force and configuration data between coupling processes, and has the characteristics of strong program scalability, high universality, high coupling accuracy, and accelerated parallel calculation.
[0007] To achieve the above objectives, this invention provides a multibody dynamics-SPH coupled calculation solution method, which uses an MPMD parallel communication architecture to achieve bidirectional coupling between the SPH solver and the multibody dynamics solver, including the following steps:
[0008] Execute the main control flow, parse the solution file, and initialize the simulation environment;
[0009] Configure GPU parallel computing resources and divide the fluid solution domain into several sub-solution regions according to the number of solution processes;
[0010] Force, torque, and configuration data are exchanged in real time via an MPI (Message Passing Interface) inter-communicator.
[0011] Perform SPH fluid particle interaction force calculation and multibody dynamics rigid body motion response calculation respectively;
[0012] The state of all particles is updated cyclically until the termination condition is met.
[0013] Optionally, the MPMD parallel communication architecture starts a heterogeneous process group based on the SPH master control program group and the multibody dynamics slave control program group. The SPH master control program group and the multibody dynamics slave control program group perform cross-group data synchronization through the MPI inter-group communicator.
[0014] Optionally, force, torque, and configuration data are exchanged in real time via an MPI inter-group communicator. This real-time exchange employs an asynchronous communication mechanism, specifically including:
[0015] The SPH process group sends fluid forces and torques to the multibody dynamics process group;
[0016] The multibody dynamics process group feeds back the rigid body's six-degree-of-freedom motion parameters to the SPH process group.
[0017] Optionally, real-time exchange of force, torque, and configuration data is achieved through MPI point-to-point communication, with the target process located by the local rank of the other program group.
[0018] Optionally, based on the CFL condition, the maximum allowed propagation time step in each process is calculated, and the minimum value among them is taken as the global propagation time step, with the global propagation time step ranging from 10⁻. 4 Up to 10⁻ 6 Second.
[0019] Optionally, after dividing the fluid solution domain into several sub-solution regions according to the number of solution processes, the method further includes allocating the sub-solution regions to each solution process and enabling GPU parallel acceleration computation, wherein GPU parallel acceleration computation specifically includes:
[0020] Bind the SPH process group to the GPU device and use the CUDA kernel to calculate fluid particle forces;
[0021] Multibody dynamics processes are assigned to multi-core CPUs to perform logic-intensive solutions.
[0022] Optionally, particles that cross the boundary of the sub-solution region are detected, and based on the updated particle position vector information, the particles that cross the boundary of the sub-solution region are migrated to the corresponding process via MPI communication.
[0023] Optionally, the parameter configuration should meet the following range:
[0024] The interparticle spacing is 0.01–5.0 m;
[0025] The fluid density is 700–1300 kg / m³;
[0026] C cfl The stability condition is set to a value between 0.1 and 0.5.
[0027] Optionally, in the step of cyclically updating the state of all particles until a termination condition is met, the termination condition is configured as follows:
[0028] If the current time t ≥ tmax, the number of time steps n ≥ nmax, or an external termination command is received, the simulation process will terminate. Here, tmax is the preset maximum simulation duration, and nmax is the preset maximum number of steps.
[0029] The present invention also provides a multibody dynamics-SPH coupled calculation and solution system, which adopts the above-mentioned multibody dynamics-SPH coupled calculation and solution method. The system includes a main control module, a CUDA acceleration module, an SPH solution module, a multibody dynamics solution module, an MPMD communication module, and a dynamic load balancing module.
[0030] The main control module is used to execute the main loop control process, parse the solution file, and initialize the simulation environment.
[0031] The CUDA acceleration module is used to configure GPU parallel computing resources, divide the fluid sub-solution region, and allocate computing tasks.
[0032] The MPMD communication module is used to realize cross-process data exchange between the SPH solution module and the multibody dynamics solution module, and supports real-time transmission of force, torque and configuration data.
[0033] The SPH solver module is used to perform particle force calculation, pressure field update, and full-field particle state synchronization.
[0034] The multibody dynamics solution module is used to receive force / torque data transmitted by the SPH solution module, calculate the rigid body six-degree-of-freedom motion response, and feed back configuration data.
[0035] The dynamic load balancing module achieves adaptive adjustment of particle distribution within the solution domain through particle position vector judgment and cross-process migration mechanism.
[0036] Compared with the prior art, the multibody dynamics-SPH coupled calculation solution method and system according to the present invention have the following advantages or beneficial effects:
[0037] This invention decouples the development and integration processes of the two solvers: the SPH solver and the multibody dynamics solver are launched in parallel via MPI as independent executable programs, and the exchange of force and configuration data is achieved using MPI's inter-group communicator. This method does not require significant integration and modification of the existing source code of both parties, significantly reducing development complexity and technical barriers. It enables mature, encapsulated multibody dynamics software and the SPH solver to be directly and flexibly coupled, greatly improving universality and application scenarios, and is particularly suitable for solvers that rely on MPI for multi-process parallel computation.
[0038] Meanwhile, this invention distributes the computationally intensive SPH simulation and the logic-intensive multibody dynamics solution across different process groups, supporting the independent allocation of heterogeneous hardware resources. For example, GPU acceleration is allocated to the SPH process group, and multi-core CPUs are allocated to the multibody dynamics process group. Furthermore, the asynchronous communication mechanism of MPI enables the overlap of communication and computation, effectively improving overall computational efficiency and resource utilization, resulting in significant parallel acceleration. In addition, the modular design and standardized MPI interface give the system stronger robustness and maintainability.
[0039] Furthermore, the SPH meshless method employed in this invention naturally avoids mesh distortion problems, captures interface details of large deformations on the free liquid surface, saves on dynamic mesh maintenance overhead, and improves computational resource utilization. Through a two-way synchronization mechanism of force / configuration data, strong coupling between fluid pressure and structural deformation is achieved, solving the problem of neglecting flow field disturbances caused by multi-body structural motion in traditional unidirectional coupling.
[0040] This invention also achieves parallel computation of SPH particle forces through CUDA parallel computing, with multibody dynamics process groups exclusively using the CPU to handle logical tasks, improving the utilization of heterogeneous hardware. A load redistribution mechanism based on particle migration reduces the particle density differences among processes, further improving resource utilization.
[0041] This invention achieves real-time bidirectional synchronization of force / torque and configuration data based on MPI asynchronous communication, enabling parallel execution of data exchange and physical calculations, thus reducing the proportion of communication time and synchronization waiting losses. Based on CFL conditions, the communication cycle is dynamically adjusted, allowing for real-time optimization of the data exchange frequency according to the time step, reducing the risk of numerical divergence under extreme conditions. Attached Figure Description
[0042] Figure 1 Flowchart of the multibody dynamics-SPH coupled calculation solution method according to an embodiment of the present invention Figure 1 ;
[0043] Figure 2 Flowchart of the multibody dynamics-SPH coupled calculation solution method according to an embodiment of the present invention Figure 2 ;
[0044] Figure 3 A schematic diagram of the MPMD parallel communication architecture according to an embodiment of the present invention;
[0045] Figure 4 A structural diagram of a wave energy generator according to an embodiment of the present invention;
[0046] Figure 5 A schematic diagram of the simulation results of wave energy generator coupling according to an embodiment of the present invention;
[0047] Figure 6 A schematic diagram of a buoy model according to an embodiment of the present invention;
[0048] Figure 7 A schematic diagram of the simulation results of a moored buoy coupling according to one embodiment of the present invention. Detailed Implementation
[0049] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0050] The terms "first," "second," "third," "fourth," etc. (if present) in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein.
[0051] It should be understood that in the various embodiments of the present invention, the sequence number of each process does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present invention.
[0052] It should be understood that in this invention, "comprising" and "having," and any variations 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 is not necessarily limited to those steps or units that are explicitly listed, but may include other steps or units that are not explicitly listed or that are inherent to such process, method, product, or device.
[0053] It should be understood that in this invention, "multiple" refers to two or more. "And / or" is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, "and / or B" can represent: A existing alone, A and B existing simultaneously, and B existing alone. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "Contains A, B, and C", "Contains A, B, and C" means that all three A, B, and C are contained; "Contains A, B, or C" means that one of A, B, and C is contained; "Contains A, B, and / or C" means that any one, two, or three of A, B, and C are contained.
[0054] It should be understood that in this invention, "B corresponding to A", "B corresponding to A", "A and B correspond", or "B and A correspond" means that B is associated with A, and B can be determined based on A. Determining B based on A does not mean determining B solely based on A; B can also be determined based on A and / or other information. Matching A and B is defined as a similarity between A and B that is greater than or equal to a preset threshold.
[0055] The technical solution of the present invention will be described in detail below with reference to specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.
[0056] First embodiment:
[0057] like Figure 1As shown, the multibody dynamics-SPH coupled calculation solution method according to a preferred embodiment of the present invention uses an MPMD parallel communication architecture to realize bidirectional coupling between the SPH solver and the multibody dynamics solver. The interaction forces are calculated through an implicit coupling algorithm between SPH particles and rigid bodies, wherein the coupling terms include the torque of fluid stress on the center of mass of the rigid body and the reaction of rigid body deformation on fluid pressure. The method includes the following steps:
[0058] The main control flow is executed, the solution file is parsed, and the simulation environment is initialized; specifically, the solution file containing simulation duration, particle spacing, medium physical property parameters, rigid body mass properties, and boundary constraints is parsed.
[0059] Configure GPU parallel computing resources and divide the fluid solution domain into several sub-solution regions according to the number of solution processes. Specifically, call the CUDA driver to detect available GPU devices, divide the fluid solution domain into a corresponding number of sub-solution regions according to the set number of solution processes, and put the sub-solution regions into each solution process in sequence, and enable GPU parallel acceleration computing.
[0060] Force, torque, and configuration data are exchanged in real time through the MPI Inter-Communicator. Specifically, the MPI Inter-Communicator adopts an asynchronous communication mechanism and exchanges data through non-blocking MPI communication. The data exchange cycle is dynamically adjusted according to the CFL number of the current time step.
[0061] The SPH fluid particle interaction force calculation and the multibody dynamics rigid body motion response calculation are performed separately. Specifically, based on the SPH governing equations and the basic equations of rigid body dynamics, the interaction forces between fluid particles and the interaction forces between fluid particles and rigid bodies are calculated respectively. All particles around the rigid body are traversed, and the forces acting on it by neighboring particles are accumulated to calculate the force of fluid particles on the rigid body.
[0062] The state of all particles is updated cyclically until the termination condition is met. Specifically, the termination condition is configured as follows: if the current time t ≥ tmax or the number of time steps n ≥ nmax or an external termination command is received, the simulation process is terminated, where tmax is the preset maximum simulation duration and nmax is the preset maximum number of steps. Furthermore, if the step size exceeds the limit multiple times consecutively, an early warning is triggered.
[0063] In this embodiment of the invention, the MPMD parallel communication architecture starts a heterogeneous process group based on the SPH master control program group and the multibody dynamics slave control program group. The SPH master control program group and the multibody dynamics slave control program group perform cross-group data synchronization through the MPI inter-group communicator.
[0064] In this embodiment of the invention, force, torque, and configuration data are exchanged in real time via an MPI inter-group communicator. This real-time exchange employs an asynchronous communication mechanism, specifically including: the SPH process group sending fluid forces and torques to the multibody dynamics process group; and the multibody dynamics process group feeding 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 this embodiment of the invention, real-time exchange of force, torque, and configuration data is achieved through MPI point-to-point communication, and the target process is located by the local rank of the counterpart program group. Local rank location reduces the number of address translations, lowers communication latency, and isolates the communication domain, preventing global communication chain blockage. During particle migration, the target process is precisely located using local rank.
[0066] In this embodiment of the invention, based on the CFL condition, the maximum allowed propagation time step size in each process is calculated, and the minimum value among them is taken as the global propagation time step size. The step size range of the global propagation time step size is 10. -4 Up to 10 -6 Second.
[0067] In this embodiment of the invention, after dividing the fluid solution domain into several sub-solution regions according to the number of solution processes, the method further includes allocating the sub-solution regions to each solution process and enabling GPU parallel acceleration computation, wherein the GPU kernel is implemented using CUDA. Specifically, GPU parallel acceleration computation includes:
[0068] Bind the SPH process group to the GPU device and use the CUDA kernel to calculate fluid particle forces;
[0069] Multibody dynamics processes are assigned to multi-core CPUs to perform logic-intensive solutions.
[0070] In this embodiment of the invention, particles that cross the boundary of the sub-solution region are detected. Based on the updated particle position vector information, the particles that cross the boundary of the sub-solution region are migrated to the corresponding process through MPI communication. After the particles are migrated, dynamic load balancing control is triggered, and computing resources are reallocated according to the particle density of each process.
[0071] In this embodiment of the invention, the parameter configuration satisfies the following range:
[0072] The particle spacing is 0.01–5.0m, which can achieve a balance between computational resolution and computational efficiency;
[0073] With a fluid density of 700–1300 kg / m³, it can precisely match marine engineering scenarios;
[0074] C cflThe stability condition is set to 0.1-0.5. By setting this value, it can work in conjunction with the aforementioned particle migration mechanism to reduce load volatility.
[0075] Second embodiment:
[0076] This invention also proposes another embodiment of a multibody dynamics-SPH coupled computational solution method, which uses an MPMD parallel communication architecture to realize data exchange between the SPH and multibody dynamics heterogeneous solution processes. Its key features include the implementation steps for SPH and multibody dynamics coupling and the parallel communication method for SPH and multibody dynamics coupling based on MPMD. The implementation process is as follows: Figure 2 and Figure 3 As shown, the specific steps include:
[0077] Step 1: Execute the main control flow, parse the solution file containing simulation duration or total number of simulation steps, particle spacing, medium physical properties, rigid body mass properties and boundary constraints, and initialize the simulation environment; specifically, the key parameters to be parsed include: simulation termination conditions (simulation duration or total number of simulation steps), particle spacing, fluid density (e.g., 1000 kg / m³ for water medium), rigid body mass properties and motion constraints, and the initialized solution domain includes fluid particle and rigid body boundary definitions.
[0078] Step 2: Call the CUDA driver to detect available GPU devices, divide the fluid solution domain into a corresponding number of sub-solution regions according to the set number of solution processes, and put the sub-solution regions into each solution process in sequence, and enable GPU parallel acceleration computing; specifically, automatically detect the number of available GPUs, divide the fluid domain into equal-sized sub-regions according to the total number of processes, such as 4 processes corresponding to 4 sub-regions, each sub-region is bound to an independent GPU device, and the CUDA parallel computing kernel is enabled.
[0079] Step 3: Initialize the pressure field based on the initial particle distribution; specifically, the pressure field initialization method based on the initial particle distribution is adopted, and the static pressure distribution is calculated through the state equation to ensure the static equilibrium of the fluid.
[0080] Step 4: Write the system state parameters at the initial moment to the result file; specifically, output the particle position, velocity, and pressure data of the entire field at the initial moment in VTK format, and name the file according to the sequence "timestep_00000.VTK".
[0081] Step 5: Check the start condition of each loop: If the current time t ≥ tmax (preset maximum simulation duration) or the number of time steps n ≥ nmax (preset maximum number of steps) or an external termination command is received, then terminate the simulation process; otherwise, proceed to step 6 to perform physical calculations.
[0082] Step 6: Calculate the interaction forces between fluid particles; specifically, calculate the kernel function forces between fluid particles, using the kernel function to calculate the pressure and viscosity terms, with the radius of action set to 3-3.5 times the interparticle distance.
[0083] Step 7: Based on the CFL conditions, calculate the maximum allowed propagation time step for each process, and take the minimum value as the global propagation time step; specifically, each process is determined based on particle properties, C... cfl The stability condition is used to calculate the maximum time step of the current process. The global minimum value is taken as the step size through communication operations, with a typical value of 10. -4 -10 -6 Second.
[0084] Step 8: Start the rigid body motion calculation process. Based on the SPH control equations and the basic equations of rigid body dynamics, calculate the interaction between fluid particles and the interaction between fluid particles and rigid bodies, respectively.
[0085] Step 9: Iterate through all particles around the rigid body, accumulate the forces exerted on it by neighboring particles, and calculate the forces exerted on the rigid body by the fluid particles.
[0086] Step 10: Integrate the forces exerted on the rigid body by the boundary particles around the rigid body to obtain the resultant force (e.g., three-axis components) and resultant torque (e.g., three-axis components).
[0087] Step 11: Send the force / torque data to the multibody dynamics solver (such as CRUX) via MPI asynchronous communication, and receive the returned rigid body six-degree-of-freedom motion parameters, which include position, Euler angles, linear velocity, and angular velocity;
[0088] Step 12: Update the state of the boundary particles based on the configuration data transmitted by the multibody dynamics solver and the rigid body kinematic equations, including: position update: based on the displacement and rotation angle of the rigid body's center of mass; velocity update: superimposed on the translational velocity and rotational linear velocity of the rigid body.
[0089] Step 13: Based on the updated rigid body particle state, calculate the interaction between these boundary particles and the surrounding fluid particles to achieve full-field particle state update;
[0090] Step 14: Update the particle pressure field; specifically, adopt an explicit pressure update scheme to correct the particle pressure value according to the density change rate.
[0091] Step 15: Based on the updated particle position vector information, determine whether the particle is in the current solution process. For particles that are not in the current process, migrate them to the corresponding process through MPI point-to-point communication.
[0092] Step 16: Determine whether the current time step meets the specified number of steps or time interval requirements (such as every 100 steps or every 0.1 seconds). If the requirements are met, output the results of the current solution domain to the VTK file.
[0093] Step 17: Return to step 5 to check the termination condition. If the termination condition is not met, enter the next loop with the updated global step size.
[0094] Specifically, the parameter ranges of the embodiments of the present invention are as follows:
[0095] Simulation termination conditions include simulation duration or total number of simulation steps;
[0096] Particle spacing: depends on the accuracy requirements of the simulation problem scenario;
[0097] Fluid density: Depends on the medium selected; for example, the density of water is 1000 kg / m³. 3 ;
[0098] Rigid body mass properties and motion constraints depend on the specific multibody dynamics model;
[0099] C cfl Stability condition: Recommended value is 0.15;
[0100] File output interval: can be the simulation time interval or the simulation step interval;
[0101] Number of processes: This includes the number of multibody dynamics processes and the number of SPH processes, which also depend on the size of the problem being solved and the hardware conditions.
[0102] It's important to note that the MPMD (Multiple Program Multiple Data) execution mode of MPI (Message Passing Interface) allows different programs (executable files) to perform parallel computations simultaneously on different processors or processes and communicate via MPI. This contrasts with the SPMD (Single Program Multiple Data) mode, where multiple processes run the same program but process different data. The MPMD mechanism allows heterogeneous executable programs to start in parallel and execute collaboratively within the same MPI job, with programs exchanging data efficiently through MPI communication. This is particularly suitable for scenarios involving multiple solver coupling.
[0103] A parallel communication architecture for SPH coupled with multibody dynamics implemented based on MPMD, as shown below. Figure 2 As shown, the coupled computing process is started using the following command:
[0104] `mpirun -np nx . / master : -np ny . / slave`; This command creates a parallel job with a total of `nx` + `ny` processes using the MPI launcher `mpirun`.
[0105] -np nx . / master: Specifies that nx processes should be started to execute the master program;
[0106] -np ny . / slave: Specifies that ny processes should be started to execute the slave program.
[0107] Symbol explanation: Key separator, used to indicate that MPI starts two separate program groups.
[0108] The MPI runtime environment automatically creates an independent intra-communicator for each program group, effectively organizing communication between heterogeneous program modules:
[0109] Master Group Communication Domain (MPI_COMM_MASTER): Contains all nx processes executing master, which can communicate within the group through this domain.
[0110] The slave communication domain (MPI_COMM_SLAVE) contains all ny processes executing slaves, which can communicate within the group through this domain.
[0111] Cross-group data exchange is the core of coupled computing, implemented through MPI's Inter-Communicator mechanism. The Inter-Communicator logically connects two independent program groups, allowing any process in the master group to communicate directly with any process in the slave group, and also supports inter-group aggregate communication operations. During communication, the process specifies the target process's local rank within the other program group, rather than the global rank.
[0112] This invention achieves bidirectional coupling of heterogeneous solvers through the MPMD parallel communication architecture, enabling the multibody dynamics slave program and the SPH master program to run as independent processes; it utilizes the MPI inter-group communicator to achieve real-time bidirectional synchronization of force, displacement / velocity and other data, and finally completes the simulation calculation of SPH coupled with multibody dynamics.
[0113] Third embodiment:
[0114] This invention simulates a marine wave energy device, employing an oscillating water column wave energy device. A fluid domain of 300m x 200m x 20m is established, and a particle spacing of 0.1m is used to achieve high-precision wave simulation, supporting free surface capture. The fluid density is set to 1025kg / m³ to accurately match seawater properties. A regular wave with a wave height of 2.5m and a period of 5s is input, and the motion constraint of the wave energy plate (mass 800kg) is a single-axis rotation about a hinged base. The simulation termination condition is set to a physics duration of 120s, and parallel resources are allocated as 8 SPH process groups (bound to GPU) and 2 MBD process groups (controlling rigid body dynamics). During the coupling communication process, the SPH process groups integrate the fluid forces acting on the boundary particles of the wave energy plate in real time and transmit the torque data to the MBD process groups via MPI asynchronous communication. After the MBD solver (CRUX) calculates the rigid body rotation response, the updated Euler angles and angular velocities are transmitted back through the inter-group communication domain, driving SPH to update the motion state of the boundary particles. The simulation successfully captured the periodic oscillation of the wave plate (amplitude ±35°), and the output pressure field and torque curves verified the fluid-structure interaction effect. Under the parallel architecture, the 8-GPU speedup reached 6.8 times, and the inter-group communication time accounted for only 12%. The asynchronous communication mechanism reduced waiting latency, specifically as follows... Figure 4 , Figure 5 As shown.
[0115] Fourth embodiment:
[0116] This invention simulates the stability of a buoy under extreme sea conditions of 4m wave height and 25m / s wind speed. A particle spacing of 0.1m is used to balance large-scale computational efficiency, and the fluid density is set to 1025kg / m³. The buoy has a mass of 12kg and is anchored by three chains (80m in length and 5×10⁻⁶ stiffness coefficient). 6 N·m -1This simulation achieves cooperative mooring constraints. The simulation termination condition is set at 100,000 time steps. The process groups dynamically allocate load according to a SPH:MBD ratio of 6:3, and CUDA (Compute Unified Device Architecture) is used for streaming parallel processing of particle force calculations. Coupled communication is achieved through the following process: the SPH process group calculates the particle-fluid forces on the float surface and integrates the six-DOF data, which is then transmitted to the MBD process group via MPI point-to-point non-blocking communication (MPI_Isend / MPI_Irecv); the MBD solver integrates the anchor chain tension to calculate the float's six-DOF motion parameters (position, angular velocity, etc.), and feeds them back to the SPH process group to drive boundary particle state updates. The simulation reproduces the buoy's maximum tilt angle of 28° and the anchor chain peak tension of 920N, with an error of less than 7% compared to engineering measurements. The dynamic particle migration mechanism effectively alleviates the uneven subdomain load caused by float displacement. The fully coupled simulation took 4.2 hours (compared to 22.3 hours using traditional methods), improving single-time-step computation efficiency by 5.3 times. (Details follow...) Figure 6 , Figure 7 As shown.
[0117] Fifth embodiment:
[0118] This invention also provides a multibody dynamics-SPH coupled calculation and solution system, including a main control module, a CUDA acceleration module, an SPH solution module, a multibody dynamics solution module, an MPMD communication module, and a dynamic load balancing module;
[0119] The main control module is used to execute the main loop control process, parse the solution file, and initialize the simulation environment.
[0120] The CUDA acceleration module is used to configure GPU parallel computing resources, divide the fluid sub-solution region and allocate computing tasks; it divides the fluid sub-domain based on the CUDA streaming parallel architecture, supports asynchronous memory transfer, and supports real-time simulation of tens of millions of particles.
[0121] The MPMD communication module adopts non-blocking MPI point-to-point communication to realize cross-process data exchange between the SPH solution module and the multibody dynamics solution module, and supports bidirectional real-time transmission of force, torque and configuration data.
[0122] The SPH solver module is used to perform particle force calculation, pressure field update and full-field particle state synchronization. It adopts the SPH kernel function adaptive correction algorithm, supports dynamic smooth length adjustment and reduces pressure field error.
[0123] The multibody dynamics solution module is used to receive force / torque data transmitted by the SPH solution module, calculate the rigid body six-degree-of-freedom motion response, and feed back configuration data.
[0124] The dynamic load balancing module achieves adaptive adjustment of particle distribution within the solution domain through particle position vector judgment and cross-process migration mechanism, thereby reducing load volatility and improving computational stability of sub-solution regions.
[0125] The system of this invention achieves significant technical effects through the collaborative operation of its various modules. The main control module accurately parses the solution file and completes the simulation environment initialization, providing a stable and reliable foundation for the entire calculation process. The CUDA acceleration module efficiently configures GPU parallel computing resources, divides the fluid particle solution region, and rationally allocates computational tasks, thereby improving the computational speed. The MPMD communication module efficiently realizes cross-process data exchange between the SPH solution module and the multibody dynamics solution module, supporting real-time transmission of force, torque, and configuration data, ensuring the timeliness and accuracy of data transmission. The SPH solution module accurately executes particle force calculation, pressure field updates, and full-field particle state synchronization, while the multibody dynamics solution module quickly receives force / torque data, efficiently calculates the rigid body's six-degree-of-freedom motion response, and promptly feeds back configuration data. The clear division of labor and efficient operation of both modules improve the processing efficiency of their respective computational tasks. The dynamic load balancing module, through particle position vector judgment and cross-process migration mechanisms, achieves adaptive adjustment of particle distribution within the solution domain, effectively balancing the load of each process, avoiding waste of computational resources, and further improving the computational efficiency and stability of the entire system.
[0126] It should be noted that the information interaction and execution process between the above modules are based on the same concept as the method embodiments of this application. They are systems corresponding to the above multibody dynamics-SPH coupled calculation and solution method. All implementation methods in the above method embodiments are applicable to the embodiments of this system. For details on their specific functions and the resulting technical effects, please refer to the method embodiment section. They will not be repeated here.
[0127] The foregoing description of specific exemplary embodiments of the invention is for illustrative and explanatory purposes. These descriptions are not intended to limit the invention to the precise forms disclosed, and it will be apparent that many changes and variations can be made in accordance with the foregoing teachings. The exemplary embodiments were chosen and described in order to explain the specific principles of the invention and its practical application, thereby enabling those skilled in the art to implement and utilize various different exemplary embodiments of the invention, as well as various different choices and variations. The scope of the invention is intended to be defined by the claims and their equivalents.
Claims
1. A multibody dynamics-SPH coupled calculation and solution method, characterized in that, The bidirectional coupling between the SPH solver and the multibody dynamics solver is achieved using the MPMD parallel communication architecture, including the following steps: Execute the main control flow, parse the solution file, and initialize the simulation environment; Configure GPU parallel computing resources and divide the fluid solution domain into several sub-solution regions according to the number of solution processes; Force, torque, and configuration data are exchanged in real time via the MPI inter-group communicator; Perform SPH fluid particle interaction force calculation and multibody dynamics rigid body motion response calculation respectively; The state of all particles in the field is updated cyclically until the termination condition is met. The MPMD parallel communication architecture is based on the SPH master control program group and the multibody dynamics slave control program group to start heterogeneous process groups. The SPH master control program group and the multibody dynamics slave control program group perform cross-group data synchronization through the MPI inter-group communicator. After dividing the fluid solution domain into several sub-solution regions based on the number of solution processes, the process further includes allocating the sub-solution regions to each solution process and enabling GPU parallel acceleration computation. Specifically, GPU parallel acceleration computation includes: Bind the SPH process group to the GPU device and use the CUDA kernel to calculate fluid particle forces; Multibody dynamics processes are assigned to multi-core CPUs to perform logic-intensive solutions.
2. The multibody dynamics-SPH coupled calculation and solution method according to claim 1, characterized in that, Force, torque, and configuration data are exchanged in real time via the MPI inter-group communicator. This real-time exchange employs an asynchronous communication mechanism, specifically including: The SPH process group sends fluid forces and torques to the multibody dynamics process group; The multibody dynamics process group feeds back the rigid body's six-degree-of-freedom motion parameters to the SPH process group.
3. The multibody dynamics-SPH coupled calculation and solution method according to claim 2, characterized in that, Real-time exchange of force, torque, and configuration data is achieved through MPI point-to-point communication, with the target process located by the local rank of the other program group.
4. The multibody dynamics-SPH coupled calculation and solution method according to claim 1, characterized in that, Based on the CFL condition, calculate the maximum allowed advance time step size in each process, and take the minimum value among them as the global advance time step size. The range of the global advance time step size is 10. -4 Up to 10 -6 Second.
5. The multibody dynamics-SPH coupled calculation and solution method according to claim 4, characterized in that, Particles that cross the boundary of the sub-solution region are detected, and based on the updated particle position vector information, the particles that cross the boundary of the sub-solution region are migrated to the corresponding process via MPI communication.
6. The multibody dynamics-SPH coupled calculation and solution method according to any one of claims 1 to 5, characterized in that, The parameter configuration must meet the following range: The interparticle spacing is 0.01–5.0 m; The fluid density is 700–1300 kg / m³; C cfl The stability condition is set to 0.1-0.
5.
7. The multibody dynamics-SPH coupled calculation and solution method according to claim 6, characterized in that, In the step of cyclically updating the state of all particles until a termination condition is met, the termination condition is configured as follows: If the current time t ≥ tmax, the number of time steps n ≥ nmax, or an external termination command is received, the simulation process will terminate. Here, tmax is the preset maximum simulation duration, and nmax is the preset maximum number of steps.
8. A multibody dynamics-SPH coupled computational solution system, characterized in that, The system employs the multibody dynamics-SPH coupled calculation and solution method as described in claim 7, comprising a main control module, a CUDA acceleration module, an SPH solution module, a multibody dynamics solution module, an MPMD communication module, and a dynamic load balancing module. The main control module is used to execute the main loop control process, parse the solution file, and initialize the simulation environment. The CUDA acceleration module is used to configure GPU parallel computing resources, divide the fluid sub-solution region, and allocate computing tasks. The MPMD communication module is used to realize cross-process data exchange between the SPH solution module and the multibody dynamics solution module, and supports real-time transmission of force, torque and configuration data. The SPH solver module is used to perform particle force calculation, pressure field update, and full-field particle state synchronization. The multibody dynamics solution module is used to receive force / torque data transmitted by the SPH solution module, calculate the rigid body six-degree-of-freedom motion response, and feed back configuration data. The dynamic load balancing module achieves adaptive adjustment of particle distribution within the solution domain through particle position vector judgment and cross-process migration mechanism.