| 
    VTK-m
    2.3
    
   | 
 
VTK-m Execution Environment. More...
Namespaces | |
| arg | |
| cuda | |
| CUDA implementation for Execution Environment.  | |
| kokkos | |
| openmp | |
| CUDA implementation for Execution Environment.  | |
| serial | |
| CUDA implementation for Execution Environment.  | |
| tbb | |
| TBB implementation for Execution Environment.  | |
| twolevelgrid | |
Classes | |
| class | AtomicArrayExecutionObject | 
| An object passed to a worklet when accessing an atomic array.  More... | |
| struct | BoundaryState | 
| Provides a neighborhood's placement with respect to the mesh's boundary.  More... | |
| class | CellLocatorBoundingIntervalHierarchy | 
| Structure for locating cells.  More... | |
| struct | CellLocatorBoundingIntervalHierarchyNode | 
| class | CellLocatorMultiplexer | 
| class | CellLocatorPartitioned | 
| class | CellLocatorRectilinearGrid | 
| Structure for locating cells.  More... | |
| class | CellLocatorTwoLevel | 
| Structure for locating cells.  More... | |
| class | CellLocatorUniformBins | 
| Structure for locating cells.  More... | |
| class | CellLocatorUniformGrid | 
| Structure for locating cells.  More... | |
| class | ColorTable | 
| class | ConnectivityExplicit | 
| A class holding information about topology connections.  More... | |
| class | ConnectivityExtrude | 
| class | ConnectivityPermutedVisitCellsWithPoints | 
| class | ConnectivityPermutedVisitPointsWithCells | 
| class | ConnectivityStructured | 
| A class holding information about topology connections.  More... | |
| struct | FieldNeighborhood | 
| Retrieves field values from a neighborhood.  More... | |
| struct | FieldNeighborhood< vtkm::internal::ArrayPortalUniformPointCoordinates > | 
| Specialization of Neighborhood for ArrayPortalUniformPointCoordinates We can use fast paths inside ArrayPortalUniformPointCoordinates to allow for very fast computation of the coordinates reachable by the neighborhood.  | |
| class | FunctorBase | 
| Base class for all user worklets invoked in the execution environment from a call to vtkm::cont::DeviceAdapterAlgorithm::Schedule.  More... | |
| struct | IndicesExtrude | 
| class | PointLocatorSparseGrid | 
| Structure for locating point.  More... | |
| class | ReverseConnectivityExtrude | 
| struct | ReverseIndicesExtrude | 
| class | TaskBase | 
| Base class for all classes that are used to marshal data from the invocation parameters to the user worklets when invoked in the execution environment.  More... | |
Functions | |
| template<typename FieldVecType , typename WorldCoordType , typename ParametricCoordType , typename CellShapeTag > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &field, const WorldCoordType &wCoords, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, CellShapeTag shape, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| template<typename FieldVecType , typename WorldCoordType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &, const WorldCoordType &, const vtkm::Vec< ParametricCoordType, 3 > &, vtkm::CellShapeTagEmpty, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| template<typename FieldVecType , typename WorldCoordType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &field, const WorldCoordType &wCoords, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagPolyLine, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| template<typename FieldVecType , typename WorldCoordType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &field, const WorldCoordType &wCoords, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagPolygon, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| template<typename FieldVecType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &field, const vtkm::VecAxisAlignedPointCoordinates< 2 > &wCoords, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagQuad, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| template<typename FieldVecType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &field, const vtkm::VecAxisAlignedPointCoordinates< 3 > &wCoords, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagHexahedron, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| template<typename FieldVecType , typename WorldCoordType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellDerivative (const FieldVecType &pointFieldValues, const WorldCoordType &worldCoordinateValues, const vtkm::Vec< ParametricCoordType, 3 > ¶metricCoords, vtkm::CellShapeTagGeneric shape, vtkm::Vec< typename FieldVecType::ComponentType, 3 > &result) | 
| Take the derivative (get the gradient) of a point field in a cell.  More... | |
| template<typename FieldVecType , typename ParametricCoordType , typename CellShapeTag > | |
| vtkm::ErrorCode | CellInterpolate (const FieldVecType &pointFieldValues, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, CellShapeTag tag, typename FieldVecType::ComponentType &result) | 
| template<typename FieldVecType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellInterpolate (const FieldVecType &, const vtkm::Vec< ParametricCoordType, 3 > &, vtkm::CellShapeTagEmpty, typename FieldVecType::ComponentType &result) | 
| template<typename FieldVecType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellInterpolate (const FieldVecType &field, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagPolyLine, typename FieldVecType::ComponentType &result) | 
| template<typename FieldVecType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellInterpolate (const FieldVecType &field, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagPolygon, typename FieldVecType::ComponentType &result) | 
| template<typename ParametricCoordType > | |
| vtkm::ErrorCode | CellInterpolate (const vtkm::VecAxisAlignedPointCoordinates< 2 > &field, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagQuad, vtkm::Vec3f &result) | 
| template<typename ParametricCoordType > | |
| vtkm::ErrorCode | CellInterpolate (const vtkm::VecAxisAlignedPointCoordinates< 3 > &field, const vtkm::Vec< ParametricCoordType, 3 > &pcoords, vtkm::CellShapeTagHexahedron, vtkm::Vec3f &result) | 
| template<typename FieldVecType , typename ParametricCoordType > | |
| vtkm::ErrorCode | CellInterpolate (const FieldVecType &pointFieldValues, const vtkm::Vec< ParametricCoordType, 3 > ¶metricCoords, vtkm::CellShapeTagGeneric shape, typename FieldVecType::ComponentType &result) | 
| Interpolate a point field in a cell.  More... | |
| template<typename IndicesVecType , typename FieldPortalType , typename ParametricCoordType , typename CellShapeTag > | |
| vtkm::ErrorCode | CellInterpolate (const IndicesVecType &pointIndices, const FieldPortalType &pointFieldPortal, const vtkm::Vec< ParametricCoordType, 3 > ¶metricCoords, CellShapeTag shape, typename FieldPortalType::ValueType &result) | 
| Interpolate a point field in a cell.  More... | |
| template<typename OutType , typename PointCoordVecType , typename CellShapeType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, CellShapeType shape, vtkm::ErrorCode &) | 
| By default, cells have zero measure unless this template is specialized below.  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagLine, vtkm::ErrorCode &ec) | 
| Compute the arc length of a poly-line cell.  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagTriangle, vtkm::ErrorCode &ec) | 
| Compute the area of a triangular cell.  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagQuad, vtkm::ErrorCode &ec) | 
| Compute the area of a quadrilateral cell.  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | ComputeMeasure (const vtkm::IdComponent &, const PointCoordVecType &, vtkm::CellShapeTagPolygon, vtkm::ErrorCode &ec) | 
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagTetra, vtkm::ErrorCode &ec) | 
| Compute the volume of a tetrahedron.  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagHexahedron, vtkm::ErrorCode &ec) | 
| Compute the volume of a hexahedral cell (approximated via triple product of average edge along each parametric axis).  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagWedge, vtkm::ErrorCode &ec) | 
| Compute the volume of a wedge cell (approximated as 3 tetrahedra).  More... | |
| template<typename OutType , typename PointCoordVecType > | |
| OutType | CellMeasure (const vtkm::IdComponent &numPts, const PointCoordVecType &pts, vtkm::CellShapeTagPyramid, vtkm::ErrorCode &ec) | 
| Compute the volume of a pyramid (approximated as 2 tetrahedra)  More... | |
VTK-m Execution Environment.
vtkm::exec defines the publicly accessible API for the VTK-m Execution Environment. Worklets typically use classes/apis defined within this namespace alone.
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | , | 
| const WorldCoordType & | , | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | , | ||
| vtkm::CellShapeTagEmpty | , | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | field, | 
| const vtkm::VecAxisAlignedPointCoordinates< 2 > & | wCoords, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagQuad | , | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | field, | 
| const vtkm::VecAxisAlignedPointCoordinates< 3 > & | wCoords, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagHexahedron | , | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | field, | 
| const WorldCoordType & | wCoords, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| CellShapeTag | shape, | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | field, | 
| const WorldCoordType & | wCoords, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagPolygon | , | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | field, | 
| const WorldCoordType & | wCoords, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagPolyLine | , | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellDerivative | ( | const FieldVecType & | pointFieldValues, | 
| const WorldCoordType & | worldCoordinateValues, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | parametricCoords, | ||
| vtkm::CellShapeTagGeneric | shape, | ||
| vtkm::Vec< typename FieldVecType::ComponentType, 3 > & | result | ||
| ) | 
Take the derivative (get the gradient) of a point field in a cell.
Given the point field values for each node and the parametric coordinates of a point within the cell, finds the derivative with respect to each coordinate (i.e. the gradient) at that point. The derivative is not always constant in some "linear" cells.
| [in] | pointFieldValues | A list of field values for each point in the cell. This usually comes from a FieldInPoint argument in a vtkm::worklet::WorkletVisitCellsWithPoints.  | 
| [in] | worldCoordinateValues | A list of world coordinates for each point in the cell. This usually comes from a FieldInPoint argument in a vtkm::worklet::WorkletVisitCellsWithPoints where the coordinate system is passed into that argument.  | 
| [in] | parametricCoords | The parametric coordinates where you want to find the derivative. | 
| [in] | shape | A tag of type CellShapeTag* to identify the shape of the cell. This method is overloaded for different shape types.  | 
| [out] | result | Value to store the derivative/gradient. Because the derivative is taken partially in the x, y, and z directions, the result is a vtkm::Vec of size 3 with the component type the same as the field. If the field is itself a vector, you get a Vec of Vecs.  | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const FieldVecType & | , | 
| const vtkm::Vec< ParametricCoordType, 3 > & | , | ||
| vtkm::CellShapeTagEmpty | , | ||
| typename FieldVecType::ComponentType & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const FieldVecType & | field, | 
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagPolygon | , | ||
| typename FieldVecType::ComponentType & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const FieldVecType & | field, | 
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagPolyLine | , | ||
| typename FieldVecType::ComponentType & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const FieldVecType & | pointFieldValues, | 
| const vtkm::Vec< ParametricCoordType, 3 > & | parametricCoords, | ||
| vtkm::CellShapeTagGeneric | shape, | ||
| typename FieldVecType::ComponentType & | result | ||
| ) | 
Interpolate a point field in a cell.
Given the point field values for each node and the parametric coordinates of a location within the cell, interpolates the field to that location.
| [in] | pointFieldValues | A list of field values for each point in the cell. This usually comes from a FieldInPoint argument in a vtkm::worklet::WorkletVisitCellsWithPoints.  | 
| [in] | parametricCoords | The parametric coordinates where you want to get the interpolated field value for. | 
| [in] | shape | A tag of type CellShapeTag* to identify the shape of the cell. This method is overloaded for different shape types.  | 
| [out] | result | Value to store the interpolated field. | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const FieldVecType & | pointFieldValues, | 
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| CellShapeTag | tag, | ||
| typename FieldVecType::ComponentType & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const IndicesVecType & | pointIndices, | 
| const FieldPortalType & | pointFieldPortal, | ||
| const vtkm::Vec< ParametricCoordType, 3 > & | parametricCoords, | ||
| CellShapeTag | shape, | ||
| typename FieldPortalType::ValueType & | result | ||
| ) | 
Interpolate a point field in a cell.
Given the indices of the points for each node in a Vec, a portal to the point field values, and the parametric coordinates of a location within the cell, interpolates to that location.
| [in] | pointIndices | A list of point indices for each point in the cell. This usually comes from a GetIndices() call on the structure object provided by a WholeCellSetIn argument to a worklet.  | 
| [in] | pointFieldPortal | An array portal containing all the values in a point field array. This usually comes from a WholeArrayIn worklet argument.  | 
| [in] | parametricCoords | The parametric coordinates where you want to get the interpolaged field value for. | 
| [in] | shape | A tag of type CellShapeTag* to identify the shape of the cell.  | 
| [out] | result | Value to store the interpolated field. | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const vtkm::VecAxisAlignedPointCoordinates< 2 > & | field, | 
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagQuad | , | ||
| vtkm::Vec3f & | result | ||
| ) | 
| vtkm::ErrorCode vtkm::exec::CellInterpolate | ( | const vtkm::VecAxisAlignedPointCoordinates< 3 > & | field, | 
| const vtkm::Vec< ParametricCoordType, 3 > & | pcoords, | ||
| vtkm::CellShapeTagHexahedron | , | ||
| vtkm::Vec3f & | result | ||
| ) | 
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| CellShapeType | shape, | ||
| vtkm::ErrorCode & | |||
| ) | 
By default, cells have zero measure unless this template is specialized below.
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagHexahedron | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the volume of a hexahedral cell (approximated via triple product of average edge along each parametric axis).
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagLine | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the arc length of a poly-line cell.
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagPyramid | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the volume of a pyramid (approximated as 2 tetrahedra)
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagQuad | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the area of a quadrilateral cell.
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagTetra | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the volume of a tetrahedron.
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagTriangle | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the area of a triangular cell.
| OutType vtkm::exec::CellMeasure | ( | const vtkm::IdComponent & | numPts, | 
| const PointCoordVecType & | pts, | ||
| vtkm::CellShapeTagWedge | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
Compute the volume of a wedge cell (approximated as 3 tetrahedra).
| OutType vtkm::exec::ComputeMeasure | ( | const vtkm::IdComponent & | , | 
| const PointCoordVecType & | , | ||
| vtkm::CellShapeTagPolygon | , | ||
| vtkm::ErrorCode & | ec | ||
| ) | 
 1.8.17