int main(
int argc,
char* argv[])
{
"1.0");
appParamsManager.
load(argc, argv);
AVec<> gSize(
dx.v()*AVec<>(size));
std::cout << "Data initialization... ";
auto exCylMap(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
.5*gSize),
auto inCylMap(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
.5*gSize),
auto computationalDomainMap(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
.5*gSize) |
.5*gSize) |
std::cout << "Finished" << endl;
std::cout << "Numerics initialization... ";
lbgk->init();
std::vector<asl::SPNumMethod> bc;
std::vector<asl::SPNumMethod> bcV;
std::cout << "Finished" << endl;
std::cout << "Computing...";
writer.
addScalars(
"map", *computationalDomainMap);
for (unsigned int i(0); i < 10001 ; ++i)
{
lbgk->execute();
if (!(i%1000))
{
cout << i << endl;
}
}
cout << "Finished" << endl;
cout << "Computation statistic:" << endl;
cout <<
"Real Time = " << timer.
realTime() <<
"; Processor Time = "
return 0;
}
void load(int argc, char *argv[])
Numerical method for fluid flow.
contains different kernels for preprocessing and posprocessing of data used by LBGK
const double realTime() const
const double processorTime() const
const double processorLoad() const
void addVector(std::string name, AbstractData &data)
void addScalars(std::string name, AbstractData &data)
int main(int argc, char *argv[])
asl::UValue< double > Param
acl::VectorOfElements dx(const TemplateVE &a)
differential operator
SPDistanceFunction generateDFInBlock(const Block &b, unsigned int nG)
generates map corresponding to external (ghost) part of the block
SPDistanceFunction normalize(SPDistanceFunction a, double dx)
SPDistanceFunction generateDFCylinderInf(double r, const AVec< double > &l, const AVec< double > &c)
generates infinite cylinder
SPPositionFunction generatePFRotationField(const AVec< double > &axis, const AVec< double > &c)
const VectorTemplate & d3q15()
Vector template.
SPNumMethod generateBCNoSlipVel(SPLBGK nmU, SPAbstractDataWithGhostNodes map)
SPNumMethod generateBCVelocity(SPLBGK nm, SPPositionFunction v, SPAbstractDataWithGhostNodes map)
SPBCond generateBCNoSlip(SPLBGK nm, const std::vector< SlicesNames > &sl)
VectorOfElements generateVEConstant(T a)
Generates VectorOfElements with 1 Element acl::Constant with value a.
std::shared_ptr< LBGKUtilities > SPLBGKUtilities
void initAll(std::vector< T * > &v)
std::shared_ptr< LBGK > SPLBGK
void initData(SPAbstractData d, double a)
void executeAll(std::vector< T * > &v)