MFC
Exascale flow solver
Loading...
Searching...
No Matches
m_collisions Module Reference

Ghost-node immersed boundary method: locates ghost/image points, computes interpolation coefficients, and corrects the flow state. More...

Functions/Subroutines

subroutine, public s_initialize_collisions_module ()
subroutine, public s_apply_collision_forces (ghost_points, num_gps, ib_markers, forces, torques)
subroutine s_apply_ib_collision_forces_soft_sphere (num_considered_collisions, forces, torques)
 applies collision forces to IBs assuming a soft-sphere collision model (all IBs are circles or spheres)
subroutine s_apply_wall_collision_forces_soft_sphere (forces, torques)
 applies collision forces to IBs assuming a soft-sphere collision model (all IBs are circles or spheres)
subroutine s_detect_ib_collisions (gps, ib_markers, num_gps, num_considered_collisions)
 uses ghost-point/image-point information to determine if it is possible if two IBs are colliding, effectively an optimized nearest neighbor search
subroutine s_detect_ib_collisions_n2 (num_considered_collisions)
subroutine s_detect_wall_collisions ()
 uses boundary conditions and particle locations to check for wall conditions
logical function f_local_rank_owns_collision (collision_location)
 function checks if this local MPI processor owns this specific collision
subroutine, public s_finalize_collisions_module ()

Variables

integer, dimension(:,:), allocatable collision_lookup
real(wp), dimension(:,:), allocatable wall_overlap_distances
real(wpspring_stiffness
real(wpdamping_parameter

Detailed Description

Ghost-node immersed boundary method: locates ghost/image points, computes interpolation coefficients, and corrects the flow state.

Function/Subroutine Documentation

◆ f_local_rank_owns_collision()

logical function m_collisions::f_local_rank_owns_collision ( real(wp), dimension(3), intent(in) collision_location)

function checks if this local MPI processor owns this specific collision

Definition at line 1122 of file m_collisions.fpp.f90.

Here is the caller graph for this function:

◆ s_apply_collision_forces()

subroutine, public m_collisions::s_apply_collision_forces ( type(ghost_point), dimension(:), intent(in) ghost_points,
integer, intent(in) num_gps,
type(integer_field), intent(in) ib_markers,
real(wp), dimension(num_ibs, 3), intent(inout) forces,
real(wp), dimension(num_ibs, 3), intent(inout) torques )

Definition at line 473 of file m_collisions.fpp.f90.

Here is the call graph for this function:

◆ s_apply_ib_collision_forces_soft_sphere()

subroutine m_collisions::s_apply_ib_collision_forces_soft_sphere ( integer, intent(in) num_considered_collisions,
real(wp), dimension(num_ibs, 3), intent(inout) forces,
real(wp), dimension(num_ibs, 3), intent(inout) torques )

applies collision forces to IBs assuming a soft-sphere collision model (all IBs are circles or spheres)

Definition at line 498 of file m_collisions.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_apply_wall_collision_forces_soft_sphere()

subroutine m_collisions::s_apply_wall_collision_forces_soft_sphere ( real(wp), dimension(num_ibs, 3), intent(inout) forces,
real(wp), dimension(num_ibs, 3), intent(inout) torques )

applies collision forces to IBs assuming a soft-sphere collision model (all IBs are circles or spheres)

Definition at line 652 of file m_collisions.fpp.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ s_detect_ib_collisions()

subroutine m_collisions::s_detect_ib_collisions ( type(ghost_point), dimension(num_gps), intent(in) gps,
type(integer_field), intent(in) ib_markers,
integer, intent(in) num_gps,
integer, intent(out) num_considered_collisions )

uses ghost-point/image-point information to determine if it is possible if two IBs are colliding, effectively an optimized nearest neighbor search

Definition at line 769 of file m_collisions.fpp.f90.

Here is the caller graph for this function:

◆ s_detect_ib_collisions_n2()

subroutine m_collisions::s_detect_ib_collisions_n2 ( integer, intent(out) num_considered_collisions)

Definition at line 923 of file m_collisions.fpp.f90.

◆ s_detect_wall_collisions()

subroutine m_collisions::s_detect_wall_collisions

uses boundary conditions and particle locations to check for wall conditions

Definition at line 1007 of file m_collisions.fpp.f90.

Here is the caller graph for this function:

◆ s_finalize_collisions_module()

subroutine, public m_collisions::s_finalize_collisions_module

Definition at line 1150 of file m_collisions.fpp.f90.

◆ s_initialize_collisions_module()

subroutine, public m_collisions::s_initialize_collisions_module

Definition at line 361 of file m_collisions.fpp.f90.

Variable Documentation

◆ collision_lookup

integer, dimension(:,:), allocatable m_collisions::collision_lookup

Definition at line 333 of file m_collisions.fpp.f90.

◆ damping_parameter

real(wp) m_collisions::damping_parameter

Definition at line 335 of file m_collisions.fpp.f90.

◆ spring_stiffness

real(wp) m_collisions::spring_stiffness

Definition at line 335 of file m_collisions.fpp.f90.

◆ wall_overlap_distances

real(wp), dimension(:,:), allocatable m_collisions::wall_overlap_distances

Definition at line 334 of file m_collisions.fpp.f90.