ucns3d-team / UCNS3D

Unstructured Compressible Navier Stokes 3D code (UCNS3D)
https://ucns3d.com
GNU General Public License v3.0
256 stars 92 forks source link

General Questions about Future Features and Overall Usage #67

Closed plaad closed 7 months ago

plaad commented 1 year ago

Hi, I am a current doctoral student seeking to use this code/develop it for my research project. I was able to find the test cases and run them no problem, but currently, my group aims to make grids independently and write them to Fluent format (.msh format) so there is some trial and error here to get the format correct. I wanted to request/ask about some things I noticed in my brief exposure to the test cases and hope this serves as a useful post for first time users seeking the same basic answers when using the code:

1) Are there plans to support more generic grid formats (e.g., Plot3D, CGNS, etc.)? My group uses GMSH to make structured grids, but it has been a bit tedious to convert it to a usable format manually. I understand most output seems to be from commercial packages like Pointwise, but having a generic mesh option like Plot3D would be really helpful.

2) I saw between the ILES and DDES/RANS cases, there's a distinction between using an initial conditions profile 4 and 95. I looked through the various case .dat files provided but do not understand how I would be able to distinguish between using ILES and DDES outside of choosing to use a specified wall model; is it more due to the spatial order of accuracy being used?

3) I see at the bottom of the end of the input.md file on the Github page that freestream conditions must be made for any inlet/outlet profiles. For any BCs, where do I specify the actual conditions (e.g. pressure for pressure-outlet, or wall temperature in laminar Navier-Stokes simulation)? If this is specified within the input deck, how would I go about this? Further, if this is specified in the initial profile 4, how can I format this/find a template for the initial profile 4 and 95 to understand what inputs may be possible? I understand I can make a new profile in the source code through modification of the profile.f90 file, but is this the approach for any new cases to be run? In the event I run an isothermal wall and need to specify the wall temperature, how would I specify this in a new profile I am to make (if you all can give a quick pointer as an example)?

4) I saw that there were some capabilities for multi-component gas for inviscid simulation; are there any plans to add multi-species capabilities for viscous flows? My work will revolve around viscous reactive flow modeling, so the plan was to develop the solver to add such capabilities suited to my area of research, but I was not sure if that was something you all may be considering already.

5) Can I specify spatial/temporal-varying input profiles to an inlet condition/are user-defined functions for BCs supported? If so, what is the best approach to add this capability to an existing profile for a run?

Apologies if any of these questions may be trivial, as this is my first time navigating such a code. I want to be sure I am navigating the code effectively/understanding how to best use it. Thanks for your time.

SRkumar97 commented 9 months ago

Hi! I'm sorry that I came across your thread just today. It's been almost 4-5 months since I accessed the code. I am also sailing on an almost similar boat wrt features and usage of the code. Regarding your queries -

By default the initial conditions profile should be kept 4. This is named as CODE_PROFILE, though in the inputs.md page https://github.com/ucns3d-team/UCNS3D/blob/master/docs/inputs.md If you read through the inputs.md very carefully, you'll notice that there are different input values for this, such as 1 - jacobi for DDES, 11 - matrix free lu-sgs for DDES, etc. As you noticed at the bottom of the page, there is a section - Additional Notes. In which they have explained about the profile.f90 through which ANY customized flow profile can be coded. There are numerous profiles pre-built in the profile.f90 - we can customize which region of the flow field do we wish to specify - by using the appropriate matrix/work array and the corresponding indices. So careful digging is required to specify flow-field values at specific BC locations. The profile=95 is pre-set for the Taylor Green Vortex iLES case. You may change it, or add a new profile with a different number. For my simulations, I need to specify a complete boundary layer profile at the inlet. I was advised to modify the profile.f90 https://github.com/ucns3d-team/UCNS3D/issues/47#issuecomment-1622221038

Reg. other doubt,

All conditions which we specify in the UCNS3D.DAT are taken as inlet/freestream conditions. For code profile (or) initial conditions profile set to 4, the values specified for these variables are used as the inlet values. E.g. for a Mach 2.3 flow case with Pinf=3998.75 Pa, RHO_inf=0.09558 kg/m3,

FREE-STREAM CONDITIONS Density |||| U-velocity||||V-velocity ||||W-velocity ||||Pressure(if -1 then pressure=rho/gamma) 0.09558 556.6353 0.0 0.0 3998.75

This is the way freestream values are set. There are no unit conventions followed. We need to enter all values from the same SI unit of our choice.

Being a user, I am not in a position to guide/help any further with your queries. Regards s ramkumar

plaad commented 7 months ago

Hi SRKumar97, thanks for getting back to me! I actually have been figuring things out as well by going through the examples/making modifications and seem to have gotten a handle on it since making this post. Thanks for your help however as I am sure it will be helpful to newer users.