46 T posOldArray[] { p->getPos()[0], p->getPos()[1], p->getPos()[2] };
47 T posIncrementArray[] {0., 0., 0.};
48 _randomNormal(posIncrementArray, posOldArray);
49 std::vector<T> posNew { posOldArray[0]+posIncrementArray[0], posOldArray[1]+posIncrementArray[1], posOldArray[2]+posIncrementArray[2] };
51 p->setVel({ (posNew[0]-posOldArray[0])/_dT, (posNew[1]-posOldArray[1])/_dT, (posNew[2]-posOldArray[2])/_dT });
65 T posOldArray[] { p->getPos()[0], p->getPos()[1], p->getPos()[2] };
66 T posIncrementArray0[] {0., 0., 0.};
67 T posIncrementArray1[] {0., 0., 0.};
68 T posIncrementArray2[] {0., 0., 0.};
69 _randomNormal(posIncrementArray0, posOldArray);
70 _randomNormal(posIncrementArray1, posOldArray);
71 _randomNormal(posIncrementArray2, posOldArray);
72 std::vector<T> posNew { posOldArray[0]+posIncrementArray0[0], posOldArray[1]+posIncrementArray1[0], posOldArray[2]+posIncrementArray2[0] };
74 p->setVel({ (posNew[0]-posOldArray[0])/_dT, (posNew[1]-posOldArray[1])/_dT, (posNew[2]-posOldArray[2])/_dT });
89 T fluidVel[] {0., 0., 0.};
90 _getVel(fluidVel, &p->getPos()[0], p->getCuboid());
92 T oldPos[] {p->getPos()[0], p->getPos()[1], p->getPos()[2]};
93 p->setPos({ oldPos[0]+fluidVel[0]*_dT, oldPos[1]+fluidVel[1]*_dT, oldPos[2]+fluidVel[2]*_dT });
94 std::vector<T> oldVel { p->getVel() };
95 p->setVel({ oldVel[0]+fluidVel[0], oldVel[1]+fluidVel[1], oldVel[2]+fluidVel[2] });