ply_sample_adaptive Subroutine

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

Sample data described by varsys in orig_mesh according to the tracking object trackInst with adaptive refinements.

Only works for Q-Polynomials.

Arguments

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

A ply_sampling_type to describe the sampling method.

integer, intent(in) :: ndims

Number of dimensions in the polynomial representation.

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

Variable system of the original data to do the sampling on.

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.

type(tem_tracking_instance_type), intent(in) :: trackInst

Tracking object describing what to sample.

type(tem_tracking_config_type), intent(in) :: trackConfig

Tracking configuration with the geometry to obtain from the overall mesh.

type(tem_time_type), intent(in) :: time

Point in time to get the data for.

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_adaptive~~CallsGraph proc~ply_sample_adaptive ply_sample_adaptive 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_create_subTree_of tem_create_subTree_of proc~ply_sample_adaptive->tem_create_subTree_of tem_create_tree_from_sub tem_create_tree_from_sub proc~ply_sample_adaptive->tem_create_tree_from_sub tem_destroy_subTree tem_destroy_subTree proc~ply_sample_adaptive->tem_destroy_subTree tem_refine_global_subtree tem_refine_global_subtree proc~ply_sample_adaptive->tem_refine_global_subtree tem_subTree_from tem_subTree_from proc~ply_sample_adaptive->tem_subTree_from tem_varSys_append_stateVar tem_varSys_append_stateVar proc~ply_sample_adaptive->tem_varSys_append_stateVar val val proc~ply_sample_adaptive->val proc~ply_sampling_varsys_for_track->proc~ply_sampling_var_allocate proc~ply_sampling_varsys_for_track->tem_LevelOf proc~ply_sampling_varsys_for_track->val get_element get_element proc~ply_sampling_varsys_for_track->get_element tem_varSys_init tem_varSys_init proc~ply_sampling_varsys_for_track->tem_varSys_init 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