5 #ifndef MATERIAL_DEPOSITION_HH
6 #define MATERIAL_DEPOSITION_HH
10 #include <deal.II/base/bounding_box.h>
11 #include <deal.II/dofs/dof_handler.h>
13 #include <boost/property_tree/ptree.hpp>
22 std::tuple<std::vector<dealii::BoundingBox<dim>>, std::vector<double>,
23 std::vector<double>, std::vector<double>>
25 boost::property_tree::ptree
const &geometry_database,
26 std::vector<std::shared_ptr<HeatSource<dim>>> &heat_sources);
33 std::tuple<std::vector<dealii::BoundingBox<dim>>, std::vector<double>,
34 std::vector<double>, std::vector<double>>
41 std::tuple<std::vector<dealii::BoundingBox<dim>>, std::vector<double>,
42 std::vector<double>, std::vector<double>>
44 ScanPath
const &scan_path);
51 std::tuple<std::vector<dealii::BoundingBox<dim>>, std::vector<double>,
52 std::vector<double>, std::vector<double>>
54 std::vector<std::tuple<std::vector<dealii::BoundingBox<dim>>,
55 std::vector<double>, std::vector<double>,
56 std::vector<double>>>
const &bounding_box_lists);
61 std::vector<std::vector<typename dealii::DoFHandler<dim>::active_cell_iterator>>
63 dealii::DoFHandler<dim>
const &dof_handler,
64 std::vector<dealii::BoundingBox<dim>>
const &material_deposition_boxes);
std::tuple< std::vector< dealii::BoundingBox< dim > >, std::vector< double >, std::vector< double >, std::vector< double > > deposition_along_scan_path(boost::property_tree::ptree const &geometry_database, ScanPath const &scan_path)
std::tuple< std::vector< dealii::BoundingBox< dim > >, std::vector< double >, std::vector< double >, std::vector< double > > create_material_deposition_boxes(boost::property_tree::ptree const &geometry_database, std::vector< std::shared_ptr< HeatSource< dim >>> &heat_sources)
std::tuple< std::vector< dealii::BoundingBox< dim > >, std::vector< double >, std::vector< double >, std::vector< double > > merge_deposition_paths(std::vector< std::tuple< std::vector< dealii::BoundingBox< dim >>, std::vector< double >, std::vector< double >, std::vector< double >>> const &deposition_paths)
std::tuple< std::vector< dealii::BoundingBox< dim > >, std::vector< double >, std::vector< double >, std::vector< double > > read_material_deposition(boost::property_tree::ptree const &geometry_database)
std::vector< std::vector< typename dealii::DoFHandler< dim >::active_cell_iterator > > get_elements_to_activate(dealii::DoFHandler< dim > const &dof_handler, std::vector< dealii::BoundingBox< dim >> const &material_deposition_boxes)