4#ifndef GRAPE_READ_PARAMS_CC
5#define GRAPE_READ_PARAMS_CC
18 const int timestamp,
const int dataSet)
21 std::cout <<
"Reading data base for " << dinf->
name <<
"! \n";
25 dataname = Fem::IOTupleBase::dataName(
26 Fem::IOInterface::createRecoverPath(
path,0, dinf->
name, timestamp, useRankPath ),
38 dataname += dummy.
str();
46 std::cerr <<
"Removing non-valid data set `" << dataname <<
"'\n";
53 bool fake = Fem::readParameter(dataname,
"Fake_data",fakedata);
56 if( (!fake) || (!fakedata) )
59 Fem::readParameter(dataname,
"DataBase",dummy);
67 dinf->
comp =
new int [1];
74 Fem::readParameter(dataname,
"DataBase",dummy);
80 Fem::readParameter(dataname,
"Dim_Range",dimrange);
84 Fem::readParameter(dataname,
"Dim_Domain",dimVal);
88 int * comp =
new int [dimVal];
89 for(
int k=0; k<dimVal; k++)
95 compkey += tmpDummy.
str();
97 bool couldread = Fem::readParameter(dataname,compkey.
c_str(),comp[k]);
114 createRecoverPath(globalPath,procs,dataPrefix,step) );
132 const bool singleBackupRestoreFile = Dune::Fem::PersistenceManager :: singleBackupRestoreFile ;
136 createRecoverPath(globalPath,procs,dataPrefix,step,
false ) );
141 filename <<
path <<
"/" << dataPrefix <<
"." << procs;
146 if( (singleBackupRestoreFile && fileOk) || (! singleBackupRestoreFile && ! fileOk ) )
160 int i, i_start, i_end;
162 int n = 0, n_info = 10;
165 double timestep = 1.0e-3;
167#ifdef USE_GRAPE_DISPLAY
168 const char *replay = 0;
190 const int tupleSize = std::tuple_size<GR_DiscFuncType>::value ;
191 for (
int df = 0; df < tupleSize; ++df )
205 i_start = atoi(argv[1]);
206 i_end = atoi(argv[2]);
213 if (!strcmp(argv[i],
"-h") || !strcmp(argv[i],
"-help"))
217 else if (!strcmp(argv[i],
"-i"))
221 i_delta = atoi(argv[i+1]);
224 else if (!strcmp(argv[i],
"-v"))
231 dinf->
name = argv[i+1];
243 else if (!strcmp(argv[i],
"-t"))
247 timestep = atof(argv[i+1]);
250 else if (!strcmp(argv[i],
"-m"))
258 const int tupleSize = std::tuple_size<GR_DiscFuncType>::value ;
259 for (
int df = 0; df < tupleSize; ++df )
263 dinf->
name = argv[i+1];
280 else if (!strcmp(argv[i],
"-p"))
287#ifdef USE_GRAPE_DISPLAY
288 else if (!strcmp(argv[i],
"-replay"))
301 printf(
"i = %d, argc = %d\n", i, argc);
305#ifdef USE_GRAPE_DISPLAY
310 if(replayfile !=
"manager.replay")
314 cmd +=
" manager.replay";
317 int result = system(cmd.
c_str());
319 if(result != 0) replay = 0;
334 int numberProcessors = 0;
336 for(
int k=0; k<n; k++)
339 int para = ( useRankPath ) ?
350 std::cerr <<
"ERROR: not a valid data path! \n";
353 numberProcessors =
std::max(numberProcessors,para);
366#ifdef USE_GRAPE_DISPLAY
368 timeSceneInit(
info, n , numberProcessors);
374#ifdef USE_GRAPE_DISPLAY
377 std::cout <<
"Displaying data of " << numberProcessors <<
" processors! \n";
379 displayTimeScene(
info,numberProcessors);
385 int result = system(cmd.
c_str());
391 return (EXIT_SUCCESS);
void dataDispErrorExit(std::string msg)
Definition readiotupledata.cc:33
INFO * readData(INFO *info, const char *path, int i_start, int i_end, int i_delta, int n, double timestep, int numProcs)
Definition readiotupledata.cc:79
static void print_help(const char *funcName)
Definition printhelp.cc:8
int scanProcsPaths(const std::string globalPath, const std::string dataPrefix, int step)
Definition readioparams.cc:106
std::string solprefix
Definition readioparams.cc:156
std::string path
Definition readioparams.cc:156
int scanProcsFiles(const std::string globalPath, const std::string dataPrefix, int step)
Definition readioparams.cc:128
int readParameterList(int argc, char **argv, bool displayData=true)
Definition readioparams.cc:158
bool readDataInfo(std::string path, DATAINFO *dinf, const int timestamp, const int dataSet)
Definition readioparams.cc:17
bool fileExists(const std::string &name)
check whether a file exists
Definition io.cc:51
bool directoryExists(const std::string &name)
check whether a directory exists
Definition io.cc:58
Definition datawriter.hh:34
virtual bool separateRankPath() const
return true if all data should be written to a spearate path per rank
Definition datawriter.hh:50
static std::string commonOutputPath()
obtain common output path
Definition io/parameter.hh:432
static void get(const std::string &key, T &value)
get a mandatory parameter from the container
Definition io/parameter.hh:269
Definition grcommon.hh:19
DATAINFO * next
Definition grcommon.hh:22
const char * name
Definition grcommon.hh:20
int dimVal
Definition grcommon.hh:24
const char * base_name
Definition grcommon.hh:21
int * comp
Definition grcommon.hh:25
Definition grcommon.hh:31
int fix_mesh
Definition grcommon.hh:32
const char * name
Definition grcommon.hh:33
DATAINFO * datinf
Definition grcommon.hh:34