Commit Graph

11146 Commits

Author SHA1 Message Date
Kenneth Moreland
7ccf62c797 Merge topic 'external-face-miss-pair'
194ddb5b4 Fix error in checking paired faces in ExternalFaces filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3097
2023-07-04 07:59:37 -04:00
Kenneth Moreland
194ddb5b41 Fix error in checking paired faces in ExternalFaces filter
The `ExternalFaces` filter uses hash codes to find duplicate (i.e.
internal) faces. The issue with hash codes is that you have to deal with
unique entries that have identical hashes. The worklet to count how many
unique, unmatched faces were associated with each hash code was correct.
However, the code to then grab the ith unique face in a hash was wrong.
This has been fixed.

Fixes #789
2023-07-03 18:56:42 -04:00
Zhe Wang
f9d88bc3c5 Merge topic 'adding_hist_sampling'
2a1ac12fe add histsampling filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3083
2023-06-30 12:25:15 -04:00
Dave Pugmire
56588b6244 Merge topic 'getActiveParticles_performance'
c109d3dde kick the dashboards.
9acb482a2 init maxnumsteps
ba3571f74 More efficient GetActiveParticles()
064501214 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m
ff4cc5e00 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m
51435f227 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3091
2023-06-30 11:33:44 -04:00
Kenneth Moreland
faced47c65 Merge topic 'kokkos-atomics-fix'
284d479ee Switch Kokkos atomic functions to use desul library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Mark Bolstad <mbolsta@sandia.gov>
Merge-request: !3092
2023-06-30 08:55:48 -04:00
Jay
2a1ac12fe2 add histsampling filter 2023-06-30 03:57:49 +00:00
Dave Pugmire
c109d3dde7 kick the dashboards. 2023-06-29 08:25:13 -04:00
Kenneth Moreland
84dc806b8c Merge topic 'convert-to-point-cloud'
8b6c5250d Add a ConvertToPointCloud filter

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3088
2023-06-28 14:41:26 -04:00
Mark Bolstad
284d479ee7 Switch Kokkos atomic functions to use desul library
Kokkos 4 switches from their interal library based off of desul to using desul directly.
This removes VTK-m's dependency on the Kokkos internal implementation (Kokkos::Impl) to
using desul directly.
2023-06-28 14:34:54 -04:00
Kenneth Moreland
8b6c5250d2 Add a ConvertToPointCloud filter
This filter takes a `DataSet` and returns a point cloud representation that
has a vertex cell associated with each point in it. This is useful for
filling in a `CellSet` for data that has points but no cells. It is also
useful for operations in which you want to throw away the cell geometry and
operate on the data as a collection of disparate points.
2023-06-28 12:38:49 -04:00
Dave Pugmire
9acb482a26 init maxnumsteps 2023-06-28 08:00:31 -04:00
Dave Pugmire
ba3571f740 More efficient GetActiveParticles() 2023-06-28 07:58:22 -04:00
Kenneth Moreland
99c548ef52 Merge topic 'marching-cubes-instantiations'
db2dbbbcc Simplify MarchingCells execute method
0ee495f31 Split the compilation of ContourMarchingCells into instantiations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3089
2023-06-27 10:09:26 -04:00
Kenneth Moreland
db2dbbbccb Simplify MarchingCells execute method
The output arrays are always basic arrays containing `vtkm::Vec3f`, so
we don't need to template those arguments.
2023-06-27 09:07:44 -04:00
Kenneth Moreland
0ee495f310 Split the compilation of ContourMarchingCells into instantiations
Although the contour filter was recently divided into 2 filters, flying
edges and marching cubes, the marching cubes version still had many
conditions and was the file that took the longest to compile on Frontier.
To help speed up parallel compiles and prevent a single run of a
compiler from being overwhelmed, the compilation of all the marching
cubes conditions has been split up using instantiations.
2023-06-26 14:07:47 -04:00
Dave Pugmire
064501214a Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m 2023-06-23 13:49:59 -04:00
Kenneth Moreland
f67a9f29bf Merge topic 'add-point-index-start-unit-test-to-testing-extract-stuctured'
8f4d5fdf8 Remove some unneeded test comments and debug code
7bea5413c Revert from VOIIsGlobal to IncludeOffset. Add comment about deprecation reasoning.
523c8f3f2 Add test whether GlobalPointDimensions are preserved
84e719ae1 Set GlobalPointIndexStart correctly, copy GlobalPointDimensions
e55b700f7 Deprecate SetIncludeOffset and rename to SetVOIIsGlobal
e013ad126 Add test for GlobalPointIndexStart to TestingExtractStructured

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Abdelilah Essiari <aessiari@lbl.gov>
Merge-request: !3086
2023-06-22 08:20:32 -04:00
Kenneth Moreland
8f4d5fdf80 Remove some unneeded test comments and debug code 2023-06-21 17:33:05 -04:00
Gunther H. Weber
7bea5413cf Revert from VOIIsGlobal to IncludeOffset. Add comment about deprecation reasoning. 2023-06-21 17:29:01 -04:00
Gunther H. Weber
523c8f3f21 Add test whether GlobalPointDimensions are preserved 2023-06-21 17:29:01 -04:00
Gunther H. Weber
84e719ae17 Set GlobalPointIndexStart correctly, copy GlobalPointDimensions 2023-06-21 17:29:00 -04:00
Gunther H. Weber
e55b700f75 Deprecate SetIncludeOffset and rename to SetVOIIsGlobal 2023-06-21 17:29:00 -04:00
Gunther H. Weber
e013ad126f Add test for GlobalPointIndexStart to TestingExtractStructured 2023-06-21 17:29:00 -04:00
Vicente Bolea
bce19a2e4c Merge topic 'update-diy'
188e5080b Merge branch 'upstream-diy' into update-diy
12b45d864 diy 2023-06-16 (3ee23f39)
1bea838be diy: set diy version to latest for/vtk-m
9c0b16414 remove gcc13 warning
d907d832a CI,opensuse: added sles build with gcc13

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3084
2023-06-21 15:01:36 -04:00
Sujin Philip
b4b45495c6 Merge topic 'arrayhandle-explicit-constructors'
fc9077e0c Mark ArrayHandle constructors taking buffers, as explicit

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3076
2023-06-21 14:59:35 -04:00
Sujin Philip
fc9077e0c5 Mark ArrayHandle constructors taking buffers, as explicit
This resolves a compiler ambiguity I hit during development.
In my case, I created an `ArrayHandleDecorator` with one of the arrays being
an `ArrayHandleTransform`. The ambiguity occurs in function
`DecoratorStorageTraits<...>::BuffersToArray`, here an `ArrayHandleTransform`
is constructed using buffers (`std::vector<vtkm::cont::internal::Buffer>`)

