Commit Graph

5712 Commits

Author SHA1 Message Date
NAThompson
755137a822 Particle advection tests with file. 2020-06-13 10:58:45 -04:00
Nick Thompson
da57431d9c Merge topic 'demangle_in_print_summary'
b3cb8e834 Nuke the ostream overload.
b55ce7369 Demangle symbols in PrintSummary.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2137
2020-06-12 20:07:10 -04:00
Nick Thompson
1015d33330 Merge topic 'silence_gcc10'
97a8c61b6 Don't silence the warning on clang.
bae0a3724 Code review suggestions.
dec4abf42 Silence spurious gcc-10 warning.

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2135
2020-06-12 20:04:36 -04:00
NAThompson
97a8c61b6c Don't silence the warning on clang. 2020-06-12 16:29:55 -04:00
NAThompson
b3cb8e834c Nuke the ostream overload. 2020-06-12 16:07:16 -04:00
NAThompson
b55ce7369e Demangle symbols in PrintSummary. 2020-06-12 15:23:16 -04:00
NAThompson
bae0a3724a Code review suggestions. 2020-06-12 14:29:09 -04:00
Oliver Ruebel
66c96a983f Add BRACT for distributed contour tree computation
This merge request is Phase 1 of several to implement the distributed parallel
contour tree in VTKm. This merge requests adds the base outline for the
algorithm. The implementation of the details of the algorithm in the
BoundaryRestrictedAugmentedContourTree.h is currently still missing.
However, these will require a substantial (~3000) lines of additional code.
The goal is to stage the integration process across merge requests to make
the review process simpler.
2020-06-12 11:50:01 -06:00
NAThompson
dec4abf421 Silence spurious gcc-10 warning. 2020-06-12 13:28:25 -04:00
Kenneth Moreland
22f227a91e Merge topic 'ordered-async-access'
de3bda373 Use deque instead of list for ArrayHandle queue
498d44548 Pass Token::Reference by value
c32c9e8e8 Fix deadlock when changing device during read
99e14ab8a Add proper enqueuing of Tokens for ArrayHandle

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2130
2020-06-11 21:55:27 -04:00
Kenneth Moreland
de3bda3738 Use deque instead of list for ArrayHandle queue 2020-06-11 15:47:41 -06:00
Kenneth Moreland
498d445483 Pass Token::Reference by value
There is no point in passing Token::Reference by reference since (being
just a simple reference itself) it is no larger than a pointer.
2020-06-11 11:51:42 -06:00
Matt Larsen
a3b8525ef9 Merge topic 'fix/multi_plots'
62ef51325 fix bug that zero'd color buffers

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sudhanshu Sane <ssane@cs.uoregon.edu>
Acked-by: James Kress <james@jameskress.com>
Merge-request: !2132
2020-06-11 09:51:44 -04:00
Robert Maynard
0fa2d5e9af Merge topic 'update_demo_code'
16e04db15 FlyingEdges: Handle when pass 1 generates no intersections
8ebea33c7 FlyingEdges: Handle when a dimensions size is <= 3
60eff58bd Correct warning in TransferToOpenGL found by the examples

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2125
2020-06-11 09:40:03 -04:00
Li-Ta Lo
c04b8440eb Merge topic 'uniform_real'
c0dee7402 make it explicit that we are using 64-bit unsigned integer in bit op
34f350588 Added changelog
e9f584a91 ArrayHandleRandomUniformReal

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2116
2020-06-11 08:41:38 -04:00
Robert Maynard
16e04db157 FlyingEdges: Handle when pass 1 generates no intersections
Previously if pass 1 generated no intersections, pass 2 would
incorrectly generate no intersections resulting in an empty
dataset.
2020-06-11 08:32:28 -04:00
Matt Larsen
62ef513257 fix bug that zero'd color buffers 2020-06-10 16:02:21 -07:00
Robert Maynard
8ebea33c7e FlyingEdges: Handle when a dimensions size is <= 3
Previously if any axis <= 3, we would incorrectly generate
triangles on the boundary.
2020-06-10 12:33:03 -04:00
Robert Maynard
60eff58bdf Correct warning in TransferToOpenGL found by the examples 2020-06-09 13:34:33 -04:00
Sujin Philip
b7d0c94f1b Merge topic 'diy-mpi-nompi'
934f085e0 Build diy as a library
f0a37ac6a Merge branch 'upstream-diy' into diy-mpi-nompi
7687aabf8 diy 2020-06-05 (b62915aa)
6ca2b9f87 Point to new version of Diy

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2123
2020-06-08 21:25:54 -04:00
Kenneth Moreland
c32c9e8e8d Fix deadlock when changing device during read
Because ArrayHandle currently only supports one device at a time, it is
possible that a `PrepareForInput` might actually need to wait for write
access so that it could move the data between devices. However, we don't
want the `Token` to be attached for writing because that could block
other read operations.

