CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM (http://www.cfd-online.com/Forums/openfoam/)
-   -   hypersonic cfd free code??? (http://www.cfd-online.com/Forums/openfoam/82876-hypersonic-cfd-free-code.html)

inginer December 8, 2010 08:17

hypersonic cfd free code???
 
hello forum,

as the title says my question is the following:

does anybody know a hypersonic cfd FREE code?

best,
Ovidiu

nakul December 9, 2010 13:25

Hi,

At present no solver exists for hypersonic flow in OpenFOAM. But you can always make your own. I was thinking of doing it but just couldn't find time.

If you want you may begin working on it and I could help.

JLight December 10, 2010 08:45

Well...none part of the official package ... there is one called aeroFoam that may be of interest to you

http://www.aero.polimi.it/freecase/?...namic_problems

This post may also be of interest (the above link is taken from here)

http://www.cfd-online.com/Forums/ope...-aerofoam.html

But I have not tested it (yet!). I am in the process of developing a solver myself. Hypersonic CFD code is a bit too general ... what type of flow conditions are you interested in.

chandramurthy December 10, 2010 13:46

density based solver
 
Hypersonic flows are characterized by strong energy-flow copuling, requiring a coupled solver (density based). Currenly this solver is not avilable in OF. A brief intriduction about this technology is highlighed by Prof. H jasak in the recent opensourcecfd conferece 2010.http://www.opensourcecfd.com/conference2010/proceedings/documents/Session_III/OSCIC2010_Rusche_Jasak.pdf.

alternatively, you can try open source density based code http://www.freecfd.com/

inginer December 16, 2010 08:44

hello JLight,

I have only the Mach number, which is 10 and the vehicle is flying on the layer of the stratosphere of the Earth.

thk for aeroFoam.
I have a small problem. Is not working on OF 1.7.0. My supposition is this version doesn´t have this C++ library: Cloud.H and passiveParticle.H

best,
Ovidiu

JLight December 16, 2010 09:51

AeroFoam for OpenFOAM-1.7.x
 
2 Attachment(s)
hi Ovidiu
OpenFoam does have the library. You need to edit the file in the Make directory. I have uploaded the necessary file in Make.zip

That was the easy part :rolleyes:, aeroFoam still has many errors :(. I do not have the time to go through it to figure out the logic and correct the code as of now (assuming i am able too :confused:), but i am open to the possibility in the coming week.

Hopefully you will have better luck than me! :)

Cheers!

JLight

PS: I also uploaded the log file for building AeroFoam to give you an idea of the problems encountered.

chandramurthy December 16, 2010 10:11

Quote:

Originally Posted by inginer (Post 287661)

I have only the Mach number, which is 10 and the vehicle is flying on the layer of the stratosphere of the Earth.

Ovidiu

U check the order of Knudsen number, is continuum mechanics valid at such a rarefied atmosphere?

rock.senthilkumar December 25, 2010 10:56

Hi JLight,
If u completed updation of AeroFoam for OF 1.6 + , please reply with details.

ivan_cozza December 28, 2010 06:18

I suggest you to contact Giulio Romanelli and Elisa Serioli at Politecnico di Milano, the authors of aeroFoam, maybe they could help you. The are very kind guys!

Ivan


Quote:

Originally Posted by inginer (Post 287661)
hello JLight,

I have only the Mach number, which is 10 and the vehicle is flying on the layer of the stratosphere of the Earth.

thk for aeroFoam.
I have a small problem. Is not working on OF 1.7.0. My supposition is this version doesn´t have this C++ library: Cloud.H and passiveParticle.H

best,
Ovidiu


rock.senthilkumar December 28, 2010 06:43

Hi Ivan,
Thank you for your suggestion.Surely I will contact them.

JLight March 19, 2011 17:42

Hypersonic CFD code
 
Hi All
Sorry I had gone MIA. I had some personal trouble that are now sorted.

:o Regarding AeroFoam, I did not get a lot of opportunity to fix it. However, in my attempts I was able to remove all the compiling errors ( to the best I knew was right) by updating the codes.

:confused: But I am not sure of a certain section which is the connectivity . In the file "CreateConnectivity.C" @ about line 110

Code:

forAll( mesh.boundaryMesh(), iPatch )
{
    forAll( mesh.boundaryMesh()[iPatch].faceAreas(), ii )
    {
       
        // Input
        id_L = mesh.boundaryMesh()[iPatch].faceCells()[ii];         
        i    = mag(mesh.boundaryMesh()[iPatch].whichFace(id_L));
               
        // *** ADAPTIVE VERSION *** ( works better with quad/hexa cells )
        if ( adaptiveConnectivitySearch == 1 )

:confused: the whichFace() will return -ve indexes from the way it is currently defined. Any ideas why whichFace does that?

More importantly I am not sure what the Authors are trying to do here so I was not sure if it needs 'fixing'. :confused:

This however is not reason I get runtime errors! The problem arises in the file "BuldFluxes.C" @ the lines about 57
Code:

    forAll( mesh->Sf(), i )
    {
        // Input
       
        id_L        = (*mesh).faceOwner()[i];
        id_R        = (*mesh).faceNeighbour()[i];

Not just the above, but all loops that use the mesh->.Sf() . What happens is the loops seems to step over the arrays by 1 all the time (causing an error). I tried working this out but my debugger takes like a hour to step every single time into the code :( .

Also I would appreciated if someone tried this on a give known working example. I have not done this, may be the results may be different!

Any help will be appreciated.

The files are located here
http://sourceforge.net/projects/aerofoam/

Nishit

Solarberiden June 17, 2011 03:42

JLight, thanks for you major contribution about the correction and update the AeroFoam 1.7.1 version, I tried some cases in the aeroFoam 1.7.1 and I feel that, the code in CreateConeectivity.C line 110 should be changed form

i = mag(mesh.boundaryMesh()[iPatch].whichFace(id_L));

into

i = mag(mesh.boundaryMesh()[iPatch].start() + ii);

during running the case of OneraM6 and YF-17, the storage of connectivity file routing should be changed from

./Data
./Log

to

../Data
../Log

further feedback about this post is welcome. :-]

Andy_bm January 18, 2012 09:16

AeroFoam 1.7.1
 
Hi.
I have downloaded AeroFoam 1.7.1 from http://sourceforge.net/projects/aerofoam/ and has compiled it.Errors at compilation was not found, but when I have begun test AeroFoam on an example OneraM6,ObliqueShock it doesn't work and gives out the following error:
for ObliqueShock log .o file:
Code:

Create time
Create mesh for time = 0
// using new solver syntax:
cellDisplacement
{
solver PCG;
preconditioner DIC;
tolerance 1e-08;
relTol 0;
}
========================================
Reading Thermodynamic Properties...
========================================
gamma [-] = 1.4
Pr [-] = 0.72
R [J/KgK] = 287.05
Cp [J/KgK] = 717.625
Cv [J/KgK] = 1004.67
----------------------------------------
========================================
Reading Initial Conditions...
========================================
Reading field p
Reading field T
Reading field U
This is a start 10 %
19 %
This is a start 10 %
19 %
29 %
This is a start 10 %
19 %
29 %
This is a start 10 %
19 %
29 %
This is a start 10 %
19 %
29 %
This is a start 9 %
19 %
28 %
This is a start 9 %
19 %
28 %
----------------------------------------
Creating conservative variables at t^(k)
Creating conservative variables at t^(k-1)
Creating conservative variables at t^(k-2)
Creating conservative variables fluxes at t^(k)
Creating primitive variables gradient fields (optional)
----------------------------------------
========================================
Creating Mesh Connectivity...
========================================
Using adaptive algorithm...
id_LL_i216SIZE84Loop on Internal Faces...
i=0i=1i=2i=3i=4i=5i=6i=7 10 %
i=8i=9i=10i=11i=12i=13i=14i=15 19 %
29 %
39 %
48 %
58 %
67 %
77 %
87 %
96 %
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
99 %
38 %
47 %
56 %
66 %
75 %
85 %
94 %
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
99 %
i=16i=17i=18i=19i=20i=21i=22i=23 29 %
i=24i=25i=26i=27i=28i=29i=30i=31 38 %
i=32i=33i=34i=35i=36i=37i=38i=39 48 %
i=40i=41i=42i=43i=44i=45i=46i=47 57 %
i=48i=49i=50i=51i=52i=53i=54i=55 67 %
i=56i=57i=58i=59i=60i=61i=62i=63 76 %
i=64i=65i=66i=67i=68i=69i=70i=71 86 %
i=72i=73i=74i=75i=76i=77i=78i=79 95 %
i=80i=81i=82i=83----------------------------------------
Loop on Boundary Faces...
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
98 %
----------------------------------------
========================================
Mesh
39 %
48 %
58 %
67 %
77 %
87 %
96 %
9 %
18 %
28 %
37 %
46 %
56 %
65 %
75 %
84 %
94 %
38 %
48 %
57 %
67 %
76 %
86 %
95 %
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
98 %
38 %
48 %
57 %
67 %
76 %
86 %
95 %
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
98 %
38 %
48 %
57 %
67 %
76 %
86 %
95 %
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
98 %
38 %
47 %
56 %
66 %
75 %
85 %
94 %
9 %
19 %
29 %
39 %
49 %
59 %
69 %
79 %
89 %
99 %
========================================
# of Faces = 84
# of Cells = 50
# of BndPatch = 8
0) supersonicInlet @ inlet
1) extrapolatedOutlet @ outlet
2) symmetryPlane @ bottom
3) supersonicInlet @ top
4) empty @ defaultFaces
5) @ procBoundary0to1
6) @ procBoundary0to2
7) @ procBoundary0to3
----------------------------------------
========================================
Numerical Scheme
========================================
flowType = Euler
timeScheme = RK2
CourantMax = 0
CourantSteps = 25
MonotoneFlux = Roe
HighResFlux = LW
fluxLimiter = VL
entropyFix = HH2
extrapolateBC = 1
residualNorm = L1
minResidual = -1
----------------------------------------
Does everything look fine? [y] to continue [n] otherwise
Starting time loop...
SIZE84blf fx i=0
blf fx i=1
...........
blf fx i=83

