|
[Sponsors] |
August 26, 2008, 08:06 |
Hallo everyone,
I know that
|
#1 |
Member
Sebastian Vogl
Join Date: Mar 2009
Location: Munich, Germany
Posts: 62
Rep Power: 17 |
Hallo everyone,
I know that this topic has been treated in several threads. However the answers given there were n ot detailed enough for me. So that is why I decided to open this new thread. My issue is that I want to burn liquid ethanol droplets using the dieselFoam solver, but the chem.inp and thermo.dat files from the chemkin folder don't contain this fuel. So I went through the threads of this message board and found out that I have to write the fuel properties into the chem.inp and thermo.dat files. Problem 1: the chem.inp files contain the coefficients of the arrhenius equation. But e.g looking at the C7H16 chem.inp in the aachenbomb thest case (see picture below): What does the "! 1" at the end of the line with the chemical equation mean? Does the "!" sign only mean that a comment, e.g. the number of the line, follows? What do the lines: "FORD /C7H16 0.25/ und FORD /O2 1.5/" mean? problem 2: the therm.dat file I read that the entries are the coefficients of the "NASA-polynomials". So I found the following page: internet page with coefficients with the for the NASA polynomials The coefficients for e.g C7H16, which can be found on this page, are: But they are not the same as in the term.dat file for the aachenbomb test case: So does anybody know where the therm.dat entries come from and how I can create my own therm.dat file for ethanol or inplement the entries for ethanol in the existing therm.dat file? Are there any further files I have to create/change to simulate the combustion of ethanol? I would be pleased if you helped me with these problems. With kind regards, Sebastian Vogl |
|
August 27, 2008, 05:11 |
Dear Mr. Vogl,
there are diff
|
#2 |
New Member
Marcel Schaefer
Join Date: Mar 2009
Location: Aachen, Germany
Posts: 3
Rep Power: 17 |
Dear Mr. Vogl,
there are different ways to generate thermo/reaction data. You can use the CHEMKIN Software to generate reaction algorithms and thermo. data. On the Webpage http://www.itv.rwth-aachen.de/index.php?id=16&L=5 there is a tool to generate reduced reaction algorithms (not shure about that, I've never used it). There is also a reaction algorithm for methanol available. But this algorithm is maybe too complex (~100 reactions). |
|
August 27, 2008, 05:44 |
Hallo Mr Schaefer,
thank yo
|
#3 |
Member
Sebastian Vogl
Join Date: Mar 2009
Location: Munich, Germany
Posts: 62
Rep Power: 17 |
Hallo Mr Schaefer,
thank you for your reply! As far as I know, the CHEMKIN Software is something one has to buy. I only know from other posts that OpenFoam must have it's own chemkin mechanism but I don't know how to add something to it. As far as the tool on the ITV homepage is concerned, do you know how to use it or create file that can be used in OpenFoam? Thanks again, Sebastian Vogl |
|
August 27, 2008, 06:14 |
Dear Mr. Vogl,
I am trying to
|
#4 |
New Member
Marcel Schaefer
Join Date: Mar 2009
Location: Aachen, Germany
Posts: 3
Rep Power: 17 |
Dear Mr. Vogl,
I am trying to create a strongly reduced and a detailed reaction mechanism for the combustion of kerosene/o2. I just started to create a reaction mechanism. As far as I find out something, how to create thermo/reaction data readable by openFOAM, I will post it here. Sincerely, Marcel Schaefer |
|
September 11, 2008, 12:48 |
Hello,
I proceeded a little
|
#5 |
Member
Sebastian Vogl
Join Date: Mar 2009
Location: Munich, Germany
Posts: 62
Rep Power: 17 |
Hello,
I proceeded a little in implementing ethanol as new fuel in the dieselFoam solver of OpenFoam. As I wrote above, I didn't know how to create the chem.inp and therm.dat files. Meanwhile I found a intenet page which offers a detailed reaction mechanism for lots of fuels: link to the ethanol mechanism So I took the files with the chemical and thermodynamic parameters and changed the file extensions from .txt to .inp for the chemical reaction file and to .dat for the thermodynamic file. Then I used them in the "thermodynamicProperties" file which is part of the "constant" folder in the aachenbomb test case. My case setup is based on it (the block geometry is a little bit smaller and I have got 5 injectors which each createing 10 fuel droplets with a diameter of 50µm, respectively). At first I had to remove the comments at the beginning of each file and then replace all element letters by capital letters. The problem I have to deal with now, and I hope you can help me with that, is that in the reaction mechanism the component CH2(S), a solid particle as it seems, appears and OpenFoam cannot recognize it. It creates an error output (see below) saying that it is an undefined species and then lists all defined species. However, as you can see in the error message, there is also CH2<s> listed. So I changed the brackets and replaced all CH2(S) terms with CH2<s> in the chemkin file, but it didn't help. Then I wrote CH2S instead of CH2(S) and it didn't help, either. Do you know how to solve the problem? Thanks in advance for your effort, Sebastian Vogl Exec : dieselFoam . EthanolverdampfungMitMechanismusVonStefan Date : Sep 11 2008 Time : 17:38:05 Host : chanchu PID : 25891 Root : /scratch2/SimulationsversucheZuTestzwecken Case : EthanolverdampfungMitMechanismusVonStefan Nprocs : 1 Create time Create mesh for time = 0.000000 Before --> if (file(time().timePath()/V0)) After --> if (file(time().timePath()/V0)) Before --> if (file(time().timePath()/meshPhi)) After --> if (file(time().timePath()/meshPhi)) Reading thermophysicalProperties Point 2.1 Selecting thermodynamics package hMixtureThermo<reactingmixture> Selecting chemistryReader chemkinReader --> FOAM FATAL ERROR : unknown specie CH2(S)+ on line 78 Valid species are : 57 ( CH3CHCO HCCO CO PC3H4 PC3H5 HCOOH C2H5OH CH C2H4OH OH CH2CHCH2O CHOCHO CO2 CH3HCO CH2CHCO HCOH CH4 CH2HCO C3H6 C2H2 CH3CH2O C2H3 C2H4 C2H5 CH3CHOH C3H2 C2H6 CH2 CH3 AC3H4 AC3H5 C3H8 CH3OH CH2OH H2O2 CH2CO iC3H7 CH2<s> CH3CO H2CCCH SC3H5 HCCOH HOC2H4O2 H2 H2O O2 H N2 O NC3H7 CH3O CH2O C2H HCO C2O HO2 CH2CHCHO ) From function chemkinReader::lex() in file chemistryReaders/chemkinReader/chemkinLexer.L at line 1227. FOAM exiting |
|
February 10, 2009, 15:12 |
Hi everybody
I want to add (L
|
#6 |
Member
Hamed Aghajani
Join Date: Mar 2009
Location: London, UK
Posts: 77
Rep Power: 17 |
Hi everybody
I want to add (Liquid Hydrogen) as a new Liquid in /src/thermophysicalModels/liquids. To follow the instruction as http://openfoamwiki.net/index.php/ContribDieselFoamThermophysicalPropertiesLiqui dProperties , I have to provide the required coefficient for calculating rho_,pv_, ..., D_ in respective NSRDS functions. I surfed the web to find "Data Compilation Tables of Properties of Pure Compounds", which may/seems contain useful data to me, but no success! :-( Would you please let me know, what shall I do, to define this new liquid properties? Best regards, Hamed |
|
February 13, 2009, 10:17 |
Hi,
when, compiling the modif
|
#7 |
Member
Hamed Aghajani
Join Date: Mar 2009
Location: London, UK
Posts: 77
Rep Power: 17 |
Hi,
when, compiling the modified liquid library for liquid Hydrogen by command, wmake H2, where H2 is the folders name, it says...; wmake error 'Make' directory does not exist. I dont know whats its meaning? because such a problem happens when I also compile an existing library!!! I have added the H2 names to Make/files folder, as well. would you please let me know where shall I check. Best, Hamed |
|
February 13, 2009, 12:41 |
Oh,
it was really silly, I ha
|
#8 |
Member
Hamed Aghajani
Join Date: Mar 2009
Location: London, UK
Posts: 77
Rep Power: 17 |
Oh,
it was really silly, I have to compile liquids library not H2 library! sorry! Hamed |
|
June 2, 2009, 14:04 |
|
#9 |
Member
Rachel Vogl
Join Date: Jun 2009
Posts: 48
Rep Power: 17 |
Hello All,
I am new to OpenFOAM and I would like to add a gas mixture of CO, CO2, N2, H2 and H2O into dieselFoam solver. I am not sure how to proceed with it. This data is not available in tutorial files. Can anyone of you please post a sample of how to add new liquid/gas in dieselFoam ? Looking forward to your responses, Rachel |
|
June 3, 2009, 07:16 |
|
#10 |
Member
Sebastian Vogl
Join Date: Mar 2009
Location: Munich, Germany
Posts: 62
Rep Power: 17 |
Hi Rachel,
your question is very general. So I am not sure how to properly answer. Therefore I will also answer in general to give you an introduction. I hope you get an idea of what is necessary to deal with new liquids and gases and then become more detailed with your question. The more concrete your question is, the easier I can answer it. In the dieselFoam solver tutorial there is a detailed reaction mechanism for n-Heptan. You can find it in the /chemkin/ folder. All files in this folder with an ".inp" ending contain reaction mechanisms. There are more reduced forms of the n-Heptan mechanism available in this folder, too. During the reaction several species are created or consumed. Their thermo physical properties, especially the heat capacity, as a function of temperature must be supplied by the user. The temperature dependence is calculated with a polynomial. The polynomial is written somewhere in the code. But its coefficients must be supplied by the user. For this case you can find a file "therm.dat" in the chemkin/ folder. All files with an ".dat" ending have contain coefficients for this polynomial. The polynomial is the same for all species, only the coefficients differ. When you look through this file you can see the huge amount of species with a lot of numbers, the corresponding coefficients, attached to them. As far as I know, the species you want to add are already there. So you don't have to add them. Just look into the therm.dat file or any other .dat file available in the chemkin/ folder and you will find the species. If you look into the thermoPyhsicalProperties file in the constant folder, you will see the entries: CHEMKINFile "$FOAM_CASE/chemkin/chem.inp"; // We use the central thermo data: CHEMKINThermoFile "$FOAM_CASE/chemkin/therm.dat"; For both the CHEMKINFile, which is the raction mechanism, and the CHEMKINThermoFile, which has the coefficients, you choose the one you need. For reaction mechanisms and thermo physical data of fuels, which are not part of OpenFOAM, I gave a link to an internet page, where you can find some (scroll above and you will see it). With these entries in the thermophysicalPropertis file you make sure that the correct file from the /chemkin/ folder is used, especially the one with all the thermo physical properties of the species you need. I don't know whether you plan to use new fuels/liquids. If your liquid is not part of the OpenFOAM library (somewhere in the OpenFOAM/OpenFOAM-1.5/src/ folder), you will have to add it. Open one of the files for one liquid there and look which properties you have to set (liquid density, etc.). For setting the initial conditions of species have a look into the 0/ folder. You can see the folders for N2, O2 and Ydefault. In Ydefault you set the conditions for all other species except N2 and O2. If you want to define the initial conditions for CO2, CO, etc. individually, you will have to create a file for each of these species in the 0/ folder. However I don't know how to make sure that these files are read by the solver or whether they are read automatically by the solver. Further help on the dieselFoam solver can be found on the following internet page which was written by Niklas Nordin, who wrote the solver: http://openfoamwiki.net/index.php/Contrib_dieselFoam I hope I could give you a useful introduction. Tell me (or someone elso of course), if there is something still unknown to you. Best regards, Sebastian Vogl |
|
June 3, 2009, 08:34 |
|
#11 | |
Super Moderator
Niklas Nordin
Join Date: Mar 2009
Location: Stockholm, Sweden
Posts: 693
Rep Power: 29 |
Quote:
src/thermophysicalModels/combustion/mixtureThermos/mixtures/combustionMixture/combustionMixture.C Code:
forAll(species_, i) { IOobject header ( species_[i], mesh.time().timeName(), mesh, IOobject::NO_READ ); // check if field exists and can be read if (header.headerOk()) { Y_.set ( i, new volScalarField ( IOobject ( species_[i], mesh.time().timeName(), mesh, IOobject::MUST_READ, IOobject::AUTO_WRITE ), mesh ) ); } else { volScalarField Ydefault ( IOobject ( "Ydefault", mesh.time().timeName(), mesh, IOobject::MUST_READ, IOobject::NO_WRITE ), mesh ); Y_.set ( i, new volScalarField ( IOobject ( species_[i], mesh.time().timeName(), mesh, IOobject::NO_READ, IOobject::AUTO_WRITE ), Ydefault ) ); } } |
||
June 3, 2009, 09:01 |
|
#12 |
Member
Sebastian Vogl
Join Date: Mar 2009
Location: Munich, Germany
Posts: 62
Rep Power: 17 |
Hello Mr. Nordin,
thank you very much for this information. I really appreciate it! Best regards, Sebastian Vogl |
|
June 15, 2009, 05:10 |
|
#13 |
Member
Rachel Vogl
Join Date: Jun 2009
Posts: 48
Rep Power: 17 |
Thanks Sebastian and Niklas for your detailed replies,
I have described the problem in detail in another thread. http://www.cfd-online.com/Forums/ope...tml#post218708 Since H20 is the only liquid in my case and its implemented in OF-1.5, I guess I do not have to add any liquid. http://foam.sourceforge.net/doc/Doxy...0e4fe8b2d.html I am no clue how to proceed. |
|
June 15, 2009, 05:35 |
|
#14 |
Member
Rachel Vogl
Join Date: Jun 2009
Posts: 48
Rep Power: 17 |
Hello,
Is FORTRAN format, with respect to: what comes in what column important in chem.inp important? Thanks Rachel |
|
October 13, 2009, 13:55 |
|
#15 | |
New Member
Zhibin Chen
Join Date: Oct 2009
Posts: 2
Rep Power: 0 |
Quote:
|
||
July 30, 2014, 20:08 |
|
#16 |
Member
yes
Join Date: Apr 2014
Posts: 32
Rep Power: 12 |
Hello Sebastian
I was surfing the blog for an answer to my question when I found you'r post, my issue is similar to the one that you came across. I want to add Linoleic Acid (principal compound of bio diesel) for a spray simulation, I'm already using the latest version of OpenFoam 2.3.0, so the question is, how can I add those properties to the library or what did you recommend? Kind Regards |
|
August 4, 2014, 18:23 |
|
#17 |
Member
yes
Join Date: Apr 2014
Posts: 32
Rep Power: 12 |
Hello Sebastian
Sorry for bother you again, but I found a issue similar to your's in my simulations. I'm already using OpenFoam 2.3 qith the sprayFoam solver for a bio diesel spray so I need to add a new liquid library for the Linoleic Acid, I'm already make the library with the oil, succeed in compiled, create a new solver and compiles with out errors, but in when I'm running this new solver I get this error message: --> FOAM FATAL ERROR: Unknown liquidProperties type C18H32O2 Valid liquidProperties types are: 30 ( Ar C10H22 C12H26 C13H28 C14H30 C16H34 C2H5OH C2H6 C2H6O C3H6O C3H8 C4H10O C6H14 C6H6 C7H16 C7H8 C8H10 C8H18 C9H20 CH3OH CH4N2O H2O IC8H18 IDEA MB N2 aC11H10 bC11H10 iC3H8O nC3H8O ) From function liquidProperties::New(const dictionary&) in file liquidProperties/liquidProperties.C at line 191. FOAM aborting #0 Foam::error:rintStack(Foam::Ostream&) in "/opt/openfoam230/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #1 Foam::error::abort() in "/opt/openfoam230/platforms/linux64GccDPOpt/lib/libOpenFOAM.so" #2 Foam::liquidProperties::New(Foam::dictionary const&) in "/opt/openfoam230/platforms/linux64GccDPOpt/lib/libliquidProperties.so" #3 Foam::liquidMixtureProperties::liquidMixtureProper ties(Foam::dictionary const&) in "/opt/openfoam230/platforms/linux64GccDPOpt/lib/libliquidMixtureProperties.so" #4 Foam::liquidMixtureProperties::New(Foam::dictionar y const&) in "/opt/openfoam230/platforms/linux64GccDPOpt/lib/libliquidMixtureProperties.so" #5 Foam::SLGThermo::SLGThermo(Foam::fvMesh const&, Foam::fluidThermo&) in "/opt/openfoam230/platforms/linux64GccDPOpt/lib/libSLGThermo.so" #6 in "/home/adolfo/OpenFOAM/adolfo-2.3.0/platforms/linux64GccDPOpt/bin/my_sprayFoam" #7 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6" #8 in "/home/adolfo/OpenFOAM/adolfo-2.3.0/platforms/linux64GccDPOpt/bin/my_sprayFoam" Aborted (core dumped) My problems it's very similar to your's but it's seem that the new solver doesn't use my new library can you help me with any idea? Kind Regards |
|
August 9, 2014, 06:53 |
|
#18 |
Member
Ron
Join Date: Jul 2014
Location: Japan
Posts: 40
Rep Power: 12 |
Dear ENKIME,
Are you able to solve the stated issue? |
|
August 10, 2014, 01:48 |
|
#19 |
Member
yes
Join Date: Apr 2014
Posts: 32
Rep Power: 12 |
Hello Ron
It seems that, well at least I can run a simulation with my own liquid and my own library I just find out where exactly the NSRD functions get their coefficients and models so I can replace with the one of my special case, take a look: --> FOAM FATAL ERROR: Could not find carrier specie C13H28 in species list Available species are: 2 ( C18H32O2 N2 ) From function void Foam:haseProperties::setGlobalCarrierIds(const wordList&) in file phaseProperties/phaseProperties/phaseProperties.C at line 103. FOAM exiting I change tri decane using the same library and the error sent was the same as the old library when I change linoleic acid and in paraview also you can see the linoleic acid. Kind regards |
|
December 24, 2014, 00:56 |
|
#20 | |
Member
Ron
Join Date: Jul 2014
Location: Japan
Posts: 40
Rep Power: 12 |
Quote:
I plan to run CUDA solvers with my own liquid and library will it be possible? Any help greatly appreciated |
||
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Boltzmann method for liquids? | Johannes Schöön | Main CFD Forum | 12 | August 12, 2013 12:31 |
Need help with mixing two liquids | Albert | FLUENT | 7 | October 28, 2006 08:34 |
diffusion of liquids | Steve L | Siemens | 0 | July 11, 2005 05:24 |
Liquids Simulation | Aini | Main CFD Forum | 3 | July 12, 2002 09:07 |
Compressable liquids | Brian | Main CFD Forum | 0 | August 19, 1998 18:48 |