Sample configuration files and geometry input files are provided with the binary to test the proper system setting
and see if the simulation starts correctly on the system.
nanoFluidX uses two files to setup a simulation. Apart from the configuration file, which defines all relevant simulation parameters
and phase properties, a geometry file is required that defines the initial discretization of the problem with
particles.
The configuration file (*.cfg) defines all relevant parameters to start a simulation including the geometry definition, phase properties, and numerical
parameters.
Energy equation in nanoFluidX is implemented so that it accommodates for conduction and convection heat transfer with initial or Dirichlet boundary
conditions.
New viscosity-temperature coupling (viscTempCoupling) has been introduced into the nanoFluidX code as an option. Three models were implemented, polynomial, Sutherland and power law.
Standard SPH interpolation heavily depends on the basic premise that each particle has the so called “full support.”
Full support implies that the owner particles can “see” particles all around itself within the smoothing length of
the particle, which mathematically implies that the sum of the kernel, also known as Shepard coefficient, is
equal to one.
Improving torque estimates in nanoFluidX is of high importance. Currently, prediction of accurate absolute values of torque for general geometries has a
series of quantitatively varying results.
The Riemann problem can be defined as a category of initial value problems that involve a conservation equation and
a piecewise data set with a single discontinuity.
nanoFluidX companion, also known as nFX[c], is a post-processing tool developed to accompany the nanoFluidX solver and allow for an easier execution of certain post-processing tasks.
nanoFluidX prep, shortened as nFX[p], is an auxiliary executable for nanoFluidX intended to eliminate a number of potential user errors during the pre-processing phase.
The Riemann problem can be defined as a category of initial value problems that involve a conservation equation and
a piecewise data set with a single discontinuity.
The Riemann problem can be defined as a category of initial value problems that
involve a conservation equation and a piecewise data set with a single
discontinuity.
In terms of SPH, you can solve a Riemann problem for each pair of particles, yielding
a more isotropic particle distribution and smoother gradients in the solution. The
following depiction is based on the work of bibliography_r.htm#bibliography_r__bibliography_r_fn_ich_hmc_4gb. Given the Riemann problem definition, you start off
by constructing a unit vector eij between two particles i and j.
The two particles can then be assumed to be the “left” and “right” sides of the
Riemann problem, such that the physical values of density (ρ), velocity (U) and pressure (p) are expressed as:(1)
The discontinuity is assumed to be located at the interface (Figure 1), half
way between the particles. Assuming that particles are moving with arbitrary
velocity vectors, the consequent solution of their motion is either a rarefaction or
compression wave. However, there is a third wave solution at the interface denoted
with * exponent, where U∗L=U∗R=U∗ and p∗L=p∗R=p, as indicated by the dashed link in Figure 2.
From these basic assumptions, you can derive the U* and p* values as:(2)
U*=Uavg+12(pL−pR)pavgC0
(3)
p*=pavg+12pavgC0(UL−UR)
Where, the avg index denotes the mean value of the respective value
between the two particles.
With these two solutions to the Riemann problem, you can modify the continuity
equation and the pressure gradient term in the momentum equation as
follows:(4)
It is well-known that 1st order Riemann solvers such as the one illustrated here are
dissipative. To that extent, nanoFluidX is using a limiter so that
the Riemann solutions are provided only when the fluid is under compression. This
effectively reduces the dissipation and has been shown to improve the results in
various situations. bibliography_r.htm#bibliography_r__bibliography_r_fn_ich_hmc_4gb
Note: Although the Riemann solver option is
experimental, canonical test cases, simple geometries, and problems involving
single phase runs such as tank sloshing or water management should still greatly
benefit from the new formulation. However, industrial gearboxes and violent
multiphase flows in complex moving geometries in general are likely to
experience local instabilities. This will be addressed in the coming versions of
nanoFluidX.
Density filtering is an integral part of the Riemann solver implementation. In SPH
simulation, the consistency between mass, density, and occupied area cannot be
strictly enforced. Several density filtering schemes have been developed to tackle
this. In nanoFluidX, two versions are implemented:
INCREMENTAL and INSTANT filtering.
INSTANT
The instant density filtering is basically a 0th-order Shepard filter.
At each evaluation point (according to the number set by
RM_freq_rho_init), the density is re-calculated
by:(5)
pi=∑jmjWij∑jVjWij
Where,
pi
Is the density of particle I.
mj and Vj
Is the mass and volume of particle j respectively
Wij
Is the weight calculated from the kernel function.
INCREMENTAL
A modified 1st-order density filtering scheme is used as an additional
option. The operator is calculated following:(6)
pi=∑jmjWijmin(1,∑jmjp*Wij)
Where, pi is the density from solving the
continuity equation before applying the filter.