Commit Graph

720 Commits

Author SHA1 Message Date
Sujin Philip
2141435a19 Refactor KDTree3D worklet 2017-08-17 15:25:08 -04:00
ayenpure
2c662457f0 Fix particle advection compile warnings 2017-08-10 22:19:50 -04:00
ayenpure
84f9ec47ee Fix particle advection build warning
-adding code to resolve build warnings for gcc 5+
-change the return object of steps in unit test
2017-08-10 21:32:42 -04:00
Dave Pugmire
b23564a526 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into pics_unittests 2017-08-10 16:18:18 -04:00
Abhishek Yenpure
e4116edab8 particle advection tests for rectilinear grid
-added tests for rectilinear grid
-fixing rectilinear grid evaluator for GPUs
2017-08-10 15:14:42 -04:00
Abhishek Yenpure
a3b4ad8b1a particle advection test fixes
-fixes for testing particle advection on the GPU.
-minor fixes for GPU
2017-08-10 13:39:47 -04:00
Thomas Otahal
89b2700298 Merge topic 'external-faces-production'
75517554 Move check for cell variables to it gets executed.
147247e8 Code formatting changes and compiler warning fixes.
a3fd135b Fix errors and warnings on Mac and Windows
347af497 Poly Data for External Faces
aeed7a07 Cell variables for External Faces
ad13e9b4 Merge branch 'master' into external-faces-production
ab25c160 External Faces Uniform and Rectilear grids

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !860
2017-08-09 16:00:01 -04:00
ayenpure
bc259e1523 Particle advection grid evaluators testing fix 2017-08-08 23:03:08 -04:00
Yenpure
9714ea36fa Particle advection test fix
-Added a worklet to execute evaluator test on device
-Fixing various compile issues
2017-08-08 16:19:02 -04:00
Robert Maynard
07cd0f0516 All scatters VisitIndex now are zero based.
Fixes #166
2017-08-08 09:38:04 -04:00
Yenpure
0daeee70ec Fix Needed : virtual like methods for Integrators 2017-08-03 16:55:44 -04:00
Yenpure
2ba83cd101 particle advection refactoring
-removing the bounds object form integrators.
-some formatting changes
-changes to build successfully
2017-08-03 13:34:58 -04:00
Thomas J. Otahal
347af49722 Poly Data for External Faces
The external faces filter and worklet now pass input
PolyData (0D, 1D, and 2D) cells to the output. The external
faces filter has a flag to control this output (PassPolyData).
Added tests to the external faces filter and worklet.
2017-08-03 09:19:22 -06:00
Allison Vacanti
75590f1fc9 MSVC2013 lacks support for function type aliases.
Alas, VS 2013 will keep us from using "using" to declare function
signatures. Reverting to typedef until we bump our MSVC requirement.

This appears to be a compiler bug:
https://stackoverflow.com/questions/26349216
2017-08-02 12:02:25 -04:00
Yenpure
3668e098e3 Fixed particle advection build issues
-Merged short steps changes from AYenpure's branch
-Fixed build issues
-Fixedf merge issues
2017-08-02 10:02:21 -04:00
Yenpure
4b7bba836b Merge branch 'refactor_integrators' of https://gitlab.kitware.com/ayenpure/vtk-m into pics_unittests 2017-08-01 22:00:07 -04:00
Dave Pugmire
33ada346ae Add more unittests. Put field into evaluator. 2017-08-01 16:27:03 -04:00
Yenpure
61c61ee93b Adding a base class for Integrators 2017-07-31 15:46:13 -04:00
Kenneth Moreland
897ec9ff5e Test and fix issues with WholeCellSetIn with structured grids 2017-07-28 15:02:05 -06:00
Kenneth Moreland
03b6f62d05 Add a test for the WholeCellSetIn argument
All types of cell sets should have a consistent interface. This is
tested (and fixed) for explicit and permutation cell sets. However, an
unfixed bug that has been identified is that permutation cell sets only
work for point to cell topologies. All others are not supported
correctly.
2017-07-28 13:46:37 -06:00
Dave Pugmire
6a480bad65 Fix compiler warnings. Add ArrayHandle method for getting cell id 2017-07-27 10:10:43 -04:00
ayenpure
c564c4b911 Enhancements for particle advection
-support for short steps to push the particle out of bounds
2017-07-25 23:30:17 -04:00
Dave Pugmire
45c82f2e93 First take at getting streamline worklet to return useful information.
More changes to come.
2017-07-21 14:37:20 -04:00
Dave Pugmire
d768d3130c Merge branch 'PICS_returntype' of gitlab.kitware.com:dpugmire/vtk-m into PICS_returntype 2017-07-20 07:41:11 -04:00
Dave Pugmire
8bdf42f31c Change return type to a struct that contains the arrays from the worklet. 2017-07-20 07:36:57 -04:00
Dave Pugmire
d2bc02e69e Return a vtkm::cont::DataSet from ParticleAdvection worklet. 2017-07-18 16:54:17 -04:00
Abhishek
58a08287bb Merge topic 'PICS'
8e500a17 Moving PortalType templetization to Step method of Integrators
33150365 Validate the data format for the UniformGridEvaluate.
69c1f946 Merge branch 'PICS' of gitlab.kitware.com:dpugmire/vtk-m into PICS
b87e8881 Merge branch 'PICS' of gitlab.kitware.com:dpugmire/vtk-m into PICS
5a652f41 Fix for MSVC compile isses
50dbd634 Remove unneeded template from grid eval glasses.
6f1e9b40 Fix compile warning.
32a0be8b Fix compile warnings/errors from CDash.
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !828
2017-07-13 09:41:33 -04:00
Yenpure
8e500a172a Moving PortalType templetization to Step method of Integrators
Changes suggested by Rob.
2017-07-12 15:31:16 -04:00
Dave Pugmire
33150365eb Validate the data format for the UniformGridEvaluate. 2017-07-12 12:02:04 -05:00
Yenpure
5a652f41bc Fix for MSVC compile isses
MSVC does not allow typename for non templated types while
compiling with c++98 std. (clang/gcc allow it)
Don't know about which standards Kitware uses to test builds, but
this should fix it.
Also removing unused parameter from the particle advection example.
2017-07-12 10:52:39 -04:00
Dave Pugmire
50dbd6347a Remove unneeded template from grid eval glasses. 2017-07-12 08:38:32 -05:00
Dave Pugmire
6f1e9b40a3 Fix compile warning. 2017-07-12 00:39:40 -05:00
Dave Pugmire
32a0be8bc7 Fix compile warnings/errors from CDash. 2017-07-11 23:33:29 -05:00
Dave Pugmire
4574f36dec Cleanup of particle advection worklets
Created ParticleAdvection.h for worklets that match the worklet pattern.
Slight reorganization of existing code to match this pattern.
Added a unittest particle advection.
2017-07-11 21:22:28 -05:00
Li-Ta Lo
5bf0bfe11a Merge topic 'kdtree'
37ded1cf Resolve code review issues, 1. cudaDeviceSetLimit issue, 2. Namespace issue
bf11195d Resolve the code review issues
75c794f6 Add 3D kd tree reconstruction and nearest neighbor searh

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !797
2017-07-11 11:40:39 -04:00
caseywang777
37ded1cf69 Resolve code review issues, 1. cudaDeviceSetLimit issue, 2. Namespace issue 2017-07-10 10:52:47 -06:00
David C. Lonie
fb2d36be1e Refactor VecRectilinearPointCoordinates.
See #163.
2017-07-07 13:49:35 -04:00
Robert Maynard
5de351124a Allow Gradient to output in FORTRAN ordering.
VTK expects that the tensor fields generated by the gradient of a vector field
to have FORTRAN ordering instead of C ordering.

