Fluid_Aspect_Course_2_4_1 - nasa/gunns GitHub Wiki

Fluid Aspect Course 2.4.1: Fluid Conductance Effect

Whereas in the thermal and electrical aspects flow is simply conductance times delta-potential, in the fluid aspect it’s more complicated.

Flow Model

Fluid flow is still always directly proportional to the conductance, but its relationship to delta-pressure varies. Different fluid conductor links implement different flow models. We currently have two models:

  • Bernoulli’s equation with a simple correction for compressibility:
    • Described in detail here.
    • Used in most of the GUNNS conductor links.
    • Has good all-round performance (once it’s tuned) for both orifices and pipes.
    • Bad at predicting actual real-world performance, so almost always requires tuning.
    • Only models the square-root relationship between flow rate and pressure, so it’s bad at modeling linear laminar flow.
  • Orifice choked/non-choked flow theory:
    • Described in detail here.
    • Best performance for orifices, all flow regimes.
    • Not good for pipes.
    • Compared to the Bernoulli model, it’s better at predicting real-world performance and easier to configure based on meaningful hardware parameters.
    • So far only implemented in the “Hi-Fi” orifice links which have limited features (no heat convection, etc).

There is a separate set of theory that is optimal for incompressible flow through pipes, but we’ve not implemented it yet in any GUNNS links. This is a low priority, because it turns out that:

Most pressure drop in flow systems occurs through orifices, not pipes.

Therefore we usually don’t bother modeling pipes as separate links anyway.

Linearization

Unless the conductor is modeling laminar flow, the flow is always non-linear with pressure, and therefore we have to linearize it before it can go into the GUNNS system of equations. There’s an overview here.

The flow model, as described above, gives mass flow rate as some function of the bounding fluid densities and pressures:

ṁ = f(ρ, dp)

The linearization takes that function and divides by dp again, so that we have our linear admittance for going into the [A] {p} = {w} system of equations:

ṁ = A·dp

A = f(ρ, dp) / dp
w = 0

The process of dividing by dp causes divide-by-zero error if dp = 0. Also, even if dp is not zero but is a very small number, this gives very large and noisy values of A which creates extra unwanted noise in the network solution. So to avoid both problems, we set a minimum limit on the dp that can be used in the divisor. This is called the minimum linearization potential dp min and all links in the network get the same value from the solver during initialization.

A = f(ρ, dp) / max(dp, dp min)

A side effect of this is that if the link’s real dp is smaller than dp min, then the linearization has error — it doesn’t pass through the desired (ṁ, dp) point. For this reason it is important to set the network’s dp min to a small enough value that it doesn’t interfere with conductors, down to the lowest significant dp that needs to be modeled.

Mass vs. Molar Flow

So far we’ve been talking about mass flow rate, ṁ, but generic flux in the fluid aspect is actually molar flow rate: the amount of moles of fluid moving per second. A link’s mFlowRate term holds its mass flow rate (kg/s) whereas the generic flux term, mFlux, holds its molar flow rate (kg*mol/s). We use kilogram-moles instead of the standard gram-mole to make it easier to convert between mass flow and molar flow by the fluid’s molecular weight. More on that here.

A = f(ρ, dp) / max(dp, dp min) / MW

Run-Time

Here is an example of what successive network solutions and re-linearizations of the conductor’s flow function looks like as it converges to steady-state:

Previous Page / Next Page

⚠️ **GitHub.com Fallback** ⚠️