This constructor is not defined for `ArrayHandleTransform`, but it's defined for
its superclass (`vtkm::cont::ArrayHandle`). `ArrayHandleTransform` does have a
non-explicit constructor that takes the array to be transformed and the
transform-functor as parameters, where the later has a default value.
This produces the following ambiguous options for the compiler:

1. Create a "to-be-transformed" ArrayHandle instance using the buffers, call
   the `ArrayHandleTransform` constructor with this array with the defaulted
   functor parameter.
2. Create the superclass instance using the buffer and call the
  `ArrayHandleTransform` constructor that takes the superclass.

In this situation, option 2 is the correct choice.

The ambiguity is resolved by marking the constructors that take
buffers as explicit. These constructors are also added for the
derived classess via the `VTK_M_ARRAY_HANDLE_SUBCLASS_IMPL` macro.
2023-06-21 13:50:33 -04:00
Vicente Adolfo Bolea Sanchez
188e5080bd Merge branch 'upstream-diy' into update-diy
# By Diy Upstream
* upstream-diy:
  diy 2023-06-16 (3ee23f39)
2023-06-19 20:07:20 -04:00
Diy Upstream
12b45d864b diy 2023-06-16 (3ee23f39)
Code extracted from:

    https://gitlab.kitware.com/third-party/diy2.git

at commit 3ee23f39193a00e4b601b65bb970d0631eec1662 (for/vtk-m-20230616-g40ea01f9).
2023-06-19 20:07:20 -04:00
Vicente Adolfo Bolea Sanchez
1bea838be9 diy: set diy version to latest for/vtk-m 2023-06-19 20:06:59 -04:00
Vicente Adolfo Bolea Sanchez
9c0b16414b remove gcc13 warning 2023-06-19 20:06:59 -04:00
Vicente Adolfo Bolea Sanchez
d907d832a3 CI,opensuse: added sles build with gcc13 2023-06-19 20:06:59 -04:00
Kenneth Moreland
845ddd6572 Merge topic 'index-from-boundary-state'
a1e8d029c Get the 3D index from a BoundaryState in WorkletPointNeighborhood

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3080
2023-06-19 15:14:32 -04:00
Kenneth Moreland
a1e8d029c5 Get the 3D index from a BoundaryState in WorkletPointNeighborhood
There are occasions when you need a worklet to opeate on 2D or 3D
indices. Most worklets operate on 1D indices, which requires recomputing
the 3D index in each worklet instance. A workaround is to use a worklet
that does a 3D scheduling and pull the working index from that.