Discovering this actually uncovered bugs in the Vorticity and QCriterion
implementation where they presumed FORTRAN ordering, and would generate
incorrect results.
2017-07-05 16:32:31 -04:00
Robert Maynard
8d04796b1f Allow Vector Gradient computation to output fancy fields and not gradient
Basically we can run the gradient worklet and compute the Divergence, Vorticity,
and QCriterion without ever having to store the gradient tensor in global memory
2017-07-03 16:11:01 -04:00
Robert Maynard
85a62423bd Gradient now has a Run method, and requires ArrayHandle type to be known
The gradient worklet is now templated on the input value type. This simplifies
the logic of the gradient. Secondly we have added a Run method for the
first step of making gradient a 'fatter' worklet that can handle generation
of vorticity, Divergence, and QCriterion.
2017-07-03 16:11:01 -04:00
Sujin Philip
67a95ee19a Merge topic 'fix-marchingcubes-normals'
08fb95d5 Options to compute fast normals in MarchingCubes
74f1a0bf Fix Marching Cubes normals
42ce2dcb Add ScatterPermutation

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !811
2017-06-21 09:39:08 -04:00
David Lonie
462033699f Merge topic '157-threshold_field_refactor'
1cc855ab Refactor the Threshold worklet field mapping.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !808
2017-06-21 09:12:10 -04:00
David C. Lonie
1cc855abec Refactor the Threshold worklet field mapping.
Refs #157.
2017-06-21 09:09:46 -04:00
David Lonie
8c0d1d12d0 Merge topic '157-extract_geometry_refactor'
769c3c40 Extract geometry celldata refactor.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !803
2017-06-20 16:18:06 -04:00
Sujin Philip
42ce2dcb39 Add ScatterPermutation 2017-06-20 13:41:02 -04:00
David C. Lonie
769c3c405e Extract geometry celldata refactor.
References #157.
2017-06-16 14:34:26 -04:00
caseywang777
75c794f6c0 Add 3D kd tree reconstruction and nearest neighbor searh 2017-06-15 17:55:30 -06:00
David C. Lonie
63aecfa501 Refactor field processing for Mask worklet/filter. 2017-06-15 13:17:52 -04:00
David C. Lonie
20eed197c1 Refactor the clip filters/worklet (See #157). 2017-06-13 10:24:07 -04:00
Sujin Philip
75f0957f8c Merge topic 'add-SmoothSurfaceNormals'
18d0f3e1 Add SmoothSurfaceNormals worklet

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !798
2017-06-12 17:21:45 -04:00
Sujin Philip
18d0f3e143 Add SmoothSurfaceNormals worklet
Also updates SurfaceNormals filter to produce smooth normals.
2017-06-12 16:50:22 -04:00
David Lonie
8c64247707 Merge topic 'marching_cubes_celldata'
c9f38480 Release CellIdMap if no cell fields exist in MC filter.
44c1d4f6 Remove unused variable.
82ebdd5b Add MarchingCubes::ProcessCellField.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !793
2017-06-09 09:50:47 -04:00
David C. Lonie
82ebdd5be7 Add MarchingCubes::ProcessCellField.
Allow cell data to be mapped through the MarchingCubes filter.
2017-06-08 16:50:27 -04:00
Sujin Philip
6ce2a43d41 Simplify ArrayHandleTransform template 2017-06-08 16:46:45 -04:00
Sujin Philip
749c0c8920 Add Worklet and Filter for faceted surface normals 2017-06-08 09:37:12 -04:00
Sujin Philip
fbabd58222 Simplify ExtractStructured implementation 2017-05-30 17:07:14 -04:00
Robert Maynard
5dd346007b Respect VTK-m convention of parameters all or nothing on a line
clang-format BinPack settings have been disabled to make sure that the
VTK-m style guideline is obeyed.
2017-05-26 13:53:28 -04:00
Kitware Robot
4ade5f5770 clang-format: apply to the entire tree 2017-05-25 07:51:37 -04:00
Robert Maynard
705dac67b3 Remove improper defines of the default device adapter.
Worklets should never set or define the default device adapter
2017-05-23 15:13:27 -04:00
Kitware Robot
cbd918b43d worklet/wavelet: fix whitespace issues 2017-05-22 16:47:54 -04:00
Robert Maynard
206556916d Merge topic 'support_3DWavelet_compression'
fecc2e97 code style improvements
7782ff47 Take off a few debug statements; replaced tabs with spaces
3e4095f4 WaveletDWT.h
c4853885 eliminate another warning
d4deced5 get rid of some asserts used for debugging
98cf7f8d got rid of unused variable warnings
33de20da fix print type warnings
7d123455 remove my own note
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !765
2017-05-22 14:01:03 -04:00
Kitware Robot
efbde1d54b clang-format: sort include directives 2017-05-18 12:59:33 -04:00
Samuel Li
33de20da09 fix print type warnings 2017-05-10 23:18:03 -06:00
Samuel Li
d5d67bc5a9 Merge remote-tracking branch 'vtkm/master' 2017-05-10 23:06:32 -06:00
Samuel Li
e21795b269 restore original CMakeLists 2017-05-10 22:53:55 -06:00
Samuel Li
b58e76b675 eliminate a few warnings 2017-05-10 17:58:42 -06:00
Samuel Li
d9c3c7b393 all cases pass tests on all platforms. Need to tackle warnings 2017-05-10 15:51:06 -07:00
Samuel Li
a73bc25939 finish all tests in serial mode 2017-05-09 23:02:51 -06:00
Patricia Kroll Fasel - 090207
8a840d7698 Fix warnings 2017-05-04 15:04:54 -06:00
Patricia Kroll Fasel - 090207
d80e64385a Add ExtractGeometry filter and unit test 2017-05-04 13:13:53 -06:00
Patricia Kroll Fasel - 090207
9106f6b4b7 Add ExtractPoints filter which only does ImplicitFunction extraction 2017-05-03 15:07:06 -06:00
Patricia Fasel
5a4c029719 Merge topic 'extract-structured'
6a88cde5 Remove unnecessary const parameters
0e3a98f8 Add subsample and include boundary
14066d86 Add filter for ExtractStructured
e4283344 Clean up
78148b02 Rectilinear with subset and sample and tests
49f86625 Uniform subset and sample worklet and unit tests working
d7a53792 Use vtkm:Bounds for all bounding boxes
0975e189 Introduce subsampling parameter
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !744
2017-05-03 10:21:14 -04:00
Sujin Philip
82d02e46ef Modify ImplicitFunctions to use Virtual Methods 2017-05-01 16:55:59 -04:00
Patricia Kroll Fasel - 090207
0e3a98f827 Add subsample and include boundary 2017-04-27 14:53:51 -06:00
Samuel Li
f11c1bf928 change new error handling 2017-04-14 14:14:09 -06:00
Patricia Kroll Fasel - 090207
78148b0295 Rectilinear with subset and sample and tests 2017-04-14 14:06:28 -06:00
Samuel Li
eaee6c3e4b merge from the latest 2017-04-14 14:00:16 -06:00
Patricia Kroll Fasel - 090207
49f8662572 Uniform subset and sample worklet and unit tests working 2017-04-14 13:34:51 -06:00
Samuel Li
10be50059c sync to debug on another machine 2017-04-13 18:25:14 -06:00
Patricia Kroll Fasel - 090207
d7a5379293 Use vtkm:Bounds for all bounding boxes 2017-04-13 14:45:53 -06:00
Patricia Kroll Fasel - 090207
0975e1894a Introduce subsampling parameter 2017-04-13 12:36:53 -06:00
Patricia Kroll Fasel - 090207
9d8d5ed5d3 Pass Vec instead of arrays for bounds and samples. Check validity of values. 2017-04-10 15:56:00 -06:00
Samuel Li
14a94e7886 fix a typo; sync to test 2017-04-06 17:57:40 -06:00
Patricia Kroll Fasel - 090207
f9a77e053d UnitTest of geometry only on worklet 2017-04-06 14:11:49 -06:00
Patricia Kroll Fasel - 090207
de419db1de Geometry for Uniform, Rectilinear 1D,2D,3D. 2017-04-05 12:33:05 -06:00
Patricia Kroll Fasel - 090207
d2eb251bb4 Separate ExtractUniform and ExtractRectilinear 2017-04-05 09:36:25 -06:00
Patricia Kroll Fasel - 090207
6256324195 Start of ExtractStructured worklet which only gathers geometry 2017-04-04 14:00:04 -06:00
Patricia Kroll Fasel - 090207
836e947200 VTKM_EXEC on operator caused CUDA synchronization error 2017-03-30 11:22:07 -06:00
Patricia Kroll Fasel - 090207
f3b4b29e40 Use float not double for defining ImplicitFunctions 2017-03-29 16:24:42 -06:00
Patricia Kroll Fasel - 090207
c7e0305097 Warnings 2017-03-29 15:13:34 -06:00
Patricia Kroll Fasel - 090207
be97785036 Change subset extraction on points to use WorkletMapCellToPoint 2017-03-29 14:04:58 -06:00
Patricia Kroll Fasel - 090207
11e0a252d9 Floating point warnings 2017-03-28 16:07:56 -06:00
Patricia Kroll Fasel - 090207
16c211816c Add in Mask.h worklet and test 2017-03-28 14:42:22 -06:00
Patricia Kroll Fasel - 090207
9f06a1ea37 Merge branch 'master' into extract-subset 2017-03-27 08:58:17 -06:00
Patricia Kroll Fasel - 090207
36b480993d Move the processing of scatter cell data to worklet from the filter. 2017-03-24 16:34:53 -06:00
Patricia Kroll Fasel - 090207
3a1a6aece3 Added mapping of cell data onto output dataset 2017-03-23 17:14:39 -06:00
Patricia Kroll Fasel - 090207
984af5a2b4 Reorganize Triangulate and Tetrahedralize and write filters. 2017-03-23 11:58:00 -06:00
Patricia Kroll Fasel - 090207
6cb3f9165d Merge branch 'master' into extract-subset 2017-03-22 11:18:34 -06:00
Patricia Kroll Fasel - 090207
9f0c99920c Add filters and tests for ExtractPoints and ExtractGeometry, by id only. 2017-03-21 15:14:35 -06:00
Patricia Kroll Fasel - 090207
54171e1d87 Third version of ExtractGeometry which finally looks more like
Threshold.  CellSetSingleType returned for extract points and
CellSetPermutation returned for extract cells.
2017-03-20 14:40:53 -06:00
Patricia Kroll Fasel - 090207
d1e8de3efe Add ExtractCellSetStructured by id, by implicit function, 2D, 3D 2017-03-17 17:00:59 -06:00
Patricia Kroll Fasel - 090207
ad66b2be33 Add extraction subdirectory. ExtractGeometry entry point for point and
cell extraction.
2017-03-16 14:53:16 -06:00
Patricia Kroll Fasel - 090207
9583e627dc Add ExtractCells by Id and by ImplicitFunction 2017-03-16 13:44:01 -06:00
Robert Maynard
5566afdd8d Allow MarchingCubes to handle multiple iso-contour values. 2017-03-16 11:49:20 -04:00
Patricia Kroll Fasel - 090207
8598711c09 ExtractPoints worklet for ImplicitFunction
Add Box to ImplicitFunction
2017-03-14 12:14:50 -06:00
Kenneth Moreland
6fdc7eb8c0 Add Field::GetRange and CoordinateSystem::GetBounds to library
Following what was done with ArrayRangeCompute, the GetRange and
GetBounds methods are embedded into the vtkm_cont library for the most
common type lists.

Also, and probably more importantly, the device adapter is no longer one
of the arguments for either of these methods. It is no longer needed as
ArrayRangeCompute no longer needs it.
2017-03-09 13:18:36 -05:00
Samuel Li
85d09a55d8 add a flag to facilitate testing 2017-03-08 19:29:27 -08:00
Patricia Kroll Fasel - 090207
fa0b9bee73 MaskPoints worklet and filter added 2017-03-08 16:04:12 -07:00
Patricia Kroll Fasel - 090207
c1b2d1f50a Add filter and unit test to ThresholdPoints.
Allow for CompactPoints to call CleanGrid.
2017-03-08 13:25:27 -07:00
Patricia Kroll Fasel - 090207
dee28a3089 ThresholdPoints first attempt 2017-03-07 14:03:22 -07:00
Samuel Li
2ee208b833 add back all the timers 2017-02-25 18:49:12 -08:00
Samuel Li
62d82974c9 implement 3D gaussian generation 2017-02-25 17:19:33 -07:00
Samuel Li
0a6a26248e fix test program to not use L vector 2017-02-25 13:23:40 -07:00
Samuel Li
4d22303c6b fix bug on operating on 32bit float 2017-02-24 16:40:14 -07:00
Samuel Li
0c260370c5 1024 cube 1 level of transform pass test 2017-02-24 11:56:24 -07:00
Sujin Philip
a88807fd7e Catch all exceptions by reference 2017-02-23 13:25:01 -05:00
Samuel Li
c22ff73bc5 debug for 3D transforms 2017-02-21 16:56:57 -07:00
Kenneth Moreland
d339025a1b Merge topic 'external-face-more-generic'
dcbbb727 Merge branch 'master' into external-face-more-generic
0703139a Make Keys class do in-place sort
059c7f6d Fix issue with ExternalFaces on CellSetSingleType
876514ba Add better test for external faces
53679dfc Update ExternalFaces to support mixed face types

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Brent Lessley <blessley@cs.uoregon.edu>
Merge-request: !662
2017-02-16 10:28:56 -05:00
Thomas Otahal
9d9c39e197 Merge topic 'vector_magnitude_field_filter'
ba2be2fe Added FilterTraits and code cleanup.
f6d5d24c Removed integer vector field from vector magnitude filter unit test
70e145fd Attempt to fix Visual Studio 2013/2015 warning message
f1300c61 Changed vtkm::Abs() to return input type
71b2348d Adjusted Math.h.in for const vtkm::Float32 function inputs
7d6601d7 Modified Math.h.in and VectorAnalysis.h to support integral types.
cd95cbe9 Modified Math.h.in instead of Math.h
5777c4ca Merge branch 'master' into vector_magnitude_field_filter
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !666
2017-02-10 11:34:28 -05:00
Kenneth Moreland
dcbbb72784 Merge branch 'master' into external-face-more-generic
Update exception methods to new names.
2017-02-08 17:10:17 -07:00
David C. Lonie
f601e38ba8 Simplify exception hierarchy.
Remove the ErrorControl class such that all subclasses now inherit from
error. Renamed all exception classes via s/ErrorControl/Error/.

See issue #57.
2017-02-07 15:42:38 -05:00
Kenneth Moreland
0703139a3d Make Keys class do in-place sort
Previously, the Keys class constructor took an array of keys, made a
copy of it, and sorted the copy. This was to protect the caller in case
it needed the original keys array again. However, this copy takes a
significant chunk of time and it is probably rare in practice to ever
need the original keys array again. So instead just do an in-place sort.
2017-01-26 13:35:53 -07:00
Kenneth Moreland
876514bab2 Add better test for external faces
Tests zoo cells with different face size. Also makes sure the surface is
exactly as expected.
2017-01-26 13:35:49 -07:00
Kenneth Moreland
53679dfc9c Update ExternalFaces to support mixed face types
Previously, ExternalFaces really only supported tetrahedral meshes that
have only triangular faces. These changes support all mixes of cells and
their faces.
2017-01-26 13:35:46 -07:00
Thomas J. Otahal
5777c4caa5 Merge branch 'master' into vector_magnitude_field_filter
Conflicts:
	vtkm/worklet/testing/CMakeLists.txt
2017-01-24 09:55:31 -07:00
Kenneth Moreland
28b866920f Merge branch 'reduce-by-key-worklet' into 'master'
Reduce by Key Worklet Type

See merge request !645
2017-01-19 16:25:06 -05:00
Thomas J. Otahal
556b922733 Created a filter for the vector magnitude worklet.
Modified the vector magnitude worklet to accept VecAll instead
of Vec3 and return Scalar. Modified the Magnitude() and Sqrt() functions
to return FloatDefault for all inputs except for Float64.

Perhaps we should modify other functions in Math.h and VectorAnalysis.h to
return float types for intergral arguments instead of integral types?
2017-01-19 13:27:42 -07:00
Kenneth Moreland
d6eb477a45 Minor fixes to UnitTestWorkletReduceByKey 2017-01-17 15:53:17 -07:00
Kenneth Moreland
72b85559c2 Add ReducedValues[In][Out] tags to WorkletReduceByKey 2017-01-17 15:53:13 -07:00
Kenneth Moreland
ffa3b167b5 Add ValueCount tag to WorkletReduceByKey 2017-01-17 15:53:10 -07:00
Kenneth Moreland
add10f56cf Add Value[In][Out] tags for WorkletReduceByKey
This lets you give arrays of values paired with the keys that will be
grouped into (hopefully) small Vecs.
2017-01-17 15:53:08 -07:00
Kenneth Moreland
58eb8f168d Add WorkletReduceByKey and dispatcher
And the basic type for a reduce by key worklet and its associated
adapter. Right now the worklet only supports passing in keys. Values
come next.
2017-01-17 15:53:06 -07:00
Kenneth Moreland
cd64b69a55 Add Keys class
This class will manage the keys during a reduce-by-key worklet
execution.
2017-01-17 15:53:04 -07:00
Robert Maynard
4a56e9f129 Merge branch 'contour-tree' into 'master'
Contour tree

See merge request !658
2017-01-17 17:00:54 -05:00
Kenneth Moreland
713cf4228a Make it not possible to create a cell set without specifying num points
The CellSetExplicit and CellSetSingleType classes have an ivar that
marks the number of points. There were several instances of code
creating cell sets without specifying the number of points. This can be
very bad if subsequent code needs that information.
2017-01-12 13:02:10 -07:00
Patricia Kroll Fasel - 090207
b3b5149b28 Use cont/testing/MakeTestDataSet.h and add contour tree tests.
Remove worklet/contourtree/PrintVectors.h from CMakeLists.txt.
2017-01-12 10:40:29 -07:00
Patricia Kroll Fasel - 090207
62a1cceea6 Add file that creates test data sets and use that instead for contour tree. 2017-01-09 15:50:23 -07:00
Patricia Kroll Fasel - 090207
f6140c39e2 Add LANL/LLC copyright notification. 2017-01-09 14:53:59 -07:00
Patricia Kroll Fasel - 090207
9412584bf2 First implementation of contour tree 2D and 3D, serial and cuda. 2017-01-09 13:54:47 -07:00
Kenneth Moreland
02bf444dc2 Test that the array transports check the size of input arrays 2016-12-19 17:30:41 -07:00
Robert Maynard
daa75d744b Add a PointAverage worklet which is the twin to CellAverage. 2016-12-14 14:05:50 -05:00
Robert Maynard
839d8e8392 CellAverage first control parameter is now the cellset.
This was done so that it consistently matches other cell based worklets,
and the majority of examples inside the VTK-m Users Guide.
2016-12-14 14:04:57 -05:00
Robert Maynard
134f24496b Add a point gradient worklet. 2016-12-12 13:26:16 -05:00
Kenneth Moreland
ce338d1484 Add a worklet for copying cell sets 2016-11-22 17:15:10 -07:00
Kenneth Moreland
b175468082 Add RemoveUnusedPoints class
RemoveUnusedPoints contains a couple of worklets and some helper methods
to compact the points in a CellSetExplicit. This is helpful when you
have an operation that creates new cells but might not use all the
original points of the inputs.
2016-11-22 17:11:52 -07:00
Kenneth Moreland
fdaccc22db Remove exports for header-only functions/methods
Change the VTKM_CONT_EXPORT to VTKM_CONT. (Likewise for EXEC and
EXEC_CONT.) Remove the inline from these macros so that they can be
applied to everything, including implementations in a library.

Because inline is not declared in these modifies, you have to add the
keyword to functions and methods where the implementation is not inlined
in the class.
2016-11-15 22:22:13 -07:00
Robert Maynard
8dadf560cd Add in support for vector fields to Gradient worklet. 2016-11-15 18:54:53 -05:00
Robert Maynard
7a52fa3940 Add in Cell Gradient for scalar fields. 2016-11-14 12:52:00 -05:00
Christopher Sewell
f779e8a1bd Removing streaming scan inclusive for now 2016-11-09 15:43:57 -07:00
Christopher Sewell
8a8b409d4c Merge remote-tracking branch 'upstream/master' into StreamingArray 2016-11-09 12:15:58 -07:00
Robert Maynard
ad0593e845 Merge topic 'wavelet2'
35a81df0 change variable names to avoid confusion
b2719157 simplify functions to get the approximation and detail coefficients length
d7e94e3a update 2D idwt to not assign zero to the last element of cDTemp
568bd63f fix a few warnings
514dcf4b see if unused warning shows up
30660bf4 fix comments by Rob
97118931 improved error message when test failing
9b45dba3 fix 2 warnings
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !577
2016-11-08 16:10:15 -05:00
Christopher Sewell
d7ff809716 Attempt to resolve warnings for streaming device adapter algorithms 2016-10-27 11:09:27 -06:00
Kenneth Moreland
622a44339d Add VTK_EXEC_EXPORT to new CellAverage methods
Frankly, I am surprised that the CellAverage worklet compiled on CUDA
when the parenthesis operator relied on methods that were not delcared
as __device__.
2016-10-23 11:51:09 -04:00
Christopher Sewell
b9d8172635 Attempt 14 to resolve Windows compiler warning with streaming storage 2016-10-21 17:31:45 -06:00
Christopher Sewell
93d7956daf Attempt 13 to resolve Windows compiler warning with streaming storage 2016-10-21 16:08:13 -06:00
Robert Maynard
37efba159c CellSetSingleType now can be constructed with proper number of points
This is important so that when we execute a Cell->Point worklet we
don't have to compute the number of points from the connectivity array.
2016-10-20 08:33:16 -04:00
Christopher Sewell
278db37c08 Attempt 2 to resolve Windows compiler warning with streaming storage 2016-10-19 14:44:48 -06:00
Samuel Li
971189313a improved error message when test failing 2016-10-11 07:26:14 -07:00
Samuel Li
8e98eeea6c fixed a few warnings 2016-10-09 22:34:32 -07:00
Samuel Li
548e212e55 2D wavelet compressor ready for Rob to review 2016-10-09 21:52:02 -07:00
Samuel Li
edd93c435a new implementation of 2D transforms pass test 2016-10-09 17:07:49 -07:00
Samuel Li
7eb494895f forward transform now avoids data copy when performing multi-level transforms 2016-10-05 15:52:07 -07:00
Christopher Sewell
58952e1465 Adding streaming reduce 2016-09-29 15:06:34 -06:00
Christopher Sewell
bf9e1366f5 Fixing warning about char* 2016-09-29 14:33:21 -06:00
Christopher Sewell
9e2210927e Adding streaming exclusive scan and fixing bugs with streaming inclusive scan, but still need to make it treat input as const 2016-09-28 18:29:04 -06:00
Samuel Li
edd74febd8 Resolving merge conflicts 2016-09-23 09:27:44 -07:00
Samuel Li
2271751f79 merge request to conclude LANL work 2016-09-22 16:13:50 -07:00
Samuel Li
d19bbfac81 sync to laptop 2016-09-21 20:25:56 -07:00
Samuel Li
093db83474 almost pass all tests, move to Alaska to debug one more case 2016-09-16 19:20:53 -06:00
Christopher Sewell
5f6ff438da Fixing typename issue in UnitTestStreamingSine 2016-09-15 18:30:50 -06:00
Christopher Sewell
d92f39df12 Merge branch 'master' into StreamingArray 2016-09-15 17:54:59 -06:00
Christopher Sewell
610f96a831 Adding streaming inclusive scan 2016-09-15 17:46:09 -06:00
Samuel Li
32fb705c2c sync test program 2016-09-13 19:53:17 -07:00
Samuel Li
a045a767fa sync to use gdb 2016-09-13 13:10:38 -06:00
Kenneth Moreland
5455608c69 Remove boost::shared_ptr from rendering library
The remove boost::shared_ptr and the rendering library branches where
developed simultaneously, and thus some of the rendering library
implementation was using boost::shared_ptr like the old code. Bring up
to date with the rest of VTK-m by using std::shared_ptr instead.
2016-09-12 11:08:06 -06:00
Samuel Li
7e756e3a5a move to linux to debug 2016-09-11 16:14:01 -06:00
Samuel Li
a196e9b42d timer tweak 2016-09-06 15:54:12 -07:00
Samuel Li
a07e6ab71e fix a bug, run final tests 2016-09-06 14:28:46 -07:00
Samuel Li
42a80662d8 finish 2D re-write. Some tests pass and some others fail. Need to keep debugging 2016-09-05 19:52:35 -06:00
Samuel Li
02cede6937 need to change IDWTHelper API a little bit 2016-09-01 18:47:50 -06:00
Samuel Li
c4387bb71c need to debug a memory problem 2016-08-31 16:03:25 -06:00
Samuel Li
858895d3c8 Extend2D passes initial test, need to test more. 2016-08-26 14:51:23 -06:00
Samuel Li
4bda2f3042 one left extend worklet works correct 2016-08-26 10:54:47 -06:00
Samuel Li
87e80fc9c0 Merge branch 'master' into wavelet2 2016-08-24 15:53:52 -06:00
Samuel Li
f9dc98d0e6 add timers to report worklet computation time 2016-08-23 17:52:40 -06:00
Samuel Li
c5613b2cbb optimized a few worklets 2016-08-23 08:56:03 -07:00
Samuel Li
ec185e3ade WaveletFilter now stores array handles, so less data transfer between host and device 2016-08-22 14:28:29 -07:00
Samuel Li
daa80669f2 get rid of many small memory transfers 2016-08-22 13:49:13 -07:00
Samuel Li
553e396c6e 2D decompose/reconstruct seem to work well 2016-08-22 10:13:45 -06:00
Robert Maynard
ce3c7f64b5 Merge topic 'clip_restructure'
af05ea0e Cleanup clipping so we can use it from a filter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !508
2016-08-22 09:56:21 -04:00
Samuel Li
165199c890 keep fighting on compiler errors 2016-08-21 23:10:05 -06:00
Christopher Sewell
e3858cb047 Eliminating more warnings in streaming sine unit test 2016-08-19 14:48:51 -06:00
Christopher Sewell
2855512962 Adding ArrayHandleStreaming to CMake and fixing warnings 2016-08-19 13:47:44 -06:00
Samuel Li
372cd6729b merge updates from the 1D wavelets branch 2016-08-18 22:42:29 -06:00
Robert Maynard
9712de8b24 Merge topic 'wavelets'
d677d0d1 small tweaks
816364d2 in an effort to get rid of a warning
778da350 In attempt to fix errors and warnings
bb450c51 fix a warning
49e56b61 two new wavelet filters, HAAR and CDF8/4 supported now
767356bc working on even length filters; need ASYM* support in Extend1D()
a6efad04 half done even length filters implementation
ee32ea4c took off timing code
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !482
2016-08-18 15:47:33 -04:00
Robert Maynard
af05ea0e8d Cleanup clipping so we can use it from a filter. 2016-08-18 12:50:20 -04:00
Christopher Sewell
7892ebf67c Making work index return global value when streaming 2016-08-17 21:33:04 -06:00
Samuel Li
49e56b61b5 two new wavelet filters, HAAR and CDF8/4 supported now 2016-08-16 15:20:19 -06:00
Samuel Li
767356bc72 working on even length filters; need ASYM* support in Extend1D() 2016-08-15 17:54:15 -06:00
Samuel Li
3a1cfe5c6a 2d decompose and reconstruct seem to be working well 2016-08-14 16:29:27 -06:00
Samuel Li
53cfd74d01 Rectangle Copy test succeed 2016-08-14 00:28:29 -06:00
Samuel Li
9e49cde593 2D decomposition work in progress 2016-08-11 18:49:48 -06:00
Samuel Li
be658d70a8 IDWT2D seems to be working 2016-08-11 15:24:48 -06:00
Robert Maynard
04761975be Refactor FieldHistogram so class is not templated.
Move the template parameters to the Run method.
2016-08-11 14:46:45 -04:00
Samuel Li
d41d102072 DWT2D works 2016-08-10 16:28:59 -07:00
Samuel Li
710d59d33a Change on class signatures of Filter and Base 2016-08-10 17:24:22 -06:00
Samuel Li
e7b288dba1 eliminates explicit calling VTKM_DEFAULT_DEVICE_ADAPTER_TAG 2016-08-10 14:33:14 -06:00
Samuel Li
f669f44ca1 new branch on 2D wavelets 2016-08-09 17:32:13 -06:00
Samuel Li
f3d7aeced1 use std::vector<vtkm::Id> instead of raw arrays for bookkeeping 2016-08-08 17:59:15 -06:00
Samuel Li
c72b135608 Uncomment other build objects 2016-08-08 12:21:08 -04:00
Samuel Li
34ce28576d change unittest for review 2016-08-06 12:34:03 -07:00
Samuel Li
3d29e504cc fixed a memory bug, now I believe it's ready for merge 2016-08-06 00:08:29 -07:00
Robert Maynard
08a33675f6 Prefer vtkm::cont::CastAndCall function over the member method. 2016-08-05 15:29:39 -04:00
Robert Maynard
31138293f9 Pass Fields and CoordinateSystems to Dispatcher::Invoke
Now that we can handle scheduling Fields and CoordinateSystems, do
2016-08-05 15:26:17 -04:00
Christopher Sewell
c4ab06f7cb Resoring other worklet tests 2016-08-03 20:23:40 -06:00
Christopher Sewell
767a5f6792 Clean up for streaming dispatcher 2016-08-03 19:47:12 -06:00
Christopher Sewell
504e6f55df Working streaming dispatcher 2016-08-03 18:48:31 -06:00
Christopher Sewell
ced9fd32db Improving streaming dispatcher 2016-08-03 15:34:43 -06:00
T.J. Corona
927387b1a2 Add vtkm::cont::Field,CoordinateSystem as Invokable parameters.
Originally, only array handles could be passed to the dispatcher.
This update extends the list to Field and CoordinateSystem as
dynamic objects.
2016-08-03 15:46:30 -04:00
Christopher Sewell
2caf81a4af First commit for ArrayHandleStreaming 2016-08-02 16:54:12 -06:00
Samuel Li
448e9be5a8 small tweaks, ready for pull request 2016-07-29 14:16:10 -07:00
Samuel Li
dd1ef8e47d include all objects in the cmake file 2016-07-29 13:19:28 -07:00
Samuel Li
3cc6385426 remove unnecessary files 2016-07-29 13:05:53 -07:00
Samuel Li
ec46fd58a0 fixed bugs, ready for Chris to review 2016-07-29 11:27:37 -07:00
Samuel Li
7f9fd0d66d finish all the statics 2016-07-28 21:07:05 -06:00
Samuel Li
fa1198bb85 summation algorithm function is ready 2016-07-28 19:12:57 -06:00
Samuel Li
1a7bae0335 with a hack on ArrayHandlePermutation.h, wavelet works on CUDA device as well 2016-07-28 17:55:38 -06:00
Samuel Li
951d9fce2c move device copy to a function of itself; other small changes 2016-07-28 14:55:10 -07:00
Robert Maynard
73440ccb4e vtkm::filter::MarchingCubes now uses vtkm::worklet
Instead of having two separate implementations of MarchingCubes, we have
a single implementation in worklet, and filter uses that.

That does mean that the version in worklet has been updated to support
merging of duplicate point coordinates.
2016-07-28 08:52:34 -04:00
Samuel Li
7dc59d80d7 trying to figure out how to use deviceAdapterAlgorithms 2016-07-27 16:23:26 -07:00
Samuel Li
ab021ce6f0 Chris helped to eliminate all compiling errors 2016-07-27 15:42:29 -07:00
Samuel Li
b2d15bbbde move wavelet stuff back to worklet folder 2016-07-27 14:28:38 -06:00
Samuel Li
148d96d3c4 UnitTestWaveletCompressorFilter performs tests on the output values 2016-07-26 17:46:53 -06:00
Samuel Li
3c2aa8aa98 Testing filters, TestDWT1D() throws error 2016-07-18 10:56:45 -06:00
Samuel Li
6d81f261d5 Re-organize files, adding functions to filters. The worklet of WaveletTransform passes tests. 2016-07-18 09:23:20 -06:00
Samuel Li
4ac822acad implement DWT1D function. Thinking to move non-worklet stuff to filter foler. 2016-07-17 17:49:00 -06:00
Samuel Li
cb7a5d6f17 put Wavelets class under wavelet namespace 2016-07-17 15:19:07 -06:00
Samuel Li
1f2bb02f77 add comment line 2016-07-17 14:07:31 -06:00
Samuel Li
1d4070c3ad Extend1D test succeed 2016-07-15 20:33:50 -06:00
Samuel Li
02a4610444 unit test module is capatable of taking in user input as problem size, as well as including data transfer into the timing. 2016-07-12 11:41:47 -07:00
Samuel Li
f1111c6333 Merge branch 'wavelets' of gitlab.kitware.com:samuelli/vtk-m into wavelets 2016-07-12 10:35:43 -06:00
Samuel Li
f8371d0754 add timer 2016-07-12 10:35:35 -06:00
Samuel Li
4cb21ee809 eliminate a warning 2016-07-12 09:51:05 -06:00
Samuel Li
8fb53f4b72 WaveletBase class finished. Now to add timing 2016-07-11 18:22:12 -06:00
Samuel Li
53ab1eb8c4 create a folder for wavelets 2016-07-11 17:54:41 -06:00
Samuel Li
c510f5762a bug fixes; ForwardTransform agrees with its counterpart in vapor now. 2016-07-10 16:32:39 -06:00
Samuel Li
a26fa39c40 Filter is moved out of Wavelets 2016-07-10 14:08:39 -06:00
Samuel Li
b7402f9af4 working on the wavelet Filter class 2016-07-08 13:15:03 -06:00
Samuel Li
a94ff7fbe4 trying to work out boundary situations 2016-07-07 18:44:38 -06:00
Samuel Li
7e9de6706a finish coding ForwardTransform, need to test now 2016-07-07 16:14:43 -06:00
Samuel Li
68bd1d023b ForwardTransform interface works. Maybe to give filters a class? 2016-07-06 21:39:29 -06:00
Samuel Li
765192e4e0 doesn't compile, try on Alaska 2016-07-06 21:15:39 -06:00
Samuel Li
f785fcb18f work in progress for filter tables 2016-07-06 18:37:11 -06:00
Samuel Li
9c1e9574fa ForwardTransform worklet now have the correct interface 2016-07-06 15:21:12 -06:00
Samuel Li
1f4e847c56 wavelets worklet works as a doulber 2016-07-05 17:38:24 -06:00
Samuel Li
7879f32806 add files for testing Wavelets 2016-07-05 10:24:29 -06:00
Kenneth Moreland
b5415169e2 Change Field and related methods to use Range and Bounds
First, be more explicit when we mean a range of values in a field or a
spacial bounds. Use the Range and Bounds structs in Field and
CoordinateSystem to make all of this more clear (and reduce a bit of
code as well).
2016-05-29 18:49:36 -06:00
Robert Maynard
8dfe8cd385 Rename ControlSignature tag TopologyIn to CellSetIn. 2016-05-17 15:07:08 -04:00
Jeremy Meredith
0c18278028 removing cell set dimensionality and splitting tetrahedralizer. 2016-05-13 14:26:59 -04:00
Robert Maynard
6883a5ac94 Simplify using CellSetPermutation by providing a default permutation type.
Previously you had to explicitly state you wanted a CellSetPermutation
with an ArrayHanlde of Id's, now that is done automatically.
2016-04-12 14:24:51 -04:00
Robert Maynard
6ac50adcee Correct an off by 1 error in UnitTestWorkletMapFieldWholeArray.
The sum presumption was presuming 1 to 10 inclusive, when we actually have
0 to 9 inclusive.
2016-04-07 22:59:59 -04:00
Kenneth Moreland
0bcd172d39 Merge branch 'atomic-improvements' into 'master'
Add AtomicArrayInOut ControlSignature tag

This makes it easier to pass arrays with atomics to a worklet.

See merge request !382
2016-04-05 15:23:37 -04:00
Kenneth Moreland
43ed18b0e1 Add AtomicArrayInOut ControlSignature tag.
This makes it easier to pass arrays with atomics to a worklet.
2016-03-24 17:12:17 -06:00
Jeremy Meredith
ba8517eb67 removing all references to field order. 2016-03-23 10:38:14 -04:00
Robert Maynard
531dececfd Multiple changes to VertexClustering to make it more suitable for filter.
The original implementation wasn't flexible enough to handle the requirements
that filter requires ( mainly policy support ).
2016-03-14 08:39:17 -04:00
Kenneth Moreland
f9750e83f7 Fix issues with Field constructor overloads
I ran into a few minor issues with the constructors to the Field class.

The big change I made was that I removed the Field constructors that
take an example type and create an empty field of that type. The problem
was that the example type was easily confused with some other type that
was supposed to describe an array. This lead to some odd behavior in the
compiler and resulted in errors in unexpected places.

The use case for this constructor is dubious. There were several tests
in the code that would create an empty field, add it to a data set, then
get it back out to pass to the worklet. The code is much simpler if you
just make an ArrayHandle of the right type and use that in the worklet
invoke directly. It is also faster to compile with smaller code because
the type is known statically (whereas it is lost the other way).

The other change was to declare references to ArrayHandle and
DynamicArrayHandle as const. There is nothing in the behavior that
invalidates the const, and it accepts arrays constructed in the
parameter.
2016-01-21 13:54:05 -07:00
Kenneth Moreland
c346d40eb4 Add WorkletMapCellToPoint class
The map topology worklets are to have convenience classes for all the
common mappings. However WorkletMapCellToPoint was left out as an
oversight. This adds the class.
2016-01-20 16:16:58 -07:00
Kenneth Moreland
9ccd7fa9c7 Change Regular to Uniform
There was an inconsistency in naming classes where axes-aligned grids
with even spacing were sometimes called "uniform" and sometimes called
"regular". Maintain consistency by always calling them uniform.
2016-01-19 15:54:05 -07:00
Kenneth Moreland
ed43dad6ca Simplify and unify cast interface.
Previously, DynamicArrayHandle and DynamicCellSet had slightly different
interfaces to their CastTo feature. It was a bit confusing and not all
that easy to use.

This change simplifies and unifies them by making each class have a single
CopyTo method that takes a reference to a cast object (an ArrayHandle or
CellSet, respectively) and fills that object with the data contained if
the cast is successfull. This interface gets around having to declare
strange types.

Each object also has a Cast method that has to have a template parameter
specified and returns a reference of that type (if possible).

In addition, the old behavior is preserved for DynamicArrayHandle (but
not DynamicCellSet). To avoid confusion, the name of that cast method is
CastToTypeStorage. However, the method was chaned to not take parameters
to make it consistent with the other Cast method.

Also, the IsType methods have been modified to reflect changes in
cast/copy. IsType now no longer takes arguments. However, an alternate
IsSameType does the same thing but does take an argument.
2016-01-18 15:58:04 -07:00
Robert Maynard
4bb3cce016 Use the DataSetBuilderExplicitIterative helper where it is useful. 2016-01-18 16:19:48 -05:00
Robert Maynard
dd312516f6 Fix issue found be moving over to DataSetBuilderExplicit.
Mainly issue dealing with dimensionality of cell sets and what that represents.
Have added in code to allow user to specify a custom dimensionality so that
tests continue to work properly.
2016-01-15 16:16:38 -05:00
Robert Maynard
e7456fa120 Update vtkm tests and examples to use DataSetBuilders. 2016-01-15 15:44:56 -05:00
Robert Maynard
e39c7819aa Merge topic 'more_worklets_not_templated_on_deviceadapter'
956cedfd Turn off the benchmarking ExternalsFaces.
18b866d6 Threshold worklet is not templated on device adapter.
dbee9275 ExternalFaces worklet is not templated on device adapter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !315
2016-01-15 08:25:18 -05:00
Robert Maynard
f4d2b63fcb Merge topic 'vertex_clustering_not_templated_on_device'
12ddcfdd VertexClustering worklet is not templated on device adapter.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !314
2016-01-14 16:15:10 -05:00
Robert Maynard
18b866d6e0 Threshold worklet is not templated on device adapter.
This should help reduce the amount of code generation, when building the
Threshold worklet for all device adapters.
2016-01-14 15:55:22 -05:00
Robert Maynard
dbee92752e ExternalFaces worklet is not templated on device adapter.
This should help reduce the amount of code generation, when building the
ExternalFaces worklet for all device adapters.
2016-01-14 15:55:12 -05:00
Robert Maynard
12ddcfdda7 VertexClustering worklet is not templated on device adapter.
This should help reduce the amount of code generation, when building the
VertexClustering worklet for all device adapters.
2016-01-14 15:42:27 -05:00
Dave Pugmire
a5972e6a15 Merge topic 'dataset-builder2'
f86382f0 Fix support for CoordinateSystems using ArrayHandleCartesianProduct.
d6a2a142 Add toleranced compare for values. Add tests for vtkm::Float32,Float64,Id typed arrays.
5d438353 Add toleranced comparisions for bounds validation. Also, add vtkm::Float32 and vtkm::Float64 to the testing for rectilinear and regular datasets.
b225ae97 Rectilinear coordinates (created with DataSetBuilderRectilinear) are now converted to vtkm::FloatDefault. This reduces the number of types to consider when casting inside CoordinateSystem, and was felt by all to be a reasonable restriction.
d755e43d Use ArrayHandleCompositeVector to represent separated point arrays for DataSetBuilderExplicit.h.
c7b0ffb8 Add tests for DataSetBuilderExplicit. Added cont/testing/ExplicitTestData.h which includes several explicit datasets.  These datasets come from VTK data generated in VisIt.  The new unit tests build datasets in several different ways and do some basic validation.
b4d04fff Add specialization of printSummary_ArrayHandle for UInt8. It prints them as characters, which are a little hard to understand to this computer scientist.
bd929c20 Fix compiler warnings.
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !262
2016-01-14 14:57:02 -05:00
Robert Maynard
c70da5fc23 Extend vtkm::DeviceAdapterTraits to include a unique numeric identifier.
Previously each device adapter only had a unique string name. This was
not the best when it came to developing data structures to track the status
of a given device at runtime.

This adds in a unique numeric identifier to each device adapter. This will
allow classes to easily create bitmasks / lookup tables for the validity of
devices.
2015-12-16 11:18:52 -05:00
Robert Maynard
f96206338f Merge topic 'enable_runtime_detection_of_cuda'
a7127f0f Adding vtkm::cont::RuntimeDeviceInformation.
7d249e89 Move DeviceAdapterTraits into vtkm::cont as they are user API.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !287
2015-12-16 08:48:24 -05:00
Robert Maynard
a7127f0fc3 Adding vtkm::cont::RuntimeDeviceInformation.
The RuntimeDeviceInformation class allows developers to check if a given
device is supported on a machine at runtime. This allows developers to properly
check for CUDA support before running any worklets.
2015-12-15 17:25:27 -05:00
Robert Maynard
7b7a56c664 UnitTestCellAverage now properly verifies against an explicit cell set. 2015-12-14 10:07:32 -05:00
Robert Maynard
7d249e8996 Move DeviceAdapterTraits into vtkm::cont as they are user API.
When writing multiple backend code users of vtkm need to use the
DeviceAdapterTraits classes, so therefore we should move them to vtkm::cont
to signify this.
2015-12-11 09:52:18 -05:00
dpugmire
e674a6c80d Fix issue with PointToCell indices not being computed.
Also, mark them as valid, when valid.
2015-12-08 15:14:43 -05:00
Kenneth Moreland
2ac8456b5e Add WholeArray* ControlSignature tags
The WholeArrayIn, WholeArrayInOut, and WholeArrayOut ControlSignature
tags behave similarly to using an ExecObject tag with an
ExecutionWholeArray or ExecutionWholeArrayConst object. However, the
WholeArray* tags can simplify some implementations in two ways. First,
it allows you to specify more precisely what data is passed in. You have
to pass in an ArrayHandle or else an error will occur (as opposed to be
able to pass in any type of execution object). Second, this allows you
to easily pass in arrays stored in DynamicArrayHandle objects. The
Invoke mechanism will automatically find the appropriate static class.
This cannot be done easily with ExecutionWholeArray.
2015-12-07 09:52:29 -07:00
T.J. Corona
baa73eaad8 Merge topic 'marching-cubes'
33b0d1bf Move marching cubes edge table out of the worklet.
a5ae4127 Remove IsosurfaceUniformGrid.
35355382 Generalize IsosurfaceUniformGrid to Accept explicit cell sets.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !272
2015-12-03 14:54:02 -05:00
T.J. Corona
a5ae4127e0 Remove IsosurfaceUniformGrid. 2015-12-02 15:11:56 -05:00
Dave Pugmire
29e4f06691 remove explicitdataset1, which was identical to dataset0. 2015-12-01 17:24:52 -05:00
Patricia Kroll Fasel - 090207
6c4fb856df Add example data file for streamline. 2015-11-23 17:00:22 -07:00
Patricia Kroll Fasel - 090207
cba0e218d8 Verify unit test results 2015-11-23 16:46:23 -07:00
Patricia Kroll Fasel - 090207
3946b0c462 Add unit test, pass all args in Run() 2015-11-23 16:19:26 -07:00
Patricia Kroll Fasel - 090207
02f84a1992 StreamLine filter outputs dataset. Add example. 2015-11-23 12:54:12 -07:00
T.J. Corona
353553829d Generalize IsosurfaceUniformGrid to Accept explicit cell sets. 2015-11-20 12:38:03 -05:00
Patricia Kroll Fasel - 090207
e34aaa02ea Merge branch 'master' of gitlab.kitware.com:Fasel/vtk-m into streamline 2015-11-12 16:08:44 -07:00
Patricia Kroll Fasel - 090207
82d9c10206 Pass input and output datasets and not arrays. Support FORWARD, BACKWARD and BOTH. 2015-11-12 15:35:46 -07:00
Patricia Kroll Fasel - 090207
add67881db Rework stream code 2015-11-10 10:33:21 -07:00
Kenneth Moreland
58aa46df74 Fix spacing in Isosurface test code.
The original isosurface code was not treating the origin and spacing of
the point coordinates correctly. Instead, it was ignoring the origin and
spacing and instead scaling all point coordinates to be in the unit cube
in world space (except there was also an off-by-one error in that). This
change recompensates by adjusting the origin and spacing to make the
correct position where the geometry was previously errantly placed.
2015-11-06 18:05:20 -07:00
Kenneth Moreland
e6a9c96c96 Adding ScatterCounting 2015-11-06 18:05:20 -07:00
Patricia Kroll Fasel - 090207
123322f4b9 First code for stream lines worklet 2015-11-05 16:08:54 -07:00
Robert Maynard
ca71d70bed Update worklet UnitTests to not try statically known invalid combinations 2015-10-26 17:21:24 -04:00