12#ifndef __PDETOOLS_ASSEMBLER_assembler_PCC_2D_functions_HPP
13#define __PDETOOLS_ASSEMBLER_assembler_PCC_2D_functions_HPP
26namespace Assembler_Utilities
37 const std::function<
double(
const double &,
const double &,
const double &)> &source_term_function);
47 const Eigen::VectorXd &numerical_solution,
48 const Eigen::VectorXd &numerical_solution_strong,
49 const std::function<
double(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &source_term_function);
59 const Eigen::VectorXd &numerical_solution,
60 const Eigen::VectorXd &numerical_solution_strong,
61 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &source_term_function);
71 const std::function<std::array<double, 9>(
const double &,
const double &,
const double &)> &diffusion_term_function,
72 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &)> &advection_term_function,
73 const std::function<
double(
const double &,
const double &,
const double &)> &reaction_term_function);
83 const std::function<
double(
const double &,
const double &,
const double &)> &diffusion_term_function);
93 const std::function<std::array<double, 9>(
const double &,
const double &,
const double &)> &diffusion_term_function)
100 trial_reference_element_data,
101 test_reference_element_data,
102 diffusion_term_function,
115 const std::function<
double(
const double &,
const double &,
const double &)> &reaction_term_function)
122 trial_reference_element_data,
123 test_reference_element_data,
126 reaction_term_function);
137 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &)> &advection_term_function)
144 trial_reference_element_data,
145 test_reference_element_data,
147 advection_term_function,
159 const Eigen::VectorXd &numerical_solution,
160 const Eigen::VectorXd &numerical_solution_strong,
161 const std::function<
double(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &diffusion_term_function,
162 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &advection_term_function,
163 const std::function<
double(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &reaction_term_function);
173 const Eigen::VectorXd &numerical_solution,
174 const Eigen::VectorXd &numerical_solution_strong,
175 const std::function<
double(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &diffusion_term_function)
182 trial_reference_element_data,
183 test_reference_element_data,
185 numerical_solution_strong,
186 diffusion_term_function,
199 const Eigen::VectorXd &numerical_solution,
200 const Eigen::VectorXd &numerical_solution_strong,
201 const std::function<
double(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &reaction_term_function)
208 trial_reference_element_data,
209 test_reference_element_data,
211 numerical_solution_strong,
214 reaction_term_function);
225 const Eigen::VectorXd &numerical_solution,
226 const Eigen::VectorXd &numerical_solution_strong,
227 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &,
const double &,
const std::array<double, 3> &)> &advection_term_function)
234 trial_reference_element_data,
235 test_reference_element_data,
237 numerical_solution_strong,
239 advection_term_function,
250 const std::function<
double(
const unsigned int,
const double &,
const double &,
const double &)> &strong_solution_function);
258 const std::function<
double(
const double &,
const double &,
const double &)> &evaluation_function);
266 const std::function<
double(
const double &,
const double &,
const double &)> &exact_solution_function)
268 return evaluate_function_on_dofs(geometry_utilities, mesh, mesh_geometric_data, trial_dofs_data, trial_reference_element_data, exact_solution_function);
279 const std::function<
double(
const unsigned int,
const double &,
const double &,
const double &)> &weak_term_function);
284 const Eigen::VectorXd &numerical_solution,
285 const Eigen::VectorXd &numerical_solution_strong,
286 const std::function<
double(
const double &,
const double &,
const double &)> &exact_solution_function =
nullptr,
287 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &)> &exact_gradient_solution_function =
nullptr);
295 const Eigen::VectorXd &numerical_solution,
296 const Eigen::VectorXd &numerical_solution_strong,
297 const std::function<
double(
const double &,
const double &,
const double &)> &exact_solution_function);
305 const Eigen::VectorXd &numerical_solution,
306 const Eigen::VectorXd &numerical_solution_strong)
312 trial_reference_element_data,
314 numerical_solution_strong,
324 const Eigen::VectorXd &numerical_solution,
325 const Eigen::VectorXd &numerical_solution_strong,
326 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &)> &exact_gradient_solution_function);
334 const Eigen::VectorXd &numerical_solution,
335 const Eigen::VectorXd &numerical_solution_strong)
341 trial_reference_element_data,
343 numerical_solution_strong,
353 const Eigen::VectorXd &numerical_solution,
354 const Eigen::VectorXd &numerical_solution_strong,
355 const std::function<
double(
const double &,
const double &,
const double &)> &exact_solution_function =
nullptr,
356 const std::function<std::array<double, 3>(
const double &,
const double &,
const double &)> &exact_gradient_solution_function =
nullptr);
364 const Eigen::VectorXd &numerical_speed_x_solution,
365 const Eigen::VectorXd &numerical_speed_y_solution,
366 const Eigen::VectorXd &numerical_speed_x_solution_strong,
367 const Eigen::VectorXd &numerical_speed_y_solution_strong);
The GeometryUtilities class intersects 3D segments.
Definition GeometryUtilities.hpp:37
Definition IMeshDAO.hpp:1068
Definition FEM_MCC_2D_LocalSpace.cpp:17
Definition MeshUtilities.hpp:149
Definition assembler_PCC_2D_functions_data.hpp:70
Definition assembler_PCC_2D_functions_data.hpp:87
Definition assembler_PCC_2D_functions_data.hpp:77