Commit Graph

1486 Commits

Author SHA1 Message Date
Mark Kim
20328534b5 clean up warnings. 2018-12-13 14:49:38 -05:00
Mark Kim
a6bcf8a0ab something's not quite right. 2018-12-13 14:49:38 -05:00
Mark Kim
ce44a4d183 better tests. 2018-12-13 14:49:38 -05:00
Mark Kim
8a9bfcba1b zfp 1d worklet. 2018-12-13 14:49:38 -05:00
Mark Kim
aad7498387 1d compressor filter 2018-12-13 14:49:37 -05:00
Mark Kim
851c424a16 fix some bugs. 2018-12-13 14:49:37 -05:00
Mark Kim
95636ff2cd decode/encode 2d. 2018-12-13 14:49:37 -05:00
mclarsen
aa891c58a7 fixed decompression porting bugs 2018-12-13 14:49:37 -05:00
mclarsen
37cba9e99f adding path for decompress 2018-12-13 14:49:37 -05:00
mclarsen
0c788b92a2 fixed error with integer types 2018-12-13 14:49:37 -05:00
mclarsen
584b36d64e adding partial gather3 2018-12-13 14:49:37 -05:00
mclarsen
4650881f58 something 2018-12-13 14:49:37 -05:00
mclarsen
1020cb43e6 more missing files 2018-12-13 14:49:37 -05:00
mclarsen
cf3d24d1aa more missing files 2018-12-13 14:49:37 -05:00
mclarsen
baa0ad77c7 adding missing file 2018-12-13 14:49:36 -05:00
mclarsen
bcd0150e9e save point 2018-12-13 14:49:36 -05:00
mclarsen
1c45e48fac compression working and benchmarked 2018-12-13 14:49:36 -05:00
mclarsen
c01e1b7349 debugging cuda failure 2018-12-13 14:49:36 -05:00
mclarsen
8cd7c5db32 fixed the gather 2018-12-13 14:49:36 -05:00
mclarsen
ea9bef19da init zfp 2018-12-13 14:49:36 -05:00
Li-Ta Lo
2af1162a01 Merge branch 'master' into connected_component 2018-12-12 14:12:34 -07:00
ayenpure
d1d495d435 Fixing warnings 2018-12-08 14:41:59 +05:30
ayenpure
e340cdf88c Fixing warnings 2018-12-08 14:17:28 +05:30
ayenpure
d0cf80bddd Updating tests for the new Clip tables 2018-12-08 11:57:34 +05:30
ayenpure
831914f318 Fising warnings 2018-12-08 08:14:05 +05:30
ayenpure
1ca02af988 Removing whitespaces 2018-12-07 23:33:08 +05:30
ayenpure
f72299c948 Resolving warnings from last iteration 2018-12-07 23:28:31 +05:30
ayenpure
cab80e8e3f Adding Clip files 2018-12-07 20:39:21 +05:30
Robert Maynard
dd0cbc3689 Merge topic 'disable_cuda_optimizations_for_UnitTestBoundingIntervalHierarchy'
a9c151188 Disable ptxas for CUDA 8 && 9 for UnitTestBoundingIntervalHierarchy.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1465
2018-12-07 08:28:04 -05:00
Li-Ta Lo
c75ec7bfc7 Updated unit tests, add filter interface 2018-12-04 16:42:34 -07:00
Li-Ta Lo
a6c0d23785 Add connectivity as a subdirectory such header files will be installed. 2018-12-04 12:29:00 -07:00
Li-Ta Lo
5000ef459b Fixed pre-mature termination of the image connectivity algorithm
The previous algorithm terminates based on if all pixels are in a root star. It turns out to be in
sufficient and thus terminates much earlier than it is required.
2018-12-03 13:46:21 -07:00
Kenneth Moreland
82536092cc Rename boundary classes
Did a bit of renaming of the support classes used for
WorkletPointNeighborhood. First, the OnBoundary tag is changed to
Boundary to match other tags and reflect some changes in the resulting
methods. Also moved the BoundaryState and Neighborhood classes from
vtkm::exec::arg to vtkm::exec to be more accessible. Finally, the
Neighborhood class name was changed to FieldNeighborhood to be more
specific on what role this class plays with neighborhood.
2018-12-03 12:45:23 -07:00
Kenneth Moreland
01a9e85416 Change WorkletPointNeighborhood to specify neighborhood at runtime
Previously, WorkletPointNeighborhood had a template argument to select
the size of the neighborhood. This change removes that template
argument. Instead, the vtkm::exec::arg::BoundaryState methods now take
in a size parameter when determining when it overlaps the boundary.

If in the future we want to add the ability to select the neighborhood
size at compile-time (for performance reasons), I suggest adding this
template argument to the OnBoundary tag for ExecutionSignature.
2018-12-03 12:45:23 -07:00
Haocheng LIU
0d39806f4f Rename worklet testing executable
Now it's in accordance with vtkm testing name convension as
UnitTests_vtkm_worklet_testing.
2018-11-29 15:51:41 -05:00
Robert Maynard
a9c1511888 Disable ptxas for CUDA 8 && 9 for UnitTestBoundingIntervalHierarchy. 2018-11-28 11:14:59 -05:00
Kenneth Moreland
6ebc3ea761 Fix potential warning in AverageByKey
To get the average, we (of course) divide the sum by the amount of
values, which is returned from valuesIn.GetNumberOfComponents(). To do
this, we need to cast the number of components (returned as a
vtkm::IdComponent) to a FieldType. This is a little more complex than it
first seems because FieldType might be a Vec type. If you just try a
static_cast<FieldType>(), it will use the constructor to FieldType which
might be a Vec constructor expecting the type of the component. This in
turn could cause a warning because the vtkm::IdComponent is implicitly
converted to the Vec's component type.

Get around this problem by first casting to the component type of the
field and then constructing a field value from that.
2018-11-27 09:31:23 -07:00
Haocheng LIU
8859636672 Merge worklet testing executables into a device dependent shared library
VTK-m has been updated to replace old per device worklet testing executables with a device
dependent shared library so that it's able to accept a device adapter
at runtime.
Meanwhile, it updates the testing infrastructure APIs. vtkm::cont::testing::Run
function would call ForceDevice when needed and if users need the device
adapter info at runtime, RunOnDevice function would pass the adapter into the functor.

Optional Parser is bumped from 1.3 to 1.7.
2018-11-23 10:13:56 -05:00
Kenneth Moreland
67c9af91a9 Merge topic 'policies-for-auxiliary-fields'
86a747a11 Add ability to customize filter policy to auxiliary input fields

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1442
2018-11-01 20:04:01 -04:00
mclarsen
2d782ff7d0 removing some entries from test build exclusion (colors) 2018-11-01 09:45:57 -07:00
mclarsen
2addf93938 removing color conversion files from test build 2018-11-01 09:36:19 -07:00
mclarsen
e5d03852b1 add subdirectory for colorconversion 2018-11-01 09:25:10 -07:00
Kenneth Moreland
86a747a117 Add ability to customize filter policy to auxiliary input fields
The field infrastructure has a "trait" that specifies the valid types
for the default active scalar field. Most filters have at most one input
field. The majority of the remaining filters use the same types for
inputs. There are some examples, however, where some auxiliary fields
use different types. This change adds a second template parameter to
FieldTraits to customize the valid types of the input scalar field to
different fields.

