7 std::string indent(indentwidth,
' ');
8 std::string indent2(indentwidth + 8,
' ');
9 std::cout << indent <<
"repeat, " << std::endl;
12 << indent2 <<
"N: " <<
N_m <<
", \n"
13 << indent2 <<
"dx: " <<
shiftx_m <<
", \n"
23 const unsigned int size = bfuncs.size();
26 for (
unsigned int i = 0; i <
N_m; ++i) {
27 for (
unsigned int j = 0; j < size; ++j) {
28 std::shared_ptr<Base> obj(bfuncs[j]->clone());
29 obj->trafo_m = obj->trafo_m.mult(current_trafo);
30 bfuncs.emplace_back(std::move(obj));
33 current_trafo = current_trafo.
mult(trafo);
41 int numRepetitions = 0;
56 std::cout <<
"Repeat: number of arguments not supported" << std::endl;
59 }
catch (std::runtime_error& e) {
60 std::cout << e.what() << std::endl;
64 if (numRepetitions < 0) {
65 std::cout <<
"Repeat: a negative number of repetitions provided '" << arguments.
get(0)
66 <<
" = " << rep->
N_m <<
"'" << std::endl;
70 rep->
N_m = numRepetitions;
ippl::Vector< T, Dim > Vector_t
double parseMathExpression(const std::string &str)
std::string::iterator iterator
virtual void apply(std::vector< std::shared_ptr< Base > > &bfuncs)=0
static bool parse(iterator &it, const iterator &end, Function *&fun)
virtual void print(int indent)=0
virtual void apply(std::vector< std::shared_ptr< Base > > &bfuncs)
virtual void print(int indentwidth)
static bool parse_detail(iterator &it, const iterator &end, Function *&fun)