And further the case isn't considered and gives out an error
(Foam::error::printStack)
For other cases there are same problems.

Thanks.

Solarberiden January 18, 2012 09:44

Actually I have poured a lot of time on aeroFoam for promote more time integration feature for the code but I could not manage to build more feasible and robust flux schemes on high mach number backward facing step (strong expansion wave problems), I am willing to offer my code but I don't know how. And I would like to provoke some others on proceeding the more powerful aerofoam features. Any body interested of sharing my code?

Andy_bm January 18, 2012 09:53

I am interested. what its difference from code Aerofoam, i don't understand? What version openfoam it is constructed? Whether you know how to rectify my error?

Solarberiden January 18, 2012 10:06

On what version the code was constructed didn't matter, I am just using the code on openfoam 2.0 and it is working well. Questions:
1 - What test case are you just running?
2 - Have you ever tried other test cases aerofoam?
3 - you should first locate where is the "blf fx i=1
...........
blf fx i=83" instructions, it looks strange for me and it does not appear to be right for me.
could you please let me know where you locate the "blf fx i = xxx" instructions.
:-]

Andy_bm January 18, 2012 10:26

I tested Aerofoam on obliqueshock case.I don't know how this solver worked,and don't know that means "blf fx i=1" in the log.

I work over a problem stream injection in vacuum. Start Mach numder > 3..4, at present I use rhoCentralFoam on OpenFOAM v2.0.1,heard that aerofoam gives out very good results, and i wanted to compare it.

Solarberiden January 18, 2012 11:07

please leave your email address and I will send you a copy of the code if I've got the time. Currently, I am not on my working post. I guess you need to wait for quite a while. I will get you informed. :-]

nishant_hull May 31, 2013 08:49

Aerofoam
 
Hi Solarbiden,

I would be interested in helping to debug the case. I have previously done some development on openfoam. However I am new to Aerofoam and I was attracted towards it for its applicability in supersonic cases. I was also wondering if it can be used in aeroelastic applications? My email is nishant.nitj@gmail.com for any communication.

Thanks and regards,

Nishant


All times are GMT -4. The time now is 21:22.