These changes are in anticipation of the removal of list specifier tags
on worklet ControlSignature arguments.
2018-10-31 23:51:36 +01:00
Matthew Letter
5426ae0ed3 added runtime device tracker force
added `vtkm::cont::GetGlobalRuntimeDeviceTracker().ForceDevice(VTKM_DEFAULT_DEVICE_ADAPTER_TAG());`
2018-10-24 11:19:52 -06:00
Matthew Letter
cb03238804 removed device from run function for AverageByKey
I also cleaned up the unit test to no longer pass the device
2018-10-24 10:28:12 -06:00
Robert Maynard
8a739ee1b6 Merge topic 'correct_vtkm_warnings'
9403bac1f VTK-m device side math functions need to use the vtkm:: wrappers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1436
2018-10-22 08:36:42 -04:00
Robert Maynard
9403bac1f6 VTK-m device side math functions need to use the vtkm:: wrappers 2018-10-18 13:57:53 -04:00
Robert Maynard
cd6367646c ParticeAdvection for cuda <= 9 now built without ptxas optimizations
The ParticleAdvection code would always cause cuda 9's ptxas phase
to crash, so we disable optimization to work around this issue
2018-10-18 11:19:23 -04:00
Robert Maynard
57236e0f6e particleadvection was missing ::template causing VS2015 failures 2018-10-17 10:53:19 -04:00
Kenneth Moreland
f4f5dcb74c Fix warnings about using template outside of a template
Previously, UnitTestProbe used a struct templated on the device adapter,
and that necessitated the use of the template keyword when using an
ambiguous type. These recent changes remove that template argument and
thus can cause a warning about using the template keyword in a non-
ambiguous type.
2018-10-16 22:41:19 -06:00
Kenneth Moreland
bddad9b386 Remove TryExecute from filters
Now that the dispatcher does its own TryExecute, filters do not need to
do that. This change requires all worklets called by filters to be able
to execute without knowing the device a priori.
2018-10-16 15:59:53 -06:00
Robert Maynard
03e2e721ec Merge topic 'correct_ppp2_compile_failures'
a423cf056 TestBuild header paths are shorter to make windows happy.
e49e21aea Cleanup more of contourtree_augmented to make windows builders happy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1424
2018-10-16 16:16:47 -04:00
Robert Maynard
a423cf056c TestBuild header paths are shorter to make windows happy.
ContourTreeAugumneted paths became too long and caused msvc
to fail to construct pdb paths
2018-10-16 15:01:39 -04:00
Kenneth Moreland
f3b923a597 Temporarily remove UnitTestParticleAdvection.cxx from CUDA tests
The CUDA compiler is giving us grief while compiling
UnitTestParticleAdvection.cxx even though the code is correct. Disable
it for now until we figure out what can be done with the compiler.
2018-10-16 10:42:45 -06:00
Kenneth Moreland
723792a482 Use new integrators and evaluators for advection 2018-10-16 09:53:18 -06:00
Kenneth Moreland
d49c29cef9 Make particle advection integrators and evaluators ExecObject
By making these helper classes ExecObject, they no longer need to have a
device to be constructed. This is important for future plans to make the
filters not determine a device adapter now that dispatchers no longer
require a device adapter.
2018-10-16 09:53:18 -06:00
Kenneth Moreland
a2602183a4 Make integrators have a virtual superclass
This will make it easier to support integrators as an ExecObject.

One side effect is that the integrators and partical advection
are not templated by the type of the field.
Regardless of the type of the field, there is probably little reason to
compute particle advection with less than 64 bit floats to account for
accumulated errors. This will make it easier to use these classes.
2018-10-16 09:53:18 -06:00
Robert Maynard
e49e21aea4 Cleanup more of contourtree_augmented to make windows builders happy 2018-10-16 10:30:57 -04:00
Haocheng LIU
246a58309c Add a split sharp edge worklet and filter
It's a filter that Split sharp manifold edges where the feature angle
between the adjacent surfaces are larger than the threshold value.
When an edge is split, it would add a new point to the coordinates
and update the connectivity of an adjacent surface.
Ex. there are two adjacent triangles(0,1,2) and (2,1,3). Edge (1,2) needs
to be split. Two new points 4(duplication of point 1) an 5(duplication of point 2)
would be added and the later triangle's connectivity would be changed
to (5,4,3).
By default, all old point's fields would be copied to the new point.
Use with caution.
2018-10-09 15:33:47 -04:00
Robert Maynard
9d5efbd95d Merge topic 'misc-typos'
d5beb69ec Misc. typos

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1426
2018-10-08 08:37:19 -04:00
Kenneth Moreland
5608615970 Disable header testing in PPP2 mesh_dem_meshtypes
For some unknown reason, on windows these header tests were producing
the following errors:

fatal error C1041: cannot open program database

There might be a better way around this, but the easiest way is to
simply remove those test builds.
2018-10-05 09:01:37 -06:00
luz.paz
d5beb69ec1 Misc. typos
Found via `codespell`
2018-10-04 10:30:33 -04:00
Robert Maynard
db1b394336 Merge branch '291_logging' into 'master'
Add general logging support

See merge request vtk/vtk-m!1414
2018-10-04 09:36:47 -04:00
Allison Vacanti
bd337854ec Initial implementation of general logging.
Addresses #291.
2018-10-02 11:37:55 -04:00
Robert Maynard
91fd7f4f74 Merge topic 'ppp2'
c05b04c9d Fix windows warnings of duplicate symbols
12b90c434 Rename PPP2 to Augmented.
6f5c383e1 Move PPP2 over to constexpr instead of defines
f828ebfd4 Update PPP2 to dispatcher that don't require a device adapter template
98fd16d9a Correct PPP2 warnings found from 32bit builders
b460f5611 Make sure ContourTreeApp obeys the desired device
432ee3422 Optimize the PPP2 ActiveGraphs to reduce size of device transfers
2370a6cc5 Refactor the PPP2 work based on Code Review and add UnitTests.
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1376
2018-09-29 09:40:17 -04:00
Robert Maynard
c05b04c9d7 Fix windows warnings of duplicate symbols 2018-09-27 14:07:45 -07:00
Robert Maynard
12b90c434b Rename PPP2 to Augmented. 2018-09-26 10:48:37 -07:00
Robert Maynard
17a93921c3 Suppress CUDA 10 warnings about __host__ / __device__ 2018-09-20 14:02:16 -04:00
Robert Maynard
6f5c383e1b Move PPP2 over to constexpr instead of defines 2018-09-18 08:54:22 -04:00
Robert Maynard
f828ebfd4e Update PPP2 to dispatcher that don't require a device adapter template
The update now has PPP2 using the vtkm::worklet::Invoker class
to handle managing the device adapter.
2018-09-18 08:54:22 -04:00
Robert Maynard
98fd16d9ad Correct PPP2 warnings found from 32bit builders 2018-09-18 08:54:22 -04:00
Robert Maynard
432ee34228 Optimize the PPP2 ActiveGraphs to reduce size of device transfers 2018-09-18 08:54:22 -04:00
Oliver Ruebel
2370a6cc5d Refactor the PPP2 work based on Code Review and add UnitTests. 2018-09-18 08:54:22 -04:00
Gunther H. Weber
ab0ccd4cad vtk-m implementation of improved parallel peak pruning with hyperstructure (PPP2.0) 2018-09-18 08:54:22 -04:00
Robert Maynard
bc9772021c Merge topic 'worklet_invoker_api'
7e3727fa9 Convert some vtkm/cont classes over to vtkm::worklet::Invoker
eae0eb9b7 Add an easier way to launch vtkm worklets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1398
2018-09-04 16:18:14 -04:00
Robert Maynard
eae0eb9b70 Add an easier way to launch vtkm worklets 2018-09-04 15:01:18 -04:00
Haocheng LIU
49ba892512 Set device for CoordinateTransformFilter 2018-08-30 16:58:24 -04:00
Kenneth Moreland
d879188de0 Make DispatcherBase invoke using a TryExecute
Rather than force all dispatchers to be templated on a device adapter,
instead use a TryExecute internally within the invoke to select a device
adapter.

