conservation-laws / ryujin

High-performance high-order finite element solver for hyperbolic conservation equations
https://conservation-laws.org
Other
103 stars 25 forks source link

Mesh file and supersonic nozzle #130

Closed gregorychristian closed 2 months ago

gregorychristian commented 2 months ago

Adds GrindIn object for .msh imports and a supersonic nozzle prm file.

tamiko commented 2 months ago

@gregorychristian Thanks a lot for your contribution!

I have a couple of suggestions that I want to discuss with you. For this I will split out the geometry reader part into a separate pull request (the commits will of course still attribute you as author!).

In this regard I noticed that you commited with "gregorychristian" instead of "Gregory Christian", meaning your might have not set your name correctly in your git configuration. If you don't mind I'll fix your author name in the commits.

tamiko commented 2 months ago

@gregorychristian mhm I think we already have these exact same initial/boundary conditions implemented in ryujin. The state configuration is called contrast. For example, something like this:

subsection E - InitialValues
  set configuration = contrast
  set direction     = 0, 1
  set position      = 0, -0.399999

  subsection contrast
    set primitive state left  = 10.0, 2., 1.00  #  rho, v, p
    set primitive state right = 0.01, 0., 0.01  #  rho, v, p
  end
end
gregorychristian commented 2 months ago

I think there are only two differences:

  1. The nozzle in and out boundaries go from top to bottom instead of right to left.
  2. (point[0] > 1e-6) instead of (point[0] > 0.)

I'm planning on adding a few more things to the nozzle config (some sort of AMR), still need to test them locally.

tamiko commented 2 months ago

@gregorychristian Apologies, I wasn't very precise with my comment: We normalize all initial configuration to move/point/flow in x-direction. The set direction = 0, 1 option in subsection E - InitialValues then rotates the configuration by 90° counterclockwise. The set position = 0, -0.399999 then moves the origin to the specified position. So you can simply encode your > 1.0e-6 there :smiley:

gregorychristian commented 2 months ago

@tamiko Thanks, I'll change the .prm file to use the default contrast configuration and include the .msh file. Shall I close this pull request and open a new one?

tamiko commented 2 months ago

@gregorychristian It would be very nice to get the mesh and a "benchmark" configuration into prm/benchmark. But yes, we can do that in a separate pull request.