hnsxmh / IAPWS-IF97-OpenFOAM-v8

IAPWS-IF97 thermo library compatible for OpenFOAM-v8 (with test case)
5 stars 0 forks source link

Issue reading thermoType #1

Open omagen9466 opened 1 year ago

omagen9466 commented 1 year ago

hello @hnsxmh ! I have been trying to implement your IAPWS-IF97 library in my openFoam8, which compiled successfully. Unfortunately, when trying to run the example case from your library, I get the following error:

`/*---------------------------------------------------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  8
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
Build  : 8-1c9b5879390b
Exec   : buoyantSimpleFoam
Date   : Feb 13 2023
Time   : 16:17:48
Host   : "LAPTOP-BL7P8C1U"
PID    : 2454
I/O    : uncollated
Case   : /home/omagen/OpenFOAM/run/buoyantCavity_IAWPS
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create mesh for time = 1000

SIMPLE: Convergence criteria found
        p_rgh: tolerance 0.0001
        U: tolerance 0.0001
        h: tolerance 0.0001
        "(k|epsilon|omega)": tolerance 0.001

Reading thermophysical properties

Selecting thermodynamics package IAPWSThermo

--> FOAM FATAL ERROR: 
Unknown rhoThermo type IAPWSThermo

Valid rhoThermo types are:

128
(
heRhoThermo<multiComponentMixture<WLF<eConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<WLF<eConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<WLF<eConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<WLF<hConst<adiabaticPerfectFluid<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<WLF<hConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<WLF<hConst<rPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<WLF<hConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<WLF<hConst<rhoConst<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<WLF<hConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<eConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<adiabaticPerfectFluid<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<rPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<hConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<janaf<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<janaf<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<janaf<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<janaf<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<janaf<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<janaf<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<const<janaf<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<const<janaf<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<logPolynomial<hPolynomial<icoPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<logPolynomial<hPolynomial<icoPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<polynomial<hPolynomial<icoPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<polynomial<hPolynomial<icoPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<eConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<eConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<eConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<eConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<hConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<multiComponentMixture<sutherland<janaf<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<WLF<eConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<WLF<eConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<WLF<eConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<WLF<hConst<adiabaticPerfectFluid<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<WLF<hConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<WLF<hConst<rPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<WLF<hConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<WLF<hConst<rhoConst<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<WLF<hConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<eConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<adiabaticPerfectFluid<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<adiabaticPerfectFluid<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<rPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<rPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<hConst<rhoConst<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<hConst<rhoConst<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<janaf<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<janaf<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<janaf<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<janaf<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<janaf<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<janaf<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<const<janaf<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<const<janaf<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<liquid,sensibleEnthalpy>>
heRhoThermo<pureMixture<liquid,sensibleInternalEnergy>>
heRhoThermo<pureMixture<logPolynomial<hPolynomial<icoPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<logPolynomial<hPolynomial<icoPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<polynomial<hPolynomial<icoPolynomial<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<polynomial<hPolynomial<icoPolynomial<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<eConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<eConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<eConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<eConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<hConst<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<hConst<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<hConst<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<hConst<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<hConst<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<hConst<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<hConst<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<hConst<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<janaf<Boussinesq<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<janaf<Boussinesq<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<janaf<PengRobinsonGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<janaf<PengRobinsonGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<janaf<incompressiblePerfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<janaf<incompressiblePerfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<sutherland<janaf<perfectGas<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<sutherland<janaf<perfectGas<specie>>,sensibleInternalEnergy>>>
heRhoThermo<pureMixture<tabulated<hTabulated<icoTabulated<specie>>,sensibleEnthalpy>>>
heRhoThermo<pureMixture<tabulated<hTabulated<icoTabulated<specie>>,sensibleInternalEnergy>>>
)

    From function static typename Table::iterator Foam::basicThermo::lookupThermo(const Foam::dictionary&, Table*) [with Thermo = Foam::rhoThermo; Table = Foam::HashTable<Foam::autoPtr<Foam::rhoThermo> (*)(const Foam::fvMesh&, const Foam::word&), Foam::word, Foam::string::hash>; typename Table::iterator = Foam::HashTable<Foam::autoPtr<Foam::rhoThermo> (*)(const Foam::fvMesh&, const Foam::word&), Foam::word, Foam::string::hash>::iterator]
    in file lnInclude/basicThermoTemplates.C at line 187.

FOAM exiting`

It seems like the libs defined in the controlDict is read, however, the library is nevertheless not identified by the solver. I would greatly appreciate your help on this matter! Omry

arnavbeinglegit commented 1 year ago

i am getting the same issue ,please help. arnav kumar thanks