Because this removes the need to declare a device when invoking a
worklet, this commit also removes the need to declare a device in
several other areas of the code.
2018-08-29 19:18:54 -07:00
Robert Maynard
35145fedb4 Re-enable UnitTestBoundingIntervalHierarchy 2018-08-28 13:45:02 -04:00
Allison Vacanti
b50dc297b1 Fix off-by-one error in WaveletGen extents.
Dimensions now match VTK's vtkRTAnalyticSource.
2018-08-21 14:21:42 -04:00
haocheng liu
60363fff07 Provide a better error message when ExecutionSig != ControlSig
By facilitating brigand library, we can throw a meaningful compile time
error if the placeholder in execution signature exceeds the bound in
control signature.
2018-08-20 09:33:04 -04:00
Haocheng LIU
39f791e6ee Disable the UnitTestBoundingIntervalHierarchy test 2018-08-10 14:19:06 -04:00
Robert Maynard
554bc3d369 At runtime TryExecute supports a specific deviceId to execute on.
Instead of always using the first enabled device, now TryExecute
can be told which device at runtime to use.
2018-08-07 17:22:18 -04:00
Robert Maynard
2c6ca906f1 Enable building the worklets when OpenMP is enabled. 2018-07-23 14:33:03 -04:00
Kenneth Moreland
b4bfb95131 Merge topic 'atomic-array-device-execution'
96ae94420 Simplified execution object creation for atomic array
0bd197af9 moved TwoLevelUniformGridExecutionObject to vtkm/exec/internal
6ce895be8 simplified how atomic arrays create execution objects
f1ee5b92a fix a rebase error
25d140361 fix bad rabse for wireframer
f892695f1 fixing so wierd merging issue
9bb00ec66 moved the execution object for TwoLevelUniform grid to vrkm::exec
db1c9bfee Change the namespacing of atomic array
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1243
2018-07-18 18:08:05 -04:00
David Thompson
a92905a545 Merge topic 'oscillator-squashed'
4192b9a1d Add a point-oscillator filter + example

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1311
2018-07-18 09:34:26 -04:00
Sebastien Jourdain
4192b9a1d8 Add a point-oscillator filter + example
The oscillator is a simple analytical source of time-varying data.
It provides a function value at each point that is computed as a
sum of Gaussian kernels -- each with a specified position, amplitude,
frequency, and phase.
2018-07-18 09:33:06 -04:00
Allison Vacanti
3089609b98 Merge topic 'wavelet_source'
0d6834476 Add WaveletGenerator worklet.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1310
2018-07-16 11:27:30 -04:00
Allison Vacanti
0d68344769 Add WaveletGenerator worklet. 2018-07-13 14:20:49 -04:00
Haocheng LIU
56993bc9e2 Add a warpScalar worklet and filter
This commit adds a worklet as well as a filter that modify point coordinates by moving points
along point normals by the scalar amount times the scalar factor.
It's a simpified version of the vtkWarpScalar class in VTK. Additionally the filter doesn't
modify the point coordinates, but creates a new point coordinates that have been warped.
2018-07-09 15:33:25 -04:00
Haocheng LIU
a4c4c1931c Add a warpVector worklet and filter
This commit adds a worklet as well as a filter that modify point coordinates by moving points
along a vector by a certain scalar amount.
It's a simpified version of the vtkWarpVector in VTK.
It doesn't modify the point coordinates, but creates a new point coordinates that have been warped.
2018-07-09 14:22:12 -04:00
Robert Maynard
64958b014b VTK-m now supports passing pointers when invoking worklets.
The original design of invoke and the transport infrastructure
relied on the implementation behavior of vtkm::cont types
such as ArrayHandle that used an internal shared_ptr to managed
state. This allowed passing by value instead of passing by
non-const ref when needing to transfer information to the device.

As VTK-m adds support for classes that use virtuals the ability
to pass by base pointer type allows for us to invoke worklets
using a base type without the risk of type slicing.

Additional by moving over to a non-const ref Invocation we
can update all transports that have 'output' to now be
by ref and therefore support types that can't be copied while
being 'more' correct.
2018-07-06 14:27:36 -04:00
Matthew Letter
db1c9bfeee Change the namespacing of atomic array
moved the execution object to vtkm::exec and AtomicArray to vtkm::cont
2018-07-02 16:25:48 -06:00
ayenpure
e2dccee099 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into spatialsearch 2018-06-30 11:56:33 -06:00
ayenpure
e0296a24b6 Fixes for resolving Rob's suggestions
- Releasing GPU resources when not needed.
- Adding VTK_EXEC to TreeNode and SplitProperties constructors
2018-06-29 15:55:23 -07:00
Abhishek Yenpure
dcbb444a74 Warning fixes for BoundingIntervalHierarchy
- Adding VTKM_CONT_EXPORT to CellLocator
- Removing whitespaces
- Fixing warnings of unused typedef
2018-06-29 14:51:50 -06:00
Abhishek Yenpure
50963290dc Moving BoundingIntervalHierarchy.cxx to device sources
Rectifying print statements in the unit test
2018-06-29 10:46:31 -07:00
ayenpure
bf224dbb7c Adding VTKM_CONT_EXPORT to BoundingIntervalHierarchy 2018-06-29 10:57:25 -06:00
ayenpure
2714da8f0e Adding changes suggested by Rob on GitLab
- Seperate BoundingIntervalHierarchy.h into
  - BoundingIntervalHierarchy.h
  - BoundingIntervalHierarchy.hxx
  - BoundingIntervalHierarchy.cxx
