RIGIDBODY_ForceToApplyOnBody_BE

Applies user-defined forces and corresponding moments on the rigid bodies based on BE functions

RIGIDBODY_ForceToApplyOnBody_BE($MOVEitem$) = ( [Fx], [Fy], [Fz], OPTIONAL: %RIGIDBODY_BE_CACHE% )
Default: RIGIDBODY_ForceToApplyOnBody_BE($MOVEitem$) = ( [0.0], [0.0], [0.0] ) The force is evaluated per boundary element via a user-defined function and accumulated over all BEs belonging to the specified MOVE-flag. The moment about the center of gravity (COG) is computed automatically. Note: Priority over PC mapping, i.e. if both RIGIDBODY_ForceToApplyOnBody_PC and RIGIDBODY_ForceToApplyOnBody_BE are present for the same MOVE-flag, then RIGIDBODY_ForceToApplyOnBody_BE takes priority.

Area caching

When the optional fourth argument %RIGIDBODY_BE_CACHE% is specified, element areas are computed once and cached internally. In this case, the user-defined curve should incorporate only pressure/stress contributions (i.e. force per unit area).

Parallelization strategy

To ensure good load balancing, a reduced list of eligible BEs is computed once. All BEs that do not belong to MESHFREE RIGIDBODY coupling are excluded. The reduced list of BEs is then distributed across all processes, and each process collects its own contributions for forces and moments. In the next step, the partial contributions are summed via a global MPI-reduction operation. Note: The point cloud configuration can change for different numbers of MPI processes, which can affect the mapped forces and moments. The differences depend on the mapping technique used, distribution of points, etc., and have nothing to do with the inherent MPI communication. The example below showcases one such option to use BEmon(), BEmonApprox() functionalities to map quantities on the rigid bodies. The distribution of monitor points on the mapping geometry and their corresponding BE associations may differ between MPI processes. In addition, the BEmonApprox() tries to approximate the missing values from the neighboring BEs. This makes the mapping inherently non-conserving and thus the mapped forces and moments on the rigid bodies can be slightly different for different MPI configurations.
BE_MONITOR_ITEM($BEmonAVG$) = ( %CUMU_INTERVAL%, [-(Y%ind_p_dyn%+Y%ind_p%)],%CUMU_AVERAGE%, %CUMU_USER_INTERVAL%, [10], "BEmonAVGPR" ) begin_equation{$EQ_Fx$} ! Remember not to include the area here. if (BEmonApprox($BEmonAVG$,0.02) <= -999999) :: 0 else :: (BEmonApprox($BEmonAVG$,0.02)*BE_n(1)) endif end_equation RIGIDBODY_ForceToApplyOnBody_BE($MOVE_cube$) = ( [equn($EQ_Fx$)], [Fy], [Fz], %RIGIDBODY_BE_CACHE% )
This item is referenced in:
RIGIDBODY_ForceToApplyOnBody_BE parameter to prescribe force and corresponding moment on the RIGIDBODY (UCVO)
RIGIDBODY_ForceToApplyOnBody_PC parameter to prescribe force and corresponding moment on the RIGIDBODY (UCVO)
RIGIDBODY_ForceToApplyOnBody_BE Applies user-defined forces and corresponding moments on the rigid bodies based on BE functions
Beta Latest release notes for the MESHFREE beta executables
All Complete release notes for the MESHFREE beta executables