Dear Community,
In the example file “cylinder2d.cpp”, in the beginning the following variables are defined.
// Parameters for the simulation setup
const int N = 10; // resolution of the model
const T Re = 20.; // Reynolds number
const T maxPhysT = 16; // max. simulation time in s, SI unit
const T L = 0.1/N; // latticeL
…
const T radiusCylinder = 0.05;
The variable L is used in
CuboidGeometry2D<T> cuboidGeometry( cuboid, L, noOfCuboids );
making L -> physDeltaX (what one lattice unit corresponds to in physical length)
In the unitconverter,
312 UnitConverterFromResolutionAndRelaxationTime<T, DESCRIPTOR> const converter(
313 int {N}, // resolution: number of voxels per charPhysL
314 (T) 0.56, // latticeRelaxationTime: relaxation time, have to be greater than 0.5!
315 (T) 2.0*radiusCylinder, // charPhysLength: reference length of simulation geometry
316 (T) 0.2, // charPhysVelocity: maximal/highest expected velocity during simulation in __m / s__
317 (T) 0.2*2.*radiusCylinder/Re, // physViscosity: physical kinematic viscosity in __m^2 / s__
318 (T) 1.0 // physDensity: physical density in __kg / m^3__
319 );
we provide N and charPhysLength (=2.0*radiusCylinder), which means physDeltaX = charPhysLength/N (am I correct?).
In this example L = 0.1/N = 2.*radiusCylinder/N, however if I change L, then converter.getphysDeltaX() -neq L. While in the rest of the code we use L as physDeltaX.
If my understanding is correct, then somewhere we should define L=converter.getphysDeltaX() and not define L explicitly to make things consistent.
Thanks and regards!