[asl] 56/177: Improving ParametersManager interface
Ghislain Vaillant
ghisvail-guest at moszumanska.debian.org
Thu Aug 27 09:22:40 UTC 2015
This is an automated email from the git hooks/post-receive script.
ghisvail-guest pushed a commit to branch master
in repository asl.
commit 6bf5dd5c797a39b90284b3a53e7fb7dfa802196b
Author: Avtech Scientific <AvtechScientific at users.noreply.github.com>
Date: Mon Jun 29 14:58:25 2015 +0300
Improving ParametersManager interface
---
examples/elastic/acousticWaves.cc | 31 ++---
examples/elastic/cubeGravity.cc | 26 ++--
examples/elastic/cubeIncompressibleGravity.cc | 25 ++--
examples/elastic/cubePoroelasticGravity.cc | 27 ++--
examples/elastic/poroelastic.cc | 33 +++--
examples/flow/compressor.cc | 26 ++--
examples/flow/flow.cc | 36 +++---
examples/flow/flow2.cc | 36 +++---
examples/flow/flow3.cc | 37 +++---
examples/flow/flowKDPGrowth.cc | 33 +++--
examples/flow/flowRotatingCylinders.cc | 34 +++--
examples/flow/locomotive_in_tunnel.cc | 20 +--
examples/flow/locomotive_laminar.cc | 5 +-
examples/flow/multicomponent_flow.cc | 15 +--
examples/flow/multiphase_flow.cc | 48 +++----
examples/flow/pitot_tube_ice.cc | 33 +++--
examples/heatTransfer/surfaceFlux.cc | 35 +++--
examples/input_data/brain.vti | Bin 0 -> 33442 bytes
examples/jumpingObjects/jumpingBox.cc | 19 ++-
examples/levelSet/levelSetBasic.cc | 21 ++-
examples/levelSet/levelSetFacetedGrowth.cc | 19 +--
examples/levelSet/levelSetNormalGrowth.cc | 25 ++--
examples/massTransferSM/testSMDiff.cc | 26 ++--
examples/massTransferSM/testSMDiff3C.cc | 4 +-
examples/massTransferSM/testSMPhi.cc | 26 ++--
examples/massTransferSM/testSMPhiBV.cc | 30 ++---
src/utilities/aslParametersManager.cxx | 176 +++++++++++++-------------
src/utilities/aslParametersManager.h | 54 ++++----
28 files changed, 423 insertions(+), 477 deletions(-)
diff --git a/examples/elastic/acousticWaves.cc b/examples/elastic/acousticWaves.cc
index c7b79ac..cedb4a1 100644
--- a/examples/elastic/acousticWaves.cc
+++ b/examples/elastic/acousticWaves.cc
@@ -25,8 +25,6 @@
\example acousticWaves.cc
*/
-#include <math/aslVectors.h>
-#include <data/aslBlocks.h>
#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
@@ -36,9 +34,7 @@
#include <utilities/aslTimer.h>
#include <utilities/aslParametersManager.h>
#include <math/aslTemplates.h>
-//#include <acl/aclMath/aclVectorOfElements.h>
#include <aslGeomInc.h>
-//#include "acl/aclUtilities.h"
typedef float FlT;
@@ -51,7 +47,6 @@ class Parameters
public:
asl::ApplicationParametersManager appParamsManager;
- string folder;
asl::Block::DV size;
@@ -81,20 +76,20 @@ class Parameters
Parameters::Parameters():
- appParamsManager("acousticWaves", "0.1", "acousticWaves.ini"),
+ appParamsManager("acousticWaves", "0.1"),
size(3),
dx(1e-3,"dx", "dx"),
bulkModulus(160e9,"bulk_modulus", "bulk modulus"),
shearModulus(79e9,"shear_modulus", "shear modulus"),
rho(7800,"rho", "density"),
- tubeL(.2,"tube_length", "pipe length, m"),
- tubeDEx(0.021, "tube_diameter_external", "external pipe diameter, m"),
-// tubeDIn(0.0157,"tube_diameter_internal", "internal pipe diameter, m"),
- tubeDIn(0.0107,"tube_diameter_internal", "internal pipe diameter, m"),
- hole1Pos(0.1,"hole_1_position", "position of first hole, m"),
- hole2Pos(0.15,"hole_2_position", "position of second hole, m"),
- hole1D(15e-3,"hole_1_diameter", "diameter of first hole, m"),
- hole2D(15e-3,"hole_2_diameter", "diameter of second hole, m"),
+ tubeL(.2,"tube_length", "pipe length" "m"),
+ tubeDEx(0.021, "tube_diameter_external", "external pipe diameter" "m"),
+// tubeDIn(0.0157,"tube_diameter_internal", "internal pipe diameter" "m"),
+ tubeDIn(0.0107,"tube_diameter_internal", "internal pipe diameter" "m"),
+ hole1Pos(0.1,"hole_1_position", "position of first hole" "m"),
+ hole2Pos(0.15,"hole_2_position", "position of second hole" "m"),
+ hole1D(15e-3,"hole_1_diameter", "diameter of first hole" "m"),
+ hole2D(15e-3,"hole_2_diameter", "diameter of second hole" "m"),
tSimulation(8e-5, "simulation_time", "simulation time"),
tOutput(1e-6, "output_interval", "output interval")
{
@@ -104,7 +99,6 @@ Parameters::Parameters():
void Parameters::load(int argc, char * argv[])
{
appParamsManager.load(argc, argv);
- folder = appParamsManager.getFolderWithSlash();
init();
}
@@ -122,6 +116,7 @@ void Parameters::updateNumValues()
tubeDEx.v() / dx.v() + 1);
}
+
void Parameters::init()
{
// if (tubeD.v() < pumpD.v())
@@ -167,7 +162,7 @@ int main(int argc, char* argv[])
Parameters params;
params.load(argc, argv);
- std::cout<<"acoustic waves: Data initialization..."<<flush;
+ std::cout << "Acoustic waves: Data initialization..."<<flush;
asl::Block block(params.size, params.dx.v());
auto displacement(asl::generateDataContainerACL_SP<FlT>(block, 3, 1u));
@@ -177,14 +172,14 @@ int main(int argc, char* argv[])
asl::initData(mapMem, generatePipe(block, params));
- asl::WriterVTKXML writer(params.folder + "acousticWaves");
+ asl::WriterVTKXML writer(params.appParamsManager.getDir() + "acousticWaves");
writer.addScalars("map", *mapMem);
writer.addVector("displacement", *displacement);
writer.write();
std::cout << "Finished" << endl;
- std::cout << "cubeGravity: Numerics initialization..."<<flush;
+ std::cout << "cubeGravity: Numerics initialization..." << flush;
auto elasticity(generateFDElasticityRelax(displacement,
params.bulkMNum.v(),
diff --git a/examples/elastic/cubeGravity.cc b/examples/elastic/cubeGravity.cc
index 9d8b0ff..24c6c88 100644
--- a/examples/elastic/cubeGravity.cc
+++ b/examples/elastic/cubeGravity.cc
@@ -25,9 +25,7 @@
\example cubeGravity.cc
*/
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDElasticity.h>
@@ -37,7 +35,7 @@
#include <math/aslTemplates.h>
#include <acl/aclMath/aclVectorOfElements.h>
#include <aslGeomInc.h>
-#include "acl/aclUtilities.h"
+#include <acl/aclUtilities.h>
typedef float FlT;
@@ -47,7 +45,7 @@ typedef asl::UValue<FlT> Param;
int main(int argc, char* argv[])
{
- asl::ApplicationParametersManager appParamsManager("cubeGravity", "1.0", "cubeGravity.ini");
+ asl::ApplicationParametersManager appParamsManager("cubeGravity", "1.0");
asl::Parameter<asl::AVec<int> > size("size", "size 3D");
asl::Parameter<cl_float> dx("dx", "dx");
asl::Parameter<cl_float> dt("dt", "dt");
@@ -66,7 +64,7 @@ int main(int argc, char* argv[])
asl::AVec<FlT> gNum(g.v()/dx.v());
- std::cout<<"cubeGravity: Data initialization..."<<flush;
+ std::cout << "CubeGravity: Data initialization..." << flush;
asl::Block block(size.v(), dx.v());
auto displacement(asl::generateDataContainerACL_SP<FlT>(block, 3, 1u));
@@ -78,14 +76,14 @@ int main(int argc, char* argv[])
initData(mapX->getEContainer(), map->getEContainer());
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "cubeGravity");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "cubeGravity");
writer.addScalars("map", *mapX);
writer.addVector("displacement", *displacement);
writer.write();
std::cout << "Finished" << endl;
- std::cout << "cubeGravity: Numerics initialization..."<<flush;
+ std::cout << "cubeGravity: Numerics initialization..." << flush;
asl::SPFDElasticity2 elasticity(new asl::FDElasticity2(displacement,
acl::generateVEConstant(bulkModulusNum.v()),
@@ -104,7 +102,7 @@ int main(int argc, char* argv[])
std::cout << "Finished" << endl;
- std::cout << "Computing..."<<endl;
+ std::cout << "Computing..." << endl;
asl::Timer timer;
bcFreeSurface->execute();
@@ -117,19 +115,19 @@ int main(int argc, char* argv[])
elasticity->execute();
bcFreeSurface->execute();
bcRigidWall->execute();
- if(!(i % tout.v()))
+ if (!(i % tout.v()))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
std::cout << "Finished" << endl;
diff --git a/examples/elastic/cubeIncompressibleGravity.cc b/examples/elastic/cubeIncompressibleGravity.cc
index cd1dc93..d8e2d12 100644
--- a/examples/elastic/cubeIncompressibleGravity.cc
+++ b/examples/elastic/cubeIncompressibleGravity.cc
@@ -25,9 +25,7 @@
\example cubeGravity.cc
*/
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDElasticity.h>
@@ -37,7 +35,7 @@
#include <math/aslTemplates.h>
#include <acl/aclMath/aclVectorOfElements.h>
#include <aslGeomInc.h>
-#include "acl/aclUtilities.h"
+#include <acl/aclUtilities.h>
typedef float FlT;
@@ -48,8 +46,7 @@ typedef asl::UValue<FlT> Param;
int main(int argc, char* argv[])
{
asl::ApplicationParametersManager appParamsManager("cubeIncompressibleGravity",
- "1.0",
- "cubeIncompressibleGravity.ini");
+ "1.0");
asl::Parameter<asl::AVec<int> > size("size", "size 3D");
asl::Parameter<cl_float> dx("dx", "dx");
asl::Parameter<cl_float> dt("dt", "dt");
@@ -68,7 +65,7 @@ int main(int argc, char* argv[])
asl::AVec<FlT> gNum(g.v()/dx.v()*dt.v());
- std::cout<<"cubeGravity: Data initialization..."<<flush;
+ std::cout << "Data initialization..." << flush;
asl::Block block(size.v(), dx.v());
auto displacement(asl::generateDataContainerACL_SP<FlT>(block, 3, 1u));
@@ -83,7 +80,7 @@ int main(int argc, char* argv[])
std::cout << "Finished" << endl;
- std::cout << "cubeIncompressibleGravity: Numerics initialization..."<<flush;
+ std::cout << "Numerics initialization..." << flush;
auto elasticity(generateFDElasticityStatic(displacement,
bulkModulusNum.v(),
@@ -98,13 +95,13 @@ int main(int argc, char* argv[])
bc.push_back(asl::generateBCRigidWall(elasticity, {asl::X0}));
asl::initAll(bc);
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "cubeIncompressibleGravity");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "cubeIncompressibleGravity");
writer.addScalars("map", *mapX);
writer.addVector("displacement", *displacement);
writer.addScalars("pressure", *elasticity->getPressureData());
std::cout << "Finished" << endl;
- std::cout << "Computing..."<<endl;
+ std::cout << "Computing..." << endl;
asl::Timer timer, timerBulk, timerBC;
executeAll(bc);
@@ -123,17 +120,17 @@ int main(int argc, char* argv[])
timerBC.stop();
if(!(i % tout.v()))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
cout << "timeBulk=" << timerBulk.getTime() <<
"; timeBC=" << timerBC.getTime() << endl;
diff --git a/examples/elastic/cubePoroelasticGravity.cc b/examples/elastic/cubePoroelasticGravity.cc
index 786bba4..f1b9b5b 100644
--- a/examples/elastic/cubePoroelasticGravity.cc
+++ b/examples/elastic/cubePoroelasticGravity.cc
@@ -25,9 +25,7 @@
\example cubePoroelasticGravity.cc
*/
-#include <math/aslVectors.h>
#include <aslDataInc.h>
-#include <aslGenerators.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDPoroElasticity.h>
@@ -38,7 +36,7 @@
#include <math/aslTemplates.h>
#include <acl/aclMath/aclVectorOfElements.h>
#include <aslGeomInc.h>
-#include "acl/aclUtilities.h"
+#include <acl/aclUtilities.h>
typedef float FlT;
@@ -49,8 +47,7 @@ typedef asl::UValue<FlT> Param;
int main(int argc, char* argv[])
{
asl::ApplicationParametersManager appParamsManager("cubePoroelasticGravity",
- "1.0",
- "cubePoroelasticGravity.ini");
+ "1.0");
asl::Parameter<asl::AVec<int> > size("size", "size 3D");
asl::Parameter<cl_float> dx("dx", "dx");
asl::Parameter<cl_float> dt("dt", "dt");
@@ -70,7 +67,7 @@ int main(int argc, char* argv[])
asl::AVec<FlT> gNum(g.v()*dt.v()*dt.v());
- std::cout<<"cubeGravity: Data initialization..."<<flush;
+ std::cout << "Data initialization..." << flush;
asl::Block block(size.v(), dx.v());
auto displacement(asl::generateDataContainerACL_SP<FlT>(block, 3, 1u));
@@ -87,7 +84,7 @@ int main(int argc, char* argv[])
std::cout << "Finished" << endl;
- std::cout << "cubeIncompressibleGravity: Numerics initialization..."<<flush;
+ std::cout << "Numerics initialization..." << flush;
auto elasticity(generateFDPoroElasticity(displacement,
pressureL,
@@ -103,14 +100,14 @@ int main(int argc, char* argv[])
asl::addBCRigidWall(bc, elasticity, {asl::X0});
asl::initAll(bc);
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "cubePoroelasticGravity");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "cubePoroelasticGravity");
writer.addScalars("map", *mapX);
writer.addVector("displacement", *displacement);
writer.addScalars("pressure", *elasticity->getPressureData());
writer.addScalars("pressureL", *elasticity->getLiquidPressureData());
std::cout << "Finished" << endl;
- std::cout << "Computing..."<<endl;
+ std::cout << "Computing..." << endl;
asl::Timer timer, timerBulk, timerBC;
executeAll(bc);
@@ -127,21 +124,21 @@ int main(int argc, char* argv[])
timerBC.resume();
executeAll(bc);
timerBC.stop();
- if(!(i % tout.v()))
+ if (!(i % tout.v()))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
cout << "timeBulk=" << timerBulk.getTime() <<
- "; timeBC=" << timerBC.getTime() << endl;
+ "; timeBC=" << timerBC.getTime() << endl;
std::cout << "Output...";
std::cout << "Finished" << endl;
diff --git a/examples/elastic/poroelastic.cc b/examples/elastic/poroelastic.cc
index e8ba4c5..b18191b 100644
--- a/examples/elastic/poroelastic.cc
+++ b/examples/elastic/poroelastic.cc
@@ -25,9 +25,7 @@
\example poroelastic.cc
*/
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <num/aslFDPoroElasticity.h>
#include <num/aslFDElasticityBC.h>
@@ -38,9 +36,8 @@
#include <aslGeomInc.h>
#include <math/aslDistanceFunction.h>
#include <acl/aclMath/aclVectorOfElements.h>
-#include "acl/aclUtilities.h"
+#include <acl/aclUtilities.h>
#include <math/aslIndex2Position.h>
-
#include <readers/aslVTKFormatReaders.h>
#include <writers/aslVTKFormatWriters.h>
@@ -52,7 +49,7 @@ typedef asl::UValue<FlT> Param;
int main(int argc, char* argv[])
{
- asl::ApplicationParametersManager appParamsManager("poroelastic", "1.0", "poroelastic.ini");
+ asl::ApplicationParametersManager appParamsManager("poroelastic", "1.0");
asl::Parameter<asl::AVec<int> > size("size", "size 3D");
asl::Parameter<cl_float> dx("dx", "dx");
asl::Parameter<cl_float> dt("dt", "dt");
@@ -67,9 +64,9 @@ int main(int argc, char* argv[])
appParamsManager.load(argc, argv);
- std::cout<<"Jumping Box: Data initialization...";
+ std::cout << "Data initialization...";
- asl::SPDataWithGhostNodesACLData map0(asl::read(appParamsManager.getFolderWithSlash()+
+ asl::SPDataWithGhostNodesACLData map0(asl::read(appParamsManager.getDir() +
"brain.vti", 0));
// asl::Block block(size.v(), dx.v());
asl::Block block(map0->getInternalBlock());
@@ -81,7 +78,7 @@ int main(int argc, char* argv[])
asl::AVec<FlT> gNum(g.v()/dx.v());
Param hydraulicConductivityNum(hydraulicConductivity.v()/dx.v()/dx.v()/dx.v());
- cout<<gNum<<"; "<<bulkModulusNum.v()<<"; "<<hydraulicConductivityNum.v()<<endl;
+ cout << gNum << "; " << bulkModulusNum.v() << "; " << hydraulicConductivityNum.v() << endl;
auto displacement(asl::generateDataContainerACL_SP<FlT>(block, 3, 1u));
@@ -95,7 +92,7 @@ int main(int argc, char* argv[])
// initData(mapX->getEContainer(), map->getEContainer());
initData(mapX->getEContainer(), map0->getEContainer()*2.-1., acl::KERNEL_BASIC);
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "poroelastic");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "poroelastic");
writer.addVector("displacement", *displacement);
writer.addScalars("pressure", *pressure);
writer.addScalars("map", *mapX);
@@ -103,7 +100,7 @@ int main(int argc, char* argv[])
std::cout << "Finished" << endl;
- std::cout << "Jumping Box: Numerics initialization...";
+ std::cout << "Numerics initialization...";
auto elasticity(make_shared<asl::FDPoroElasticity>(displacement,
pressure,
@@ -118,7 +115,7 @@ int main(int argc, char* argv[])
displacement->getBlock().position);
asl::SPDistanceFunction scf(asl::generateDFPlane(asl::AVec<>(g.v()),center));
- auto force ((1.-acl::sign(scf->getDistance(i2p.positionWithInit)))/2.*
+ auto force((1.-acl::sign(scf->getDistance(i2p.positionWithInit)))/2.*
acl::generateVEConstant(gNum));
auto forceField(asl::generateDataContainer_SP(block, force, 1u));
@@ -134,7 +131,7 @@ int main(int argc, char* argv[])
initAll(bcl);
std::cout << "Finished" << endl;
- std::cout << "Computing..."<<flush;
+ std::cout << "Computing..." << flush;
asl::Timer timer;
executeAll(bcl);
@@ -146,16 +143,16 @@ int main(int argc, char* argv[])
{
elasticity->execute();
executeAll(bcl);
- if(!(i % tout.v()))
+ if (!(i % tout.v()))
writer.write();
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ cout << "time: " << timer.getTime() << "; clockTime: "
+ << timer.getClockTime() << "; load: "
+ << timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
std::cout << "Finished" << endl;
diff --git a/examples/flow/compressor.cc b/examples/flow/compressor.cc
index 371aa24..9f5b0b0 100644
--- a/examples/flow/compressor.cc
+++ b/examples/flow/compressor.cc
@@ -72,7 +72,7 @@ int main()
// Angular velocity in one iteration
Param wNum(w.v()*dt.v());
- std::cout<<"Compressor: Data initialization...";
+ std::cout << "Compressor: Data initialization...";
auto compressorMap(asl::readSurface("axial-compressor.stl", bl));
@@ -85,7 +85,7 @@ int main()
std::cout << "Finished" << endl;
- std::cout<<"Compressor: Numerics initialization...";
+ std::cout << "Compressor: Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGK(block,
acl::generateVEConstant(FlT(nuNum.v())),
@@ -116,8 +116,8 @@ int main()
initAll(bcVis);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing...";
+ std::cout << "Finished" << endl;
+ std::cout << "Computing...";
asl::Timer timer;
asl::WriterVTKXML writer("compressor");
@@ -132,28 +132,28 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(1); i < 10001; ++i)
+ for (unsigned int i(1); i < 10001; ++i)
{
lbgk->execute();
executeAll(bc);
- if(!(i%2000))
+ if (!(i%2000))
{
- cout<<i<<endl;
+ cout << i << endl;
executeAll(bcVis);
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/flow.cc b/examples/flow/flow.cc
index d33011f..a3ec89e 100644
--- a/examples/flow/flow.cc
+++ b/examples/flow/flow.cc
@@ -26,17 +26,15 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
+#include <aslDataInc.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclUtilities.h"
+#include <utilities/aslTimer.h>
+#include <acl/aclUtilities.h>
@@ -59,7 +57,7 @@ int main()
auto gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Flow: Data initialization...";
asl::Block block(size,dx.v());
@@ -73,9 +71,9 @@ int main()
asl::initData(ballMapMem, ball);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Flow: Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGK(block,
acl::generateVEConstant(FlT(nuNum.v())),
@@ -99,8 +97,8 @@ int main()
initAll(bc);
initAll(bcVis);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing...";
+ std::cout << "Finished" << endl;
+ std::cout << "Computing...";
asl::Timer timer;
asl::WriterVTKXML writer("flowRes");
@@ -115,28 +113,28 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(1); i < 1001; ++i)
+ for (unsigned int i(1); i < 1001; ++i)
{
lbgk->execute();
executeAll(bc);
- if(!(i%5000))
+ if (!(i%5000))
{
- cout<<i<<endl;
+ cout << i << endl;
executeAll(bcVis);
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/flow2.cc b/examples/flow/flow2.cc
index 0532c8e..327245e 100644
--- a/examples/flow/flow2.cc
+++ b/examples/flow/flow2.cc
@@ -26,17 +26,15 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
+#include <aslDataInc.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclUtilities.h"
+#include <utilities/aslTimer.h>
+#include <acl/aclUtilities.h>
@@ -104,16 +102,16 @@ int main()
AVec<> gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Flow: Data initialization...";
asl::Block block(size,dx.v());
auto mirrorsMapMem(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
asl::initData(mirrorsMapMem, generateMirrors());
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Flow: Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGK(block,
acl::generateVEConstant(FlT(nuNum.v())),
@@ -136,8 +134,8 @@ int main()
bcP->init();
bcTop->init();
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing...";
+ std::cout << "Finished" << endl;
+ std::cout << "Computing...";
asl::Timer timer;
asl::WriterVTKXML writer("flow2Res");
@@ -156,31 +154,31 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(0); i < 1000 ; ++i)
+ for (unsigned int i(0); i < 1000 ; ++i)
{
lbgk->execute();
bcP->execute();
bcTop->execute();
bcNoSlip->execute();
bcNoSlipM->execute();
- if(!(i%100))
+ if (!(i%100))
{
- cout<< i <<endl;
+ cout << i << endl;
bcNoSlipV->execute();
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/flow3.cc b/examples/flow/flow3.cc
index 1d88ab8..3d7c4b8 100644
--- a/examples/flow/flow3.cc
+++ b/examples/flow/flow3.cc
@@ -26,18 +26,15 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
+#include <aslDataInc.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclUtilities.h"
-
+#include <utilities/aslTimer.h>
+#include <acl/aclUtilities.h>
typedef float FlT;
@@ -79,7 +76,7 @@ int main()
auto gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Flow: Data initialization...";
asl::Block block(size,dx.v());
@@ -87,9 +84,9 @@ int main()
asl::initData(cylindersMapMem, generateOrderedCylinders(block));
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Flow: Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGK(block,
acl::generateVEConstant(FlT(nuNum.v())),
@@ -114,8 +111,8 @@ int main()
bcIn.init();
bcOut.init();
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing...";
+ std::cout << "Finished" << endl;
+ std::cout << "Computing...";
asl::Timer timer;
asl::WriterVTKXML writer("flow3Res");
@@ -134,31 +131,31 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(0); i < 1000; ++i)
+ for (unsigned int i(0); i < 1000; ++i)
{
lbgk->execute();
bcIn.execute();
bcOut.execute();
bcNoSlip->execute();
bcNoSlipM->execute();
- if(!(i%100))
+ if (!(i%100))
{
- cout<<i<<endl;
+ cout << i << endl;
bcNoSlipV->execute();
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/flowKDPGrowth.cc b/examples/flow/flowKDPGrowth.cc
index 92eaf13..5b718b6 100644
--- a/examples/flow/flowKDPGrowth.cc
+++ b/examples/flow/flowKDPGrowth.cc
@@ -26,7 +26,6 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
#include <math/aslPositionFunction.h>
@@ -39,7 +38,7 @@
#include <num/aslBasicBC.h>
#include <num/aslCrystalGrowthBC.h>
#include <num/aslFDAdvectionDiffusion.h>
-#include "utilities/aslTimer.h"
+#include <utilities/aslTimer.h>
using asl::AVec;
using asl::makeAVec;
@@ -221,7 +220,7 @@ int main()
AVec<> gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
auto templ(&asl::d3q19());
asl::Block block(size,dx.v());
@@ -240,9 +239,9 @@ int main()
auto cField(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
asl::initData(cField, c0.v());
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGK(block,
acl::generateVEConstant(FlT(nuNum.v())),
@@ -287,8 +286,8 @@ int main()
initAll(bcV);
initAll(bcDif);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing...";
+ std::cout << "Finished" << endl;
+ std::cout << "Computing...";
asl::Timer timer;
asl::Timer timerBC;
@@ -309,7 +308,7 @@ int main()
timer.start();
timerBC.reset();
- for(unsigned int i(0); i <= 8001 ; ++i)
+ for (unsigned int i(0); i <= 8001 ; ++i)
{
lbgk->execute();
timerBC.resume();
@@ -321,24 +320,24 @@ int main()
executeAll(bcDif);
timerBC.stop();
- if(!(i%2000))
+ if (!(i%2000))
{
- cout<< i <<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%; timeBC = "
- << timerBC.getTime() << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%; timeBC = "
+ << timerBC.getTime() << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/flowRotatingCylinders.cc b/examples/flow/flowRotatingCylinders.cc
index a0ad87a..1c2f695 100644
--- a/examples/flow/flowRotatingCylinders.cc
+++ b/examples/flow/flowRotatingCylinders.cc
@@ -26,17 +26,15 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
+#include <aslDataInc.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
#include <math/aslPositionFunction.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
+#include <utilities/aslTimer.h>
@@ -62,7 +60,7 @@ int main()
AVec<> gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Flow: Data initialization...";
asl::Block block(size,dx.v());
@@ -91,9 +89,9 @@ int main()
dx.v()));
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Flow: Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGK(block,
acl::generateVEConstant(FlT(nuNum.v())),
@@ -118,8 +116,8 @@ int main()
initAll(bc);
initAll(bcV);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing...";
+ std::cout << "Finished" << endl;
+ std::cout << "Computing...";
asl::Timer timer;
asl::WriterVTKXML writer("flowRotCylRes");
@@ -135,28 +133,28 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(0); i < 10001 ; ++i)
+ for (unsigned int i(0); i < 10001 ; ++i)
{
lbgk->execute();
executeAll(bc);
- if(!(i%1000))
+ if (!(i%1000))
{
- cout<< i <<endl;
+ cout << i << endl;
executeAll(bcV);
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/locomotive_in_tunnel.cc b/examples/flow/locomotive_in_tunnel.cc
index a6ef8b1..a61342a 100644
--- a/examples/flow/locomotive_in_tunnel.cc
+++ b/examples/flow/locomotive_in_tunnel.cc
@@ -71,19 +71,19 @@ asl::SPDistanceFunction generateTunnel(asl::Block & bl)
int main(int argc, char* argv[])
{
asl::ApplicationParametersManager appParamsManager("locomotive_in_tunnel",
- "1.0",
- "locomotive_in_tunnel.ini");
- asl::Parameter<FlT> dx(0.08, "dx", "space step");
- asl::Parameter<FlT> dt(1., "dt", "time step");
+ "1.0");
+ asl::Parameter<FlT> dx(0.08, "dx", "space step", "m");
+ asl::Parameter<FlT> dt(1., "dt", "time step", "s");
asl::Parameter<FlT> nu(.001, "nu", "viscosity");
-
+ appParamsManager.load(argc, argv);
+cout << "getDir(): " << appParamsManager.getDir() << endl;
AVec<int> size(makeAVec(40., 10., 15.) * (1. / dx.v()));
asl::Block bl(size, dx.v(), makeAVec(-30., 8.58, 1.53));
asl::UValue<FlT> nuNum(nu.v() * dt.v() / dx.v() / dx.v());
- std::cout << "Flow: Data initialization...";
+ std::cout << "Data initialization...";
auto locomotive(asl::readSurface("locomotive.stl", bl));
@@ -97,7 +97,7 @@ int main(int argc, char* argv[])
std::cout << "Finished" << endl;
- std::cout << "Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
asl::SPLBGK lbgk(new asl::LBGKTurbulence(block,
acl::generateVEConstant(FlT(nu.v())),
@@ -133,7 +133,7 @@ int main(int argc, char* argv[])
std::cout << "Computing...";
asl::Timer timer;
- asl::WriterVTKXML writer("locomotive_in_tunnel");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "locomotive_in_tunnel");
writer.addScalars("map", *locomotive);
writer.addScalars("tunnel", *tunnelMap);
writer.addScalars("rho", *lbgk->getRho());
@@ -147,11 +147,11 @@ int main(int argc, char* argv[])
writer.write();
timer.start();
- for(unsigned int i(1); i < 20001; ++i)
+ for (unsigned int i(1); i < 20001; ++i)
{
lbgk->execute();
executeAll(bc);
- if(!(i%1000))
+ if (!(i%1000))
{
cout << i << endl;
executeAll(bcV);
diff --git a/examples/flow/locomotive_laminar.cc b/examples/flow/locomotive_laminar.cc
index bd4e5d1..0e8ff64 100644
--- a/examples/flow/locomotive_laminar.cc
+++ b/examples/flow/locomotive_laminar.cc
@@ -26,7 +26,6 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
#include <math/aslPositionFunction.h>
@@ -35,8 +34,8 @@
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclUtilities.h"
+#include <utilities/aslTimer.h>
+#include <acl/aclUtilities.h>
#include <readers/aslVTKFormatReaders.h>
diff --git a/examples/flow/multicomponent_flow.cc b/examples/flow/multicomponent_flow.cc
index 198157c..e8f0407 100644
--- a/examples/flow/multicomponent_flow.cc
+++ b/examples/flow/multicomponent_flow.cc
@@ -51,7 +51,6 @@ class Parameters
public:
asl::ApplicationParametersManager appParamsManager;
- string folder;
asl::Block::DV size;
asl::Parameter<double> dx;
@@ -80,7 +79,7 @@ class Parameters
Parameters::Parameters():
- appParamsManager("multicomponent_flow", "0.1", "multicomponent_flow.ini"),
+ appParamsManager("multicomponent_flow", "0.1"),
size(3),
dx(0.0005, "dx", "space step"),
dt(1., "dt", "time step"),
@@ -101,8 +100,6 @@ Parameters::Parameters():
void Parameters::load(int argc, char * argv[])
{
appParamsManager.load(argc, argv);
- folder = appParamsManager.getFolderWithSlash();
-
init();
}
@@ -149,7 +146,7 @@ int main(int argc, char *argv[])
Parameters params;
params.load(argc, argv);
- std::cout << "Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(params.size, params.dx.v());
@@ -164,7 +161,7 @@ int main(int argc, char *argv[])
std::cout << "Finished" << endl;
- std::cout << "Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
auto templ(&asl::d3q15());
@@ -232,7 +229,7 @@ int main(int argc, char *argv[])
writer.write();
timer.start();
- for(unsigned int i(1); i < 10001; ++i)
+ for (unsigned int i(1); i < 10001; ++i)
{
lbgk->execute();
executeAll(bcDif);
@@ -240,7 +237,7 @@ int main(int argc, char *argv[])
nmcomponent3->execute();
executeAll(bc);
- if(!(i%100))
+ if (!(i%100))
{
timer.stop();
cout << i << "/10000; expected left time: " << timer.getLeftTime(double(i)/10000.) << endl;
@@ -254,7 +251,7 @@ int main(int argc, char *argv[])
std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
+ << timer.getClockTime() << "; load="
<< timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
diff --git a/examples/flow/multiphase_flow.cc b/examples/flow/multiphase_flow.cc
index fed6020..ee736cb 100644
--- a/examples/flow/multiphase_flow.cc
+++ b/examples/flow/multiphase_flow.cc
@@ -27,17 +27,14 @@
*/
#include <utilities/aslParametersManager.h>
-#include <math/aslVectors.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclUtilities.h"
+#include <utilities/aslTimer.h>
#include <num/aslFDMultiPhase.h>
#include <num/aslBasicBC.h>
@@ -56,7 +53,6 @@ class Parameters
public:
asl::ApplicationParametersManager appParamsManager;
- string folder;
asl::Block::DV size;
@@ -80,13 +76,14 @@ class Parameters
void load(int argc, char * argv[]);
+ string getDir();
Parameters();
void updateNumValues();
};
Parameters::Parameters():
- appParamsManager("multiphase_flow", "0.1", "multiphase_flow.ini"),
+ appParamsManager("multiphase_flow", "0.1"),
size(3),
dx(0.002, "dx", "space step"),
dt(1., "dt", "time step"),
@@ -107,12 +104,17 @@ Parameters::Parameters():
void Parameters::load(int argc, char * argv[])
{
appParamsManager.load(argc, argv);
- folder = appParamsManager.getFolderWithSlash();
init();
}
+string Parameters::getDir()
+{
+ return appParamsManager.getDir();
+}
+
+
void Parameters::updateNumValues()
{
nuNum = nu.v() * dt.v() / dx.v() / dx.v();
@@ -152,7 +154,7 @@ int main(int argc, char *argv[])
Parameters params;
params.load(argc, argv);
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(params.size, params.dx.v());
@@ -162,9 +164,9 @@ int main(int argc, char *argv[])
auto waterFrac(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
asl::initData(waterFrac, 0);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
auto templ(&asl::d3q15());
@@ -202,11 +204,11 @@ int main(int argc, char *argv[])
initAll(bcDif);
initAll(bcV);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing..."<<endl;
+ std::cout << "Finished" << endl;
+ std::cout << "Computing..." << endl;
asl::Timer timer;
- asl::WriterVTKXML writer("multiphase_flow");
+ asl::WriterVTKXML writer(params.getDir() + "multiphase_flow");
writer.addScalars("map", *mpfMapMem);
writer.addScalars("water", *waterFrac);
writer.addScalars("rho", *lbgk->getRho());
@@ -219,17 +221,17 @@ int main(int argc, char *argv[])
writer.write();
timer.start();
- for(unsigned int i(1); i < 2001; ++i)
+ for (unsigned int i(1); i < 2001; ++i)
{
lbgk->execute();
executeAll(bcDif);
nmWater->execute();
executeAll(bc);
- if(!(i%200))
+ if (!(i%200))
{
timer.stop();
- cout<<i<<"/2000; expected left time: "<< timer.getLeftTime(double(i)/2000.) <<endl;
+ cout << i << "/2000; expected left time: " << timer.getLeftTime(double(i)/2000.) << endl;
executeAll(bcV);
writer.write();
timer.resume();
@@ -237,15 +239,15 @@ int main(int argc, char *argv[])
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/flow/pitot_tube_ice.cc b/examples/flow/pitot_tube_ice.cc
index 5434419..1f09c83 100644
--- a/examples/flow/pitot_tube_ice.cc
+++ b/examples/flow/pitot_tube_ice.cc
@@ -27,7 +27,6 @@
*/
#include <utilities/aslParametersManager.h>
-#include <math/aslVectors.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
#include <aslGenerators.h>
@@ -35,7 +34,7 @@
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLBGK.h>
#include <num/aslLBGKBC.h>
-#include "utilities/aslTimer.h"
+#include <utilities/aslTimer.h>
#include <num/aslFDAdvectionDiffusion.h>
#include <num/aslBasicBC.h>
@@ -54,7 +53,6 @@ class Parameters
public:
asl::ApplicationParametersManager appParamsManager;
- string folder;
asl::Block::DV size;
@@ -83,7 +81,7 @@ class Parameters
Parameters::Parameters():
- appParamsManager("pitot_tube_ice", "0.1", "pitot_tube_ice.ini"),
+ appParamsManager("pitot_tube_ice", "0.1"),
size(3),
dx(0.000125, "dx", "space step"),
dt(1., "dt", "time step"),
@@ -104,7 +102,6 @@ Parameters::Parameters():
void Parameters::load(int argc, char * argv[])
{
appParamsManager.load(argc, argv);
- folder = appParamsManager.getFolderWithSlash();
init();
}
@@ -153,7 +150,7 @@ int main(int argc, char *argv[])
Parameters params;
params.load(argc, argv);
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(params.size, params.dx.v());
@@ -164,9 +161,9 @@ int main(int argc, char *argv[])
// asl::initData(waterFrac, 0);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Flow: Numerics initialization...";
auto templ(&asl::d3q15());
@@ -202,11 +199,11 @@ int main(int argc, char *argv[])
initAll(bcDif);
initAll(bcV);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing..."<<endl;
+ std::cout << "Finished" << endl;
+ std::cout << "Computing..." << endl;
asl::Timer timer;
- asl::WriterVTKXML writer("pitot_tube");
+ asl::WriterVTKXML writer(params.appParamsManager.getDir() + "pitot_tube");
writer.addScalars("map", *mcfMapMem);
// writer.addScalars("water", *waterFrac);
writer.addScalars("rho", *lbgk->getRho());
@@ -229,7 +226,7 @@ int main(int argc, char *argv[])
if(!(i%800))
{
timer.stop();
- cout<<i<<"/8000; expected left time: "<< timer.getLeftTime(double(i)/8000.) <<endl;
+ cout << i << "/8000; expected left time: " << timer.getLeftTime(double(i)/8000.) << endl;
executeAll(bcV);
writer.write();
timer.resume();
@@ -237,15 +234,15 @@ int main(int argc, char *argv[])
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/heatTransfer/surfaceFlux.cc b/examples/heatTransfer/surfaceFlux.cc
index 5eca620..08f3a6d 100644
--- a/examples/heatTransfer/surfaceFlux.cc
+++ b/examples/heatTransfer/surfaceFlux.cc
@@ -26,17 +26,16 @@
*/
#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
#include <math/aslTemplates.h>
#include <aslGeomInc.h>
-//#include <data/aslDataWithGhostNodes.h>
#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDAdvectionDiffusion.h>
#include <num/aslBasicBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclUtilities.h"
+#include <utilities/aslTimer.h>
+#include <acl/aclUtilities.h>
+
typedef float FlT;
//typedef double FlT;
@@ -57,7 +56,7 @@ int main()
auto gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size,dx.v());
@@ -78,9 +77,9 @@ int main()
asl::initData(cField, 0.);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << " Numerics initialization...";
auto templ(&asl::d3q15());
auto nm(generateFDAdvectionDiffusion(cField, diffCoefNum.v(), templ));
@@ -93,8 +92,8 @@ int main()
bc.push_back(asl::generateBCConstantValue(cField, 0, ballBMapMem));
initAll(bc);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing..."<<flush;
+ std::cout << "Finished" << endl;
+ std::cout << "Computing..." << flush;
asl::Timer timer;
asl::WriterVTKXML writer("surfaceFlux");
@@ -106,27 +105,27 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(1); i < 201; ++i)
+ for (unsigned int i(1); i < 201; ++i)
{
nm->execute();
executeAll(bc);
- if(!(i%40))
+ if (!(i%40))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/input_data/brain.vti b/examples/input_data/brain.vti
new file mode 100644
index 0000000..2be936c
Binary files /dev/null and b/examples/input_data/brain.vti differ
diff --git a/examples/jumpingObjects/jumpingBox.cc b/examples/jumpingObjects/jumpingBox.cc
index 11f47ae..3d24b33 100644
--- a/examples/jumpingObjects/jumpingBox.cc
+++ b/examples/jumpingObjects/jumpingBox.cc
@@ -25,9 +25,7 @@
\example jumpingBox.cc
*/
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <acl/aclGenerators.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDElasticity.h>
@@ -45,8 +43,7 @@ typedef asl::UValue<FlT> Param;
int main(int argc, char* argv[])
{
- asl::ApplicationParametersManager appParamsManager("jumpingBox", "1.0",
- "jumpingBox.ini");
+ asl::ApplicationParametersManager appParamsManager("jumpingBox", "1.0");
asl::Parameter<asl::AVec<int> > size("size", "size 3D");
asl::Parameter<cl_float> dx("dx", "dx");
asl::Parameter<cl_float> dt("dt", "dt");
@@ -65,20 +62,20 @@ int main(int argc, char* argv[])
asl::AVec<FlT> gNum(g.v()/dx.v());
- std::cout<<"Jumping Box: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size.v(), dx.v());
auto displacement(asl::generateDataContainerACL_SP<FlT>(block, 3, 1u));
acl::initData(displacement->getEContainer(), acl::generateVEConstantN(3,0));
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "jumpingBox");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "jumpingBox");
writer.addScalars("displacement", *displacement);
writer.addVector("displacement", *displacement);
writer.write();
std::cout << "Finished" << endl;
- std::cout << "Jumping Box: Numerics initialization...";
+ std::cout << "Numerics initialization...";
asl::SPFDElasticity2 elasticity(new asl::FDElasticity2(displacement,
acl::generateVEConstant(bulkModulusNum.v()),
@@ -120,11 +117,11 @@ int main(int argc, char* argv[])
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
std::cout << "Finished" << endl;
diff --git a/examples/levelSet/levelSetBasic.cc b/examples/levelSet/levelSetBasic.cc
index dab1ceb..46c2049 100644
--- a/examples/levelSet/levelSetBasic.cc
+++ b/examples/levelSet/levelSetBasic.cc
@@ -25,10 +25,7 @@
\example levelSetBasic.cc
*/
-#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslInterfaceTrackingAlg1.h>
#include <utilities/aslTimer.h>
@@ -36,7 +33,6 @@
#include <math/aslTemplates.h>
#include <acl/aclMath/aclVectorOfElements.h>
#include <acl/aclUtilities.h>
-
#include <aslGeomInc.h>
typedef float FlT;
@@ -47,8 +43,7 @@ acl::TypeID type(acl::typeToTypeID<FlT>());
int main(int argc, char* argv[])
{
- asl::ApplicationParametersManager appParamsManager("levelSetBasic", "1.0",
- "levelSetBasic.ini");
+ asl::ApplicationParametersManager appParamsManager("levelSetBasic", "1.0");
asl::Parameter<asl::AVec<int>> size("size", "size");
asl::Parameter<FlT> dx("dx", "dx");
@@ -62,7 +57,7 @@ int main(int argc, char* argv[])
appParamsManager.load(argc, argv);
- std::cout<<"Jumping Box: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size.v(), dx.v());
auto levelSet(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
@@ -73,12 +68,12 @@ int main(int argc, char* argv[])
auto velocity(asl::generateDataContainerConst_SP(block, v.v(), 1u));
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "levelSetBasic");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "levelSetBasic");
writer.addScalars("levelSet", *levelSet);
std::cout << "Finished" << endl;
- std::cout << "LevelSetBasic: Numerics initialization..." << flush;
+ std::cout << "Numerics initialization..." << flush;
auto lsNum(std::make_shared<asl::InterfaceTrackingAlg1>(levelSet,velocity));
@@ -99,11 +94,11 @@ int main(int argc, char* argv[])
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
std::cout << "Finished" << endl;
diff --git a/examples/levelSet/levelSetFacetedGrowth.cc b/examples/levelSet/levelSetFacetedGrowth.cc
index 7e03556..9a8ab7b 100644
--- a/examples/levelSet/levelSetFacetedGrowth.cc
+++ b/examples/levelSet/levelSetFacetedGrowth.cc
@@ -25,10 +25,7 @@
\example levelSetFacetedGrowth.cc
*/
-#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLSFacetedGrowth.h>
#include <utilities/aslTimer.h>
@@ -36,7 +33,6 @@
#include <math/aslTemplates.h>
#include <acl/aclMath/aclVectorOfElements.h>
#include <acl/aclUtilities.h>
-
#include <aslGeomInc.h>
typedef float FlT;
@@ -48,8 +44,7 @@ acl::TypeID type(acl::typeToTypeID<FlT>());
int main(int argc, char* argv[])
{
asl::ApplicationParametersManager appParamsManager("levelSetFacetedGrowth",
- "1.0",
- "levelSetFacetedGrowth.ini");
+ "1.0");
asl::Parameter<asl::AVec<int>> size("size", "size");
asl::Parameter<FlT> dx("dx", "dx");
@@ -68,7 +63,7 @@ int main(int argc, char* argv[])
appParamsManager.load(argc, argv);
- std::cout << "LevelSet: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size.v(), dx.v());
auto levelSet(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
@@ -82,12 +77,12 @@ int main(int argc, char* argv[])
auto superSaturation(asl::generateDataContainerConst_SP(block, superS.v(), 1u));
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "levelSetFacetedGrowth");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "levelSetFacetedGrowth");
writer.addScalars("levelSet", *levelSet);
std::cout << "Finished" << endl;
- std::cout << "LevelSetBasic: Numerics initialization..." << flush;
+ std::cout << "Numerics initialization..." << flush;
auto lsNum(std::make_shared<asl::LSFacetedGrowth>(levelSet, superSaturation));
@@ -107,7 +102,7 @@ int main(int argc, char* argv[])
for (unsigned int i(0); i < nIterations.v(); ++i)
{
lsNum->execute();
- if(!(i % nItOut.v()))
+ if (!(i % nItOut.v()))
writer.write();
}
timer.stop();
@@ -115,7 +110,7 @@ int main(int argc, char* argv[])
std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
+ << timer.getClockTime() << "; load="
<< timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
diff --git a/examples/levelSet/levelSetNormalGrowth.cc b/examples/levelSet/levelSetNormalGrowth.cc
index 50b8f33..eef7b24 100644
--- a/examples/levelSet/levelSetNormalGrowth.cc
+++ b/examples/levelSet/levelSetNormalGrowth.cc
@@ -25,10 +25,7 @@
\example levelSetNormalGrowth.cc
*/
-#include <utilities/aslUValue.h>
-#include <math/aslVectors.h>
-#include <data/aslDataWithGhostNodes.h>
-#include <aslGenerators.h>
+#include <aslDataInc.h>
#include <writers/aslVTKFormatWriters.h>
#include <num/aslLSNormalGrowth.h>
#include <utilities/aslTimer.h>
@@ -36,9 +33,7 @@
#include <math/aslTemplates.h>
#include <acl/aclMath/aclVectorOfElements.h>
#include <acl/aclUtilities.h>
-
#include <aslGeomInc.h>
-//#include <math/aslIndex2Position.h>
typedef float FlT;
@@ -49,8 +44,8 @@ acl::TypeID type(acl::typeToTypeID<FlT>());
int main(int argc, char* argv[])
{
- asl::ApplicationParametersManager appParamsManager("levelSetNormalGrowth", "1.0",
- "levelSetNormalGrowth.ini");
+ asl::ApplicationParametersManager appParamsManager("levelSetNormalGrowth",
+ "1.0");
asl::Parameter<asl::AVec<int>> size("size", "size");
asl::Parameter<FlT> dx("dx", "dx");
@@ -64,7 +59,7 @@ int main(int argc, char* argv[])
appParamsManager.load(argc, argv);
- std::cout<<"LevelSet: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size.v(), dx.v());
auto levelSet(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
@@ -78,12 +73,12 @@ int main(int argc, char* argv[])
auto superSaturation(asl::generateDataContainerConst_SP(block, superS.v(), 1u));
- asl::WriterVTKXML writer(appParamsManager.getFolderWithSlash() + "levelSetNormalGrowth");
+ asl::WriterVTKXML writer(appParamsManager.getDir() + "levelSetNormalGrowth");
writer.addScalars("levelSet", *levelSet);
std::cout << "Finished" << endl;
- std::cout << "LevelSetBasic: Numerics initialization..." << flush;
+ std::cout << "Numerics initialization..." << flush;
auto lsNum(std::make_shared<asl::LSNormalGrowth>(levelSet, superSaturation));
@@ -99,16 +94,16 @@ int main(int argc, char* argv[])
for (unsigned int i(0); i < nIterations.v(); ++i)
{
lsNum->execute();
- if(!(i % nItOut.v()))
+ if (!(i % nItOut.v()))
writer.write();
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
std::cout << "Output...";
std::cout << "Finished" << endl;
diff --git a/examples/massTransferSM/testSMDiff.cc b/examples/massTransferSM/testSMDiff.cc
index cc53887..bcac1ff 100644
--- a/examples/massTransferSM/testSMDiff.cc
+++ b/examples/massTransferSM/testSMDiff.cc
@@ -34,7 +34,7 @@
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDStefanMaxwell.h>
#include <num/aslBasicBC.h>
-#include "utilities/aslTimer.h"
+#include <utilities/aslTimer.h>
//#include "acl/aclUtilities.h"
typedef float FlT;
@@ -57,7 +57,7 @@ int main()
auto gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size,dx.v());
@@ -67,9 +67,9 @@ int main()
asl::initData(c2Field, 0.5);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
auto templ(&asl::d3q7());
auto nm(generateFDStefanMaxwell(c1Field, c2Field, diffCoefNum.v(), templ));
@@ -87,8 +87,8 @@ int main()
bc.push_back(asl::generateBCConstantValue(c2Field, 1, {asl::X0}));
initAll(bc);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing..."<<flush;
+ std::cout << "Finished" << endl;
+ std::cout << "Computing..." << flush;
asl::Timer timer;
asl::WriterVTKXML writer("surfaceFlux");
@@ -105,21 +105,21 @@ int main()
executeAll(bc);
if(!(i%40))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/massTransferSM/testSMDiff3C.cc b/examples/massTransferSM/testSMDiff3C.cc
index 6db0893..8c3eade 100644
--- a/examples/massTransferSM/testSMDiff3C.cc
+++ b/examples/massTransferSM/testSMDiff3C.cc
@@ -35,8 +35,8 @@
#include <writers/aslVTKFormatWriters.h>
#include <num/aslFDStefanMaxwell.h>
#include <num/aslBasicBC.h>
-#include "utilities/aslTimer.h"
-#include "acl/aclMath/aclVectorOfElements.h"
+#include <utilities/aslTimer.h>
+#include <acl/aclMath/aclVectorOfElements.h>
typedef float FlT;
//typedef double FlT;
diff --git a/examples/massTransferSM/testSMPhi.cc b/examples/massTransferSM/testSMPhi.cc
index 2e75c51..c291a2d 100644
--- a/examples/massTransferSM/testSMPhi.cc
+++ b/examples/massTransferSM/testSMPhi.cc
@@ -56,7 +56,7 @@ int main()
auto gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size,dx.v());
@@ -67,9 +67,9 @@ int main()
auto phiField(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
asl::initData(phiField, 0.5);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
auto templ(&asl::d3q7());
auto nm(generateFDStefanMaxwell(c1Field, c2Field, diffCoefNum.v(), templ));
@@ -100,8 +100,8 @@ int main()
bcPhi.push_back(asl::generateBCConstantValue(phiField, 0, {asl::X0}));
initAll(bcPhi);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing..."<<flush;
+ std::cout << "Finished" << endl;
+ std::cout << "Computing..." << flush;
asl::Timer timer;
asl::WriterVTKXML writer("out");
@@ -123,23 +123,23 @@ int main()
}
nm->execute();
executeAll(bc);
- if(!(i%40))
+ if (!(i%40))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/examples/massTransferSM/testSMPhiBV.cc b/examples/massTransferSM/testSMPhiBV.cc
index 2e68fa1..9a7bee9 100644
--- a/examples/massTransferSM/testSMPhiBV.cc
+++ b/examples/massTransferSM/testSMPhiBV.cc
@@ -58,7 +58,7 @@ int main()
auto gSize(dx.v()*AVec<>(size));
- std::cout<<"Flow: Data initialization...";
+ std::cout << "Data initialization...";
asl::Block block(size,dx.v());
@@ -75,9 +75,9 @@ int main()
auto phiSField(asl::generateDataContainerACL_SP<FlT>(block, 1, 1u));
asl::initData(phiSField, 0.);
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
- std::cout<<"Flow: Numerics initialization...";
+ std::cout << "Numerics initialization...";
auto templ(&asl::d3q7());
auto nm(generateFDStefanMaxwell(c1Field, c2Field, diffCoefNum.v(), templ));
@@ -121,8 +121,8 @@ int main()
bcPhi.push_back(asl::generateBCConstantValue(phiField, 0, {asl::X0}));
initAll(bcPhi);
- std::cout<<"Finished"<<endl;
- std::cout<<"Computing..."<<flush;
+ std::cout << "Finished" << endl;
+ std::cout << "Computing..." << flush;
asl::Timer timer;
asl::WriterVTKXML writer("out");
@@ -137,9 +137,9 @@ int main()
writer.write();
timer.start();
- for(unsigned int i(1); i < 401; ++i)
+ for (unsigned int i(1); i < 401; ++i)
{
- for(unsigned int j(0); j<50; ++j)
+ for (unsigned int j(0); j<50; ++j)
{
nmBV->executeJ();
nmPhi->execute();
@@ -149,23 +149,23 @@ int main()
nmA->execute();
nmBV->execute();
executeAll(bc);
- if(!(i%40))
+ if (!(i%40))
{
- cout<<i<<endl;
+ cout << i << endl;
writer.write();
}
}
timer.stop();
- std::cout<<"Finished"<<endl;
+ std::cout << "Finished" << endl;
cout << "time=" << timer.getTime() << "; clockTime="
- << timer.getClockTime() << "; load="
- << timer.getProcessorLoad() * 100 << "%" << endl;
+ << timer.getClockTime() << "; load="
+ << timer.getProcessorLoad() * 100 << "%" << endl;
- std::cout<<"Output...";
- std::cout<<"Finished"<<endl;
- std::cout<<"Ok"<<endl;
+ std::cout << "Output...";
+ std::cout << "Finished" << endl;
+ std::cout << "Ok" << endl;
return 0;
}
diff --git a/src/utilities/aslParametersManager.cxx b/src/utilities/aslParametersManager.cxx
index b100338..568c710 100644
--- a/src/utilities/aslParametersManager.cxx
+++ b/src/utilities/aslParametersManager.cxx
@@ -128,11 +128,10 @@ namespace asl
};
-
template <typename T>
- Parameter<T>::Parameter(string key_,
- string description_,
- string units_):
+ Parameter<T>::Parameter(const char* key_,
+ const char* description_,
+ const char* units_):
key(key_),
description(description_),
units(units_)
@@ -144,35 +143,36 @@ namespace asl
WildcardCheck<T>::check(key, parameter.p);
ParametersManager::current->add(parameter,
- key,
- description);
+ key.c_str(),
+ description.c_str(),
+ units.c_str());
}
- template Parameter<string>::Parameter(string key,
- string description,
- string units);
+ template Parameter<string>::Parameter(const char* key,
+ const char* description,
+ const char* units);
#define BOOST_TT_rep_expression(r, data, t) \
- template Parameter<t>::Parameter(string key, \
- string description, \
- string units); \
- template Parameter<AVec<t>>::Parameter(string key, \
- string description, \
- string units); \
- template Parameter<map<string, t>>::Parameter(string key, \
- string description, \
- string units); \
- template Parameter<map<string, AVec<t>>>::Parameter(string key, \
- string description, \
- string units);
+ template Parameter<t>::Parameter(const char* key, \
+ const char* description, \
+ const char* units); \
+ template Parameter<AVec<t>>::Parameter(const char* key, \
+ const char* description, \
+ const char* units); \
+ template Parameter<map<string, t>>::Parameter(const char* key, \
+ const char* description, \
+ const char* units); \
+ template Parameter<map<string, AVec<t>>>::Parameter(const char* key, \
+ const char* description, \
+ const char* units);
BOOST_PP_SEQ_FOR_EACH(BOOST_TT_rep_expression, ~, BOOST_TT_acl_types)
#undef BOOST_TT_rep_expression
template <typename T> Parameter<T>::Parameter(T defaultValue,
- string key_,
- string description_,
- string units_):
+ const char* key_,
+ const char* description_,
+ const char* units_):
key(key_),
description(description_),
units(units_)
@@ -183,24 +183,25 @@ namespace asl
ParametersManager::current->add(parameter,
defaultValue,
- key,
- description);
+ key.c_str(),
+ description.c_str(),
+ units.c_str());
}
template Parameter<string>::Parameter(string defaultValue,
- string key,
- string description,
- string units);
+ const char* key,
+ const char* description,
+ const char* units);
#define BOOST_TT_rep_expression(r, data, t) \
template Parameter<t>::Parameter(t defaultValue, \
- string key, \
- string description, \
- string units); \
+ const char* key, \
+ const char* description, \
+ const char* units); \
template Parameter<AVec<t>>::Parameter(AVec<t> defaultValue, \
- string key, \
- string description, \
- string units);
+ const char* key, \
+ const char* description, \
+ const char* units);
BOOST_PP_SEQ_FOR_EACH(BOOST_TT_rep_expression, ~, BOOST_TT_acl_types)
#undef BOOST_TT_rep_expression
@@ -210,8 +211,7 @@ namespace asl
ParametersManager::ParametersManager():
parametersOptions("Parameters options"),
parametersFileStr("# Parameters file\n"),
- folder(""),
- folderWithSlash("")
+ parametersFileDirectory("")
{
enable();
}
@@ -262,40 +262,49 @@ namespace asl
template <typename T> void ParametersManager::add(UValue<T> parameter,
- string key,
- string description)
+ const char* key,
+ const char* description,
+ const char* units)
{
+ string fullDescription = units[0] == '\0' ? description
+ : string(description) + ", [" + units + "]";
parametersOptions.add_options()
- (key.c_str(), value<T>(¶meter.v())->required(), description.c_str());
+ (key, value<T>(¶meter.v())->required(), fullDescription.c_str());
// Add the parameter to the default parameters file
- parametersFileStr += "\n# " + description + "\n" + key + " = \n";
+ parametersFileStr += "\n# " + fullDescription + "\n" + key + " = \n";
}
template<typename T> void ParametersManager::add(UValue<map<string, T>> parameter,
- string key,
- string description)
+ const char* key,
+ const char* description,
+ const char* units)
{
+ string fullDescription = units[0] == '\0' ? description
+ : string(description) + ", [" + units + "]";
parametersOptions.add_options()
- (key.c_str(), value<T>()->required(), description.c_str());
+ (key, value<T>()->required(), fullDescription.c_str());
// Add the parameter to the default parameters file
- parametersFileStr += "\n# " + description + "; substite '*' by any suffix to provide a set of related parameters\n"
+ parametersFileStr += "\n# " + fullDescription + "; replace '*' by any suffix to provide a set of related parameters\n"
+ key + " = \n";
}
template<typename T> void ParametersManager::add(UValue<T> parameter,
T defaultValue,
- string key,
- string description)
- {
+ const char* key,
+ const char* description,
+ const char* units)
+ {
+ string fullDescription = units[0] == '\0' ? description
+ : string(description) + ", [" + units + "]";
parametersOptions.add_options()
- (key.c_str(), value<T>(¶meter.v())->default_value(defaultValue),
- description.c_str());
+ (key, value<T>(¶meter.v())->default_value(defaultValue),
+ fullDescription.c_str());
// Add the parameter to the default parameters file
- parametersFileStr += "\n# " + description + "\n"
+ parametersFileStr += "\n# " + fullDescription + "\n"
+ key + " = " + numToStr(defaultValue) + "\n";
}
@@ -340,15 +349,9 @@ namespace asl
}
- string ParametersManager::getFolder()
+ string ParametersManager::getDir()
{
- return folder;
- }
-
-
- string ParametersManager::getFolderWithSlash()
- {
- return folderWithSlash;
+ return parametersFileDirectory;
}
@@ -363,14 +366,12 @@ namespace asl
}
- ApplicationParametersManager::ApplicationParametersManager(string applicationName_,
- string applicationVersion_,
- string paramFileName_):
+ ApplicationParametersManager::ApplicationParametersManager(const char* applicationName_,
+ const char* applicationVersion_):
platform(acl::getPlatformVendor(acl::hardware.defaultQueue)),
device(acl::getDeviceName(acl::hardware.defaultQueue)),
applicationName(applicationName_),
- applicationVersion(applicationVersion_),
- paramFileName(paramFileName_)
+ applicationVersion(applicationVersion_)
{
enable();
// Prepend informative header
@@ -381,9 +382,9 @@ namespace asl
/* Add platform and device parameters already initialized
with their default values */
add(platform, platform.v(),
- "platform", "Default computation platform");
+ "platform", "Default computation platform", "");
add(device, device.v(),
- "device", "Default computation device");
+ "device", "Default computation device", "");
}
@@ -397,16 +398,15 @@ namespace asl
("help,h", "Display this help and exit")
("version,v", "Display version and exit")
("devices,d", "Display all available devices and exit")
- ("folder,f", value<string>()->default_value("Default"),
- string("Path to the working folder that contains parameters file - " + paramFileName).c_str())
- ("parameters,p", value<string>(),
- string("Generate default parameters file " + paramFileName + ", write it to the provided path and exit").c_str())
+ ("parameters,p", value<string>(), "Path to the parameters file")
+ ("generate,g", value<string>(),
+ "Generate default parameters file and exit")
("check,c", "Check parameters for consistency and exit");
positional_options_description positional;
options_description allOptions;
- positional.add("folder", 1);
+ positional.add("parameters", 1);
allOptions.add(genericOptions).add(parametersOptions);
@@ -416,7 +416,7 @@ namespace asl
if (vm.count("help"))
{
- cout << "Usage: " + applicationName + " [WORKING_FOLDER] [OPTION]...\n"
+ cout << "Usage: " + applicationName + " [PARAMETERS_FILE] [OPTION]...\n"
<< allOptions
<< endl;
exit(0);
@@ -440,16 +440,9 @@ namespace asl
exit(0);
}
- if (vm.count("parameters"))
+ if (vm.count("generate"))
{
- path p(vm["parameters"].as<string>());
- // add at least one slash at the end
- p /= "/";
- // and then cut all possible slashes at the end
- p = p.parent_path();
- p /= "/";
- p /= paramFileName;
-
+ path p(vm["generate"].as<string>());
cout << "Writing default parameters file to: "
<< p.string() << endl;
@@ -457,23 +450,24 @@ namespace asl
exit(0);
}
- path p(vm["folder"].as<string>());
- // add at least one slash at the end
- p /= "/";
- // and then cut all possible slashes at the end
- p = p.parent_path();
- folder = p.string();
- p /= "/";
- folderWithSlash = p.string();
- p /= paramFileName;
+ path p(vm["parameters"].as<string>());
ifstream ifs(p.string());
if (!ifs)
{
// Only warn, since all options might have default values, or required values
- // provided through the command line - so no parameters file is required
+ // provided through the command line - so not always a parameters file is required
warningMessage("ParametersManager::load() - can not open parameters file: " + p.string());
}
+ // Get absolute path
+ p = absolute(p);
+ // Get directory
+ p = p.parent_path();
+ // Append slash
+ p /= "/";
+ parametersFileDirectory = p.string();
+
+
parsed_options parsed = parse_config_file(ifs, allOptions, true);
store(parsed, vm);
// Run error notification only after obtaining
diff --git a/src/utilities/aslParametersManager.h b/src/utilities/aslParametersManager.h
index 4ac5808..c8fd07e 100644
--- a/src/utilities/aslParametersManager.h
+++ b/src/utilities/aslParametersManager.h
@@ -44,25 +44,25 @@ namespace asl
/// parameters file. If no default value is specified, then the
/// parameter is required to be specified in the parameters file
/// or command line.
- Parameter(std::string key_,
- std::string description_,
- std::string units_ = "");
+ Parameter(const char* key_,
+ const char* description_,
+ const char* units_ = "");
/// \p key is the parameter's identification key in the parameters file
/// If a default value is specified, then the parameter is not
/// required to be specified in the parameters file or command line.
Parameter(T defaultValue,
- std::string key_,
- std::string description_,
- std::string units_ = "");
+ const char* key_,
+ const char* description_,
+ const char* units_ = "");
inline const T & v() const;
inline T & v();
inline std::shared_ptr<T> p();
private:
UValue<T> parameter;
- std::string key;
- std::string description;
- std::string units;
+ const std::string key;
+ const std::string description;
+ const std::string units;
};
@@ -79,17 +79,20 @@ namespace asl
void enable();
/// Adds a Parameter to ParametersManager
template <typename T> void add(UValue<T> parameter,
- std::string key,
- std::string description);
+ const char* key,
+ const char* description,
+ const char* units);
/// Adds a group of parameters with common prefix to ParametersManager
template <typename T> void add(UValue<std::map<std::string, T>> parameter,
- std::string key,
- std::string description);
- /// Adds a Parameter to ParametersManager
+ const char* key,
+ const char* description,
+ const char* units);
+ /// Adds a Parameter with a default value to ParametersManager
template <typename T> void add(UValue<T> parameter,
T defaultValue,
- std::string key,
- std::string description);
+ const char* key,
+ const char* description,
+ const char* units);
/// Adds prefix and the pointer on the respective
/// Parameter's destinationMap
template <typename T>
@@ -98,15 +101,17 @@ namespace asl
/// Loads all previously declared parameters
/// from parameters file \p paramFile
void load(std::string paramFile);
- std::string getFolder();
- std::string getFolderWithSlash();
+ /** Get the parameters file directory (absolute, with ending slash).
+ It is convenient to write simulation results output together with
+ its respective parameters file into the same directory (whose name
+ might reflect the specifics of the parameters used) */
+ std::string getDir();
static ParametersManager * current;
protected:
boost::program_options::options_description parametersOptions;
- std::string folder;
- std::string folderWithSlash;
+ std::string parametersFileDirectory;
/// Accomodates prefixes (defined by attached "*" wildcard)
/// using PrefixStore class
std::vector<std::shared_ptr<PrefixStore>> prefixes;
@@ -123,15 +128,14 @@ namespace asl
/** This class inherits ParametersManager class and thus also automatically
accomodates newly created Parameters and then can load them from
a parameters file and/or command line. It silently includes two parameters -
- `platform` and `device` that determine the hardware application will run on.
+ `platform` and `device` that determine the hardware the application will run on.
It has to be declared before declaring all the parameters it will manage!
\ingroup Utilities */
class ApplicationParametersManager: public ParametersManager
{
public:
- ApplicationParametersManager(std::string applicationName_,
- std::string applicationVersion_,
- std::string paramFileName_ = "parameters.ini");
+ ApplicationParametersManager(const char* applicationName_,
+ const char* applicationVersion_);
/** Loads all previously declared parameters from command line
and/or parameters file (provided through command line) */
@@ -142,8 +146,6 @@ namespace asl
UValue<std::string> device;
std::string applicationName;
std::string applicationVersion;
- std::string paramFileName;
-
};
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/asl.git
More information about the debian-science-commits
mailing list