diff --git a/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.C b/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.C index ecc094a840..3cc5340ceb 100644 --- a/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.C +++ b/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.C @@ -31,11 +31,24 @@ License template Foam::simpleMatrix::simpleMatrix(const label mSize) : - scalarSquareMatrix(mSize), + scalarSquareMatrix(mSize, mSize, pTraits::zero), source_(mSize, pTraits::zero) {} +template +Foam::simpleMatrix::simpleMatrix +( + const label mSize, + const scalar t, + const Field& source +) +: + scalarSquareMatrix(mSize, mSize, t), + source_(mSize, source) +{} + + template Foam::simpleMatrix::simpleMatrix ( diff --git a/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.H b/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.H index fd875281cc..fbb109261c 100644 --- a/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.H +++ b/src/OpenFOAM/matrices/simpleMatrix/simpleMatrix.H @@ -74,9 +74,12 @@ public: // Constructors - //- Construct given size + //- Construct given size, initialize coefficients to zero. simpleMatrix(const label); + //- Construct given size and initial coefficient value + simpleMatrix(const label, const scalar, const Field&); + //- Construct from components simpleMatrix(const scalarSquareMatrix&, const Field&);