The problem was that there was no easy way to get this 3D index. To
provide this option, a feature was added to the `BoundaryState` class
that can be provided by `WorkletPointNeighborhood`.

Thus, to get a 3D index in a worklet, use the
`WorkletPointNeighborhood`, add `Boundary` as an argument to the
`ExecutionSignature`, and then call `GetCenterIndex` on the
`BoundaryState` object passed to the worklet operator.
2023-06-19 10:29:18 -06:00
Kenneth Moreland
05ff345b1f Merge topic 'array-range-instantiations'
46a613d18 Speed up compilation of ArrayRangeCompute.cxx

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3079
2023-06-19 12:22:17 -04:00
Li-Ta Lo
e5c6a39172 Merge topic 'rendering_cpp_cleanup'
362efb637 try to surpress warning for window
3f680a5be Merge branch 'master' into rendering_cpp_cleanup
7bbda42fe clean up Annontations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3081
2023-06-19 11:19:27 -04:00
Kenneth Moreland
46a613d183 Speed up compilation of ArrayRangeCompute.cxx
The file `ArrayRangeCompute.cxx` was taking a long time to compile with
some device compilers. This is because it precompiles the range computation
for many types of array structures. It thus compiled the same operation
many times over.

The new implementation compiles just as many cases. However, the
compilation is split into many different translation units using the
instantiations feature of VTK-m's configuration. Although this rarely
reduces the overall CPU time spent during compiling, it prevents parallel
compiles from waiting for this one build to complete. It also avoids
potential issues with compilers running out of resources as it tries to
build a monolithic file.
2023-06-19 08:37:15 -06:00
Vicente Bolea
017a9e3b48 Merge topic 'fix-lfs-ascent'
cb0f80698 ci,ascent: disable git-lfs pre-push hook

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3085
2023-06-15 18:08:09 -04:00
Vicente Adolfo Bolea Sanchez
cb0f806988 ci,ascent: disable git-lfs pre-push hook 2023-06-15 17:41:14 -04:00
Li-Ta Lo
362efb637c try to surpress warning for window 2023-06-14 10:04:43 -06:00
Li-Ta Lo
3f680a5be3 Merge branch 'master' into rendering_cpp_cleanup 2023-06-12 14:03:26 -06:00
Li-Ta Lo
7bbda42fe5 clean up Annontations 2023-06-12 14:02:47 -06:00
Kenneth Moreland
bde9c9b8a3 Merge topic 'flat-logical-convert-names'
29c96a24f Rename structured connectivity index conversion methods

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3075
2023-06-09 11:03:54 -04:00
Li-Ta Lo
75d0dd9bf8 Merge topic 'rendering_cpp_cleanup'
c8caecfef try to supress warning on windows
85b4b18fc properly call make_unique
10bcf618f non-virtual color table annotations

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3077
2023-06-07 17:59:53 -04:00
Li-Ta Lo
c8caecfefc try to supress warning on windows 2023-06-05 13:08:38 -06:00
Kenneth Moreland
7488ad731d Merge topic 'compute-moments-any-vec-size'
4064a3bd0 Allow ComputeMoments to operate on any scalar field

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3065
2023-06-05 14:42:20 -04:00
Li-Ta Lo
85b4b18fca properly call make_unique 2023-06-05 11:20:49 -06:00
Li-Ta Lo
10bcf618f6 non-virtual color table annotations 2023-06-05 09:05:53 -06:00
Kenneth Moreland
4064a3bd06 Allow ComputeMoments to operate on any scalar field
Previously, the `ComputeMoments` filter only operated on a finite set of
array types as its input field. This included a prescribed list of `Vec`
sizes for the input. The filter has been updated to use more generic
interfaces to the field's array (and float fallback) to enable the
computation of moments on any type of scalar field.
2023-06-05 08:44:03 -04:00
Roxana Bujack
ddada34223 Merge topic 'addMomentsTest'
8a44ea4a9 adapt pixel wrongnes ratio
47441e841 add render test for moments

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3070
2023-06-05 08:34:19 -04:00
Kenneth Moreland
29c96a24fa Rename structured connectivity index conversion methods
The structured connectivity classes are templated on two tags to
determine what 2 incident topological elements are being accessed. Back
in the day, these were called the "from" elements and "to" elements, as
taken from VTK filter names like `PointDataToCellData`. However, these
names were found to be very confusion, and after much debate they have
been renamed to the visit element type and the incident element type.
Meaning that a worklet is "visiting" elements of a particular type (such
as visiting each cell) and can access "incident" elements of a
particular type (such as the points incident on the cell).

I found a few methods converting flat and logical indices using the old,
confusing from/to convention. This changes them to the new convention.
2023-06-02 15:31:24 -04:00