diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C b/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C index 1d65b22fd6..acaed52ac9 100644 --- a/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C +++ b/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C @@ -2,7 +2,7 @@ ========= | \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | - \\ / A nd | Copyright (C) 2011 OpenFOAM Foundation + \\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation \\/ M anipulation | ------------------------------------------------------------------------------- License @@ -126,8 +126,32 @@ dimensioned::dimensioned : name_(name), dimensions_(dimSet), - value_(pTraits(is)) -{} + value_(pTraits::zero) +{ + Info<< "dimensioned::dimensioned" << endl; + + token nextToken(is); + is.putBack(nextToken); + + if (nextToken == token::BEGIN_SQR) + { + dimensionSet dims(is); + + if (dims != dimensions_) + { + FatalErrorIn + ( + "dimensioned::dimensioned" + "(const word&, const dimensionSet&, Istream&)" + ) << "The dimensions " << dims + << " provided do not match the required dimensions " + << dimensions_ + << abort(FatalError); + } + } + + is >> value_; +} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //