CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM News & Announcements > OpenFOAM Announcements from Other Sources

Hypersonic and Supersonic Flow Solvers

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

Like Tree4Likes
  • 3 Post By hyFoam
  • 1 Post By hyFoam

Reply
 
LinkBack Thread Tools Display Modes
Old   March 7, 2017, 13:03
Default Hypersonic and Supersonic Flow Solvers
  #1
New Member
 
Vince
Join Date: Mar 2017
Location: Glasgow, UK
Posts: 11
Rep Power: 3
hyFoam is on a distinguished road
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
  • source code
  • tutorials
  • hy2Foam
* generic case
* 2D axisymmetric blunted cone
* 2D planar cylinder

  • hyFoam
* coming soon (April 2017)
  • manuals
  • latest conference presentation (03 Nov. 2016, Final Stardust Conference at ESA-ESTEC)


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:
  • Available soon: J.-J. Hoste et al. 'Numerical Modeling and Simulation of Supersonic Flows in Propulsion Systems by Open-Source Solvers' (AIAA Hypersonics, Xiamen, China, 6-9 March 2017)


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
glypo, aminem and serles like this.

Last edited by hyFoam; March 8, 2017 at 07:37. Reason: Was initially posted in the wrong forum
hyFoam is offline   Reply With Quote

Old   August 18, 2017, 10:24
Default
  #2
New Member
 
Jason Moller
Join Date: Sep 2013
Location: Hampshire, UK
Posts: 14
Rep Power: 6
glypo is on a distinguished road
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
glypo is offline   Reply With Quote

Old   August 22, 2017, 04:01
Default
  #3
New Member
 
Vince
Join Date: Mar 2017
Location: Glasgow, UK
Posts: 11
Rep Power: 3
hyFoam is on a distinguished road
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
hyFoam is offline   Reply With Quote

Old   August 23, 2017, 03:53
Default
  #4
New Member
 
Onur Paša
Join Date: Jan 2014
Posts: 2
Rep Power: 0
navierstokes is on a distinguished road
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
I get the following error:

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).
--------------------------------------------------------------------------
When I make the following changes in constant/transportProperties file -inspired by another test case-
  • multiSpeciesTransport noSpeciesDiffusion; //Fick;
  • binaryDiffusivityModel noBinaryDiffusivityModel //GuptaD;
the case appears to run in parallel. So, it seems to me that there is problem regarding the parallel implementation for these models.



Could you please help me out on this issue?

Thanks.
Onur
navierstokes is offline   Reply With Quote

Old   August 23, 2017, 06:05
Default
  #5
New Member
 
Vince
Join Date: Mar 2017
Location: Glasgow, UK
Posts: 11
Rep Power: 3
hyFoam is on a distinguished road
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
hyFoam is offline   Reply With Quote

Old   August 23, 2017, 08:05
Default
  #6
New Member
 
Onur Paša
Join Date: Jan 2014
Posts: 2
Rep Power: 0
navierstokes is on a distinguished road
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
navierstokes is offline   Reply With Quote

Old   August 23, 2017, 09:04
Default
  #7
New Member
 
Vince
Join Date: Mar 2017
Location: Glasgow, UK
Posts: 11
Rep Power: 3
hyFoam is on a distinguished road
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
navierstokes likes this.
hyFoam is offline   Reply With Quote

Old   February 10, 2018, 12:17
Default
  #8
Member
 
sunil kumar
Join Date: May 2016
Posts: 79
Rep Power: 4
skumar112 is on a distinguished road
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
skumar112 is offline   Reply With Quote

Old   February 17, 2018, 15:46
Default
  #9
New Member
 
Vince
Join Date: Mar 2017
Location: Glasgow, UK
Posts: 11
Rep Power: 3
hyFoam is on a distinguished road
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
hyFoam is offline   Reply With Quote

Reply

Tags
cfd, hypersonic, openfoam, reacting, supersonic
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
Tutorial for highspeed flow (hypersonic) siimulations in ansys fluent rachitsigh11 ANSYS 1 December 19, 2016 02:54
Overflow in hypersonic flow simulation badboyz31 CFX 13 March 8, 2014 04:33
Hypersonic flow over a wedge Ravenn FLUENT 6 March 7, 2013 07:12
Supersonic flow simulation Tayfun FLUENT 4 June 12, 2004 09:31


All times are GMT -4. The time now is 14:32.