From ae73181bc16c02649c7fbc967ca5ca963ec5b927 Mon Sep 17 00:00:00 2001 From: andy Date: Mon, 20 Jan 2014 14:10:03 +0000 Subject: [PATCH] BUG: sixDoF BCs - corrected output to Ostream --- src/sixDoFRigidBodyMotion/Make/options | 1 + .../axis/sixDoFRigidBodyMotionAxisConstraint.C | 5 +++-- .../axis/sixDoFRigidBodyMotionAxisConstraint.H | 6 +++--- .../line/sixDoFRigidBodyMotionLineConstraint.C | 5 +++-- .../line/sixDoFRigidBodyMotionLineConstraint.H | 6 +++--- .../sixDoFRigidBodyMotionOrientationConstraint.C | 8 ++++---- .../sixDoFRigidBodyMotionOrientationConstraint.H | 6 +++--- .../plane/sixDoFRigidBodyMotionPlaneConstraint.C | 5 +++-- .../plane/sixDoFRigidBodyMotionPlaneConstraint.H | 6 +++--- .../point/sixDoFRigidBodyMotionPointConstraint.C | 5 +++-- .../point/sixDoFRigidBodyMotionPointConstraint.H | 6 +++--- .../sixDoFRigidBodyMotionConstraint.C | 13 ++++++++++--- .../sixDoFRigidBodyMotionConstraint.H | 6 +++++- .../sixDoFRigidBodyMotionConstraintNew.C | 14 ++++++-------- .../linearAxialAngularSpring.C | 5 +++-- .../linearAxialAngularSpring.H | 6 +++--- .../restraints/linearDamper/linearDamper.C | 4 ++-- .../restraints/linearDamper/linearDamper.H | 6 +++--- .../restraints/linearSpring/linearSpring.C | 5 +++-- .../restraints/linearSpring/linearSpring.H | 6 +++--- .../sixDoFRigidBodyMotionRestraint.C | 13 ++++++++++++- .../sixDoFRigidBodyMotionRestraint.H | 8 ++++++-- .../sixDoFRigidBodyMotionRestraintNew.C | 14 ++++++-------- .../sphericalAngularDamper.C | 4 ++-- .../sphericalAngularDamper.H | 6 +++--- .../sphericalAngularSpring.C | 4 ++-- .../sphericalAngularSpring.H | 6 +++--- .../tabulatedAxialAngularSpring.C | 5 +++-- .../tabulatedAxialAngularSpring.H | 6 +++--- .../sixDoFRigidBodyMotionIO.C | 16 +--------------- 30 files changed, 111 insertions(+), 95 deletions(-) diff --git a/src/sixDoFRigidBodyMotion/Make/options b/src/sixDoFRigidBodyMotion/Make/options index f2367d2e1d..185fd4077e 100644 --- a/src/sixDoFRigidBodyMotion/Make/options +++ b/src/sixDoFRigidBodyMotion/Make/options @@ -1,4 +1,5 @@ EXE_INC = \ + -DFULLDEBUG -g -O0 \ -I$(LIB_SRC)/finiteVolume/lnInclude \ -I$(LIB_SRC)/meshTools/lnInclude \ -I$(LIB_SRC)/postProcessing/functionObjects/forces/lnInclude \ diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.C index 9154e51216..a72502c9f5 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -116,7 +116,7 @@ bool Foam::sixDoFRigidBodyMotionConstraints::axis::read } -void Foam::sixDoFRigidBodyMotionConstraints::axis::write +void Foam::sixDoFRigidBodyMotionConstraints::axis::writeData ( Ostream& os ) const @@ -125,4 +125,5 @@ void Foam::sixDoFRigidBodyMotionConstraints::axis::write << axis_ << token::END_STATEMENT << nl; } + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.H index 291c3421f8..eef229af87 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/axis/sixDoFRigidBodyMotionAxisConstraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -101,8 +101,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMCCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.C index ff056c2591..d4617d7509 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -116,7 +116,7 @@ bool Foam::sixDoFRigidBodyMotionConstraints::line::read } -void Foam::sixDoFRigidBodyMotionConstraints::line::write +void Foam::sixDoFRigidBodyMotionConstraints::line::writeData ( Ostream& os ) const @@ -125,4 +125,5 @@ void Foam::sixDoFRigidBodyMotionConstraints::line::write << dir_ << token::END_STATEMENT << nl; } + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.H index 7d49190720..095bedbeb0 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/line/sixDoFRigidBodyMotionLineConstraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -100,8 +100,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMCCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.C index 28bf1c4811..f265692aaf 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -96,11 +96,11 @@ bool Foam::sixDoFRigidBodyMotionConstraints::orientation::read } -void Foam::sixDoFRigidBodyMotionConstraints::orientation::write +void Foam::sixDoFRigidBodyMotionConstraints::orientation::writeData ( Ostream& os ) const -{ -} +{} + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.H index 5a41498e95..197a56aca9 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/orientation/sixDoFRigidBodyMotionOrientationConstraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -94,8 +94,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMCCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.C index 286e279b77..39adf2fb7f 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -97,7 +97,7 @@ bool Foam::sixDoFRigidBodyMotionConstraints::plane::read } -void Foam::sixDoFRigidBodyMotionConstraints::plane::write +void Foam::sixDoFRigidBodyMotionConstraints::plane::writeData ( Ostream& os ) const @@ -106,4 +106,5 @@ void Foam::sixDoFRigidBodyMotionConstraints::plane::write << normal_ << token::END_STATEMENT << nl; } + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.H index 1467e54e78..24e8f220dc 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/plane/sixDoFRigidBodyMotionPlaneConstraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -100,8 +100,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMCCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.C index 1068b01af4..79b6b92c4c 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -97,7 +97,7 @@ bool Foam::sixDoFRigidBodyMotionConstraints::point::read } -void Foam::sixDoFRigidBodyMotionConstraints::point::write +void Foam::sixDoFRigidBodyMotionConstraints::point::writeData ( Ostream& os ) const @@ -106,4 +106,5 @@ void Foam::sixDoFRigidBodyMotionConstraints::point::write << point_ << token::END_STATEMENT << nl; } + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.H index 39200c0c5c..b13a3ebd51 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/point/sixDoFRigidBodyMotionPointConstraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -103,8 +103,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMCCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.C index 10044ac832..62e01cf435 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -60,14 +60,21 @@ bool Foam::sixDoFRigidBodyMotionConstraint::read const dictionary& sDoFRBMCDict ) { - sDoFRBMCCoeffs_ = sDoFRBMCDict; + sDoFRBMCCoeffs_ = sDoFRBMCDict.subDict(type() + "Coeffs"); return true; } void Foam::sixDoFRigidBodyMotionConstraint::write(Ostream& os) const -{} +{ + os << indent << word(type() + "Coeffs") << nl + << indent << token::BEGIN_BLOCK << nl << incrIndent; + + writeData(os); + + os << decrIndent << indent << token::END_BLOCK << endl; +} // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.H index b4eed214f9..b8d689e545 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -146,8 +146,12 @@ public: return sDoFRBMCCoeffs_; } + //- Write virtual void write(Ostream&) const; + + //- Write model data + virtual void writeData(Ostream&) const = 0; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraintNew.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraintNew.C index b6f3e8fb1f..0f6b3d448d 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraintNew.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/constraints/sixDoFRigidBodyMotionConstraint/sixDoFRigidBodyMotionConstraintNew.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -34,10 +34,7 @@ Foam::sixDoFRigidBodyMotionConstraint::New const dictionary& sDoFRBMCDict ) { - const word constraintType - ( - sDoFRBMCDict.lookup("sixDoFRigidBodyMotionConstraint") - ); + const word constraintType(sDoFRBMCDict.lookup(typeName)); dictionaryConstructorTable::iterator cstrIter = dictionaryConstructorTablePtr_->find(constraintType); @@ -48,11 +45,12 @@ Foam::sixDoFRigidBodyMotionConstraint::New ( "sixDoFRigidBodyMotionConstraint::New" "(" - "const dictionary& sDoFRBMCDict" + "const word&, " + "const dictionary&" ")" - ) << "Unknown sixDoFRigidBodyMotionConstraint type " + ) << "Unknown " << typeName << " type " << constraintType << nl << nl - << "Valid sixDoFRigidBodyMotionConstraints are : " << endl + << "Valid " << typeName << "s are : " << endl << dictionaryConstructorTablePtr_->sortedToc() << exit(FatalError); } diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C index 504944bb29..d54eb85a99 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -195,7 +195,7 @@ bool Foam::sixDoFRigidBodyMotionRestraints::linearAxialAngularSpring::read } -void Foam::sixDoFRigidBodyMotionRestraints::linearAxialAngularSpring::write +void Foam::sixDoFRigidBodyMotionRestraints::linearAxialAngularSpring::writeData ( Ostream& os ) const @@ -213,4 +213,5 @@ void Foam::sixDoFRigidBodyMotionRestraints::linearAxialAngularSpring::write << damping_ << token::END_STATEMENT << nl; } + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.H index 4a30e30c65..0fc9537d4a 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearAxialAngularSpring/linearAxialAngularSpring.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -114,8 +114,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMRCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.C index 792f265c2d..f2ec442f96 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -100,7 +100,7 @@ bool Foam::sixDoFRigidBodyMotionRestraints::linearDamper::read } -void Foam::sixDoFRigidBodyMotionRestraints::linearDamper::write +void Foam::sixDoFRigidBodyMotionRestraints::linearDamper::writeData ( Ostream& os ) const diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.H index 0e991363fc..83b2e720b7 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearDamper/linearDamper.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -104,8 +104,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMRCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C index a26660caf8..3ab352c684 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -120,7 +120,7 @@ bool Foam::sixDoFRigidBodyMotionRestraints::linearSpring::read } -void Foam::sixDoFRigidBodyMotionRestraints::linearSpring::write +void Foam::sixDoFRigidBodyMotionRestraints::linearSpring::writeData ( Ostream& os ) const @@ -141,4 +141,5 @@ void Foam::sixDoFRigidBodyMotionRestraints::linearSpring::write << restLength_ << token::END_STATEMENT << nl; } + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.H index dbd12372c3..3b9fb7983e 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/linearSpring/linearSpring.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -117,8 +117,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMRCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.C index 6f53b50407..10ea658140 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -66,4 +66,15 @@ bool Foam::sixDoFRigidBodyMotionRestraint::read } +void Foam::sixDoFRigidBodyMotionRestraint::write(Ostream& os) const +{ + os << indent << word(type() + "Coeffs") << nl + << indent << token::BEGIN_BLOCK << nl << incrIndent; + + writeData(os); + + os << decrIndent << indent << token::END_BLOCK << endl; +} + + // ************************************************************************* // diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.H index 41216a0c2b..8fa20f2167 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraint.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -150,8 +150,12 @@ public: return sDoFRBMRCoeffs_; } + //- Write - virtual void write(Ostream&) const = 0; + virtual void write(Ostream&) const; + + //- Write model data + virtual void writeData(Ostream&) const = 0; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraintNew.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraintNew.C index 1bb047a77d..8068ad8c7a 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraintNew.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sixDoFRigidBodyMotionRestraint/sixDoFRigidBodyMotionRestraintNew.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -34,10 +34,7 @@ Foam::sixDoFRigidBodyMotionRestraint::New const dictionary& sDoFRBMRDict ) { - const word restraintType - ( - sDoFRBMRDict.lookup("sixDoFRigidBodyMotionRestraint") - ); + const word restraintType(sDoFRBMRDict.lookup(typeName)); dictionaryConstructorTable::iterator cstrIter = dictionaryConstructorTablePtr_->find(restraintType); @@ -48,11 +45,12 @@ Foam::sixDoFRigidBodyMotionRestraint::New ( "sixDoFRigidBodyMotionRestraint::New" "(" - "const dictionary& sDoFRBMRDict" + "const word&, " + "const dictionary&" ")" - ) << "Unknown sixDoFRigidBodyMotionRestraint type " + ) << "Unknown " << typeName << " type " << restraintType << nl << nl - << "Valid sixDoFRigidBodyMotionRestraint types are : " << endl + << "Valid " << typeName << " s types are : " << endl << dictionaryConstructorTablePtr_->sortedToc() << exit(FatalError); } diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.C index fe5481689f..28e7392822 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -102,7 +102,7 @@ bool Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularDamper::read } -void Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularDamper::write +void Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularDamper::writeData ( Ostream& os ) const diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.H index d917ae7d91..6cd7c19244 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularDamper/sphericalAngularDamper.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2013-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -103,8 +103,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMRCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C index a0525a19e6..05d3ba7ea1 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -147,7 +147,7 @@ bool Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::read } -void Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::write +void Foam::sixDoFRigidBodyMotionRestraints::sphericalAngularSpring::writeData ( Ostream& os ) const diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.H index f1bfa784d3..4201780b87 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/sphericalAngularSpring/sphericalAngularSpring.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -111,8 +111,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMRCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C index 1bf86e3b19..775bf8cb9d 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -221,7 +221,8 @@ bool Foam::sixDoFRigidBodyMotionRestraints::tabulatedAxialAngularSpring::read } -void Foam::sixDoFRigidBodyMotionRestraints::tabulatedAxialAngularSpring::write +void Foam::sixDoFRigidBodyMotionRestraints::tabulatedAxialAngularSpring:: +writeData ( Ostream& os ) const diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.H b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.H index bcd2c2c5b3..43f8d75fac 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.H +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/restraints/tabulatedAxialAngularSpring/tabulatedAxialAngularSpring.H @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -121,8 +121,8 @@ public: //- Update properties from given dictionary virtual bool read(const dictionary& sDoFRBMRCoeff); - //- Write - virtual void write(Ostream&) const; + //- Write model data + virtual void writeData(Ostream&) const; }; diff --git a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionIO.C b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionIO.C index 11670ba623..ccff806171 100644 --- a/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionIO.C +++ b/src/sixDoFRigidBodyMotion/sixDoFRigidBodyMotion/sixDoFRigidBodyMotionIO.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011-2013 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2014 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -60,14 +60,8 @@ void Foam::sixDoFRigidBodyMotion::write(Ostream& os) const os.writeKeyword("sixDoFRigidBodyMotionRestraint") << restraintType << token::END_STATEMENT << nl; - os.writeKeyword(word(restraintType + "Coeffs")) << nl; - - os << indent << token::BEGIN_BLOCK << nl << incrIndent; - restraints_[rI].write(os); - os << decrIndent << indent << token::END_BLOCK << nl; - os << decrIndent << indent << token::END_BLOCK << endl; } @@ -89,16 +83,8 @@ void Foam::sixDoFRigidBodyMotion::write(Ostream& os) const os.writeKeyword("sixDoFRigidBodyMotionConstraint") << constraintType << token::END_STATEMENT << nl; - constraints_[rI].sixDoFRigidBodyMotionConstraint::write(os); - - os.writeKeyword(word(constraintType + "Coeffs")) << nl; - - os << indent << token::BEGIN_BLOCK << nl << incrIndent; - constraints_[rI].write(os); - os << decrIndent << indent << token::END_BLOCK << nl; - os << decrIndent << indent << token::END_BLOCK << endl; }