|
[Sponsors] |
![]() |
![]() |
#1 |
New Member
Nathan Godfrey
Join Date: Nov 2011
Posts: 2
Rep Power: 0 ![]() |
I am editing the aachenbomb case in the dieselFoam tutorial to create a multihole injector in a larger meshgrid. I have completed this but am unable to define an injection pressure because this variable only seems to be used in the commonRailInjectorProps section in the injectorProperties file.
I essentially have what I'm trying to do, but cannot find how to define my injection pressure as 650 bar. Any help/insight would be greatly appreciated. Regards, Nathan |
|
![]() |
![]() |
![]() |
![]() |
#2 |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Greetings Nathan and welcome to the forum!
edit: Arrg... sorry about that, I re-read your post and now I understand that your questions wasn't how to add another injector... I guess the instructions below don't answer your question ![]() I think I managed to figure it out. Here's what needs to be done:
![]() Best regards, Bruno
__________________
Last edited by wyldckat; January 3, 2012 at 16:19. Reason: see "edit:" |
|
![]() |
![]() |
![]() |
![]() |
#3 | |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
OK, second try at helping you:
Quote:
Another detail that you should take into account is the recent findings about a related solver - read this thread for more information: http://www.cfd-online.com/Forums/ope...m-2-1-0-a.html Best regards, Bruno
__________________
|
||
![]() |
![]() |
![]() |
![]() |
#4 |
New Member
Nathan Godfrey
Join Date: Nov 2011
Posts: 2
Rep Power: 0 ![]() |
Bruno,
Thanks for your timely responses. I have ran and done some post processing on an injection event already, using the "multiHoleInjector". It all works fine, but the flowrates through the holes are not sufficient. For the specific case that I am simulating, the injection pressure is 650 bar. I noticed that if I was using a "commonRailInjector", I would be able to define the "injectionPressure" within the "commonRailInjectorProps". It seems that the injection pressure is only definable using the commonRailInjector. I suppose my question is whether the injectionPressure is definable in the multiHoleInjector or whether the commonRailInjector can have multiple holes. The main changes made to the tutorial's case is in the injectionProperties and in defining the mesh. Below is a copy on the text within this file (with the unused commonRailInjectorProps there to show what I mean). ( { injectorType multiHoleInjector; multiHoleInjectorProps //added set of props { position (0.0 0.0295 0.0); xyAngle -90.0; zAngle 90.0; nHoles 5; umbrellaAngle 142.0; nozzleTipDiameter 1.0e-3; angleSpacing ( 0.0 72.0 72.0 72.0 72.0 ); diameter 1.8e-4; Cd 0.86; mass 20.0e-6; nParcels 5000; X ( 1.0 ); massFlowRateProfile //(not yet specified) ( (0 0.1272) (4.16667e-05 6.1634) (8.33333e-05 9.4778) (0.000125 9.5806) (0.000166667 9.4184) (0.000208333 9.0926) (0.00025 8.7011) (0.000291667 8.2239) (0.000333333 8.0401) (0.000375 8.845) (0.000416667 8.9174) (0.000458333 8.8688) (0.0005 8.8882) (0.000541667 8.6923) (0.000583333 8.0014) (0.000625 7.2582) (0.000666667 7.2757) (0.000708333 6.968) (0.00075 6.7608) (0.000791667 6.6502) (0.000833333 6.7695) (0.000875 5.5774) (0.000916667 4.8649) (0.000958333 5.0805) (0.001 4.9547) (0.00104167 4.5613) (0.00108333 4.4536) (0.001125 5.2651) (0.00116667 5.256) (0.00120833 5.1737) (0.00125 3.9213) ); temperatureProfile ( (0.0 320.0) (0.00125 320.0) ); } commonRailInjectorProps { position (0 0.0995 0); direction (0 -1 0); diameter 0.00019; mass 6e-06; injectionPressure 200.0e+5; temperature 320; nParcels 5000; X ( 1.0 ); massFlowRateProfile ( (0 0.1272) (4.16667e-05 6.1634) (8.33333e-05 9.4778) (0.000125 9.5806) (0.000166667 9.4184) (0.000208333 9.0926) (0.00025 8.7011) (0.000291667 8.2239) (0.000333333 8.0401) (0.000375 8.845) (0.000416667 8.9174) (0.000458333 8.8688) (0.0005 8.8882) (0.000541667 8.6923) (0.000583333 8.0014) (0.000625 7.2582) (0.000666667 7.2757) (0.000708333 6.968) (0.00075 6.7608) (0.000791667 6.6502) (0.000833333 6.7695) (0.000875 5.5774) (0.000916667 4.8649) (0.000958333 5.0805) (0.001 4.9547) (0.00104167 4.5613) (0.00108333 4.4536) (0.001125 5.2651) (0.00116667 5.256) (0.00120833 5.1737) (0.00125 3.9213) ); injectionPressureProfile ( (0.0 1.0) (0.00125 1.0) ); } } ) The other way to achieve what I'm trying to achieve, is maybe to redefine the injector mass flow profile, but it would be much easier to define an injection pressure as in the commonRailInjectorProps. Thanks, Nathan Last edited by ndg.godfrey; January 4, 2012 at 08:19. |
|
![]() |
![]() |
![]() |
![]() |
#5 |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Hi Nathan,
I haven't managed to look deeper into this, but the following wiki page should get you farther: http://openfoamwiki.net/index.php/Contrib_dieselFoam - going deeper into the links will get you to these pages: Also, when in doubt, check the source code... although more doubts might arise... Good luck! If you still have questions after going through those pages, feel free to ask. Hopefully most people will be back from vacations by then. If you find the solution, feel free to share it as well! Best regards, Bruno
__________________
|
|
![]() |
![]() |
![]() |
![]() |
#6 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
I am a newbie to Openfoam as well as cfd. I am trying to experiment with the Dieselfoam tutorial. I have a completely new geometry which i meshed using gmsh. I cannot share the geometry but it is something like the good olde time telephone recievers with an injector at the place where one holds the reciever i.e. on the bend (sorry, this is the best i can describe the geometry ![]() How do i give the position of my new injector?? The geometry was created in proE (not by me). Is there anyway to exactly determine the position?? It would be great to get some help here. Thanks in advance Regards Abhinay |
|
![]() |
![]() |
![]() |
![]() |
#7 |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Greetings Abhinay,
Mmm... OK, if the mesh is already converted to be used in OpenFOAM, then you can run: Code:
paraFoam Then on ParaView things will get tricky, but you can use the "points selection" button... wait, it took me a while to find this, but here is a better explanation of what you can do: http://paraview.org/Wiki/ParaView/Users_Guide/Selection Good luck! Bruno
__________________
|
|
![]() |
![]() |
![]() |
![]() |
#8 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
Thank you for your help...I will try it out ...hope it works ![]() |
|
![]() |
![]() |
![]() |
![]() |
#9 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
I tried out the way you suggested but i am very confused here. With the method i am able to select cells and points in the mesh and see there id's that is all. How do i make that particular part as my injector?? I dont understand exactly how to do that. Is there any other way or a more detailed way on exactly how i can do it?? Regards Abhinay |
|
![]() |
![]() |
![]() |
![]() |
#10 | |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Hi Abhinay,
Quote:
Then you will have to edit the files mention on the post #2 above, where you can then textually edit the positions on the files. On post #5 you should find links to the openfoamwiki.net where more details are explained! By the way, have you read the OpenFOAM User Guide? See here: http://www.openfoam.org/docs/user/ - I ask this because I can't figure out if you are already aware or not that things with OpenFOAM are mostly done by manually editing text files! Best regards, Bruno
__________________
|
||
![]() |
![]() |
![]() |
![]() |
#11 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
Thanks a lot for your help. I was able to determine the position of my injector!!! Regards Abhinay |
|
![]() |
![]() |
![]() |
![]() |
#12 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
Thanks for all your help till now. I have a new task in hand and i was hoping to get some advice from you. I want to simulate a flow through my geometry (the one described in my first post). I wanted to first start of by using air to flow through the geometry and spraying a fuel from my injector. My question is which is the solver i can use to simulate such a case?? Is dieselfoam the best option or can you suggest any other solver?? Thank you in advance Regards Abhinay |
|
![]() |
![]() |
![]() |
![]() |
#13 |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Hi Abhinay,
I'm sorry, but that I'm unable to answer, simply because I don't know ![]() If anyone else is reading this forum and knows the answer, please reply. Good luck! Bruno
__________________
|
|
![]() |
![]() |
![]() |
![]() |
#14 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
Its me again!! This time i just wanted to ask you for some basic explanation. Can you kindly explain the initial conditions of the dieselFoam tutoarial (the 0 directory)?? I just wanted to know what each entry is exactly. The p, U, T, N2, O2 files are ok, but the others i am a bit confused in understanding there exact meaning. The tutorial does not throw much light on them (atleast from a beginers point of view) Can you kindly explain this or direct me to some page which has the detailed explanation?? Also is there a detailed explanation on the boundary conditions in openfoam??(other than the one in the userguide) Thank you in advance Regards Abhinay |
|
![]() |
![]() |
![]() |
![]() |
#15 |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Hi Abhinay,
I don't know much about these, but here is what I know:
Code:
ls -l $FOAM_SRC/thermophysicalModels ls -l $FOAM_APP/solvers/combustion/dieselFoam ls -l $FOAM_APP/solvers/combustion/dieselEngineFoam Bruno
__________________
|
|
![]() |
![]() |
![]() |
![]() |
#16 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
Thank you for all your help till now. I have learnt a lot through you. I do have a new problem though , i have asked many people on the forum about this but have sadly got no replies. I know this is not the right thread to ask this but i am hopeful that you will give me some much needed help. Here comes my problem. As i told you before i want to simulate a steady state compressible flow through my geometry (the telephone) for this i have selected the rhoSimplefoam solver. The solver runs for a few steps and then crashes with the following error Time = 186 smoothSolver: Solving for Ux, Initial residual = 0.00992166, Final residual = 0.000578669, No Iterations 4 smoothSolver: Solving for Uy, Initial residual = 0.00774996, Final residual = 0.000440937, No Iterations 4 smoothSolver: Solving for Uz, Initial residual = 0.0168676, Final residual = 0.000958473, No Iterations 4 DILUPBiCG: Solving for h, Initial residual = 0.0136817, Final residual = 8.63913e-05, No Iterations 2 #0 Foam::error: ![]() #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam201/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #2 Uninterpreted: #3 Foam::hPsiThermo<Foam: ![]() ![]() #4 Foam::hPsiThermo<Foam: ![]() ![]() #5 in "/opt/openfoam201/platforms/linuxGccDPOpt/bin/rhoSimpleFoam" #6 __libc_start_main in "/lib/i386-linux-gnu/libc.so.6" #7 in "/opt/openfoam201/platforms/linuxGccDPOpt/bin/rhoSimpleFoam" Gleitkomma-Ausnahme Could you please help me in understanding this error?? I am not able to upload any files on the forum (dont know why) i can give you my case details via email if you want to have a look at it. Will be glad to get some help. Regards Abhinay |
|
![]() |
![]() |
![]() |
![]() |
#17 |
Retired Super Moderator
Bruno Santos
Join Date: Mar 2009
Location: Lisbon, Portugal
Posts: 10,978
Blog Entries: 45
Rep Power: 128 ![]() ![]() ![]() ![]() ![]() ![]() |
Hi Abhinay,
You could have sent me a private message with a link to the post you've made with your question. Anyway, this is too little information to even try and figure out what went wrong. There are a few indicators that would point us and you in the right direction:
![]() Best regards, Bruno
__________________
|
|
![]() |
![]() |
![]() |
![]() |
#18 |
New Member
Join Date: Jan 2012
Posts: 23
Rep Power: 14 ![]() |
Hi Bruno,
Thank you for your explanation of possible errors which i could have made. As it turned out i had made mistakes in defining the units, now my solution runs without a problem although i am not sure about my results. As always i have a new set of questions to ask, so here i go 1. Is there a detailed explanation of thr rhoSimplefoam solver ?? i mean to understand the math behind it (any paper or thesis which has been published) or i have to look in the source code (my c++ is not great ![]() 2. Now that i have a flow through my geometry i have tried mapping the results which i have got from the rhoSimpleFoam solver to the dieselFoam solver to get my spray in. When i run the dieselFoam solver i get the following error Number of parcels in system.... | 757 Injected liquid mass........... | 0.0030627 mg Liquid Mass in system.......... | 0.00303862 mg SMD, Dmax...................... | 92.7246 mu, 149.99 mu Added gas mass................. | -0.0846503 mg Evaporation Continuity Error... | -0.0846744 mg ExecutionTime = 1489.36 s ClockTime = 2171 s Courant Number mean: 0.000304065 max: 0.099982 deltaT = 8.96168e-09 Time = 7.02874e-06 Evolving Spray Solving chemistry diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for Ux, Initial residual = 1, Final residual = 2.59691e-09, No Iterations 1 DILUPBiCG: Solving for Uy, Initial residual = 1, Final residual = 2.59691e-09, No Iterations 1 DILUPBiCG: Solving for Uz, Initial residual = 1, Final residual = 2.59691e-09, No Iterations 1 DILUPBiCG: Solving for C7H16, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for O2, Initial residual = 1.37477e-05, Final residual = 1.58529e-14, No Iterations 1 DILUPBiCG: Solving for CO2, Initial residual = 0, Final residual = 0, No Iterations 0 DILUPBiCG: Solving for H2O, Initial residual = 1.37486e-05, Final residual = 1.22506e-14, No Iterations 1 DILUPBiCG: Solving for hs, Initial residual = 8.11689e-05, Final residual = 7.45786e-11, No Iterations 1 DICPCG: Solving for p, Initial residual = 1, Final residual = 5.16205e-10, No Iterations 1 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors : sum local = 1.26901e-09, global = 1.09284e-09, cumulative = 1.09284e-09 DICPCG: Solving for p, Initial residual = 0.999962, Final residual = 2.06666e-12, No Iterations 7 diagonal: Solving for rho, Initial residual = 0, Final residual = 0, No Iterations 0 time step continuity errors : sum local = 0.0499845, global = -0.000127127, cumulative = -0.000127126 DILUPBiCG: Solving for epsilon, Initial residual = 0.872337, Final residual = 6.07289e-13, No Iterations 5 bounding epsilon, min: -1.85724e+25 max: 1.64159e+26 average: 2.5056e+21 DILUPBiCG: Solving for k, Initial residual = 0.938269, Final residual = 1.69242e-14, No Iterations 4 bounding k, min: -9.95546e+08 max: 1.42988e+09 average: 29339.6 Number of parcels in system.... | 758 Injected liquid mass........... | 0.00306974 mg Liquid Mass in system.......... | 0.00304566 mg SMD, Dmax...................... | 92.7582 mu, 149.99 mu Added gas mass................. | 1.28083e+09 mg Evaporation Continuity Error... | 1.28083e+09 mg ExecutionTime = 1491.47 s ClockTime = 2174 s Courant Number mean: -1.2435 max: 1.00592e+06 deltaT = 8.90898e-16 --> FOAM Warning : From function Time: ![]() in file db/Time/Time.C at line 937 Increased the timePrecision from 6 to 7 to distinguish between timeNames at time 7.02874e-06 Time = 7.028743e-06 Evolving Spray Solving chemistry #0 Foam::error: ![]() #1 Foam::sigFpe::sigHandler(int) in "/opt/openfoam201/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #2 Uninterpreted: #3 Foam::sqrt(Foam::Field<double>&, Foam::UList<double> const&) in "/opt/openfoam201/platforms/linuxGccDPOpt/lib/libOpenFOAM.so" #4 Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::sqrt<Foam::fvPatchField, Foam::volMesh>(Foam::tmp<Foam::GeometricField<doub le, Foam::fvPatchField, Foam::volMesh> > const&) in "/opt/openfoam201/platforms/linuxGccDPOpt/bin/dieselFoam" #5 in "/opt/openfoam201/platforms/linuxGccDPOpt/bin/dieselFoam" #6 __libc_start_main in "/lib/i386-linux-gnu/libc.so.6" #7 in "/opt/openfoam201/platforms/linuxGccDPOpt/bin/dieselFoam" Gleitkomma-Ausnahme Any suggestions?? As you had adviced i have started to make Simulations with rhoSimpleFoam using smaller problem in a bid to understand in abetter way. I think when one has time constraints (like i do) reverse engineering is the best way ![]() Thank you once again Regards Abhinay |
|
![]() |
![]() |
![]() |
Tags |
commonrail, dieselfoam, injection pressure, injectorproperties, multihole |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] Multi region meshing & recovering the original patch names | fluidpath | OpenFOAM Meshing & Mesh Conversion | 4 | May 19, 2013 19:13 |
Cutting a hole in the engine cylinder head in KIVA | CWL | Main CFD Forum | 6 | January 7, 2010 06:37 |
java injector creation | bramv101 | STAR-CCM+ | 2 | September 15, 2009 10:40 |
How to find hole in mesh | prateek jain | CFX | 5 | May 24, 2007 07:06 |
Cd value....hole in a rectangular tank.... | karthik | FLUENT | 2 | October 29, 2005 13:11 |