template <typename T, typename S>
class TurbulentVelocity3D : public AnalyticalF3D<T,S> {
protected:
T Ratio;
public:
TurbulentVelocity3D(LBconverter<S> const& converter) : AnalyticalF3D<T,S>(3) {
Ratio = (converter.getLatticeU()) / (converter.getCharU());
this->getName() = “turbulentVelocity3d”;
};
bool operator()(T output[], const S input[]) {
T x = input[0];
T y = input[1];
T z = input[2];
output[0] =((z<1.2) ? (-1.8834*pow(z,2)+5.4808*z+2.9155):6.751) * Ratio;
output[1] =0;
output[2] =0;
return true;
};
};