void Foam::actuationDiskSource::addSu(fvMatrix<vector>& UEqn) { if (cellZoneID_ == -1) { return; } bool compressible = false; if (UEqn.dimensions() == dimensionSet(1, 1, -2, 0, 0)) { compressible = true; } const labelList& cells = mesh_.cellZones()[cellZoneID_]; const scalarField& V = this->mesh().V(); vectorField& Usource = UEqn.source(); const vectorField& U = UEqn.psi(); if (compressible) { addActuationDiskAxialInertialResistance ( Usource, cells, V, this->mesh().lookupObject<volScalarField>("rho"), U ); } else { addActuationDiskAxialInertialResistance ( Usource, cells, V, geometricOneField(), U ); } }
void Foam::actuationDiskSource::addSu(fvMatrix<vector>& UEqn) { bool compressible = false; if (UEqn.dimensions() == dimensionSet(1, 1, -2, 0, 0)) { compressible = true; } const scalarField& cellsV = this->mesh().V(); vectorField& Usource = UEqn.source(); const vectorField& U = UEqn.psi(); if (V() > VSMALL) { if (compressible) { addActuationDiskAxialInertialResistance ( Usource, cells_, cellsV, this->mesh().lookupObject<volScalarField>("rho"), U ); } else { addActuationDiskAxialInertialResistance ( Usource, cells_, cellsV, geometricOneField(), U ); } } }