max particle correction for position particles

This commit is contained in:
hamidrezanorouzi 2023-01-18 17:48:11 +03:30
parent 8f657458cc
commit ded25ab7b3
2 changed files with 18 additions and 17 deletions

View File

@ -98,9 +98,23 @@ pFlow::positionParticles::positionParticles
}
pFlow::realx3Vector pFlow::positionParticles::getFinalPosition()
{
if(mortonSorting_)
{
return sortByMortonCode(position());
}
else
{
realx3Vector vec(position().capacity(), RESERVE());
vec.assign( position().begin(), position().end());
return std::move(vec);
}
}
pFlow::uniquePtr<pFlow::positionParticles> pFlow::positionParticles::create(const dictionary & dict)
pFlow::uniquePtr<pFlow::positionParticles>
pFlow::positionParticles::create(const dictionary & dict)
{
word method = dict.getVal<word>("method");

View File

@ -145,24 +145,11 @@ public:
// - access to position
virtual realx3Vector& position() = 0;
virtual realx3Vector getFinalPosition()
{
if(mortonSorting_)
{
return sortByMortonCode(position());
}
else
{
realx3Vector vec(position().capacity(), RESERVE());
vec.assign( position().begin(), position().end());
return std::move(vec);
}
}
virtual realx3Vector getFinalPosition();
static
uniquePtr<positionParticles> create(const dictionary & dict);
};