ply_sample_data Subroutine

public subroutine ply_sample_data(me, orig_mesh, orig_bcs, varsys, var_degree, lvl_degree, var_space, ndims, trackInst, trackConfig, time, new_mesh, resvars)

Sampling polynomial data from a given array and mesh to a new mesh with a new data array, where just a single degree of freedom per element is used.

Arguments

Type IntentOptional Attributes Name
type(ply_sampling_type), intent(in) :: me

A ply_sampling_type to describe the sampling method.

type(treelmesh_type), intent(in) :: orig_mesh

The original mesh to be refined.

type(tem_BC_prop_type), intent(in) :: orig_bcs

Boundary conditions for the original mesh.

type(tem_varSys_type), intent(in) :: varsys
integer, intent(in) :: var_degree(:)

Maximal polynomial degree for each variable.

Needs to be matching the variable definition in the variable system.

Todo

Needs to be changed to be an information per element per variable! Possibly by defining a variable in the varsys, providing the degree.

integer, intent(in) :: lvl_degree(:)

Maximal polynomial degree for each level.

integer, intent(in) :: var_space(:)

Polynomial space for each variable.

Needs to be matching the variable definition in the variable system.

integer, intent(in) :: ndims

Number of dimensions in the polynomial representation.

type(tem_tracking_instance_type), intent(in) :: trackInst
type(tem_tracking_config_type), intent(in) :: trackConfig
type(tem_time_type), intent(in) :: time
type(treelmesh_type), intent(out) :: new_mesh

The new mesh with the refined elements.

type(tem_varSys_type), intent(out) :: resvars

Resulting system of variables describing the data in the arrays of subsampled elements.


Calls

proc~~ply_sample_data~~CallsGraph proc~ply_sample_data ply_sample_data free_treelmesh free_treelmesh proc~ply_sample_data->free_treelmesh get_element get_element proc~ply_sample_data->get_element proc~ply_legendre_1d ply_legendre_1D proc~ply_sample_data->proc~ply_legendre_1d proc~ply_sample_adaptive ply_sample_adaptive proc~ply_sample_data->proc~ply_sample_adaptive tem_CoordOfId tem_CoordOfId proc~ply_sample_data->tem_CoordOfId tem_abort tem_abort proc~ply_sample_data->tem_abort tem_create_subTree_of tem_create_subTree_of proc~ply_sample_data->tem_create_subTree_of tem_create_tree_from_sub tem_create_tree_from_sub proc~ply_sample_data->tem_create_tree_from_sub tem_destroy_subTree tem_destroy_subTree proc~ply_sample_data->tem_destroy_subTree tem_refine_global_subtree tem_refine_global_subtree proc~ply_sample_data->tem_refine_global_subtree tem_varSys_append_stateVar tem_varSys_append_stateVar proc~ply_sample_data->tem_varSys_append_stateVar tem_varSys_init tem_varSys_init proc~ply_sample_data->tem_varSys_init val val proc~ply_sample_data->val proc~ply_sample_adaptive->tem_create_subTree_of proc~ply_sample_adaptive->tem_create_tree_from_sub proc~ply_sample_adaptive->tem_destroy_subTree proc~ply_sample_adaptive->tem_refine_global_subtree proc~ply_sample_adaptive->tem_varSys_append_stateVar proc~ply_sample_adaptive->val mpi_allreduce mpi_allreduce proc~ply_sample_adaptive->mpi_allreduce proc~ply_sampling_var_allocate ply_sampling_var_allocate proc~ply_sample_adaptive->proc~ply_sampling_var_allocate proc~ply_sampling_var_compute_elemdev ply_sampling_var_compute_elemdev proc~ply_sample_adaptive->proc~ply_sampling_var_compute_elemdev proc~ply_sampling_var_move ply_sampling_var_move proc~ply_sample_adaptive->proc~ply_sampling_var_move proc~ply_sampling_varsys_for_track ply_sampling_varsys_for_track proc~ply_sample_adaptive->proc~ply_sampling_varsys_for_track proc~ply_split_element_init ply_split_element_init proc~ply_sample_adaptive->proc~ply_split_element_init property property proc~ply_sample_adaptive->property tem_LevelOf tem_LevelOf proc~ply_sample_adaptive->tem_LevelOf tem_bc_prop_pos tem_bc_prop_pos proc~ply_sample_adaptive->tem_bc_prop_pos tem_bc_prop_sublist tem_bc_prop_sublist proc~ply_sample_adaptive->tem_bc_prop_sublist tem_subTree_from tem_subTree_from proc~ply_sample_adaptive->tem_subTree_from proc~ply_sampling_varsys_for_track->get_element proc~ply_sampling_varsys_for_track->tem_varSys_init proc~ply_sampling_varsys_for_track->val proc~ply_sampling_varsys_for_track->proc~ply_sampling_var_allocate proc~ply_sampling_varsys_for_track->tem_LevelOf proc~ply_split_legendre_matrix ply_split_legendre_matrix proc~ply_split_element_init->proc~ply_split_legendre_matrix proc~alpha alpha proc~ply_split_legendre_matrix->proc~alpha proc~alpha_beta alpha_beta proc~ply_split_legendre_matrix->proc~alpha_beta proc~alpha_frac alpha_frac proc~ply_split_legendre_matrix->proc~alpha_frac proc~beta beta proc~ply_split_legendre_matrix->proc~beta

Called by

proc~~ply_sample_data~~CalledByGraph proc~ply_sample_data ply_sample_data proc~ply_sampled_track_output ply_sampled_track_output proc~ply_sampled_track_output->proc~ply_sample_data proc~atl_initialize_program atl_initialize_program proc~atl_initialize_program->proc~ply_sampled_track_output proc~atl_solve_program atl_solve_program proc~atl_solve_program->proc~ply_sampled_track_output program~atl_harvesting atl_harvesting program~atl_harvesting->proc~ply_sampled_track_output program~ateles ateles program~ateles->proc~atl_initialize_program program~ateles->proc~atl_solve_program