To get around this, add a hack to WaitToWrite to allow it to attach for
reading instead of writing.
2020-06-08 18:15:13 -06:00
Kenneth Moreland
99e14ab8a6 Add proper enqueuing of Tokens for ArrayHandle
An issue that was identified for the thread safety of `ArrayHandle` is
that if several threads are waiting to use an `ArrayHandle`, there might
be an expectation of the order in which the operations happen. For
example, if one thread is modifying the contents of an `ArrayHandle` and
another is reading those results, we would need the first one to start
before the second one.

To solve this, a queue is added to `ArrayHandle` such that when waiting
to read or write an `ArrayHandle` the `Token` has to be at the top of
the queue in addition to other requirements being met.

Additionally, an `Enqueue` method is added to add a `Token` to the queue
without blocking. This allows a control thread to queue the access and
then spawn a thread where the actual work will be done. As long as
everything is enqueued on the main thread, the operations will happen in
the expected order.
2020-06-08 16:49:02 -06:00
Sujin Philip
934f085e09 Build diy as a library
Support both mpi and nompi versions simultaneously.
2020-06-08 15:57:51 -05:00
Sujin Philip
f0a37ac6aa Merge branch 'upstream-diy' into diy-mpi-nompi
* upstream-diy:
  diy 2020-06-05 (b62915aa)
2020-06-08 15:55:58 -05:00
Sujin Philip
6ca2b9f877 Point to new version of Diy 2020-06-08 15:55:38 -05:00
Matt Larsen
4cb94e7fc1 Merge topic 'respect_max_distance'
ce3a64b41 fix comparison
ab6bb14d3 Merge branch 'respect_max_distance' of gitlab.kitware.com:mclarsen/vtk-m into respect_max_distance
a6ed41027 use bounds based epsilon for tiny meshes
59775c4eb respect ray max distance

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Sudhanshu Sane <ssane@cs.uoregon.edu>
Merge-request: !2129
2020-06-08 15:43:52 -04:00
Robert Maynard
748f8f8c30 Correct flying edge cell-id mapping 2020-06-08 10:01:04 -04:00
Matt Larsen
ce3a64b412 fix comparison 2020-06-06 18:00:42 -07:00
Matt Larsen
a6ed41027e use bounds based epsilon for tiny meshes 2020-06-06 17:56:25 -07:00
Matt Larsen
59775c4eba respect ray max distance 2020-06-06 15:39:25 -07:00
Kenneth Moreland
7be44c847f Enable setting invalid value in probe filter
Initially, the probe filter would simply not set a value if a sample was
outside the input `DataSet`. This is not great as the memory could be
left uninitalized and lead to unpredictable results. The testing
compared these invalid results to 0, which seemed to work but is
probably unstable.

This was partially fixed by a previous change that consolidated to
mapping of cell data with a general routine that permuted data. However,
the fix did not extend to point data in the input, and it was not
possible to specify a particular invalid value.

This change specifically updates the probe filter so that invalid values
are set to a user-specified value.
2020-06-03 15:29:37 -06:00
Li-Ta Lo
c0dee74028 make it explicit that we are using 64-bit unsigned integer in bit op 2020-06-03 11:43:14 -06:00
Kenneth Moreland
7ded85f012 Remove reference to Canvas in ImageReaderBase
It is no longer necessary for the image reader to access a Canvas, and
this does not work anyway if rendering is turned off.
2020-06-03 09:25:19 -06:00
Kenneth Moreland
7fa2c9f769 Update doxygen comments in Tuple.h.in
The `Tuple.h` file was updated with some comments that were not updated
in `Tuple.h.in`. This caused the pyexpander script to fail with
mismatched files.
2020-06-03 09:22:48 -06:00
Robert Maynard
14338a559c Merge topic 'gitlab_ci_doxygen'
930c3d2fb reproduce_ci_env better detects which stage a job is for
71d9d4311 Doxygen is now generated by gitlab and done on each master merge
a652f7fe1 Update vtk-m doxygen to generate less warnings
97a2408fc Correct warnings for using TBB 2020 deprecated functions

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2117
2020-06-03 10:01:07 -04:00
Kenneth Moreland
7c7b95e5b1 Merge topic 'structured-gradient-fix'
8239eb467 Fix an issue with structured (non-uniform) gradients

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Robert Maynard <robert.maynard@kitware.com>
Merge-request: !2118
2020-06-03 09:51:16 -04:00
Kenneth Moreland
fe527ae26e Merge topic 'image-reader-structure'
1949cad40 Add get/set filename methods for image reader/writer
e8c5ee5e6 Remove pixel type selection from PNG reader
6c97054b7 Update image writes to style and library
1e91b32ac Update image readers to style and library

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Nickolas Davis <nadavi@sandia.gov>
Merge-request: !2109
2020-06-02 19:50:26 -04:00
Kenneth Moreland
8239eb467f Fix an issue with structured (non-uniform) gradients
This fixes a bug introduced in commit
93d87e06fd7a0ef479a324e5cd2453c1c7ece0ee

