Commit Graph

10966 Commits

Author SHA1 Message Date
Kenneth Moreland
2631e5561f Split up the particle advection/streamline test
The test for particle advection filters was one large test that tested 3
versions --- advection, streamlines, and pathlines --- with each tested
for a variety of conditions including asynchronous communication, number
of blocks, ghost cells, etc. This was causing the test to take a while
and sometimes time out. (It would also sometimes seg fault, which I hope
is related.) To attempt to fix this problem, break up this test into
pieces so that each piece takes a shorter amount of time.

Because these tests share most of their implementation (which is why
they were grouped together in the first place) the common code is placed
in a source file of shared implementation. To support this I also added a
way to mark a source file to `vtkm_unit_tests` as a source file that does
not contain its own test. Normally you would just compile all of the
tests together, select each with command line arguments, and use
duplicate `add_tests` for each argument. But that is not how
`vtkm_unit_tests` works, and it would be too hard to make that change.
2023-05-24 15:05:09 -06:00
Kenneth Moreland
00cd139be8 Merge topic 'cast-and-call-variable-vec'
c802adcbe Add support for CastAndCallVariableVecField in FilterField

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3064
2023-05-22 14:58:56 -04:00
Kenneth Moreland
c802adcbeb Add support for CastAndCallVariableVecField in FilterField
The `FilterField` class provides convenience functions for subclasses to
determine the `ArrayHandle` type for scalar and vector fields. However, you
needed to know the specific size of vectors. For filters that support an
input field of any type, a new form, `CastAndCallVariableVecField` has been
added. This calls the underlying functor with an `ArrayHandleRecombineVec`
of the appropriate component type.

The `CastAndaCallVariableVecField` method also reduces the number of
instances created by having a float fallback for any component type that
does not satisfy the field types.
2023-05-22 10:14:59 -06:00
Kenneth Moreland
3fe452662b Merge topic 'read-any-vec-size'
bb9e7a0d6 Handle any Vec size in VTKDataSetReader

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3061
2023-05-22 10:57:17 -04:00
Kenneth Moreland
bb9e7a0d6f Handle any Vec size in VTKDataSetReader
The legacy VTK file reader previously only supported a specific set of Vec
lengths (i.e., 1, 2, 3, 4, 6, and 9). This is because a basic array
handle has to have the vec length compiled in. However, the new
`ArrayHandleRuntimeVec` feature is capable of reading in any vec-length
and can be leveraged to read in arbitrarily sized vectors in field
arrays.
2023-05-22 06:19:11 -06:00
Kenneth Moreland
2cc2205218 Merge topic 'composite-vectors-any-size'
b59580bb8 Allow CompositeVectors filter to build any size vector
a8b4e5a62 Add GetNumberOfActiveFields method to FilterField

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3063
2023-05-18 16:28:39 -04:00
Vicente Bolea
84493e0dea Merge topic 'perftest-fixes'
ab2792b78 perftest: no mark disabled upload steps in MR

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3045
2023-05-17 17:04:30 -04:00
Kenneth Moreland
fb8e3d7ce7 Merge topic 'runtime-vec-info'
5bdd3c7bc Move ArrayHandleRuntimeVec metadata to a separate class

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3062
2023-05-17 15:45:20 -04:00
Li-Ta Lo
fdf7aaece7 Merge topic 'rendering_cpp_cleanup'
ee9c78ca9 Merge branch 'master' into rendering_cpp_cleanup
d05025ce8 simplify comment
066e6a696 I think this is the proper way doing PIMPL
6e75be33e unique_ptr know if itself is valid
50a9efc2f use rvalue ref for parameter
61c002072 cleanup C++ usage, use unique_ptr for PIMPL

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3057
2023-05-17 11:18:39 -04:00
Kenneth Moreland
ae908c7129 Merge topic 'fix-iterator-operator'
09c0139b4 Fix operator for IteratorFromArrayPortal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3035
2023-05-16 19:03:22 -04:00
Gunther Weber
149a6c3a29 Merge topic 'release-deadlock'
58fc4d826 Fix potential deadlock in distributed contour tree

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3024
2023-05-16 17:02:28 -04:00
Vicente Adolfo Bolea Sanchez
ab2792b78a perftest: no mark disabled upload steps in MR
- Removed the PerformanceTestCleanUp, not needed since we only do a
  git fetch once.
