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

Data Types

type  t_phase_initializer
 
type  t_phase_initializer_item
 
type  t_ray_intersection_grid
 

Functions/Subroutines

subroutine material_add_initializer (material_init, shape_init, material_id)
 
subroutine material_add_subdomain (material_init, subdomain_id, material_id)
 
subroutine material_set_samples (material_init, n_samples)
 
pure subroutine material_ray_trace (initializer, ray, intersection_list, is_far_inside)
 Ray-trace the phase initializers.
 
subroutine material_get_distance (initializer, material_id, point, distance, direction)
 
logical pure function item_is_inside (item, point)
 
subroutine item_get_samples_inside (item, i, j, k, samples)
 
subroutine item_get_distance (item, point, distance, direction)
 
subroutine item_set_samples (item, n_samples)
 
pure subroutine item_ray_trace (item, ray, intersection_list)
 
subroutine finalize_item (item)
 

Function/Subroutine Documentation

◆ finalize_item()

subroutine type_phase_initializer::finalize_item ( type(t_phase_initializer_item), intent(inout) item)
private

◆ item_get_distance()

subroutine type_phase_initializer::item_get_distance ( class(t_phase_initializer_item), intent(in) item,
double precision, dimension(3), intent(in) point,
double precision, intent(out) distance,
double precision, dimension(3), intent(out) direction )
private

◆ item_get_samples_inside()

subroutine type_phase_initializer::item_get_samples_inside ( class(t_phase_initializer_item), intent(inout) item,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) k,
integer, dimension(:,:,:), intent(inout) samples )
private

◆ item_is_inside()

logical pure function type_phase_initializer::item_is_inside ( class(t_phase_initializer_item), intent(in) item,
double precision, dimension(3), intent(in) point )
private

◆ item_ray_trace()

pure subroutine type_phase_initializer::item_ray_trace ( class(t_phase_initializer_item), intent(in) item,
type(t_ray), intent(in) ray,
type(t_intersection_list), intent(inout) intersection_list )
private

◆ item_set_samples()

subroutine type_phase_initializer::item_set_samples ( class(t_phase_initializer_item), intent(inout) item,
integer, intent(in) n_samples )
private

◆ material_add_initializer()

subroutine type_phase_initializer::material_add_initializer ( class(t_phase_initializer), intent(inout) material_init,
class(t_shape_initializer), pointer shape_init,
integer, intent(in) material_id )

◆ material_add_subdomain()

subroutine type_phase_initializer::material_add_subdomain ( class(t_phase_initializer), intent(inout) material_init,
integer, intent(in) subdomain_id,
integer, intent(in) material_id )
private

◆ material_get_distance()

subroutine type_phase_initializer::material_get_distance ( class(t_phase_initializer), intent(in) initializer,
integer, intent(in) material_id,
double precision, dimension(:), intent(in) point,
double precision, intent(out) distance,
double precision, dimension(:), intent(out) direction )
private

◆ material_ray_trace()

pure subroutine type_phase_initializer::material_ray_trace ( class(t_phase_initializer), intent(in) initializer,
type(t_ray), intent(in) ray,
type(t_intersection_list), dimension(:), intent(inout) intersection_list,
logical, dimension(:), intent(out) is_far_inside )
private

Ray-trace the phase initializers.

Returns an intersection_list for each materials and the array @is_far_inside to tell whether any point far away before the origin of the ray is inside the material.

◆ material_set_samples()

subroutine type_phase_initializer::material_set_samples ( class(t_phase_initializer), intent(inout) material_init,
integer, intent(in) n_samples )
private