44 typedef CellIntegrator<dim, n_components, Number> IntegratorCell;
46 static unsigned int const rank =
47 (n_components == 1) ? 0 : ((n_components == dim) ? 1 : dealii::numbers::invalid_unsigned_int);
49 typedef dealii::VectorizedArray<Number> scalar;
50 typedef dealii::Tensor<rank, dim, scalar> value;
64 flags.cells = dealii::update_JxW_values |
65 dealii::update_quadrature_points;
75 inline DEAL_II_ALWAYS_INLINE
77 get_volume_flux(IntegratorCell
const & integrator,
79 Number
const & time)
const
81 dealii::Point<dim, scalar> q_points = integrator.quadrature_point(q);
83 return FunctionEvaluator<rank, dim, Number>::value(*(data.f), q_points, time);
110 typedef dealii::LinearAlgebra::distributed::Vector<Number> VectorType;
112 typedef RHSOperator<dim, Number, n_components> This;
114 typedef CellIntegrator<dim, n_components, Number> IntegratorCell;
116 typedef std::pair<unsigned int, unsigned int> Range;
128 initialize(dealii::MatrixFree<dim, Number>
const & matrix_free,
135 evaluate(VectorType & dst,
double const evaluation_time)
const;
141 evaluate_add(VectorType & dst,
double const evaluation_time)
const;
145 do_cell_integral(IntegratorCell & integrator)
const;
152 cell_loop(dealii::MatrixFree<dim, Number>
const & matrix_free,
154 VectorType
const & src,
155 Range
const & cell_range)
const;
157 dealii::MatrixFree<dim, Number>
const * matrix_free;