62 int main(
int argc,
char* argv[])
69 appParamsManager.
load(argc, argv);
75 Param w(6.*3.14*2./60.);
85 std::cout <<
"Data initialization..." <<
flush;
90 asl::Block block(compressorMap->getInternalBlock());
92 auto comprCaseMap(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
96 std::cout <<
"Finished" << endl;
98 std::cout <<
"Numerics initialization..." <<
flush;
111 std::vector<asl::SPNumMethod> bc;
112 std::vector<asl::SPNumMethod> bcVis;
116 .5*(block.getBPosition() + block.position)));
129 std::cout <<
"Finished" << endl;
130 std::cout <<
"Computing..." << endl;
134 writer.
addScalars(
"compressor", *compressorMap);
137 writer.
addVector(
"v", *lbgk->getVelocity());
145 for (
unsigned int i(1); i < 10001; ++i)
158 cout <<
"Finished" << endl;
160 cout <<
"Computation statistic:" << endl;
161 cout <<
"Real Time = " << timer.
realTime() <<
"; Processor Time = " const double realTime() const
std::shared_ptr< DistanceFunction > SPDistanceFunction
const double processorTime() const
Numerical method for fluid flow.
const AVec normalize(const AVec< T > &a)
int main(int argc, char *argv[])
void addVector(std::string name, AbstractData &data)
asl::SPDistanceFunction generateCase(asl::Block &bl)
void initAll(std::vector< T * > &v)
SPDataWithGhostNodesACLData readSurface(const string &fileName, double dx, acl::CommandQueue queue=acl::hardware.defaultQueue)
asl::UValue< double > Param
SPDistanceFunction generateDFCylinderInf(double r, const AVec< double > &l, const AVec< double > &c)
generates infinite cylinder
std::shared_ptr< LBGKUtilities > SPLBGKUtilities
std::shared_ptr< LBGK > SPLBGK
const VectorTemplate & d3q15()
Vector template.
acl::VectorOfElements dx(const TemplateVE &a)
differential operator
SPNumMethod generateBCVelocityVel(SPLBGK nm, SPPositionFunction v, SPAbstractDataWithGhostNodes map)
void initData(SPAbstractData d, double a)
void executeAll(std::vector< T * > &v)
void addScalars(std::string name, AbstractData &data)
SPBCond generateBCConstantPressure(SPLBGK nm, double p, const std::vector< SlicesNames > &sl)
VectorOfElements generateVEConstant(T a)
Generates VectorOfElements with 1 Element acl::Constant with value a.
SPPositionFunction generatePFRotationField(const AVec< double > &axis, const AVec< double > &c)
const V getBPosition() const
void load(int argc, char *argv[])
const double processorLoad() const
SPNumMethod generateBCNoSlipVel(SPLBGK nmU, SPAbstractDataWithGhostNodes map)
for velocity field
contains different kernels for preprocessing and posprocessing of data used by LBGK
SPNumMethod generateBCVelocity(SPLBGK nm, SPPositionFunction v, SPAbstractDataWithGhostNodes map)
SPBCond generateBCNoSlip(SPLBGK nm, const std::vector< SlicesNames > &sl)