mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
BUG: sixDoFRigidBodyMotion: Corrected handling of acceleration update in first time-step
Resolves bug-report https://bugs.openfoam.org/view.php?id=2551
This commit is contained in:
committed by
Andrew Heather
parent
644779725d
commit
ad789e23bf
@ -2,7 +2,7 @@
|
|||||||
========= |
|
========= |
|
||||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
\\ / O peration |
|
\\ / O peration |
|
||||||
\\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation
|
\\ / A nd | Copyright (C) 2011-2017 OpenFOAM Foundation
|
||||||
\\/ M anipulation |
|
\\/ M anipulation |
|
||||||
-------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------
|
||||||
License
|
License
|
||||||
@ -273,7 +273,7 @@ void Foam::sixDoFRigidBodyMotion::updateAcceleration
|
|||||||
const vector& tauGlobal
|
const vector& tauGlobal
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
static bool first = false;
|
static bool first = true;
|
||||||
|
|
||||||
// Save the previous iteration accelerations for relaxation
|
// Save the previous iteration accelerations for relaxation
|
||||||
vector aPrevIter = a();
|
vector aPrevIter = a();
|
||||||
@ -290,8 +290,10 @@ void Foam::sixDoFRigidBodyMotion::updateAcceleration
|
|||||||
a() = aRelax_*a() + (1 - aRelax_)*aPrevIter;
|
a() = aRelax_*a() + (1 - aRelax_)*aPrevIter;
|
||||||
tau() = aRelax_*tau() + (1 - aRelax_)*tauPrevIter;
|
tau() = aRelax_*tau() + (1 - aRelax_)*tauPrevIter;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
first = false;
|
{
|
||||||
|
first = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user