mirror of
https://gitlab.kitware.com/vtk/vtk-m
synced 2024-09-16 17:22:55 +00:00
Fix for corner case in particle advection.
This commit is contained in:
parent
9007c97c4c
commit
4b0896bd8c
@ -583,7 +583,6 @@ void TestStreamlineFilters()
|
||||
FilterType::STREAMLINE,
|
||||
FilterType::PATHLINE,
|
||||
FilterType::PATH_PARTICLE };
|
||||
|
||||
for (int n = 1; n < 3; n++)
|
||||
{
|
||||
for (auto useGhost : flags)
|
||||
@ -628,6 +627,21 @@ void TestStreamlineFilters()
|
||||
|
||||
for (auto useSL : flags)
|
||||
TestStreamlineFile(fishFile, fishPts, fishStep, 100, fishEndPts, useSL);
|
||||
|
||||
/*
|
||||
//ARMWind corner case of particle near boundary.
|
||||
std::string amrWindFile =
|
||||
vtkm::cont::testing::Testing::DataPath("rectilinear/amr_wind_flowfield.vtk.vtk");
|
||||
vtkm::FloatDefault amrWindStep = 0.001;
|
||||
std::vector<vtkm::Vec3f> amrWindPts, amrWindEndPts;
|
||||
|
||||
amrWindPts.push_back(
|
||||
vtkm::Vec3f(0.053217993470017745, 0.034506499099396459, 0.057097713925011492));
|
||||
amrWindEndPts.push_back(vtkm::Vec3f(0.05712112784, 0.03450008854, 0.02076501213));
|
||||
|
||||
for (auto useSL : flags)
|
||||
TestStreamlineFile(amrWindFile, amrWindPts, amrWindStep, 10000, amrWindEndPts, useSL);
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -141,13 +141,9 @@ public:
|
||||
outpos = currPos + stepRange[1] * particle.Velocity(currValue, stepRange[1]);
|
||||
time += stepRange[1];
|
||||
|
||||
// Get the evaluation status for the point that is *just* outside of the data.
|
||||
// Get the evaluation status for the point that is moved by the euler step.
|
||||
evalStatus = this->Evaluator.Evaluate(outpos, time, currValue);
|
||||
|
||||
// The eval should fail, and the point should be outside either spatially or temporally.
|
||||
VTKM_ASSERT(evalStatus.CheckFail() &&
|
||||
(evalStatus.CheckSpatialBounds() || evalStatus.CheckTemporalBounds()));
|
||||
|
||||
IntegratorStatus status(evalStatus);
|
||||
status.SetOk(); //status is ok.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user