|
Compadre 1.5.5
|
All vairables and functionality related to the layout and storage of GMLS solutions (alpha values)
Definition at line 13 of file Compadre_SolutionSet.hpp.
#include <Compadre_SolutionSet.hpp>
Public Member Functions | |
Constructors | |
| SolutionSet (SamplingFunctional data_sampling_functional, int dimensions, int local_dimensions, const ProblemType problem_type) | |
| Constructor for SolutionSet. | |
| SolutionSet () | |
| template<typename other_memory_space> | |
| SolutionSet (const SolutionSet< other_memory_space > &other) | |
| Copy constructor (can be used to move data from device to host or vice-versa). | |
Public Accessors | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION int | getTargetOffsetIndex (const int lro_num, const int input_component, const int output_component, const int evaluation_site_local_index=0) const |
| Handles offset from operation input/output + extra evaluation sites. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha0TensorTo0Tensor (TargetOperation lro, const int target_index, const int neighbor_index, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for scalar reconstruction from scalar data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha0TensorTo1Tensor (TargetOperation lro, const int target_index, const int output_component, const int neighbor_index, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for vector reconstruction from scalar data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha0TensorTo2Tensor (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for matrix reconstruction from scalar data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha1TensorTo0Tensor (TargetOperation lro, const int target_index, const int neighbor_index, const int input_component, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for scalar reconstruction from vector data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha1TensorTo1Tensor (TargetOperation lro, const int target_index, const int output_component, const int neighbor_index, const int input_component, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for vector reconstruction from vector data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha1TensorTo2Tensor (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int input_component, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for matrix reconstruction from vector data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha2TensorTo0Tensor (TargetOperation lro, const int target_index, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for scalar reconstruction from matrix data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha2TensorTo1Tensor (TargetOperation lro, const int target_index, const int output_component, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for vector reconstruction from matrix data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha2TensorTo2Tensor (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for matrix reconstruction from matrix data. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION global_index_type | getAlphaIndex (const int target_index, const int alpha_column_offset) const |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION int | getAlphaColumnOffset (TargetOperation lro, const int output_component_axis_1, const int output_component_axis_2, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION double | getAlpha (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Underlying function all interface helper functions call to retrieve alpha values. | |
| template<typename ms = memory_space, enable_if_t<!std::is_same< host_memory_space, ms >::value, int > = 0> | |
| KOKKOS_INLINE_FUNCTION int | getTargetOperationLocalIndex (TargetOperation lro) const |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| int | getTargetOffsetIndex (const int lro_num, const int input_component, const int output_component, const int evaluation_site_local_index=0) const |
| Handles offset from operation input/output + extra evaluation sites. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha0TensorTo0Tensor (TargetOperation lro, const int target_index, const int neighbor_index, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for scalar reconstruction from scalar data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha0TensorTo1Tensor (TargetOperation lro, const int target_index, const int output_component, const int neighbor_index, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for vector reconstruction from scalar data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha0TensorTo2Tensor (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for matrix reconstruction from scalar data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha1TensorTo0Tensor (TargetOperation lro, const int target_index, const int neighbor_index, const int input_component, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for scalar reconstruction from vector data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha1TensorTo1Tensor (TargetOperation lro, const int target_index, const int output_component, const int neighbor_index, const int input_component, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for vector reconstruction from vector data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha1TensorTo2Tensor (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int input_component, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for matrix reconstruction from vector data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha2TensorTo0Tensor (TargetOperation lro, const int target_index, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for scalar reconstruction from matrix data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha2TensorTo1Tensor (TargetOperation lro, const int target_index, const int output_component, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for vector reconstruction from matrix data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha2TensorTo2Tensor (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Helper function for getting alphas for matrix reconstruction from matrix data. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| global_index_type | getAlphaIndex (const int target_index, const int alpha_column_offset) const |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| int | getAlphaColumnOffset (TargetOperation lro, const int output_component_axis_1, const int output_component_axis_2, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| double | getAlpha (TargetOperation lro, const int target_index, const int output_component_axis_1, const int output_component_axis_2, const int neighbor_index, const int input_component_axis_1, const int input_component_axis_2, const int evaluation_site_local_index=0) const |
| Underlying function all interface helper functions call to retrieve alpha values. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| int | getTargetOperationLocalIndex (TargetOperation lro) const |
Public Modifiers (can only call from host) | |
| template<typename other_memory_space> | |
| void | copyAlphas (SolutionSet< other_memory_space > &other) |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| void | clearTargets () |
| Empties the vector of target functionals to apply to the reconstruction. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| void | addTargets (TargetOperation lro) |
| Adds a target to the vector of target functional to be applied to the reconstruction. | |
| template<typename ms = memory_space, enable_if_t< std::is_same< host_memory_space, ms >::value, int > = 0> | |
| void | addTargets (std::vector< TargetOperation > lro) |
| Adds a vector of target functionals to the vector of target functionals already to be applied to the reconstruction. | |
| decltype(_alphas) | getAlphas () const |
| Get a view (device) of all alphas. | |
Public Attributes | |
| Kokkos::View< TargetOperation *, memory_space > | _lro |
| vector of user requested target operations | |
| Kokkos::View< int *, memory_space > | _lro_lookup |
| Kokkos::View< int *, memory_space > | _lro_total_offsets |
| index for where this operation begins the for _alpha coefficients | |
| Kokkos::View< int *, memory_space > | _lro_output_tile_size |
| dimensions ^ rank of tensor of output for each target functional | |
| Kokkos::View< int *, memory_space > | _lro_input_tile_size |
| dimensions ^ rank of tensor of output for each sampling functional | |
| Kokkos::View< int *, memory_space > | _lro_output_tensor_rank |
| tensor rank of target functional (device) | |
| Kokkos::View< int *, memory_space > | _lro_input_tensor_rank |
| tensor rank of sampling functional (device) | |
| Kokkos::View< double *, layout_right, memory_space > | _alphas |
| generated alpha coefficients (device) | |
| int | _added_alpha_size |
| additional alpha coefficients due to constraints | |
| int | _max_evaluation_sites_per_target |
| maximum number of evaluation sites for each target (includes target site) | |
| int | _total_alpha_values |
| used for sizing P_target_row and the _alphas view | |
| bool | _contains_valid_alphas |
| whether internal alpha values are valid (set externally on a solve) | |
| NeighborLists< Kokkos::View< int * > > | _neighbor_lists |
| Accessor to get neighbor list data, offset data, and number of neighbors per target. | |
| SamplingFunctional | _data_sampling_functional |
| int | _dimensions |
| dimension of the problem, set at class instantiation only | |
| int | _local_dimensions |
| dimension of the problem, set at class instantiation only. For manifolds, generally _global_dimensions-1 | |
| ProblemType | _problem_type |
| problem type for GMLS problem, can also be set to STANDARD for normal or MANIFOLD for manifold problems | |
|
inline |
Constructor for SolutionSet.
Definition at line 77 of file Compadre_SolutionSet.hpp.
|
inline |
Definition at line 90 of file Compadre_SolutionSet.hpp.
|
inline |
Copy constructor (can be used to move data from device to host or vice-versa).
Definition at line 94 of file Compadre_SolutionSet.hpp.
|
inline |
Adds a vector of target functionals to the vector of target functionals already to be applied to the reconstruction.
Definition at line 493 of file Compadre_SolutionSet.hpp.
|
inline |
Adds a target to the vector of target functional to be applied to the reconstruction.
Definition at line 486 of file Compadre_SolutionSet.hpp.
|
inline |
Empties the vector of target functionals to apply to the reconstruction.
Definition at line 477 of file Compadre_SolutionSet.hpp.
|
inline |
Copies alphas between two instances of SolutionSet Copying of alphas is intentionally omitted in copy constructor
Definition at line 464 of file Compadre_SolutionSet.hpp.
|
inline |
Underlying function all interface helper functions call to retrieve alpha values.
Definition at line 415 of file Compadre_SolutionSet.hpp.
|
inline |
Underlying function all interface helper functions call to retrieve alpha values.
Definition at line 268 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for scalar reconstruction from scalar data.
Definition at line 319 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for scalar reconstruction from scalar data.
Definition at line 161 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for vector reconstruction from scalar data.
Definition at line 326 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for vector reconstruction from scalar data.
Definition at line 169 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for matrix reconstruction from scalar data.
Definition at line 333 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for matrix reconstruction from scalar data.
Definition at line 177 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for scalar reconstruction from vector data.
Definition at line 339 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for scalar reconstruction from vector data.
Definition at line 184 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for vector reconstruction from vector data.
Definition at line 346 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for vector reconstruction from vector data.
Definition at line 192 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for matrix reconstruction from vector data.
Definition at line 353 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for matrix reconstruction from vector data.
Definition at line 200 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for scalar reconstruction from matrix data.
Definition at line 360 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for scalar reconstruction from matrix data.
Definition at line 208 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for vector reconstruction from matrix data.
Definition at line 366 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for vector reconstruction from matrix data.
Definition at line 215 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for matrix reconstruction from matrix data.
Definition at line 372 of file Compadre_SolutionSet.hpp.
|
inline |
Helper function for getting alphas for matrix reconstruction from matrix data.
Definition at line 222 of file Compadre_SolutionSet.hpp.
|
inline |
Retrieves the offset for an operator based on input and output component, generic to row (but still multiplied by the number of neighbors for each row and then needs a neighbor number added to this returned value to be meaningful)
Definition at line 396 of file Compadre_SolutionSet.hpp.
|
inline |
Retrieves the offset for an operator based on input and output component, generic to row (but still multiplied by the number of neighbors for each row and then needs a neighbor number added to this returned value to be meaningful)
Definition at line 248 of file Compadre_SolutionSet.hpp.
|
inline |
Gives index into alphas given two axes, which when incremented by the neighbor number transforms access into alphas from a rank 1 view into a rank 3 view.
Definition at line 379 of file Compadre_SolutionSet.hpp.
|
inline |
Gives index into alphas given two axes, which when incremented by the neighbor number transforms access into alphas from a rank 1 view into a rank 3 view.
Definition at line 230 of file Compadre_SolutionSet.hpp.
|
inline |
Get a view (device) of all alphas.
Definition at line 594 of file Compadre_SolutionSet.hpp.
|
inline |
Handles offset from operation input/output + extra evaluation sites.
Definition at line 310 of file Compadre_SolutionSet.hpp.
|
inline |
Handles offset from operation input/output + extra evaluation sites.
Definition at line 151 of file Compadre_SolutionSet.hpp.
|
inline |
Get the local index (internal) to GMLS for a particular TargetOperation Every TargetOperation has a global index which can be readily found in Compadre::TargetOperation but this function returns the index used inside of the GMLS class
Definition at line 450 of file Compadre_SolutionSet.hpp.
|
inline |
Get the local index (internal) to GMLS for a particular TargetOperation Every TargetOperation has a global index which can be readily found in Compadre::TargetOperation but this function returns the index used inside of the GMLS class
Definition at line 304 of file Compadre_SolutionSet.hpp.
| int Compadre::SolutionSet< memory_space >::_added_alpha_size |
additional alpha coefficients due to constraints
Definition at line 41 of file Compadre_SolutionSet.hpp.
| Kokkos::View<double*, layout_right, memory_space> Compadre::SolutionSet< memory_space >::_alphas |
generated alpha coefficients (device)
Definition at line 38 of file Compadre_SolutionSet.hpp.
| bool Compadre::SolutionSet< memory_space >::_contains_valid_alphas |
whether internal alpha values are valid (set externally on a solve)
Definition at line 50 of file Compadre_SolutionSet.hpp.
| SamplingFunctional Compadre::SolutionSet< memory_space >::_data_sampling_functional |
generally the same as _polynomial_sampling_functional, but can differ if specified at GMLS class instantiation
Definition at line 61 of file Compadre_SolutionSet.hpp.
| int Compadre::SolutionSet< memory_space >::_dimensions |
dimension of the problem, set at class instantiation only
Definition at line 64 of file Compadre_SolutionSet.hpp.
| int Compadre::SolutionSet< memory_space >::_local_dimensions |
dimension of the problem, set at class instantiation only. For manifolds, generally _global_dimensions-1
Definition at line 67 of file Compadre_SolutionSet.hpp.
| Kokkos::View<TargetOperation*, memory_space> Compadre::SolutionSet< memory_space >::_lro |
vector of user requested target operations
Definition at line 16 of file Compadre_SolutionSet.hpp.
| Kokkos::View<int*, memory_space> Compadre::SolutionSet< memory_space >::_lro_input_tensor_rank |
tensor rank of sampling functional (device)
Definition at line 35 of file Compadre_SolutionSet.hpp.
| Kokkos::View<int*, memory_space> Compadre::SolutionSet< memory_space >::_lro_input_tile_size |
dimensions ^ rank of tensor of output for each sampling functional
Definition at line 29 of file Compadre_SolutionSet.hpp.
| Kokkos::View<int*, memory_space> Compadre::SolutionSet< memory_space >::_lro_lookup |
vector containing a mapping from a target functionals enum value to the its place in the list of target functionals to be applied
Definition at line 20 of file Compadre_SolutionSet.hpp.
| Kokkos::View<int*, memory_space> Compadre::SolutionSet< memory_space >::_lro_output_tensor_rank |
tensor rank of target functional (device)
Definition at line 32 of file Compadre_SolutionSet.hpp.
| Kokkos::View<int*, memory_space> Compadre::SolutionSet< memory_space >::_lro_output_tile_size |
dimensions ^ rank of tensor of output for each target functional
Definition at line 26 of file Compadre_SolutionSet.hpp.
| Kokkos::View<int*, memory_space> Compadre::SolutionSet< memory_space >::_lro_total_offsets |
index for where this operation begins the for _alpha coefficients
Definition at line 23 of file Compadre_SolutionSet.hpp.
| int Compadre::SolutionSet< memory_space >::_max_evaluation_sites_per_target |
maximum number of evaluation sites for each target (includes target site)
Definition at line 44 of file Compadre_SolutionSet.hpp.
| NeighborLists<Kokkos::View<int*> > Compadre::SolutionSet< memory_space >::_neighbor_lists |
Accessor to get neighbor list data, offset data, and number of neighbors per target.
Definition at line 57 of file Compadre_SolutionSet.hpp.
| ProblemType Compadre::SolutionSet< memory_space >::_problem_type |
problem type for GMLS problem, can also be set to STANDARD for normal or MANIFOLD for manifold problems
Definition at line 70 of file Compadre_SolutionSet.hpp.
| int Compadre::SolutionSet< memory_space >::_total_alpha_values |
used for sizing P_target_row and the _alphas view
Definition at line 47 of file Compadre_SolutionSet.hpp.