Windtunnel/Boundary Conditions/on Object

From Arbeitsgruppe Kuiper
Revision as of 15:52, 12 June 2025 by Lothar.brendel (talk | contribs) (→‎Open Questions: +Solid Boundaries near CPU boundaries (found by Beat))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

up

Open Questions

Neighbor Data

In function Boundary(), function UserDefBoundary() is called with side=0 before data is exchanged with neighboring domains. Hence, when working on BCs for internal boundaries, oldold data are used?

Solid Boundaries near CPU boundaries

no caption with center

Data fetch problem in PLUTO (assuming 2 ghost cells): If the solid extends into the neighboring CPU domain by one cell, the data to be copied into the solid ghost cell needs to come from a domain cell beyond the CPU ghost cells of CPU i.

Solutions?

  • Don't to a clean reflection, rather take the data for both solid ghost cells from the same domain cell (which is available).
  • Abort with error, since the probability for this situation is (hoped to be) small.

Cells with >1 Boundary

The values of ghost cells are set in order to yield interpolated values on their corresponding "target boundary" which fulfill the boundary conditions. Cells within object can serve as ghost cells (provided the object is nowhere too thin!), but what about ghost cells, which correspond to more than one boundary?

  • A priori, cells with flag FLAG_INTERNAL_BOUNDARY are merely frozen, the flag doesn't lead to any boundary conditions fixing.
  • This changes with INTERNAL_BOUNDARY_REFLECT=YES, which makes FluidInterfaceBoundary() setting ghost cell values according to a no-shear boundary condition (an extension to no-slip was carried out by Joshua). Alas, this is heeded only for the hyperbolic fluxes, while the viscous flux is unaffected.

Currently, only "½-off" boundary conditions for no-slip can be reached, due to a static zero velocity in the (center of the) ghost cells.

Solutions?

  • Rolfs proposition for the object boundary: Set the mass flux at the boundary to zero after the Riemann solver has computed it.