|
[Sponsors] |
August 1, 2022, 07:17 |
SRF compressible rhoSimpleFoam
|
#1 |
New Member
Zeinab Abosedaira
Join Date: Mar 2022
Posts: 24
Rep Power: 4 |
Hello, I hope you're doing well. So, now there is a task required from me to edit rhoSimpleFoam solver to accommodate the SRF model. I copied the solver to my application file and performed some edits. Also, I have done some edits in the SRFModel.H and SRFModel.C. I compile the new solver and everything is good, when I get to use it with a problem, it gives me an error of inconsistent units. I've successfully known where the inconsistency happens but I don't why.
Code:
--> FOAM FATAL ERROR: (openfoam-2012) [Urel[1 -2 -2 0 0 0 0] ] + [(Fcoriolis+Fcentrifugal)[0 1 -2 0 0 0 0] ] From void Foam::checkMethod(const Foam::fvMatrix<Type>&, const Foam::DimensionedField<Type, Foam::volMesh>&, const char*) [with Type = Foam::Vector<double>] in file /opt/OpenFOAM/OpenFOAM-v2012/src/finiteVolume/lnInclude/fvMatrix.C at line 1351. FOAM aborting Code:
tmp<fvVectorMatrix> tUrelEqn ( fvm::div(phi, Urel) + SRF -> SuCompressible() + turbulence->divDevRhoReff(Urel) == fvOptions(rho, Urel) ); Code:
\*---------------------------------------------------------------------------*/ #include "SRFModel.H" #include "SRFVelocityFvPatchVectorField.H" // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // namespace Foam { namespace SRF { defineTypeNameAndDebug(SRFModel, 0); defineRunTimeSelectionTable(SRFModel, dictionary); } } // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::SRF::SRFModel::SRFModel ( const word& type, const volVectorField& Urel, const volScalarField& rho ) : IOdictionary ( IOobject ( "SRFProperties", Urel.time().constant(), Urel.db(), IOobject::MUST_READ_IF_MODIFIED, IOobject::NO_WRITE ) ), Urel_(Urel), rho_ (rho), mesh_(Urel_.mesh()), origin_("origin", dimLength, get<vector>("origin")), axis_(normalised(get<vector>("axis"))), SRFModelCoeffs_(optionalSubDict(type + "Coeffs")), omega_(dimensionedVector("omega", dimless/dimTime, Zero)) {} // * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // Foam::SRF::SRFModel::~SRFModel() {} // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // bool Foam::SRF::SRFModel::read() { if (regIOobject::read()) { // Re-read origin readEntry("origin", origin_); // Re-read axis readEntry("axis", axis_); axis_.normalise(); // Re-read sub-model coeffs SRFModelCoeffs_ = optionalSubDict(type() + "Coeffs"); return true; } return false; } const Foam::dimensionedVector& Foam::SRF::SRFModel::origin() const { return origin_; } const Foam::vector& Foam::SRF::SRFModel::axis() const { return axis_; } const Foam::dimensionedVector& Foam::SRF::SRFModel::omega() const { return omega_; } Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh>> Foam::SRF::SRFModel::FcoriolisCompressible() const { return tmp<volVectorField::Internal> ( new volVectorField::Internal ( IOobject ( "FcoriolisComp", mesh_.time().timeName(), mesh_, IOobject::NO_READ, IOobject::NO_WRITE ), rho_* 2.0*omega_ ^ Urel_ ) ); } Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh>> Foam::SRF::SRFModel::FcentrifugalCompressible() const { return tmp<volVectorField::Internal> ( new volVectorField::Internal ( IOobject ( "FcentrifugalComp", mesh_.time().timeName(), mesh_, IOobject::NO_READ, IOobject::NO_WRITE ), rho_ *omega_ ^ (omega_ ^ (mesh_.C() - origin_)) ) ); } Foam::tmp<Foam::DimensionedField<Foam::vector, Foam::volMesh>> Foam::SRF::SRFModel::SuCompressible() const { return FcoriolisCompressible() + FcentrifugalCompressible(); } |
|
August 3, 2022, 08:54 |
|
#2 |
New Member
Kuba
Join Date: Sep 2020
Posts: 2
Rep Power: 0 |
The problem is coming from dimensions inconsistency. Are you sure that your Urel variable should have dimension kg m^-2 s^-2?
Greetings |
|
Tags |
compressible, rhosimplefoam, srf |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
rhoSimpleFoam: Does it work with SRF problems? | ZeinabM | OpenFOAM Running, Solving & CFD | 2 | July 28, 2022 06:55 |
rhoSimpleFoam for sub-sonic compressible aerodynamics. | bentkj | OpenFOAM Running, Solving & CFD | 6 | October 1, 2018 04:18 |
rhoSimpleFoam with SpalartAllmaras model for compressible flow | usc2018 | OpenFOAM Running, Solving & CFD | 0 | May 7, 2018 20:01 |
Compressible 2D airfoil rhoSimpleFoam fatal error volScalarField none | jfournier | OpenFOAM Running, Solving & CFD | 4 | September 28, 2017 07:28 |
how is rhoSimpleFoam a compressible steady statefor compressible flow | cleoo | OpenFOAM Pre-Processing | 2 | September 22, 2016 04:23 |