Part of the commit moved fromusing a `BoundaryState` object to keeping
boundary flags in a `vtkm::Vec<bool,3>`. However, the meaning of the
flag got inverted. The `BoundaryState::IsRadiusIn?Boundary` methods
returned true if the current location was inside the bounds (i.e. _not_
on the boundary), but the new flags are true if the current location is
on the boundary (the inverse).

The updating of the code for the `StructuredPointGradient::Jacobian`
method got the flag somewhat wrong and scaled the wrong case.
2020-06-02 17:44:06 -06:00
Li-Ta Lo
e9f584a91f ArrayHandleRandomUniformReal
Add an ArrayHandle for generating random Float64 in the range of [0, 1).
2020-06-02 11:58:57 -06:00
Abhishek Yenpure
8260be6fc6 Merge topic 'euler_integrator_fix'
e9fd545b0 Merge branch 'master' of gitlab.kitware.com:vtk/vtk-m into euler_integrator_fix
23126bbec Integrator status fix for consistant behavior
3e18f105e Fixing Integrator Status Behavior
ff112e424 Integrator status behavior check
343f2d577 Merge branch 'master' of gitlab.kitware.com:vtk/vtk-m into euler_integrator_fix
82cfba27c Rectify testing code
8ddecbb43 Fixing test issues
6274b1657 Updating Euler Integrator to work

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2023
2020-06-01 17:20:16 -04:00
Robert Maynard
a652f7fe1e Update vtk-m doxygen to generate less warnings 2020-06-01 16:58:32 -04:00
Robert Maynard
97a2408fc4 Correct warnings for using TBB 2020 deprecated functions 2020-06-01 16:58:32 -04:00
Kenneth Moreland
1949cad400 Add get/set filename methods for image reader/writer 2020-06-01 10:33:20 -06:00
Kenneth Moreland
e8c5ee5e69 Remove pixel type selection from PNG reader
Selecting the pixel type just means that lodepng casts it to that type
for it then to be cast to the type VTK-m uses. Since VTK-m always uses
the same type, there is little value for changing the intermediate cast.
2020-06-01 10:00:37 -06:00
Kenneth Moreland
6c97054b7f Update image writes to style and library
Updated the image writer classes to better follow VTK-m naming
convention (i.e. use `ImageWriterPNG` instead of `PNGWriter`). The
structure of the image writer class now also better matches the
interface for the VTK writer.

Also put the implementation of the image writers into the `vtkm_io`
library so that it only has to be compiled once.
2020-06-01 10:00:36 -06:00
Kenneth Moreland
1e91b32ace Update image readers to style and library
Updated the image reader classes to better follow VTK-m naming
convention (i.e. use `ImageReaderPNG` instead of `PNGReader`).
The structure of the image reader class now also better matches
the interface for the VTK reader.

Also put the implementation of the image readers into the `vtkm_io`
library so that it only has to be compiled once.
2020-06-01 10:00:18 -06:00
Kenneth Moreland
da6fc5e378 Merge topic 'add/hyperstructstats'
3273f1c48 Update to AddPointField of dataset
eef30c232 Merge branch 'master' into add/hyperstructstats
1014dbf04 Fix BOV reader support in ContourTreeApp
e908826c1 Temporary disabled BOV reader in ContourTreeApp pending #517
8a27ff510 Merge branch 'master' into add/hyperstructstats
43e470de7 Fix g++ conversion warning in ContourTreeApp
a9a4736c3 Add BOV reader support and fix TBB settings in contour tree app
38da8dc43 Fix TBB check bug in ContourTreeApp
...

Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !2002
2020-05-28 13:25:08 -04:00
Robert Maynard
d7af19ea8f Merge topic 'deprecated_bov_reader_still_constructible'
0f867c05f vtkm::io::reader::BOVDataSet fix 'constructor delegates to itself'

Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2107
2020-05-28 13:10:53 -04:00
Oliver Ruebel
eef30c2325 Merge branch 'master' into add/hyperstructstats 2020-05-28 09:32:30 -07:00
Robert Maynard
0f867c05f2 vtkm::io::reader::BOVDataSet fix 'constructor delegates to itself'
Fixes #517
2020-05-28 08:34:31 -04:00