1 #include "../include/driver.h"
8 computational_domain(1,1),
9 fma(computational_domain),
10 bem_problem(computational_domain, fma),
11 free_surface(computational_domain, bem_problem),
12 dae_time_int(free_surface),
19 deallog.depth_console(3);
21 std::list<std::string> args;
22 for (
int i=0; i<argc; ++i)
23 args.push_back (argv[i]);
25 std::string default_prm;
27 default_prm = args.back() +
".prm";
35 default_prm = args.front() +
"_used.prm";
36 ofstream outprm(default_prm.c_str());
49 computational_domain.read_domain();
51 if (free_surface.initial_condition_from_dump)
53 free_surface.restore_solution(y, yp,
54 free_surface.restore_filename);
56 free_surface.reinit();
60 computational_domain.refine_and_resize();
62 free_surface.reinit();
63 y.
reinit(free_surface.n_dofs());
64 diff_compos.
reinit(free_surface.n_dofs());
65 diff_compos = free_surface.differential_components();
66 sys_comp = free_surface.sys_comp;
67 free_surface.initial_conditions(y);
68 yp.
reinit(free_surface.n_dofs());
69 res.
reinit(free_surface.n_dofs());
72 free_surface.prepare_restart(0, y, yp);
75 dae_time_int.start_ode(y, yp, maxNumSteps);
78 cout<<
"Number of rhs evaluations is "<<free_surface.Rhs_evaluations_counter()<<endl;
86 computational_domain.declare_parameters(prm);
87 free_surface.declare_parameters(prm);
88 dae_time_int.declare_parameters(prm);
89 bem_problem.declare_parameters(prm);
90 fma.declare_parameters(prm);
96 maxNumSteps = prm.get_integer(
"Maximum number of steps");
97 computational_domain.parse_parameters(prm);
98 free_surface.parse_parameters(prm);
99 dae_time_int.parse_parameters(prm);
100 bem_problem.parse_parameters(prm);
101 fma.parse_parameters(prm);
Driver(int argc, char **argv)
std::ostream & print_parameters(std::ostream &out, const OutputStyle style)
virtual void reinit(const size_type N, const bool omit_zeroing_entries=false)
virtual bool read_input(std::istream &input, const std::string &filename="input file", const std::string &last_line="")