40 const char* bndSubsets,
41 const char* innerSubsets =
"",
45 SubsetGroup bndSSGrp(gridFunction->domain()->subset_handler());
49 std::vector<DoFIndex> ind;
53 for (
size_t i = 0; i < bndSSGrp.
size(); ++i) {
54 const int subsetIndex = bndSSGrp[i];
55 if (subsetIndex == -1)
continue;
57 auto iter = gridFunction->template begin<Vertex>(subsetIndex);
58 auto iterEnd = gridFunction->template end<Vertex>(subsetIndex);
60 for (; iter != iterEnd; ++iter) {
64 gridFunction->dof_indices(v, 1, ind);
65 const number velocityValue =
DoFRef(*gridFunction, ind[0]);
68 gridFunction->dof_indices(v, 0, ind);
72 totalFlux += std::fabs(velocityValue * areaValue);
number IntegrateRiverOutflow(SmartPtr< CplUserData< MathVector< TGridFunction::dim >, TGridFunction::dim > > velocityField, SmartPtr< CplUserData< number, TGridFunction::dim > > scalarField, SmartPtr< TGridFunction > gridFunction, const char *bndSubsets, const char *innerSubsets="", int quadOrder=1)
Computes the total mass/volume flux through specified river boundary subsets.
Definition integrate_river_outflow.h:36