試行しました
Foam::septernion
Foam::solidBodyMotionFunctions::forceDriveMotion::transformation() const
{
scalar t = time_.value();
//
const fvMesh& mymesh = refCast<const fvMesh>(d.db());
// Rotation around axis
scalar angle = omega_->integrate(0, t);
quaternion R(axis_, angle);
septernion TR(septernion(-origin_)*R*septernion(origin_));
DebugInFunction << "Time = " << t << " transformation: " << TR << endl;
return TR;
}
↑ですと,dを宣言していないから↓のように怒られ
motionSolvers/displacement/solidBody/solidBodyMotionFunctions/forceDriveMotion/forceDriveMotion.C:76:50: error: ‘d’ was not declared in this scope
76 | const fvMesh& mymesh = refCast<const fvMesh>(d.db());
仕方なく,
//
const IOdictionary& d = static_cast<const IOdictionary&>(dict.parent().parent());
const fvMesh& mymesh = refCast<const fvMesh>(d.db());
とすると,やはりdictの宣言で怒られ↓
motionSolvers/displacement/solidBody/solidBodyMotionFunctions/forceDriveMotion/forceDriveMotion.C:76:62: error: ‘dict’ was not declared in this scope
76 | const IOdictionary& d = static_cast<const IOdictionary&>(dict.parent().parent());
#include "fvMesh.H"
の他にincludeしなければならないファイルがあるのでしょうか?
困りました.
2024年5月15日水曜日 14:58:28 UTC+9 skasai: