Closed Alex070720 closed 3 years ago
Hi Alexander,
Thanks for getting in touch and contributing! I am creating a reference to your pull request #61 and to the current solution 79086c1 for future reference.
I use 3-temperature model for thermal non-equilibrium. That's impressive. What is the 3rd temperature? Rotational or electron temperature?
Regards, Vincent
Hello Vincent,
thank you for your answer.
The three temperatures are: translational-rotational, vibrational, electron-electronic temperature where the electronic-excitation energy and that of the free electrons are considered as one energy pool (Chul Park suggestion). I have modelled electric discharges in high-speed flows.
My suggestion with the additional dictionary entry is of course not optimal. I have therefore already prepared another solution to this issue by modifying the source code. There, everything happens automatically, no matter what the reaction looks like and what order it has. But you have to enter everything in the chemical dictionaries in the traditional way in cgs units.
As I understand, in your solution you have adapted the coefficients to the mks units?
Furthermore, I have made some corrections in the diffusion models (collisionDataO), which I will commit soon. I will also extend the ambipolar diffusion a bit more.
You have done a great job here and it definitely should be continued.
Regards
Alexander
Hi Alexander,
As I understand, in your solution you have adapted the coefficients to the mks units?
Yes*, I added ln(1000) to the A1 coefficient for each reaction that needed it: exp(ln(1000) + A1 + ...) = 1000exp(A1 + ...) My concern about your solution, though it may be more elegant, is that it would require another edit to the chemical dictionaries and would thus increase the odd of somebody using the new code with the old chemdict. It happened already last year.
** almost, OpenFOAM uses kmol instead of mol. The units are given at the top.
// Units
// A: m^3 kmol^-1 s^-1
// Ta: K
Furthermore, I have made some corrections in the diffusion models (collisionDataO), which I will commit soon. I will also extend the ambipolar diffusion a bit more.
That's great, thanks. Concerning your first point, you could have a look at the current version of this class, to be found in the dev branch dev-isro-1 (9b0c5f0, by @vinayukp and myself), to make sure there is no overlap (I can help you with that if needed). https://github.com/vincentcasseau/hyStrath/blob/dev-isro-1/src/thermophysicalModels/strath/strathSpecie/transport/speciesDiffusion/diffusionModels/collisionDataO/collisionDataO.C
This branch will soon be merged to consolidate the master branch.
Thanks for your support and your willingness to contribute :)
Regards, Vincent
Hi Vincent,
I'll have another look at all this.
I just realised that my github knowledge is modest. I did another pull request a few hours ago without considering this post of yours.
I will look at all this again.
Regards
Alex
Hi Alex,
Feel free to contact me by email to coordinate CFD pull requests prior to branch merging.
Thanks, Vincent
Hi Vincent,
I have looked at 9b0c5f0 (dev-isro-1). You have already done the bug fixes I have suggested in my last pull request and even much more. I have closed my latest pull request because of this. The main problem was the forgotten exponential function in the curve fit.
As you suggested, next time I will contact you via email first before opening a new pull request. Where can I find your email address on the site?
I also have seen that in the hy2Foam in the YEqn.H you have already fixed the problem with the diffusion term for electrons. That would have been my next concern (my next pull request probably). It's really great that you are still working so actively on this nice project. But when people like me download hyStrath (for OF1706) then they don't get all the improvements and think hyStrath is full of bugs, which is not true (see dev-isro-1). And they stop working with hyStrath. When do you plan to implement the improvements in the regular version and what about the adaptation to a newer OF version? I know, we all have not so much time :-).
What I haven't seen yet is the ambipolar diffusion. Are you planning to implement something in that direction? For example, something like in the paper of Ramshaw and Chang: "Computational Fluid Dynamics Modeling of Multicomponent Thermal Plasmas" from 1991? These would be just a few additional lines in the multiSpeciesTransportModel. But then in the YEqn.H of hy2Foam for each species something like fvc::div(Flux) must be implemented in stead of the implicit laplace operator.
I will definitely update my version using the dev-isro-1.
Thank you.
Kind regards
Alex
Hi Alex,
It is in People and Contact, at the very bottom. It is somewhat hidden so I don't get spammed too much.
I created a separate branch because the modifications introduced are not backward compatible.
Please do not update your version to dev-isro-1, it is not meant to be used (this is the reason why it wasn't mentioned). I could merge it now, create the new Release tag, and provide the command lines to help you migrate. The How-tos are also updated. The only thing missing is the reacting test case to replace the Mach 20 cylinder.
There is no plan for new developments (other than debugging and reviewing pull requests) nor an update to a more recent version of OF in the foreseeable future at my end. As you can see on the Solvers pages, it's been volunteering work for a couple of years. I know that I don't have the time anymore during the year and I don't want to make false promises.
Regards, Vincent
Hello Vincent,
OK, got it. The dev-isro-1 is probably at the moment like a big construction site.
You mentioned:
I could merge it now, create the new Release tag, and provide the command lines to help you migrate.
Only if it is not to much work for you! Otherwise, I could try to replace the classes I want to use with new ones from dev-isro-1?
The only thing missing is the reacting test case to replace the Mach 20 cylinder.
This is not a problem.
On the other hand, if you're going to merge dev-isro-1 with master soon, then I can wait. Do you already know when you want to do it?
Am I actually the one who should close this issue? I don't know the rules yet :-)
Regards
Alex
Hi Alex,
This is done in f120fb5 and a new tag has been created. I put the set-up of the new fireII cases at the last minute, the results will follow. Please let me know if something is not working (by opening a dedicated issue).
Regards, Vincent
Hello Vincent,
I first posted this question on: https://www.cfd-online.com/Forums/openfoam-news-announcements-other/184650-hypersonic-supersonic-flow-solvers-2.html#post786755
First of all I would like to say that I like your work very much. I have written a similar solver but in a very light and immature version (compared to your project). My programming skills are unfortunately quite moderate. My solver is based on sonicFoam instead of rhoCentralFoam, I wrote it based on foam-extend-4.0 and I use 3-temperature model for thermal non-equilibrium.
I am currently testing your hy2Foam solver. I have a question regarding chemistry: As I have seen in the chemical mechanisms in the hy2Foam tutorials, you calculate the forward reaction rate constant (k_f) in m^3/(kmole s). Then you calculate the equilibrium constant K_eq by using the curve-fit coefficients in order to calculate k_b. But the unit of k_b can vary depending on the reaction. For example, the backward constant remains in m^3/(kmole s) for such reactions as NO + O = O2 + N (exchange reaction). This means that K_eq is in this case dimensionless. For reactions of type AB -> A + B (dissociation reaction), such as N2 + M = 2N + M, k_b is in m^6/(kmole^2 s). In this case K_eq is no longer dimensionless and gets the following dimensions: m^3/(kmole s). Since the Arrhenius coefficients are mostly (Gupta, Dunn and Kang Park ...) given in cm^3/(mole s) or cm^6/(mole^2 s), you have to multiply K_eq by 1000 for the reactions of the type AB -> A + B in order to convert K_eq from CGS units to MKS units. My question is: where does it happen in the source code? Or am I mistaken?
Thanks in advance.
Kind Regards
Alexander