Go to the documentation of this file.
93 <<
"lduMatrix::operator=(const lduMatrix&) : "
94 <<
"attempted assignment to self"
151 if (symmetric() &&
A.symmetric())
153 upper() +=
A.upper();
155 else if (symmetric() &&
A.asymmetric())
166 upper() +=
A.upper();
167 lower() +=
A.lower();
169 else if (asymmetric() &&
A.symmetric())
173 lower() +=
A.upper();
174 upper() +=
A.upper();
178 lower() +=
A.lower();
179 upper() +=
A.lower();
183 else if (asymmetric() &&
A.asymmetric())
185 lower() +=
A.lower();
186 upper() +=
A.upper();
200 else if (
A.diagonal())
208 <<
"Unknown matrix type combination" <<
nl
210 <<
" diagonal:" << diagonal()
211 <<
" symmetric:" << symmetric()
212 <<
" asymmetric:" << asymmetric() <<
nl
214 <<
" diagonal:" <<
A.diagonal()
215 <<
" symmetric:" <<
A.symmetric()
216 <<
" asymmetric:" <<
A.asymmetric()
230 if (symmetric() &&
A.symmetric())
232 upper() -=
A.upper();
234 else if (symmetric() &&
A.asymmetric())
245 upper() -=
A.upper();
246 lower() -=
A.lower();
248 else if (asymmetric() &&
A.symmetric())
252 lower() -=
A.upper();
253 upper() -=
A.upper();
257 lower() -=
A.lower();
258 upper() -=
A.lower();
262 else if (asymmetric() &&
A.asymmetric())
264 lower() -=
A.lower();
265 upper() -=
A.upper();
271 upper() = -
A.upper();
276 lower() = -
A.lower();
279 else if (
A.diagonal())
287 <<
"Unknown matrix type combination" <<
nl
289 <<
" diagonal:" << diagonal()
290 <<
" symmetric:" << symmetric()
291 <<
" asymmetric:" << asymmetric() <<
nl
293 <<
" diagonal:" <<
A.diagonal()
294 <<
" symmetric:" <<
A.symmetric()
295 <<
" asymmetric:" <<
A.asymmetric()
311 if (symmetric() || asymmetric())
void operator-=(const lduMatrix &)
const lduAddressing & lduAddr() const
Return the LDU addressing.
void operator+=(const lduMatrix &)
void diag(pointPatchField< vector > &, const pointPatchField< tensor > &)
lduMatrix is a general matrix class in which the coefficients are stored as three arrays,...
void sumMagOffDiag(scalarField &sumOff) const
Ostream & endl(Ostream &os)
Add newline and flush stream.
dimensioned< scalar > mag(const dimensioned< Type > &)
virtual const labelUList & upperAddr() const =0
Return upper addressing.
simpleMatrix< scalar > A(Nc)
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
Pre-declare SubField and related Field type.
errorManip< error > abort(error &err)
volScalarField sf(fieldObject, mesh)
gmvFile<< "tracers "<< particles.size()<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().x()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().y()<< " ";}gmvFile<< nl;forAllConstIter(Cloud< passiveParticle >, particles, iter){ gmvFile<< iter().position().z()<< " ";}gmvFile<< nl;forAll(lagrangianScalarNames, i){ word name=lagrangianScalarNames[i];IOField< scalar > s(IOobject(name, runTime.timeName(), cloud::prefix, mesh, IOobject::MUST_READ, IOobject::NO_WRITE))
void operator=(const lduMatrix &)
virtual const labelUList & lowerAddr() const =0
Return lower addressing.
void operator*=(const scalarField &)
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
A face is a list of labels corresponding to mesh vertices.
label size() const
Return the number of elements in the UList.
#define WarningInFunction
Report a warning using Foam::Warning.