CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM Running, Solving & CFD

IAPWSIF97 water properties

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes

Reply
 
LinkBack Thread Tools Display Modes
Old   December 3, 2012, 07:29
Default
  #41
Senior Member
 
Christian Lucas
Join Date: Aug 2009
Location: Braunschweig, Germany
Posts: 151
Rep Power: 5
Chris Lucas is on a distinguished road
Hi,

you don't need freesteam to install my openFoam freesteam connection. You need freesteam (or better the dynamic library) to run a case.

Have you installed (compiled) OpenFOAM correctly? The error suggests you haven't. The freesteam connection should not affect the other openfoam components. (Same is true for the real gas library classes)

You can copy the dynamic library (by hand) in the folder described in the tutorial README (OpenFOAM/lib/"systemCompilerName"). /usr/lib/ might also work.

Kind Regards,
Christian
Chris Lucas is offline   Reply With Quote

Old   January 2, 2013, 14:25
Default
  #42
Senior Member
 
Join Date: Nov 2012
Posts: 143
Rep Power: 2
hz283 is on a distinguished road
Quote:
Originally Posted by hkb View Post
Hi David
I absence of input from people who actually know things, allow me to speculate. Unfortunately my knowledge of c++ is rudimentary, so I can't offer any solutions. However, the problem seems to be two-fold:

1. rho is not stored explicity by basicThermo, but constructed as p*psi. Can this be avoided by having basicThermo fetch the density directly from the equation of state, thereby bypassing psi in the calculation of density?

2. The second problem is that psi itself is called from various bits of the source code. I guess that means that we still need a proper definition of psi, even if the density may be possible to calculate even without using psi.

Best Regards
Henrik
Hi All,

I have the same problems about how the psi is calculated in BasicThermo.H. Conceptually, psi=rho/p=1/(R*T). But does anyone know how psi is calculated? Thank you in advance.

best regards,
H
hz283 is offline   Reply With Quote

Old   January 3, 2013, 15:08
Default
  #43
New Member
 
magazoni
Join Date: Jul 2012
Posts: 8
Rep Power: 2
magazoni is on a distinguished road
Hi Christian,

I compiled the IAPWS package.

Code:
cluster@node0:~/OpenFOAM/OpenFOAM-1.6-ext/src/thermophysicalModels/externalMedia/IAPWS_Waterproperties$ wmake libso
Making dependency list for source file IAPWSThermo/IAPWS-IF97.C
Making dependency list for source file IAPWSThermo/IAPWSThermos.C
SOURCE=IAPWSThermo/IAPWS-IF97.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-40 -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/finiteVolume/lnInclude -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/thermophysicalModels/specie/lnInclude -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/thermophysicalModels/basic/lnInclude -IlnInclude -I. -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/OpenFOAM/lnInclude -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64Gcc46DPOpt/IAPWS-IF97.o
SOURCE=IAPWSThermo/IAPWSThermos.C ;  g++ -m64 -Dlinux64 -DWM_DP -Wall -Wextra -Wno-unused-parameter -Wold-style-cast -Wnon-virtual-dtor -O3  -DNoRepository -ftemplate-depth-40 -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/finiteVolume/lnInclude -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/thermophysicalModels/specie/lnInclude -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/thermophysicalModels/basic/lnInclude -IlnInclude -I. -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/OpenFOAM/lnInclude -I/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/src/OSspecific/POSIX/lnInclude   -fPIC -c $SOURCE -o Make/linux64Gcc46DPOpt/IAPWSThermos.o
IAPWSThermo/IAPWS-IF97.C: In function ‘void Foam::calculateProperties_h(SteamState, Foam::scalar&, Foam::scalar&, Foam::scalar&, Foam::scalar&, Foam::scalar&, Foam::scalar&, Foam::scalar&, Foam::scalar&, Foam::scalar&)’:
IAPWSThermo/IAPWS-IF97.C:240:62: warning: variable ‘cpv’ set but not used [-Wunused-but-set-variable]
IAPWSThermo/IAPWS-IF97.C: In function ‘Foam::scalar Foam::psiH(SteamState)’:
IAPWSThermo/IAPWS-IF97.C:432:62: warning: variable ‘cpv’ set but not used [-Wunused-but-set-variable]
IAPWSThermo/IAPWS-IF97.C:489:12: warning: ‘psiH’ may be used uninitialized in this function [-Wuninitialized]
IAPWSThermo/IAPWS-IF97.C: In function ‘Foam::scalar Foam::drhodh(SteamState)’:
IAPWSThermo/IAPWS-IF97.C:586:12: warning: ‘drhodh’ may be used uninitialized in this function [-Wuninitialized]
'/home/cluster/OpenFOAM/OpenFOAM-1.6-ext/lib/linux64Gcc46DPOpt/libIAPWSThermo.so' is up to date.
Now, I think that it is correct. But when I tried to simulate the IAPWS example, there are some errors,