2018-06-29 09:09:24 -06:00
Dave Pugmire
912d393b07 Merge topic 'coordSysFilter'
80b12e325 Merge branch 'coordSysFilter' of https://gitlab.kitware.com/dpugmire/vtk-m into coordSysFilter
ab5eeab18 Fixes for making the filters non-templated.
27dade145 Fixes for coordinate systems w/ help from Sujin.
db5ded3a6 Add files for coord sys transform filters.
17087a26a Filter for coordinate system transform.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !1284
2018-06-28 05:23:21 -04:00
Abhishek Yenpure
72d4556f7d Adding changes for Ken's review from GitLab
- Reducing the stack allocation for CUDA for the BIH unit test
- Adding changes from Ken's review
- Suppress ptxas stack size warning for BoundingIntervalHierarchy
2018-06-27 22:40:13 -06:00
Haocheng LIU
29fb7e4024 Fix the documentation in NDEntropy and NDhistogram filters 2018-06-26 11:19:00 -04:00
dave_pugmire
ab5eeab18a Fixes for making the filters non-templated. 2018-06-25 19:29:18 +02:00
ayenpure
7a122f23b4 Fixing Problems with Locators
-Fix missing copyright statements
-Updating the PointLocator interface
-Updating the Cell Locator unit test to use less memory and finish early
2018-06-24 14:55:11 -06:00
dave_pugmire
27dade1453 Fixes for coordinate systems w/ help from Sujin. 2018-06-24 16:29:20 -04:00
ayenpure
f018a8a7d1 Removing unnecessary print statements
- Removing debug print statements from the Bounding Inteval Hierarchy Cell
  Locator
2018-06-23 18:49:57 -06:00
Dave Pugmire
74f8885d3b Move helper classes into detail namespace. 2018-06-21 10:46:07 -04:00
Dave Pugmire
9fd821ed92 Template on DeviceAdapter. 2018-06-21 10:00:13 -04:00
Dave Pugmire
961f6a5851 Add coordinate system transformation. 2018-06-20 16:40:47 -04:00
James Kress
4fbb704601 Merge topic 'Create-Point-Filter'
4bdb6baa1 Adding PointTransform filter and updating PointTranform worklet.
429ad9705 Merge remote-tracking branch 'upstream/master'
1cdd59cfa Merge remote-tracking branch 'upstream/master'
d2abcfe89 Adding  copy and assignment operators.
3bdb8cb7c Merge remote-tracking branch 'upstream/master'
b25c8af97 Merge remote-tracking branch 'upstream/master'
26f9dc3c3 Merge remote-tracking branch 'upstream/master'
fef41372c Merge remote-tracking branch 'upstream/master'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Dave Pugmire <dpugmire@gmail.com>
Merge-request: !1265
2018-06-18 16:11:20 -04:00
ayenpure
d8e8078099 Fixing the typos with ScanExclusiveByKey
- Fixed the typo
- Moved the test to vtkm/worklet/testing as vtkm/cont/testing does not execute with CUDA
2018-06-15 16:39:00 -07:00
luz.paz
940c891886 Misc. typos
Found via `codespell` and `grep`
more typos

includes source typo change and a typo that needs further review
follow-up typos


Follow-up typos


Revert a commit
2018-06-14 16:49:11 -04:00
James
4bdb6baa1b Adding PointTransform filter and updating PointTranform worklet. 2018-06-14 12:23:22 -04:00
Robert Maynard
7beb515687 VTK-m worklets no longer define DEBUG_PRINT
Fixes Issue #239
2018-06-11 13:41:49 -04:00
ayenpure
18579394ed Moving Files for proper CellLocator/PointLocator APIs
-Changing the existing CellLocator.h to CellLocatorHelper.h,
 it's used by CellLocatorTwoLevelUniformGrid.h

-Changing unit tests and worklets that use CellLocator.h to use CellLocatorHelper.h
2018-06-04 19:51:54 -07:00
Allison Vacanti
04d9786688 Suppress NVCC warning 2885.
This warning is emitted when constructing a tuple that contains
an object with `__host__`-only constructors.

warning #2885-D: calling a __host__ function(...) from a __host__ __device__ function(...) is not allowed
2018-06-04 14:41:15 -04:00
ayenpure
a0504405a2 Merge branch 'bih' of https://gitlab.kitware.com/mmathai/vtk-m into spatialsearch 2018-06-02 13:47:15 -07:00
Robert Maynard
e3eca82c0f This host/device integrator constructors need to suppress warnings
Otherwise the emit false positive warnings about calling host methods
from device code.
2018-05-31 09:24:01 -04:00
Robert Maynard
181b955fca ConvertToRGB with Vec<uint,3> was missing VTKM_EXEC markup. 2018-05-31 09:23:37 -04:00
Allison Vacanti
93506d25e2 Change function signatures to use 'using' aliases.
Also cleaned up some lingering type typedefs.
2018-05-25 17:18:41 -04:00
Kenneth Moreland
411f12cd33 Merge topic 'gradient-vecoutput-device-execution'
86f3ffa76 Updated gradient scalar output to use new execution obejct

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1208
2018-05-24 10:23:28 -04:00
Haocheng LIU
5c797169ec Use the strong typed enums for vtkm::cont::Field
Since Field association is used either when creating or working
with 'vtkm::cont::Field', it's put in the class itself.
2018-05-22 11:44:51 -04:00
Abhishek Yenpure
7291327e98 Merge topic 'fix_warnings'
3f08c444 Fixing warnings introduced by MR 1165

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1212
2018-05-18 20:02:34 -04:00
ayenpure
3f08c44436 Fixing warnings introduced by MR 1165 2018-05-18 12:25:52 -07:00
David Thompson
52a1495859 Fix cell measure when using double precision as default. 2018-05-18 14:05:06 -04:00
Matthew Letter
86f3ffa76e Updated gradient scalar output to use new execution obejct
gradient scalar output now has a prepare for execution function for creating the execution object based on the device adaptor.
2018-05-17 13:05:48 -06:00
Abhishek Yenpure
ffe7f67e52 Merge topic 'temporalparticleadvection'
7188c6ef Removing bad whitespace from TemporalGridEvaluators.h
bc405366 Fixing header guard warning
b39ee80b Fix errors missed/introduced in previous commit.
eb2ed4f2 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into temporalparticleadvection
24dd0638 Fixing merge mess for particle advection
78118a84 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into temporalparticleadvection
129e320d Replicating Rob's changes from the master
40fe133d Fix compile warnings for Temporal Advection
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Dave Pugmire <dpugmire@gmail.com>
Merge-request: !1165
2018-05-17 13:25:15 -04:00
David Thompson
1cf1ca7141 Merge topic 'cell-measure'
00c7905a Rename `vtkm::dot()` to `vtkm::Dot()`.
dd7c17f7 Compute cell measures (arc length, area, volume).

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1203
2018-05-17 11:02:34 -04:00
David Thompson
00c7905afb Rename vtkm::dot() to vtkm::Dot().
This keeps the old name around but prepares it for removal
in the next release.
2018-05-17 08:51:01 -04:00
David Thompson
dd7c17f776 Compute cell measures (arc length, area, volume).
This commit adds a worklet and a filter to compute
signed integral measures of cells.

