version 0.6.0
Loading...
Searching...
No Matches
mod_eval_ib_metrics_points Module Reference

Preparation routine building blocks for immersed boundaries.

Data Types

interface  eval_boundary_points
 Evaluate boundary points. More...
 
interface  eval_ib_metrics_ghost_points
 Evaluate ghost points. More...
 

Functions/Subroutines

subroutine eval_boundary_points_cell (ib_metrics)
 
subroutine eval_boundary_points_face (ib_metrics)
 
subroutine eval_boundary_points_base (ghost_node, ghost_point, distance, direction_x, direction_y, direction_z, boundary_point)
 
subroutine eval_ib_metrics_ghost_points_cell (ib_metrics, distance)
 
subroutine eval_ib_metrics_ghost_points_cell_closer (ib_metrics, is_ghost_node_shift, qip_distance_modifier)
 
subroutine eval_ib_metrics_ghost_points_face (ib_metrics, distance)
 
subroutine eval_ib_metrics_ghost_points_face_closer (ib_metrics, is_ghost_node_shift, qip_distance_modifier)
 
subroutine eval_ib_metrics_ghost_points_base (ghost_node, ghost_point, distance, coord_x, coord_y, coord_z, dx_u, dy_v, dz_w)
 
subroutine eval_ib_metrics_ghost_points_base_closer (ghost_node, ghost_point, distance, direction_x, direction_y, direction_z, boundary_point, distance_image_boundary_point, coord_x, coord_y, coord_z, is_ghost_node_shift, qip_distance_modifier)
 
subroutine eval_probe_points (ib_metrics, coord_x, coord_y, coord_z, is_image_point_shift, is_quadratic, is_quadratic_outshift, is_quadratic_ss1, double_distance_bp_pp, image_point_percent_ratio, qip_distance_modifier)
 Evaluate probe points.
 
subroutine compute_ib_distance_2d (ghost_node, ghost_point, distance, distance_image_boundary_point, direction_x, direction_y, boundary_point, coord_x, coord_y, is_switch_ghost_node_shift_local, is_switch_quadratic_local, is_switch_quadratic_outshift_local, switch_max_stencil_select_local, switch_image_point_percent_ratio_local, switch_qip_distance_modifier, xc_2)
 
subroutine compute_ib_distance_3d (ghost_node, ghost_point, distance, distance_image_boundary_point, direction_x, direction_y, direction_z, boundary_point, coord_x, coord_y, coord_z, is_switch_ghost_node_shift_local, is_switch_quadratic_local, is_switch_quadratic_outshift_local, switch_max_stencil_select_local, switch_image_point_percent_ratio_local, switch_qip_distance_modifier, xc_2)
 
subroutine compute_intersection_general (intersection_found, intersection_pnt, boundary_points, direction_normal, pnt_1, pnt_2, pnt_3, direc, neigh_cell, ghost_node, i, coord_x, coord_y, coord_z)
 
subroutine intersection_line_plane (int_pnt, line_orig, direction, pnt_1, pnt_2, pnt_3)
 
logical function check_intersection_plane (pnt_1, pnt_2, pnt_3, int_pnt, direc)
 

Function/Subroutine Documentation

◆ eval_probe_points()

subroutine mod_eval_ib_metrics_points::eval_probe_points ( type(t_immersed_boundary_metrics), intent(inout) ib_metrics,
double precision, dimension(:), intent(in) coord_x,
double precision, dimension(:), intent(in) coord_y,
double precision, dimension(:), intent(in) coord_z,
logical, intent(in) is_image_point_shift,
logical, intent(in) is_quadratic,
logical, intent(in) is_quadratic_outshift,
logical, intent(in) is_quadratic_ss1,
logical, intent(in) double_distance_bp_pp,
double precision, intent(in) image_point_percent_ratio,
double precision, intent(in) qip_distance_modifier )

Probe points are in the form:

\[ \mathbf{x}_P = \mathbf{x}_G + t \mathbf{n} \]

where \( \mathbf{x}_G \) is the ghost point and \( \mathbf{n} \) is the direction toward the boundary point. This routine finds an appropriate value for \( t \) such as:

\[ \mathbf{x}_G\mathbf{x}_B < \mathbf{x}_G\mathbf{x}_P \le 2\mathbf{x}_G\mathbf{x}_B \]

The following members of the ib_metrics argument are set:

Parameters
[in,out]ib_metricsinstance of [immersed_boundary].
[in]coord_x,coord_y,coord_zgrid coordinates.
[in]is_image_point_shift
[in]is_quadratic
[in]is_quadratic_outshift
[in]is_quadratic_ss1
[in]double_distance_bp_pp
[in]image_point_percent_ratio
[in]qip_distance_modifier