37struct TurbulentChannelData
39 TurbulentChannelData()
40 : cells_are_stretched(
false),
49 print(dealii::ConditionalOStream & pcout)
51 if(time_control_data_statistics.time_control_data.is_active)
53 pcout <<
" Turbulent channel statistics:" << std::endl;
56 pcout <<
" Time control:" << std::endl;
57 time_control_data_statistics.print(pcout,
true );
59 print_parameter(pcout,
"Cells are stretched", cells_are_stretched);
60 print_parameter(pcout,
"Dynamic viscosity", viscosity);
61 print_parameter(pcout,
"Density", density);
62 print_parameter(pcout,
"Directory of output files", directory);
63 print_parameter(pcout,
"Filename", filename);
70 bool cells_are_stretched;
79 std::string directory;
84class StatisticsManager
87 typedef dealii::LinearAlgebra::distributed::Vector<Number> VectorType;
89 StatisticsManager(dealii::DoFHandler<dim>
const & dof_handler_velocity,
90 dealii::Mapping<dim>
const & mapping);
96 setup(std::function<
double(
double const &)>
const & grid_tranform,
100 evaluate(VectorType
const & velocity,
bool const unsteady);
111 static unsigned int const n_points_y_per_cell_linear = 11;
112 unsigned int n_points_y_per_cell;
115 evaluate_statistics(VectorType
const & velocity);
118 evaluate_statistics(
const std::vector<VectorType> & velocity);
121 do_evaluate(
const std::vector<VectorType const *> & velocity);
124 do_write_output(std::string
const filename,
double const dynamic_viscosity,
double const density);
126 dealii::DoFHandler<dim>
const & dof_handler;
127 dealii::Mapping<dim>
const & mapping;
131 std::vector<double> y_glob;
134 std::vector<std::vector<double>> vel_glob;
137 std::vector<std::vector<double>> velsq_glob;
140 std::vector<double> veluv_glob;
143 int number_of_samples;
145 bool write_final_output;