Code:
cluster@node0:~/OpenFOAM/OpenFOAM-1.6-ext/tutorials/compressible/rhoPisoFoam/ras/IAPWS97_Pipe$ rhoPisoFoam 
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM Extend Project: Open source CFD        |
|  \\    /   O peration     | Version:  1.6-ext                               |
|   \\  /    A nd           | Web:      www.extend-project.de                 |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : 1.6-ext-959ec266ba5c
Exec   : rhoPisoFoam
Date   : Jan 03 2013
Time   : 17:59:37
Host   : node0
PID    : 17372
Case   : /home/cluster/OpenFOAM/OpenFOAM-1.6-ext/tutorials/compressible/rhoPisoFoam/ras/IAPWS97_Pipe
nProcs : 1
SigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).

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

--> FOAM Warning : 
    From function dlLibraryTable::open(const fileName& functionLibName)
    in file db/dlLibraryTable/dlLibraryTable.C at line 86
    could not load /home/cluster/OpenFOAM/OpenFOAM-1.6-ext/lib/linux64Gcc46DPOpt/libIAPWSThermo.so: undefined symbol: _ZNK4Foam14basicPsiThermo6drhodeEv
Create mesh for time = 0

Reading thermophysical properties

Selecting thermodynamics package IAPWSThermo


--> FOAM FATAL ERROR: 
Unknown basicPsiThermo type IAPWSThermo

Valid basicPsiThermo types are:

11
(
ePsiThermo<pureMixture<sutherlandTransport<specieThermo<janafThermo<perfectGas>>>>>
hsPsiThermo<pureMixture<sutherlandTransport<specieThermo<hConstThermo<perfectGas>>>>>
ePsiThermo<pureMixture<sutherlandTransport<specieThermo<eConstThermo<perfectGas>>>>>
hPsiThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>>>>>
hsPsiThermo<pureMixture<sutherlandTransport<specieThermo<janafThermo<perfectGas>>>>>
hPsiThermo<pureMixture<sutherlandTransport<specieThermo<hConstThermo<perfectGas>>>>>
ePsiThermo<pureMixture<constTransport<specieThermo<eConstThermo<perfectGas>>>>>
ePsiThermo<pureMixture<sutherlandTransport<specieThermo<hConstThermo<perfectGas>>>>>
hsPsiThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>>>>>
ePsiThermo<pureMixture<constTransport<specieThermo<hConstThermo<perfectGas>>>>>
hPsiThermo<pureMixture<sutherlandTransport<specieThermo<janafThermo<perfectGas>>>>>
)
    From function basicPsiThermo::New(const fvMesh&)
    in file psiThermo/basicPsiThermo/newBasicPsiThermo.C at line 64.
FOAM exiting
Do you know what is it?

Thank you,
Best regards,
Felipe Magazoni
magazoni is offline   Reply With Quote

Old   January 3, 2013, 15:24
Default
  #44
New Member
 
magazoni
Join Date: Jul 2012
Posts: 8
Rep Power: 2
magazoni is on a distinguished road
Christian,

Now it is working. I forgot to compile the themophysicalModels. Thanks very much.

Kind regards,
Felipe Magazoni
magazoni is offline   Reply With Quote

Old   January 7, 2013, 02:58
Default
  #45
Senior Member
 
Christian Lucas
Join Date: Aug 2009
Location: Braunschweig, Germany
Posts: 151
Rep Power: 5
Chris Lucas is on a distinguished road
Hi

@ hz283

have a look at the perfect gas class.

@ Felipe

did you change the freesteam source as stated in my tutorial case README file?

Christian
Chris Lucas is offline   Reply With Quote

Old   January 7, 2013, 10:57
Default
  #46
Senior Member
 
Join Date: Nov 2012
Posts: 143
Rep Power: 2
hz283 is on a distinguished road
Quote:
Originally Posted by Chris Lucas View Post
Hi

