43 typedef CellIntegrator<dim, n_components, Number> IntegratorCell;
45 static unsigned int const rank =
46 (n_components == 1) ? 0 : ((n_components == dim) ? 1 : dealii::numbers::invalid_unsigned_int);
48 typedef dealii::VectorizedArray<Number> scalar;
49 typedef dealii::Tensor<rank, dim, scalar> value;
63 flags.cells = dealii::update_JxW_values |
64 dealii::update_quadrature_points;
74 inline DEAL_II_ALWAYS_INLINE
76 get_volume_flux(IntegratorCell
const & integrator,
78 Number
const & time)
const
80 dealii::Point<dim, scalar> q_points = integrator.quadrature_point(q);
82 return FunctionEvaluator<rank, dim, Number>::value(*(data.f), q_points, time);
109 typedef dealii::LinearAlgebra::distributed::Vector<Number> VectorType;
111 typedef RHSOperator<dim, Number, n_components> This;
113 typedef CellIntegrator<dim, n_components, Number> IntegratorCell;
115 typedef std::pair<unsigned int, unsigned int> Range;
127 initialize(dealii::MatrixFree<dim, Number>
const & matrix_free,
134 evaluate(VectorType & dst,
double const evaluation_time)
const;
140 evaluate_add(VectorType & dst,
double const evaluation_time)
const;
144 do_cell_integral(IntegratorCell & integrator)
const;
151 cell_loop(dealii::MatrixFree<dim, Number>
const & matrix_free,
153 VectorType
const & src,
154 Range
const & cell_range)
const;
156 dealii::MatrixFree<dim, Number>
const * matrix_free;