2023-05-16 16:44:53 -04:00
Kenneth Moreland
b59580bb82 Allow CompositeVectors filter to build any size vector
Using the new `ArrayHandleRuntimeVec` feature, we can construct an array
with any vec sized value.
2023-05-16 12:39:40 -06:00
Kenneth Moreland
5bdd3c7bc2 Move ArrayHandleRuntimeVec metadata to a separate class
Originally, the metadata structure used by the `ArrayHandleRuntimeVec`
storage was a nested class of its `Storage`. But the `Storage` is
templated on the component type, and the metadata object is the same
regardless. In addition to the typical minor issue of having the
compiler create several identical classes, this caused problems when
pulling arrays from equivalent but technically different C types (for
example, `long` is the same as either `int` or `long long`).
2023-05-16 12:39:40 -06:00
Kenneth Moreland
a8b4e5a629 Add GetNumberOfActiveFields method to FilterField 2023-05-16 12:39:40 -06:00
Kenneth Moreland
09c0139b4e Fix operator for IteratorFromArrayPortal
There was an error in `operator-=` for `IteratorFromArrayPortal` that went
by unnoticed. The operator is fixed and regression tests for the operators
has been added.
2023-05-16 09:31:17 -06:00
Li-Ta Lo
ee9c78ca94 Merge branch 'master' into rendering_cpp_cleanup 2023-05-16 09:25:58 -06:00
Vicente Bolea
15133b6fba Merge topic 'fixup-cuda-ci-bug'
7c0f40fe1 ci: setup CUDA arch before sccache

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3060
2023-05-16 11:20:31 -04:00
Vicente Adolfo Bolea Sanchez
7c0f40fe18 ci: setup CUDA arch before sccache 2023-05-15 19:50:54 -04:00
Kenneth Moreland
8ef2c588a0 Merge topic 'unknown-runtime-vec-new-instance'
3c1afe53d Fix new instances of ArrayHandleRuntimeVec in UnknownArrayHandle

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Li-Ta Lo <ollie@lanl.gov>
Merge-request: !3058
2023-05-15 18:58:04 -04:00
Li-Ta Lo
d05025ce85 simplify comment 2023-05-15 13:05:06 -06:00
Kenneth Moreland
f9ddba8d5c Merge topic 'contour-test-warning'
44650c2e4 Fix unused variable in contour test

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Louis Gombert <louis.gombert@kitware.com>
Merge-request: !3059
2023-05-14 00:44:06 -04:00
Kenneth Moreland
3c1afe53dc Fix new instances of ArrayHandleRuntimeVec in UnknownArrayHandle
`UnknownArrayHandle` is supposed to treat `ArrayHandleRuntimeVec` the
same as `ArrayHandleBasic`. However, the `NewInstance` methods were
failing because they need custom handling of the vec size.
2023-05-12 13:11:23 -06:00
Kenneth Moreland
44650c2e48 Fix unused variable in contour test 2023-05-12 12:00:17 -06:00
Vicente Bolea
70f8fee958 Merge topic 'warnings-win-exception'
83b1cb9ec ci,warnings: add configure warning exceptions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3055
2023-05-12 11:58:52 -04:00
Louis Gombert
57abd08684 Merge topic 'fe-structured'
1538fc02f Implement Flying Edges for all structured CellSets

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3056
2023-05-12 08:06:40 -04:00
Vicente Adolfo Bolea Sanchez
83b1cb9ecd ci,warnings: add configure warning exceptions 2023-05-11 19:17:45 -04:00
Li-Ta Lo
066e6a6969 I think this is the proper way doing PIMPL 2023-05-10 20:05:34 -06:00
Li-Ta Lo
6e75be33ec unique_ptr know if itself is valid 2023-05-10 17:31:50 -06:00
Li-Ta Lo
50a9efc2f5 use rvalue ref for parameter 2023-05-10 17:28:30 -06:00
Li-Ta Lo
61c002072f cleanup C++ usage, use unique_ptr for PIMPL 2023-05-10 10:17:14 -06:00
Louis Gombert
1538fc02fb Implement Flying Edges for all structured CellSets
In addition to  using uniform coordinates, the ContourFlyingEdges filter can now process any type of coordinate system, making the  filter use Flying Edges in more cases
2023-05-10 15:20:53 +02:00
Louis Gombert
a36415ff2b Merge topic 'contour-split'
dcdda3065 Split flying edges and marching cells into separate filters

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3050
2023-05-10 03:34:20 -04:00
Li-Ta Lo
48393aa495 Merge topic 'rendering_cpp_cleanup'
0c9573e8d use mutable instead of const_cast, remove virtual

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3054
2023-05-09 16:09:27 -04:00
Li-Ta Lo
0c9573e8d3 use mutable instead of const_cast, remove virtual 2023-05-08 09:29:27 -06:00
Vicente Bolea
d90fcefab4 Merge topic 'crusher-update-rocm'
a3fcc3180 ci,crusher: updating to rocm 5.4

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Vicente Bolea <vicente.bolea@kitware.com>
Merge-request: !3049
2023-05-04 21:02:25 -04:00
Vicente Adolfo Bolea Sanchez
a3fcc3180f ci,crusher: updating to rocm 5.4 2023-05-04 19:50:32 -04:00
Li-Ta Lo
86ba9ff31a Merge topic 'unify_uniform_locators'
527940871 revert renaming this to self
58bbc0965 disable AxisAnnontation in unit tests
5787852a8 use Invoker instead of Dispatcher
eab63f68a revert change to CMakeList.txt
3045deb66 rename Adopter -> Adapter
9cdc16c9a fixed warning about float
2d3580636 add baseline image for volume renderer
8c324f824 Vec3f for param
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3048
2023-05-04 11:18:04 -04:00
Louis Gombert
dcdda3065a Split flying edges and marching cells into separate filters
In order to compile the contour filter more efficiently, we split the contour filter into two separate translation units, corresponding to the new filters ContourFlyingEdges and ContourMarchingCells. The API for Contour filter is left totally unchanged, and tries to use flying edges if the dataset is structured and uniform.
All three contour filters inherit from the `AbstractContour` class, providing utility methods used in the implementations.
2023-05-04 15:20:20 +02:00
Li-Ta Lo
5279408711 revert renaming this to self 2023-05-03 12:35:53 -06:00
Li-Ta Lo
58bbc0965f disable AxisAnnontation in unit tests 2023-05-03 07:14:41 -06:00
Vicente Bolea
13a68cc86b Merge topic 'add-warning-icon-pipelines'
1a0ca75fc ci: Add warning icons in GL pipelines
af06da04f ci,cuda: parametrize arch for diff cmake vers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <morelandkd@ornl.gov>
Merge-request: !3051
2023-05-02 16:03:18 -04:00
Vicente Adolfo Bolea Sanchez
1a0ca75fc8 ci: Add warning icons in GL pipelines 2023-05-02 14:31:36 -04:00
Vicente Adolfo Bolea Sanchez
af06da04fd ci,cuda: parametrize arch for diff cmake vers 2023-05-02 14:31:36 -04:00
Li-Ta Lo
5787852a8e use Invoker instead of Dispatcher 2023-05-01 14:41:16 -06:00
Dave Pugmire
8651d9f284 Merge topic 'add_get_block_to_boundsmap'
b43763429 Kick the dashboards.....
f3279b0f5 Merge branch 'add_get_block_to_boundsmap' of https://gitlab.kitware.com/dpugmire/vtk-m into add_get_block_to_boundsmap
1ce2922d1 Remove warning. Add BoundsMap methods.
b9a684fda Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into add_get_block_to_boundsmap
a4b4bf656 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m
086f99e54 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into add_get_block_to_boundsmap
166f5d405 Kick the dashboards.....
5fba6382b Kick the dashboards..........
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !3041
2023-05-01 15:15:48 -04:00
Dave Pugmire
b437634295 Kick the dashboards..... 2023-05-01 14:41:32 -04:00
Dave Pugmire
f3279b0f57 Merge branch 'add_get_block_to_boundsmap' of https://gitlab.kitware.com/dpugmire/vtk-m into add_get_block_to_boundsmap 2023-05-01 13:05:21 -04:00
Dave Pugmire
1ce2922d15 Remove warning. Add BoundsMap methods.
Fix compiler warnings......

Kick the dashboards..........

Kick the dashboards.....

use lambda instead of functor, remove unused code

ArrayHandle::StorageType should be public

StorageType is public in vtkm::cont::ArrayHandle, but some subclasses  
re-declare it as private. Having it public provides a convenient way to  
get the storage type of an ArrayHandle, otherwise it is quite verbose.

Addresses: #314

Tetrahedralize and Triangulate filters check if input is already triangulated

Previously, tetrahedralize/triangulate would blindly convert all the cells to tetrahedra/triangles, even when they were already. Now, the dataset is directly returned if the CellSet is a CellSetSingleType of tetras/triangles, and no further processing is done in the worklets for CellSetExplicit when all shapes are tetras or triangles.

ci,crusher: changed fs to orion

ci,osx,macos: fix value of GIT_CLONE_PATH
2023-05-01 13:05:11 -04:00
Dave Pugmire
b9a684fda1 Merge branch 'master' of https://gitlab.kitware.com/vtk/vtk-m into add_get_block_to_boundsmap 2023-05-01 13:04:10 -04:00