36 std::vector<std::unique_ptr<MeshLib::Mesh>>
const& meshes)
41 auto surfaceflux_pv_name =
45 if (mesh_name.empty())
51 "Read surfaceflux meta data:\n\tmesh:'{:s}'\n\tproperty name: "
53 mesh_name, surfaceflux_pv_name);
57 return std::make_unique<SurfaceFluxData>(surfaceflux_mesh,
58 std::move(surfaceflux_pv_name));
62 std::vector<GlobalVector*>
const& x,
double const t,
Process const& p,
63 int const process_id,
int const integration_order,
65 std::vector<std::size_t>
const& active_element_ids)
67 auto*
const surfaceflux_pv = MeshLib::getOrCreateMeshProperty<double>(
70 std::fill(surfaceflux_pv->begin(), surfaceflux_pv->end(), 0.0);
71 auto surfaceflux_process =
73 p.getProcessVariables(process_id)[0]
75 .getNumberOfGlobalComponents(),
78 surfaceflux_process.integrate(
79 x, *surfaceflux_pv, t, bulk_mesh, active_element_ids,
81 double const t, std::vector<GlobalVector*>
const& x)
82 {
return p.getFlux(element_id, pnt, t, x); });
void integrate(std::vector< GlobalVector * > const &x, double const t, Process const &p, int const process_id, int const integration_order, MeshLib::Mesh const &bulk_mesh, std::vector< std::size_t > const &active_element_ids)