@ hz283

have a look at the perfect gas class.

@ Felipe

did you change the freesteam source as stated in my tutorial case README file?

Christian
Hi Christian,

In specieI.H, the gas constant is calculated as follows:

R=RR/molweight_, RR=Na*Kb is universal gas constant. For my understanding, here molweight_ is the molar weight for only one species. in Openfoam, is there some methods to calculate the R for multi-gas composition? This is useful for the update of density of multi-gas mixing case.

In the combustion solver, reactingFoam, the density is calculated like this:

Info<< "Creating combustion model\n" << endl;

autoPtr<combustionModels:siChemistryCombustionMo del> combustion
(
combustionModels:siChemistryCombustionModel::New
(
mesh
)
);

psiChemistryModel& chemistry = combustion->pChemistry();

hsCombustionThermo& thermo = chemistry.thermo();

basicMultiComponentMixture& composition = thermo.composition();
PtrList<volScalarField>& Y = composition.Y();

word inertSpecie(thermo.lookup("inertSpecie"));

volScalarField rho
(
IOobject
(
"rho",
runTime.timeName(),
mesh
),
thermo.rho()
);


I read the source code and found that in this solver the rho is still updated through p_*psi using EoS in basicPsiThermo. If my understanding is correct, how the effect of multi-gas on the gas constant is taken into consideration here. Actually, in CHEMKIN source package, the EoS is like this: p=Sum(rho*Yk / Wk)*RR*Tk. the subscript k stand for the individual species.

Do you know something about this? Please help me point out if any incorrectness exists.

best,
H
mkraposhin likes this.

Last edited by hz283; January 7, 2013 at 11:15.
hz283 is offline   Reply With Quote

Old   May 23, 2013, 05:03
Default newer version of OF
  #47
Senior Member
 
romant's Avatar
 
Roman Thiele
Join Date: Aug 2009
Location: Stockholm, Sweden
Posts: 271
Rep Power: 7
romant is on a distinguished road
Hej,

did anybody get this to work on a newer version of OF, like 2.0, 2.1 or 2.2?

~roman
__________________
~roman
romant is offline   Reply With Quote

Old   May 23, 2013, 07:15
Default
  #48
Senior Member
 
Christian Lucas
Join Date: Aug 2009
Location: Braunschweig, Germany
Posts: 151
Rep Power: 5
Chris Lucas is on a distinguished road
Hi,

in OF 2.0 and OF 2.1 it should be simple to use the water properties. I’m not sure about OF 2.2.

1. Copy externalMedia folder. Should work fine under OF 2.1 .

2. Add the new functions (do not copy the files) in basicPsiThermo (OF 1.6 ext) to basicPsiThermo (OF 2.0). Only the 3rd script in makeBasicThermo.H (OF 1.6 ext) is needed for the water properties (2nd is used for real gas thermo)

3. Copy the changes in rhoPisoFOAM (pEqn) into your solver

4. Compile everything.

5. Have a look at the tutorial provided by me.

Hope I did not miss some code block you need. If it works, please report your result here .

Kind Regards,
Christian
Chris Lucas is offline   Reply With Quote

Old   May 23, 2013, 07:42
Default
  #49
Senior Member
 
romant's Avatar
 
Roman Thiele
Join Date: Aug 2009
Location: Stockholm, Sweden
Posts: 271
Rep Power: 7
romant is on a distinguished road
It seems that the repo is down. at least the links provided in early posts to sourceforge do not work.
__________________
~roman
romant is offline   Reply With Quote

Old   May 23, 2013, 07:47
Default
  #50
Senior Member
 
Christian Lucas
Join Date: Aug 2009
Location: Braunschweig, Germany
Posts: 151
Rep Power: 5
Chris Lucas is on a distinguished road
Hi,

yes, OpenFOAM 1.6 ext is down at the moment. It should be back online soon.

I can send you the files, if you give me your mail adresse (e.g. via private message ..).

Regards,
Christian
Chris Lucas is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
water properties in supercritical region Naveen CFX 2 April 14, 2009 14:45
standard water properties Thilip Kumar CFX 1 September 20, 2008 10:51
water vapour properties manoj korde FLUENT 4 June 2, 2006 01:47
shallow water VS deep water Paul Main CFD Forum 10 August 30, 2004 11:56
properties of water ? mp Main CFD Forum 0 March 5, 2003 04:41


All times are GMT -4. The time now is 00:27.