0.6.0
Loading...
Searching...
No Matches
mod_cut_cell_contour_2d Module Reference

Creation of the contour in the cut-cell algorithm. More...

Functions/Subroutines

subroutine contour_process (shape, face, segments, points, face_index, n_segments, n_intersection_points, n_faces, does_print_contour, rel_tol, epsilon)
 
subroutine sub_ray_tracing_process (shape, face, segments_ini, points, n, face_index, n_faces, n_initial_segments, n_intersection_points, list_untreated_faces, list_untreated_faces_n, sub_segments, rel_tol, epsilon)
 
subroutine add_first_intersection_points (sub_faces, x, y, i, j, m, point, depth, epsilon)
 
subroutine sub_ray_tracing (shape, sub_faces, points, list_previous_intersection_points, sub_segments, list_previous_intersection_points_n_segments, list_point_coordinates, list_partition, list_untreated_faces, list_untreated_faces_n, sub_rays_u, sub_rays_v, faces_u, faces_v, face_index, face, segments, depth, n_intersection_points, n_segments, l, t, s, epsilon, rel_tol)
 
subroutine create_segments_with_sub_segments (face, segments_ini, sub_segments, points, face_index, n_initial_segments, n_intersection_points, n_segments, list_troublesome_faces, epsilon)
 
pure subroutine find_segment (list_points, points, n_intersection_points_face, point1, point2)
 
pure logical function is_segment_in_face (shape, point1, point2, points, list_point_coordinates, i, j, depth, p, n_intersection_points, epsilon)
 
pure logical function is_segment_exist_between_corners (shape, coord1, coord2, xmin, xmax, ymin, ymax, dx, dy, epsilon)
 

Detailed Description

Creation of the contour in the cut-cell algorithm.

Function/Subroutine Documentation

◆ add_first_intersection_points()

subroutine mod_cut_cell_contour_2d::add_first_intersection_points ( type(t_sub_face), dimension(:), intent(inout) sub_faces,
double precision, intent(in) x,
double precision, intent(in) y,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) m,
integer, intent(in) point,
integer(kind=8), intent(in) depth,
double precision, intent(in) epsilon )

◆ contour_process()

subroutine mod_cut_cell_contour_2d::contour_process ( class(t_shape), intent(in) shape,
type(t_face_intersection), dimension(:,:), intent(inout), allocatable face,
type(t_segment_2d), dimension(:), intent(inout), allocatable segments,
type(t_point_intersection_2d), dimension(:), intent(inout), allocatable points,
integer, dimension(:,:), intent(in) face_index,
integer, intent(inout) n_segments,
integer, intent(in) n_intersection_points,
integer, intent(in) n_faces,
logical, intent(in) does_print_contour,
double precision, intent(in) rel_tol,
double precision, intent(in) epsilon )

◆ create_segments_with_sub_segments()

subroutine mod_cut_cell_contour_2d::create_segments_with_sub_segments ( type(t_face_intersection), dimension(:,:), intent(inout) face,
type(t_segment_2d), dimension(:), intent(inout) segments_ini,
integer, dimension(:,:), intent(in), allocatable sub_segments,
type(t_point_intersection_2d), dimension(:), intent(inout) points,
integer, dimension(:,:), intent(in) face_index,
integer, intent(in) n_initial_segments,
integer, intent(in) n_intersection_points,
integer, intent(inout) n_segments,
integer, dimension(:), intent(in) list_troublesome_faces,
double precision, intent(in) epsilon )

◆ find_segment()

pure subroutine mod_cut_cell_contour_2d::find_segment ( integer, dimension(:), intent(inout) list_points,
type(t_point_intersection_2d), dimension(:), intent(in) points,
integer, intent(in) n_intersection_points_face,
integer, intent(out) point1,
integer, intent(out) point2 )

◆ is_segment_exist_between_corners()

pure logical function mod_cut_cell_contour_2d::is_segment_exist_between_corners ( class(t_shape), intent(in) shape,
double precision, dimension(:), intent(in) coord1,
double precision, dimension(:), intent(in) coord2,
double precision, intent(in) xmin,
double precision, intent(in) xmax,
double precision, intent(in) ymin,
double precision, intent(in) ymax,
double precision, intent(in) dx,
double precision, intent(in) dy,
double precision, intent(in) epsilon )

◆ is_segment_in_face()

pure logical function mod_cut_cell_contour_2d::is_segment_in_face ( class(t_shape), intent(in) shape,
integer, intent(in) point1,
integer, intent(in) point2,
type(t_point_intersection_2d), dimension(:), intent(in) points,
double precision, dimension(:,:), intent(in), allocatable list_point_coordinates,
integer, intent(in) i,
integer, intent(in) j,
integer(kind=8), intent(in) depth,
integer(kind=8), intent(in) p,
integer, intent(in) n_intersection_points,
double precision, intent(in) epsilon )

◆ sub_ray_tracing()

subroutine mod_cut_cell_contour_2d::sub_ray_tracing ( class(t_shape), intent(in) shape,
type(t_sub_face), dimension(:), intent(inout) sub_faces,
type(t_point_intersection_2d), dimension(:), intent(in) points,
type (t_list_point), dimension(:), intent(inout), allocatable list_previous_intersection_points,
integer, dimension(:,:), intent(in), allocatable sub_segments,
integer, dimension(:), intent(inout), allocatable list_previous_intersection_points_n_segments,
double precision, dimension(:,:), intent(inout), allocatable list_point_coordinates,
integer(kind=8), dimension(:,:), intent(in) list_partition,
integer(kind=8), dimension(:,:), intent(in) list_untreated_faces,
integer, dimension(:), intent(inout), allocatable list_untreated_faces_n,
double precision, dimension(:), intent(in) sub_rays_u,
double precision, dimension(:), intent(in) sub_rays_v,
integer, dimension(:,:), intent(in) faces_u,
integer, dimension(:,:), intent(in) faces_v,
integer, dimension(:,:), intent(in) face_index,
type(t_face_intersection), dimension(:,:), intent(in) face,
type(t_segment_2d), dimension(:), intent(in) segments,
integer(kind=8), intent(in) depth,
integer, intent(in) n_intersection_points,
integer, intent(in) n_segments,
integer, intent(in) l,
integer, intent(in) t,
integer, intent(inout) s,
double precision, intent(in) epsilon,
double precision, intent(in) rel_tol )

◆ sub_ray_tracing_process()

subroutine mod_cut_cell_contour_2d::sub_ray_tracing_process ( class(t_shape), intent(in) shape,
type(t_face_intersection), dimension(:,:), intent(inout) face,
type(t_segment_2d), dimension(:), intent(inout), allocatable segments_ini,
type(t_point_intersection_2d), dimension(:), intent(inout) points,
integer, intent(inout) n,
integer, dimension(:,:), intent(in) face_index,
integer, intent(in) n_faces,
integer, intent(inout) n_initial_segments,
integer, intent(in) n_intersection_points,
integer(kind=8), dimension(:,:), intent(inout), allocatable list_untreated_faces,
integer, dimension(:), intent(inout), allocatable list_untreated_faces_n,
integer, dimension(:,:), intent(inout), allocatable sub_segments,
double precision, intent(in) rel_tol,
double precision, intent(in) epsilon )