It also begins the practic of adding a markdown
changelog entry in `doc/changelog`. See the
changelog entry for details.
2018-05-17 08:50:56 -04:00
ayenpure
7188c6ef63 Removing bad whitespace from TemporalGridEvaluators.h 2018-05-16 11:30:27 -07:00
Allison Vacanti
c3c8d0fd70 Refactor ArrayHandleCompositeVector to simplify usage and impl.
- Use tao::tuple instead of FunctionInterface to hold array/portal
  collections.
- Type signatures are simplified. Now just use:
  - ArrayHandleCompositeVector<ArrayT1, ArrayT2, ...>
  - make_ArrayHandleCompositeVector(array1, array2, ...)
  instead of relying on helper structs to determine types.
- No longer support component selection from an input array. All
  input arrays must have the same ValueType (See ArrayHandleSwizzle
  and ArrayHandleExtractComponent as the replacements for these
  usecases.
2018-05-16 11:45:12 -04:00
ayenpure
bc40536639 Fixing header guard warning 2018-05-15 17:55:30 -07:00
ayenpure
b39ee80b70 Fix errors missed/introduced in previous commit.
- Missed a ',' to seperate template argument in GridEvaluator
- Adding initialization of params to Integrators for RK4
- Fixing ExecutionBaseObject changes for Particles
2018-05-15 17:45:04 -07:00
ayenpure
eb2ed4f275 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into temporalparticleadvection 2018-05-15 11:46:26 -07:00
ayenpure
24dd063810 Fixing merge mess for particle advection
Adding Utkarsh's changes from 86bd81de to Rectilinear grid as well
 - To make rectilinear grids work with any storage type

Adding Rob's changes from 7d6fe568 to the RK4Integrator
 - Previously the RK4Integrator could compute velocity with uninitialized inputs.

Adding Rob's changes from a6bf830f to ParticleAdvection
 - Previous ParticleAdvection would dispatch some of the worklets on the default device adapter
   and not the explicitly requested device adapter

Adding Ken's change from 0753131a
 - For supporting all the previous merge conflicts with the new ExecutionObjectBase change.
2018-05-15 11:35:29 -07:00
Kenneth Moreland
0753131a04 Replace ExecutionObjectFactoryBase with ExecutionObjectBase
While making changes to how execution objects work, we had agreed to
name the base object ExecutionObjectBase instead of its original name of
ExecutionObjectFactoryBase. Somehow that change did not make it through.
2018-05-10 17:53:39 -06:00
Robert Maynard
916c0902cf Correct Wstrict-overflow issues with gcc 5 and 6 2018-05-09 08:26:45 -04:00
Robert Maynard
b7ab0f1194 ContourTreeUniform ignores strict-overflow optimization warnings.
Numerous worklets of ContourTreeUniform generate optimizations that
presume no vtkm::Id overflow. This assumption is correct, and the
related warning about this optimization can be safely ignored.
2018-05-08 17:38:35 -04:00
Robert Maynard
0a26f3749e Merge topic 'image_connectivity_warnings'
21b80a5d UnitTestImageConnectivity now uses size_t to index to std::vector
44382300 Make sure all tests use the .cxx extension.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Utkarsh Ayachit <utkarsh.ayachit@kitware.com>
Merge-request: !1190
2018-05-08 15:37:24 -04:00
Utkarsh Ayachit
593061cfb0 UnitTestPointTransform: fix errors when using double as float type. 2018-05-08 14:52:23 -04:00
Robert Maynard
21b80a5dcd UnitTestImageConnectivity now uses size_t to index to std::vector 2018-05-08 13:52:54 -04:00
Robert Maynard
443823007c Make sure all tests use the .cxx extension. 2018-05-08 13:52:32 -04:00
Li-Ta Lo
269b940fe6 Merge topic 'connected_component'
d3dbdd59 remove using namespace, specify fully qualified names
ae5e3be8 Merge branch 'connected_component' of gitlab.kitware.com:ollielo/vtk-m into connected_component
f655e8f1 add overload of Run() for ArrayHandle
6f853971 Add vtkm::worklet::connectivity namespace
ce27f5fc Change signature of ImageConnectivity::Run()
648b0dec add installation of header files in CMakeLists.txt
d94f2cae Add ImageConnectivity worklet
ca0e9d20 Change signature of ImageConnectivity::Run()
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1154
2018-05-08 11:08:54 -04:00
Dave Pugmire
4fec7e6919 Merge topic 'point_translate'
6dd82d69 Create a new worklet for point transformations. Also provide a unitest.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1177
2018-05-08 08:32:57 -04:00
ayenpure
78118a840f Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into temporalparticleadvection 2018-05-07 11:00:52 -07:00
ayenpure
129e320d54 Replicating Rob's changes from the master
Replicating Rob's changes from the MR 'Worklets obey device adapter' #1179
for worklets to obey device adapter in particle advection.
2018-05-07 10:48:26 -07:00
Robert Maynard
626a49cc0b Worklet Dispatcher calls now consistently specify a device adapter
Some worklets Run() method accidentally used the default device adapter
which should be avoided. Instead they should use a passed in device
adapter so that we support multiple device adapters in the same
binary/executable.
2018-05-04 15:12:49 -04:00
Robert Maynard
a6bf830f5f ParticleAdvection run method now obeys the passed in device adapter
Previous ParticleAdvection would dispatch some of the worklets
on the default device adapter and not the explicitly requested
device adapter
2018-05-04 15:12:49 -04:00
Matthew Letter
d32f8213e4 Removed template for device from execution object
the execution object is no longer passed when making execution object instead it is pass in the transport tag to create the final execution object
2018-05-03 14:59:54 -06:00
Matthew Letter
fce5fea31f Changed how TriangulateTables.h was creating ExecutionObjects
abstracted out execution objects for both tetrahedralize and triangulate and removed the device template requirement from the execution object factory for both classes
2018-05-03 14:59:54 -06:00
Matthew Letter
5d1e8cccb4 corrected logical error in texture2d and cleaned up particles.h
cleaned up a logic error texture2d and cleaned how the constructor for execution object was being called. Also, went and cleaned up how the execution object was being created for particle to align it with the same method for creating the execution object.
2018-05-03 14:45:22 -06:00
Matthew Letter
7cb2421edf moved a function out of the execution environment
The factory should not eb being called from the execution environment.
2018-05-03 14:45:22 -06:00
Matthew Letter
35085442b4 cleaning up compilation warings in particles.h 2018-05-03 14:45:22 -06:00
Matthew Letter
b016d5eeaa fixed the compiler errors for particle and particle advection worklet
there was an error involving const and prepareforinput between the particle's const prepareforexecution function and array handle prepareforinput.
2018-05-03 14:45:22 -06:00
Matthew Letter
b693d8bed5 removed particle abstraction
removed the abstraction of particle and stateparticle so they are not inheriting each other
2018-05-03 14:45:22 -06:00
Matthew Letter
d3fde1f870 creating a execution object facotry for particles
abstracted out particles into an execution object and a factory that populates said execution object based on its state. removed the facotries dependance on a device adaptor.
2018-05-03 14:45:22 -06:00
Matthew Letter
af250acbfc added PrepareForExecution to compile code base
added prepare for execution function to all the execution object factories that did not have it implemented to compile the code base
2018-05-03 14:45:22 -06:00
Matthew Letter
8f622839b6 added PrepareForExecution() to UnitTestDispatcherBase.cxx
added PrepareForExecution() to UnitTestDispatcherBase.cxx to start resolving all the missing implementations of the new execution object architecture.
2018-05-03 14:45:22 -06:00
Matthew Letter
7e5a55881b changes typechecks for execution objects
In order to make the change from the current way execution obejcts are utilized to the new proposed executionObjectFactory process type checks now has to look for the new execution object factory class to check against.
2018-05-03 14:45:21 -06:00
Robert Maynard
4649c172c7 Merge topic 'correct_gcc_7_crashes'
f025c218 Suppress conversion warning inside Cell Interpolate code
822d4c61 Marching Cubes test doesn't abuse fall through case statements
dac7ab98 Correct a bad memcpy in ColorTable that gcc 7 found
c6726644 Reformat some test code to stop gcc 7.3 from segfaulting.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Utkarsh Ayachit <utkarsh.ayachit@kitware.com>
Merge-request: !1175
2018-05-03 10:54:08 -04:00
Dave Pugmire
6dd82d69b2 Create a new worklet for point transformations. Also provide a unitest. 2018-05-03 10:53:11 -04:00
ayenpure
40fe133d88 Fix compile warnings for Temporal Advection 2018-05-02 13:49:16 -07:00
Li-Ta Lo
d3dbdd596f remove using namespace, specify fully qualified names 2018-05-02 13:53:07 -06:00
Robert Maynard
822d4c61e1 Marching Cubes test doesn't abuse fall through case statements
The fall through case statement was causing numerous warnings
with gcc 7.
2018-05-02 13:32:02 -04:00
Robert Maynard
ac46a4ced7 Remove unused variables from UnitTestWaveletCompressor 2018-05-02 13:31:30 -04:00
Robert Maynard
eb82620539 Correct shadowing define warning from GraphConnectivity 2018-05-02 13:31:30 -04:00
Li-Ta Lo
f655e8f1f1 add overload of Run() for ArrayHandle 2018-05-01 15:48:26 -06:00
Kenneth Moreland
bb54d9d411 Merge topic 'scatter-on-dispatcher'
edc4c85f Move Scatter from Worklet to Dispatcher

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1172
2018-05-01 12:17:32 -04:00
Robert Maynard
b56894dd09 Move VTK-m Cuda backend over to a grid-stride iteration pattern.
This allows for easier host side logic when determining grid and block
sizes, and allows for a smaller library side by moving some logic
into compiled in functions.
2018-04-30 17:29:26 -04:00
Li-Ta Lo
6f85397192 Add vtkm::worklet::connectivity namespace
Created vtkm::worklet::connectivity namespace and worklets in the namespace.
2018-04-27 11:32:27 -06:00
Li-Ta Lo
ce27f5fcaa Change signature of ImageConnectivity::Run()
It takes CellSetStructured<2> and DynamicArrayHandle and uses CastAndCall
to resolve data type for pixels. Moved implementation to the RunImpl
function object.
2018-04-27 11:32:27 -06:00
Li-Ta Lo
648b0decfc add installation of header files in CMakeLists.txt 2018-04-27 11:32:27 -06:00
Li-Ta Lo
d94f2cae37 Add ImageConnectivity worklet
ImageConnectivity worklet implements a parallel connected component
labeling algorithm for 2D structured grids/images. For each pixel,
it search for the pixel's 6 neighbors and classify them as the
same connected component if their corresponding "color" field have
the same value.
2018-04-27 11:32:27 -06:00
Kenneth Moreland
edc4c85fd9 Move Scatter from Worklet to Dispatcher
Previously, when a Worklet needed a scatter, the scatter object was
stored in the Worklet object. That was problematic because that means
the Scatter, which is a control object, was shoved into the execution
environment.

To prevent that, move the Scatter into the Dispatcher object. The
worklet still declares a ScatterType alias, but no longer has a
GetScatter method. Instead, the Dispatcher now takes a Scatter object in
its constructor. If using the default scatter (ScatterIdentity), the
default constructor is used. If using another type of Scatter that
requires data to set up its state, then the caller of the worklet needs
to provide that to the dispatcher. For convenience, worklets are
encouraged to have a MakeScatter method to help construct a proper
scatter object.
2018-04-27 00:43:51 -04:00
Robert Maynard
4b9a8143c8 Correct 'may be used uninitialized in this function' warnings in wavelets 2018-04-24 13:27:51 -04:00
ayenpure
5a843600dd Adding missing copyright information.
Adding copyright information to TemporalGridEvaluator which was missing earlier.
2018-04-23 17:05:11 -07:00
ayenpure
2d6d261b61 Fixing template errors for portability
Fixing template errors in integrators.
The code used to build locally, but fail on Kitware test machines.
Fixing templates as they were before any temporal advection changes.
2018-04-23 16:36:51 -07:00
ayenpure
2086655615 Fix CUDA failure in temporal particle advection
- Replacing the pure virtual method with CRTP
2018-04-22 23:46:08 -07:00
ayenpure
3134fef54b Bug fixes out of Particle Advection unit test
- PushOutOfDomain would loop over without exiting indefinately utilizing all max steps.
  It's supposed to execute only once the particle goes out of spatio-temporal boundary.
- Removing the check for the steamlines polyline points to be same as the maxSteps from
  the unit test, as if the particle has already taken some steps, then the polyline
  points written out will always be lower than the total number of steps taken by the
  current node.
2018-04-21 20:32:42 -07:00
ayenpure
617b8668c7 Fixing memory leak in Streamlines
Fixing memory leak introduced bacause of increamenting the num
of steps in the wrong place while generating streamlines
2018-04-20 13:48:54 -07:00
ayenpure
c53d6ec216 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into pathsurfaces 2018-04-18 22:18:34 -07:00
ayenpure
4cf9942d44 Updating temporal advection example
- renaming long directory name to something concise
- Adding Dave's Unit test for particle advection
- Fixing really trivial issues
2018-04-18 22:06:40 -07:00
ayenpure
faf8c8337a Adding Temporal Advection improvements
- Adding code to support taking short steps (minimize boundary errors)
- Adding time of advection to the particle from the Integrator
- API changes for TakeStep
	- TakeStep should only care about the maximum steps as it's a field on a Particle
	- The check for out of temporal and spatial bounds has been moved to the Worklet
- Changing some of the internal APIs for supporting these new features/fixes
- Changing inheritance in the Integrators class to be more obvious than something convoluted
2018-04-18 21:01:08 -07:00
Robert Maynard
84386f28eb Merge topic 'correct_maybe_uninitialized_warnings'
da45e81d Make sure that WaveletTransform doesn't emit maybe-uninitialized warnings
c33bf063 RK4Integrator now properly initializes all variables.
d2001fb5 Suppress strict overflow optimization warnings.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1152
2018-04-17 14:51:34 -04:00
Robert Maynard
da45e81d9b Make sure that WaveletTransform doesn't emit maybe-uninitialized warnings 2018-04-17 14:24:19 -04:00
Robert Maynard
c33bf063f4 RK4Integrator now properly initializes all variables.
Previously the RK4Integrator could compute velocity with uninitialized inputs.
2018-04-17 14:24:19 -04:00
Robert Maynard
d2001fb52e Suppress strict overflow optimization warnings.
This warning is emitted when the compiler performs an optimization, and wants
you to verify that the presumptions it is making are valid. For this case
we can correctly promise the compiler that the values will not overflow and
the optimizations are correct.
2018-04-17 11:48:39 -04:00
ayenpure
2230496459 Code cleansing with temporal particle advection
Bug Fixes in the UniformGridEvaluator
Added Temporal Grid Evaluator for Uniform Grid
Updated Integrator to add temporal integration
Changing the TakeStep method in Particles to only deal with max steps
ideally, particles should be unaware of spatio-temporal constrains
Updating the ParticleAdvectionWorklet file to handle out of spatio-temporal
issues.

Missing: Code to take small steps (AT_SPATIAL_BOUNDARY and AT_TEMPORAL_BOUNDARY).
2018-04-14 16:58:58 -07:00
ayenpure
2c316bc24c Adding comments to Streamlines TakeStep 2018-04-13 16:51:55 -07:00
Utkarsh Ayachit
7fbd020478 FieldHistogram: support using precomputed range
Updated FieldHistogram worklet to support executing the worklet using a
precomputed range. This will be needed for distributed and multiblock
use-cases.
2018-04-12 16:40:18 -04:00
Robert Maynard
73c05c10c7 Suppressions of __host__ warnings shouldn't trigger internal compile errors 2018-04-12 12:04:53 -04:00
Robert Maynard
5100e559c7 Suppress warnings about calling __host__ functions from CUDA 9.0 2018-04-12 10:31:19 -04:00
Robert Maynard
282c515ea8 Suppress warnings about calling __host__ functions from CUDA 8.0 2018-04-12 10:06:57 -04:00
Robert Maynard
8472b64e60 Suppress more CUDA host function from a host/device function warnings 2018-04-05 10:55:43 -04:00
Robert Maynard
cd333bf8dc Remove unneeded semicolon after closing parentheses on a some methods. 2018-04-05 10:55:12 -04:00
Robert Maynard
0d45c5cff2 Correct warnings found after disabling all warning when CUDA is enabled. 2018-04-04 11:00:12 -04:00
Robert Maynard
8808b41fbd Merge branch 'master' into vtk-m-cmake_refactor 2018-03-29 22:51:26 -04:00
Robert Maynard
944bc3c0d6 Introduce vtkm::cont::ColorTable replacing vtkm::rendering::ColorTable
The new and improved vtkm::cont::ColorTable provides a more feature complete
color table implementation that is modeled after
vtkDiscretizableColorTransferFunction. This class therefore supports different
color spaces ( rgb, lab, hsv, diverging ) and supports execution across all
device adapters.
2018-03-28 16:11:23 -04:00
ayenpure
077988aeb4 Adding working temporal interpolation 2018-03-23 00:49:32 -07:00
Kenneth Moreland
1fe7869211 Resurrect function to get face indices
Due to recent changes to remove static arrays that are not supported on
some devices, the function to return all the local point indices on a
face was removed. That left no way to get the structure of cell faces
short of pulling an internal data structure.

This change resurrects a function to get point indices for a face. The
interface for this method has necessarily changed, so I also changed the
corresponding function for getting edge indices.
2018-03-22 22:37:33 -06:00
ayenpure
8ae9c733e8 Adding temporal interpolation files 2018-03-22 18:15:39 -07:00
Kenneth Moreland
a4aa42c012 Avoid "weird" arrays in fields
In some of the tests there was a field that was using a counting array.
This uses an integer as the value type and has a special implicit
storage type. Currently, this is likely to cause problems whenever it
runs into a cast and call of a dynamic array. For now, let's avoid
these.

In the near future we should have expanded virtual method capabilities
that will make it possible to support these atypical arrays.
2018-03-21 13:35:02 -06:00
Robert Maynard
7c54125b66 Switch over from static const to static constexpr where possible. 2018-03-10 11:39:58 -05:00
Utkarsh Ayachit
66e356f7d9 Merge topic 'add-filters'
86bd81de streamline: handle different storage types for fields.
de4e840e enhance filter API
c255c0eb add `vtkm::cont::ConditionalCastAndCall`
54c2d234 Make it easier to iterator over blocks.
d1a59aad Fixes for CrossProduct and DotProduct.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1100
2018-03-10 09:24:35 -05:00
Matt Larsen
0d671bcb22 adding inverted clip unit tests 2018-03-09 13:51:28 -08:00
Matt Larsen
2daba82188 adding the ability to invert clips 2018-03-08 18:28:08 -08:00
Utkarsh Ayachit
86bd81de3f streamline: handle different storage types for fields.
this is required now that, in theory, streaminlines filter can be
executed treating the coordinate system as the vector field.
2018-03-07 13:42:23 -05:00
Utkarsh Ayachit
de4e840eae enhance filter API
Filters now support executing on a dataset to produce a result dataset
with automatic mapping of fields to the output dataset. Fields to map
can be selected using `vtkm::filter::FieldSelection` class, which provides
constructors to map all or no fields, along with a selection of fields.

This updates all tests to use the new filter API.
2018-03-07 13:42:23 -05:00
Li-Ta Lo
1a13324a9a Merge branch 'master' into connected_component 2018-03-06 16:23:43 -07:00
Li-Ta Lo
e058aaebd9 extend CellSetConnectivity to CellSetUniform and CellSetExplicit 2018-03-06 16:21:32 -07:00
Robert Maynard
dde7c76a9f Worklets can't be in anonymous namespace as CUDA 7.5 doesn't support those. 2018-02-26 16:42:00 -05:00
Robert Maynard
601a839d5d VTK-m uses static const/constexpr when supported ( so not on cuda 7.5 )
These changes now allow VTK-m to compile on CUDA 7.5 by using const arrays,
when compiling with CUDA 8+ support we upgrade to static const arrays, and
lastly when CUDA is disabled we fully elevate to static constexpr.
2018-02-26 16:41:29 -05:00
Robert Maynard
a60e378003 CUDA 7.5 doesn't like suppressing warning codes that don't exist
Newer versions of CUDA have no problem suppressing warning codes that don't
exist.
2018-02-26 16:37:57 -05:00
Robert Maynard
ff9dcc4750 Consistently mark variables as static const across all of vtk-m 2018-02-26 16:37:57 -05:00
Robert Maynard
ee69c7a4b7 Remove VS2013 workarounds from VTK-m. 2018-02-23 15:39:39 -05:00
Robert Maynard
e630ac5aa4 Merge branch 'master' into vtk-m-cmake_refactor 2018-02-23 14:52:00 -05:00
Robert Maynard
182f4707e7 vtkm prefers 'using' over typedef. 2018-02-23 10:47:20 -05:00
Robert Maynard
9bf14b7894 Correct warnings inside worklet::Clip when making array handles 2018-02-16 14:18:00 -05:00
Sujin Philip
f7f08d3db2 Update probe filter
In the code path for probing on to uniform points, the code to compute the points
inside a cell has been made more accurate.
2018-02-06 14:21:01 -05:00
Robert Maynard
d1c25ea127 Merge topic 'correct_scalars_to_colors_range_no_updating'
67e6a5c3 Make sure ScalarsToColors actually updates the Range it stores

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1079
2018-02-02 08:32:06 -05:00
Robert Maynard
67e6a5c36a Make sure ScalarsToColors actually updates the Range it stores 2018-02-01 10:28:38 -05:00
Robert Maynard
022c987182 Correct warnings and errors found with MSVC2017+CUDA9 2018-01-31 15:58:45 -05:00
Sujin Philip
9e466f8cd2 Merge topic 'add-probe'
34bae569 Add Probe worklet and filter
4cd306ea Fix a bug in CellLocator
cf1957ca Add make_VecFromPortalPermute

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1064
2018-01-30 15:08:49 -05:00
Sujin Philip
34bae5690d Add Probe worklet and filter 2018-01-30 10:43:18 -05:00
luz.paz
45239449a6 More typos
these need a little  more review.
2018-01-30 06:51:47 -05:00
luz.paz
80b11afa24 Misc. typos
Found via `codespell -q 3` via downstream VTK
2018-01-30 06:51:47 -05:00
Sujin Philip
b5f71644fe Add IsType to ArrayHandleVirtualCoordinates
Makes the interface compatible with DynamicArrayHandle.
2018-01-25 11:02:52 -05:00
Li-Ta Lo
8622a2423c Merge topic 'connected_component'
bdb9c37e update based on issues pointed out by Robert
a713a0d8 Generalize and documentation for DeviceAdapterAlgorithm::Transform
29232c49 Revert un-intended change to examples
7ef956a9 Merge branch 'master' into connected_component
a9ed1ecf add CMakeLists.txt for header files
ba3cba64 update copyright statements
aa96874e Merge branch 'connected_component' of gitlab.kitware.com:ollielo/vtk-m into connected_component
2f07119e Merge branch 'master' into connected_component
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !1044
2018-01-17 15:31:10 -05:00
Li-Ta Lo
bdb9c37ec4 update based on issues pointed out by Robert 2018-01-17 11:12:32 -07:00
Robert Maynard
5e0d992057 Suppress host/device warnings when building with cuda 9 2018-01-16 15:42:36 -05:00
Robert Maynard
4f239ed3b9 Correct casting warnings found with new cmake code 2018-01-16 15:42:36 -05:00
Robert Maynard
0660c67fef Merge branch 'master' into vtk-m-cmake_refactor 2018-01-16 15:42:28 -05:00
Robert Maynard
067dad41df Add ScalarsToColors worklet(s)
The ScalarsToColors is the first step in reproducing the color
capability that exists in VTK. The next step after this is to
provide a comparable lookup table.
2018-01-16 13:03:41 -05:00
Li-Ta Lo
7ef956a934 Merge branch 'master' into connected_component 2018-01-11 09:10:37 -07:00
Sujin Philip
70fcd1d1cc Update CoordinateSystem to use the Virtual Array 2018-01-10 10:19:19 -05:00
Robert Maynard
cda854501d Merge topic 'better_FloatingPointReturnType'
a9e64c4b FloatPointReturnType is float if 'T' is < 32bytes instead of being double.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Acked-by: Thomas Otahal <tjotaha@sandia.gov>
Merge-request: !1048
2018-01-08 15:42:18 -05:00
Robert Maynard
75b0efccc9 Correct casting warnings found with new cmake code 2018-01-08 14:00:58 -05:00
Robert Maynard
004bfe7b12 Prefer using existence of targets when looking for TBB/CUDA support 2018-01-08 14:00:57 -05:00
Robert Maynard
b2c03ad858 Unit_tests are built with the correct compiler when cuda is enabled.
Previously all the Unit_tests that shared source files would use cuda
once CUDA set the language on the file.
2018-01-08 14:00:57 -05:00
Kenneth Moreland
fe9594c1d1 Add hint to read source code for help
In trying to give error diagnostics with template definitions of invalid
types, the user encounters some pretty confusing error messages at
first. There is no way to get the compiler to give exactly the
diagnostics we want in a nice readable error message, so we are putting
some verbose instructions as comments in the code. However, a user might
not know to look at the source code since the error happens deep in an
unfamiliar (and complicated) class. Thus, add (yet another) error at the
front that gives a (hopefully) clear indication to look at the source
code for help in understanding the errors.
2018-01-08 10:53:44 -07:00
Kenneth Moreland
c3889a1a67 Give better error reporting when an Invoke parameter is wrong
When one of the parameters to DispatcherBase::Invoke is incorrect, you
get an error in a strange place. It is deep in a call stack using some
heavily templated types rather than where the Invoke is actually called.

Formerly, the code was structured to give a very obfuscated error
message. Try to make this easier on users by first adding helpful hints
in the code around where the error is to explain why the error occured
and helpful advice on how to track down the problem. Second, reconfigure
the static_assert so that the compiler gives a readable error message.
Third, add some auxiliary error messages that provide additional
information about the types and classes involved in the error.
2018-01-08 10:53:43 -07:00
Matthew Letter
c3737c728e Merge branch 'master' into increase-worklet-arguments 2018-01-04 12:07:38 -07:00
Matthew Letter
d9c51d650d increased the number of arguments to worklets
increase the number of arguments to worklets that we support to 10 from 20.
2018-01-04 12:06:16 -07:00
Robert Maynard
a9e64c4ba8 FloatPointReturnType is float if 'T' is < 32bytes instead of being double.
Previously FloatPointReturnType would always be double for types that
are not float, which caused Int8/Int16 types to promote to double instead
of float.
2018-01-04 13:22:31 -05:00
Li-Ta Lo
a9ed1ecfcf add CMakeLists.txt for header files 2018-01-03 14:52:07 -07:00
Li-Ta Lo
ba3cba64e6 update copyright statements 2018-01-03 14:29:06 -07:00
Li-Ta Lo
aa96874e82 Merge branch 'connected_component' of gitlab.kitware.com:ollielo/vtk-m into connected_component 2018-01-03 11:30:28 -07:00
Li-Ta Lo
746c98e6c8 fix merge conflict with master branch, update to control signature 2018-01-03 11:27:13 -07:00
Li-Ta Lo
2a9439ab1e Merge branch 'master' into connected_component 2018-01-02 17:59:19 -07:00