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::uniquePtr<pFlow::positionParticles> pFlow::positionParticles::create(const dictionary & dict) pFlow::positionParticles::create(const dictionary & dict)
{ {
word method = dict.getVal<word>("method"); word method = dict.getVal<word>("method");

View File

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