47int main(
int argc,
char* argv[])
53 appParamsManager.
load(argc, argv);
59 Param diffCoefNum(diffCoef.
v()*dt.
v()/dx.v()/dx.v());
63 auto gSize(dx.v()*
AVec<>(size));
65 std::cout <<
"Data initialization...";
76 std::cout <<
"Finished" << endl;
78 std::cout <<
"Numerics initialization...";
81 auto nm(generateFDStefanMaxwell(c1Field, c2Field, diffCoefNum.
v(), templ));
85 phiField->getEContainer()*1e5/8.31/300,
91 auto nmPhi(make_shared<asl::FDStefanMaxwellElectricField>(nm, phiField));
94 std::vector<asl::SPNumMethod> bc;
95 std::vector<asl::SPNumMethod> bcPhi;
109 std::cout <<
"Finished" << endl;
110 std::cout <<
"Computing..." << flush;
123 for(
unsigned int i(1); i < 401; ++i)
125 for(
unsigned int j(0); j<50; ++j)
140 cout <<
"Finished" << endl;
142 cout <<
"Computation statistic:" << endl;
143 cout <<
"Real Time = " << timer.
realTime() <<
"; Processor Time = "
void load(int argc, char *argv[])
const double realTime() const
const double processorTime() const
const double processorLoad() const
Updatable value. This class stores value and its TimeStamp.
void addScalars(std::string name, AbstractData &data)
SPDataWrapperACLData generateDataContainerACL_SP(const Block &b, unsigned int n=1)
generates pointer to ACL Data field with n components
SPDataWrapperACL generateDataContainer_SP(const Block &b, const acl::VectorOfElements &a)
SPBCond generateBCConstantGradient(SPAbstractDataWithGhostNodes d, double v, const VectorTemplate *const t, const std::vector< SlicesNames > &sl)
Bondary condition that makes fixed gradient <>
SPBCond generateBCConstantValue(SPAbstractDataWithGhostNodes d, double v, const std::vector< SlicesNames > &sl)
Bondary condition that puts fixed value in each point.
const VectorTemplate & d3q7()
Vector template.
VectorOfElements generateVEConstant(T a)
Generates VectorOfElements with 1 Element acl::Constant with value a.
void initData(SPAbstractData d, double a)
asl::UValue< double > Param