|
[Sponsors] |
March 7, 2017, 14:03 |
Hypersonic and Supersonic Flow Solvers
|
#1 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Dear Foamers,
This post is to let you know about the open-source release of the hyStrath GitHub repository that contains two new solvers to deal with hypersonic reacting flows and supersonic combusting flows. You will find more information here: - source code: https://github.com/vincentcasseau/hyStrath - Wiki page: https://github.com/vincentcasseau/hyStrath/wiki March 2017: Open-source release version 1.0
Available for OpenFOAM versions Pre-requirements: Good knowledge of OpenFOAM and the rhoCentralFoam solver Installation: ./install.sh Related articles to be found at: Latest conference papers:
hy2Foam is an open-source two-temperature computational fluid dynamics (CFD) solver that has been developed to tackle the highly complex flow physics of the hypersonic planetary atmospheric entry. Implemented within the OpenFOAM framework, the code has the capability to model physical phenomena relative to the high-speed chemically-reacting environment surrounding a spacecraft. The core of the solver initially relied on OpenFOAM solvers rhoCentralFoam and reactingFoam and it has been complemented with many new features, some of which are listed below * non-equilibrium Navier-Stokes-Fourier equations: Park's two-temperature CFD model is implemented and the choice of having a single vibrational energy pool and multiple vibrational energy pools is left to the user. Energy transfers between the different energy pools are + Vibrational-Translational (V-T) + Vibrational-Vibrational (V-V) + Heavy particle-electron (H-e) + Electron-Vibration energy transfer (e-V) --> available soon * addition of the electronic and electron energy modes * finite-rate chemistry * chemistry-vibration coupling: Park TTv model, coupled vibration-dissociation-vibration (CVDV) model * customizable chemistry databases (Park 1993, Park 1994, Dunn & Kang 1973, quantum-kinetics: Scanlon 2015) including dissociation, electron impact dissociation, electron impact ionization, associative ionization, exchange and charge exchange reactions * capability to handle species with several characteric vibrational temperatures (e.g., CO2) for the Mars atmospheric entry * transport models: Blottner and Eucken, power law and Eucken, Sutherland and Eucken, constant * species diffusion models: Lewis number, generalised Fick's law * mixing rules: Wilke, Armaly & Sutton * turbulence models (no change made to OF 2.3.0): laminar, k-omega SST, k-Epsilon, Spalart Allmaras * computation of the convective wall heat flux * computation of the mean-free-path and the breakdown parameter * boundary conditions: Smoluchowski temperature jump and Maxwell velocity slip BCs were adapted. Possibility to gradually increase the inlet flow velocity (rampInlet). * all dictionaries can be re-read on-the-fly: handy on a high-performance computer. hyFoam is an open-source computational fluid dynamics (CFD) solver that is derived from hy2Foam. In the latter code, the trans-rotational and vibro-electronic energy modes are considered to be in thermal equilibrium at all times, thus producing a single-temperature CFD solver. hyFoam has the capability to model the high-speed chemically-reacting environment inside a scramjet. Most of hy2Foam features remain accessible and hyFoam further receives the addition of * customizable chemistry databases (Evans & Shexnayder 1980, Jachimoski 1992) * hydrogen compounds added to the thermochemical database * transport model: CEA2 (Chemical Equilibrium with Applications, NASA) > While we did our best to eliminate bugs, please do not hesitate to contact us should you find anything. Enquiries: hy2Foam@gmail.com hyStrath has been developed under the license GNU GPL-3.0 at the University of Strathclyde, Glasgow, UK. This work is funded by the Engineering and Physical Sciences Research Council (EPSRC). Thanks, Vincent Last edited by hyFoam; March 8, 2017 at 08:37. Reason: Was initially posted in the wrong forum |
|
August 18, 2017, 11:24 |
|
#2 |
New Member
Jason Moller
Join Date: Sep 2013
Location: Hampshire, UK
Posts: 14
Rep Power: 13 |
Vincent,
This is very interesting work. Thank you. I am curious - do you have any plan to move away from the Kurganov scheme that rhoCentralFoam is based? Perhaps to something a little less thermally diffusive? Or, are you happy/satisfied with the Kurganov scheme? From (brief) prior conversations I believe the OpenFOAM developers have considered other schemes previously but didn't see any obvious benefit. However, I have always thought that AUSMDV, AUSM+ or HLLC, etc are supposed to be less diffusive, if a little less computationally robust. Many thanks, Jason |
|
August 22, 2017, 05:01 |
|
#3 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi Jason,
Thanks for your comment. For the reasons you mentioned, I am not satisfied in having KNP as the only scheme to choose from. Ideally, I would have wanted at least one of these three to perform comparisons with KNP in some specific areas of the flow-field. Time did not permit it so far unfortunately and funding for this project ended beginning of this year. But I believe that the implementation of AUSM+ -up in particular has already been attempted by OF users – a simple google search returns results – and this could be integrated should they want to release their code open-source. Thanks, Vincent PS: I am reposting the link to the source code, the one above is not working https://github.com/vincentcasseau/hyStrath |
|
August 23, 2017, 04:53 |
|
#4 |
New Member
Onur Paça
Join Date: Jan 2014
Posts: 2
Rep Power: 0 |
Dear Vincent,
I've been running the test cases that are provided in hyStrath for hy2Foam solver. One issue we faced is regarding the test case "cylinderReactingMach20". The application runs fine in serial, but when I try to run it in parallel with Code:
$ decomposePar $ mpirun -np 4 hy2Foam -parallel Code:
Selecting chemistry2Reader foam2ChemistryReader chemistry2Model: Number of species = 2 and reactions = 2 using integrated reaction rate Reading thermophysical properties Reading field U Creating turbulence model Selecting turbulence model type laminar Loading the transport mixing rule: Wilke Loading the rarefaction parameters library Loading the multispecies transport model: Fick [1] #0 Foam::error::printStack(Foam::Ostream&) at ??:? [1] #1 Foam::sigSegv::sigHandler(int)No finite volume options present fluxScheme: Kurganov at ??:? [1] #2 ? in "/lib64/libc.so.6" [1] #3 Foam::PtrList<Foam::fvPatchField<double> >::operator[](int) const at ??:? [1] #4 Foam::binaryDiffusivityModels::GuptaD::D() const at ??:? [1] #5 Foam::diffusivityModel::diffusivityModel(Foam::word, Foam::word, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::List<Foam::word> const&) at ??:? [1] #6 Foam::multiSpeciesTransportModel::multiSpeciesTransportModel(Foam::rho2ReactionThermo&, Foam::compressible::turbulenceModel2 const&) at ??:? [1] #7 Foam::Fick<Foam::BlottnerEuckenTransport<Foam::species::multiThermo<Foam::decoupledEnergyModesThermo<Foam::perfect2Gas<Foam::advancedSpecie> >, Foam::sensible2InternalEnergy> > >::Fick(Foam::rho2ReactionThermo&, Foam::compressible::turbulenceModel2 const&) at ??:? [1] #8 Foam::multiSpeciesTransportModel::addfvMeshConstructorToTable<Foam::Fick<Foam::BlottnerEuckenTransport<Foam::species::multiThermo<Foam::decoupledEnergyModesThermo<Foam::perfect2Gas<Foam::advancedSpecie> >, Foam::sensible2InternalEnergy> > > >::New(Foam::rho2ReactionThermo&, Foam::compressible::turbulenceModel2 const&) at ??:? [1] #9 Foam::multiSpeciesTransportModel::New(Foam::rho2ReactionThermo&, Foam::compressible::turbulenceModel2 const&) at ??:? [1] #10 ? at ??:? [1] #11 ? at ??:? [1] #12 __libc_start_main in "/lib64/libc.so.6" [1] #13 ? at ??:? [brego:14798] *** Process received signal *** [brego:14798] Signal: Segmentation fault (11) [brego:14798] Signal code: (-6) [brego:14798] Failing at address: 0x1f4000039ce [brego:14798] [ 0] /lib64/libc.so.6[0x378f432510] [brego:14798] [ 1] /lib64/libc.so.6(gsignal+0x35)[0x378f432495] [brego:14798] [ 2] /lib64/libc.so.6[0x378f432510] [brego:14798] [ 3] hy2Foam(_ZNK4Foam7PtrListINS_12fvPatchFieldIdEEEixEi+0x15)[0x45b0b5] [brego:14798] [ 4] /home/opaca/OpenFOAM/opaca-2.4.0/platforms/linux64GccDPOpt/lib/libdiffusivityModels.so(_ZNK4Foam23binaryDiffusivityModels6GuptaD1DEv+0x290)[0x7f0654f00140] [brego:14798] [ 5] /home/opaca/OpenFOAM/opaca-2.4.0/platforms/linux64GccDPOpt/lib/libdiffusivityModels.so(_ZN4Foam16diffusivityModelC2ENS_4wordES1_RKNS_14GeometricFieldIdNS_12fvPatchFieldENS_7volMeshEEES7_RKNS_4ListIS1_EE+0x481)[0x7f0654f02f61] [brego:14798] [ 6] /home/opaca/OpenFOAM/opaca-2.4.0/platforms/linux64GccDPOpt/lib/libmultiSpeciesTransportModels.so(_ZN4Foam26multiSpeciesTransportModelC2ERNS_18rho2ReactionThermoERKNS_12compressible16turbulenceModel2E+0x88b)[0x7f065517ae1b] [brego:14798] [ 7] /home/opaca/OpenFOAM/opaca-2.4.0/platforms/linux64GccDPOpt/lib/libmultiSpeciesTransportModels.so(_ZN4Foam4FickINS_23BlottnerEuckenTransportINS_7species11multiThermoINS_26decoupledEnergyModesThermoINS_11perfect2GasINS_14advancedSpecieEEEEENS_23sensible2InternalEnergyEEEEEEC1ERNS_18rho2ReactionThermoERKNS_12compressible16turbulenceModel2E+0x19)[0x7f06551bd769] [brego:14798] [ 8] /home/opaca/OpenFOAM/opaca-2.4.0/platforms/linux64GccDPOpt/lib/libmultiSpeciesTransportModels.so(_ZN4Foam26multiSpeciesTransportModel27addfvMeshConstructorToTableINS_4FickINS_23BlottnerEuckenTransportINS_7species11multiThermoINS_26decoupledEnergyModesThermoINS_11perfect2GasINS_14advancedSpecieEEEEENS_23sensible2InternalEnergyEEEEEEEE3NewERNS_18rho2ReactionThermoERKNS_12compressible16turbulenceModel2E+0x2e)[0x7f06551bdb7e] [brego:14798] [ 9] /home/opaca/OpenFOAM/opaca-2.4.0/platforms/linux64GccDPOpt/lib/libmultiSpeciesTransportModels.so(_ZN4Foam26multiSpeciesTransportModel3NewERNS_18rho2ReactionThermoERKNS_12compressible16turbulenceModel2E+0x2a5)[0x7f065519d6a5] [brego:14798] [10] hy2Foam[0x4350f1] [brego:14798] [11] hy2Foam[0x42e88a] [brego:14798] [12] /lib64/libc.so.6(__libc_start_main+0xfd)[0x378f41ed1d] [brego:14798] [13] hy2Foam[0x42ea29] [brego:14798] *** End of error message *** -------------------------------------------------------------------------- mpirun noticed that process rank 1 with PID 14798 on node brego exited on signal 11 (Segmentation fault). --------------------------------------------------------------------------
Could you please help me out on this issue? Thanks. Onur |
|
August 23, 2017, 07:05 |
|
#5 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi Onur,
Thanks for reporting a potential issue. I have run this tutorial myself just now and it would seem to work fine in serial and in parallel. Could you please send a zip of your working folder to the gmail address provided in my GitHub page. Thanks, Vincent PS: is your constant/transportProperties dictionary up-to-date? Here's the one to be used for that case: https://github.com/vincentcasseau/hy...portProperties |
|
August 23, 2017, 09:05 |
|
#6 |
New Member
Onur Paça
Join Date: Jan 2014
Posts: 2
Rep Power: 0 |
Hi Vincent,
Yes, my constant/transportProperties dictionary is up-to-date. It is the one that I cloned it from hyStrath git repo. I also just checked it now and saw that they are identical. Thanks, Onur |
|
August 23, 2017, 10:04 |
|
#7 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi,
The issue is fixed (this version of GuptaD.C was pushed by mistake and was not supposed to belong to the current commit). Thanks Onur for noticing it. Please git pull the latest commit if necessary. Do not hesitate to Create an Issue directly on GitHub next time. Thanks, Vincent |
|
February 10, 2018, 13:17 |
|
#8 |
Member
sunil kumar
Join Date: May 2016
Posts: 80
Rep Power: 10 |
Hello Vincent
I am unable to find the hyFoam solver under the solver list could you please direct me to the solver. I was also wondering if you had updated hyFoam for OF 5.0. Regards Sunil |
|
February 17, 2018, 16:46 |
|
#9 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi Sunil,
I released the upgraded version of the CFD libraries and solvers for use in OF-v1612+ today. The webpage is unchanged: https://github.com/vincentcasseau/hyStrath Thanks, Vincent |
|
July 25, 2019, 11:33 |
|
#10 |
New Member
spkumar
Join Date: Feb 2019
Posts: 9
Rep Power: 7 |
Hi,
I am a PhD student, working on supersonic combustion.I am using OF 7.0. I wanted to use hyfoam solver. But, I am unable to find the hyfoam solver in this link: https://github.com/vincentcasseau/hy...s/compressible. Could you please tell me where can I find those files? |
|
July 26, 2019, 23:24 |
|
#11 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi,
OF-7.0 is not supported, the latest version is v1706. Please see the Wiki for the naming convention of hyFoam: https://github.com/vincentcasseau/hy...al-equilibrium Thanks, Vincent |
|
July 27, 2019, 20:33 |
|
#12 | |
New Member
spkumar
Join Date: Feb 2019
Posts: 9
Rep Power: 7 |
Thank You for the information. I will go through that link.
Quote:
|
||
October 24, 2019, 03:36 |
|
#13 |
New Member
spkumar
Join Date: Feb 2019
Posts: 9
Rep Power: 7 |
HI vincent,
I could able to run the hy2Foam and hyFoam tutorials in OpenFOAM 1706. I read the instructions as you said for the conversion of hy2Foam to hyFoam to model the supersonic combustion. I did not find the information related to turbulence chemistry interaction. Does it include turbulence chemistry interaction ? Thanks & Regards Pranay kumar |
|
October 26, 2019, 12:19 |
|
#14 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi Pranay,
The only turbulence-chemistry interaction model available is laminar. I didn't restore the other models that can be found in src/combustionModels/ to date. Feel free to transpose the implementation to the model of your choice and submit a pull request. I'll be double-checking your implementation. Thanks, Vincent |
|
October 27, 2019, 07:09 |
|
#15 |
New Member
spkumar
Join Date: Feb 2019
Posts: 9
Rep Power: 7 |
Thank you vincent. What I understood was that this solver calculates the reaction rates using arrhenius kinetic expression and turbulence chemistry coupling is ignored.I will be working on this turbulence chemistry coupling as a part of my phd work.
Currently, I am simulating supersonic combustion with your hyfoam solver. To know the boundary conditions, I read createFields header file.I have few doubts. I could not able find the terminology of "kappatr" and "kappave" and how to ignite the mixture ? Do I need to patch the region with high temperature as similar to the reactingFoam cases ? Do I have to give energy released per unit time (dQ) as B.C's/I.C' condition or what exactly this dQ means here? Thanks & Regards Pranay |
|
October 27, 2019, 09:22 |
|
#16 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
Hi Pranay,
Could you please open an Issue on my Github and copy-paste your post. I will answer there. Thanks, Vincent |
|
October 28, 2019, 07:48 |
|
#17 | |
New Member
spkumar
Join Date: Feb 2019
Posts: 9
Rep Power: 7 |
Quote:
Thanks & Regards Pranay |
||
November 22, 2019, 08:25 |
Hi, I am very interested in hyfoam.
|
#18 |
New Member
jiang
Join Date: May 2018
Posts: 1
Rep Power: 0 |
Can i use hyfoam to simulate detonation problem? Thanks
|
|
November 23, 2019, 13:15 |
|
#19 |
Member
Vince
Join Date: Mar 2017
Posts: 45
Rep Power: 9 |
We've never used hyFoam for detonations but you may have come across a journal article from Marcantoni (https://www.sciencedirect.com/scienc...637?via%3Dihub) on that topic.His solver and mine rely on the same foundations: the rhoCentralFoam and reactingFoam solvers. You should be able to match his results with hyFoam.
Thanks, Vincent |
|
May 29, 2020, 11:48 |
Validity for v1912
|
#20 |
New Member
Mridu Sai Charan Arukalava Seshasayee
Join Date: Nov 2019
Location: Edinburgh, Scotland
Posts: 1
Rep Power: 0 |
Dear Sir,
On your git page, (the compatibility section specifically) says that the current version is valid upto v1706. I was wondering if your solver is supported on v1912 as well. Thanks and Regards |
|
Tags |
cfd, hypersonic, openfoam, reacting, supersonic |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Tutorial for highspeed flow (hypersonic) siimulations in ansys fluent | rachitsigh11 | ANSYS | 1 | December 19, 2016 03:54 |
Overflow in hypersonic flow simulation | badboyz31 | CFX | 13 | March 8, 2014 05:33 |
Hypersonic flow over a wedge | Ravenn | FLUENT | 6 | March 7, 2013 08:12 |
Supersonic flow simulation | Tayfun | FLUENT | 4 | June 12, 2004 10:31 |