mirror of
https://github.com/PhasicFlow/phasicFlow.git
synced 2025-08-07 03:37:02 +00:00
vibrating wall added, tested; time interval for wall motion added, tested
This commit is contained in:
@ -21,6 +21,9 @@ Licence:
|
||||
INLINE_FUNCTION_HD
|
||||
pFlow::realx3 pFlow::rotatingAxis::linTangentialVelocityPoint(const realx3 &p)const
|
||||
{
|
||||
|
||||
if(!inTimeRange()) return {0,0,0};
|
||||
|
||||
realx3 L = p - projectPoint(p);
|
||||
return cross(omega_*unitVector(),L);
|
||||
}
|
||||
@ -28,6 +31,9 @@ pFlow::realx3 pFlow::rotatingAxis::linTangentialVelocityPoint(const realx3 &p)co
|
||||
INLINE_FUNCTION_HD
|
||||
pFlow::realx3 pFlow::rotate(const realx3& p, const rotatingAxis& ax, real dt)
|
||||
{
|
||||
|
||||
if(!ax.inTimeRange()) return p;
|
||||
|
||||
realx3 nv = ax.unitVector();
|
||||
real cos_tet = cos(ax.omega()*dt);
|
||||
real sin_tet = sin(ax.omega()*dt);
|
||||
@ -61,7 +67,6 @@ INLINE_FUNCTION_HD
|
||||
pFlow::realx3 pFlow::rotate(const realx3 &p, const line& ln, real theta)
|
||||
{
|
||||
|
||||
|
||||
realx3 nv = ln.unitVector();
|
||||
real cos_tet = cos(theta);
|
||||
real sin_tet = sin(theta);
|
||||
@ -130,6 +135,8 @@ void pFlow::rotate(realx3* p, size_t n, const line& ln, real theta)
|
||||
INLINE_FUNCTION_HD
|
||||
void pFlow::rotate(realx3* p, size_t n, const rotatingAxis& ax, real dt)
|
||||
{
|
||||
if(!ax.inTimeRange()) return;
|
||||
|
||||
realx3 nv = ax.unitVector();
|
||||
real cos_tet = cos(ax.omega()*dt);
|
||||
real sin_tet = sin(ax.omega()*dt);
|
||||
|
Reference in New Issue
Block a user