3 #include "../../include/matrixFreePDE.h" 6 template <
int dim,
int degree>
9 computing_timer.enter_section(
"matrixFreePDE: computeLHS");
12 dealii::parallel::distributed::Vector<double> src2;
13 matrixFreeObject.initialize_dof_vector(src2, currentFieldIndex);
18 if (!generatingInitialGuess){
26 for (std::map<types::global_dof_index, double>::const_iterator it=valuesDirichletSet[currentFieldIndex]->begin(); it!=valuesDirichletSet[currentFieldIndex]->end(); ++it){
27 if (dst.in_local_range(it->first)){
28 dst(it->first) = src(it->first);
33 computing_timer.exit_section(
"matrixFreePDE: computeLHS");
36 template <
int dim,
int degree>
40 const std::pair<unsigned int,unsigned int> &cell_range)
const{
45 for (
unsigned int cell=cell_range.first; cell<cell_range.second; ++cell){
55 for (
unsigned int q=0; q<num_q_points; ++q){
58 dealii::Point<dim, dealii::VectorizedArray<double> > q_point_loc = variable_list.
get_q_point_location();
61 equationLHS(variable_list,q_point_loc);
71 #include "../../include/matrixFreePDE_template_instantiations.h" void reinit_and_eval_change_in_solution(const vectorType &src, unsigned int cell, unsigned int var_being_solved)
void vmult(vectorType &dst, const vectorType &src) const
void integrate_and_distribute_change_in_solution_LHS(vectorType &dst, const unsigned int var_being_solved)
dealii::parallel::distributed::Vector< double > vectorType
void reinit_and_eval(const std::vector< vectorType *> &src, unsigned int cell)
unsigned int get_num_q_points()
dealii::Point< dim, T > get_q_point_location()
void getLHS(const MatrixFree< dim, double > &data, vectorType &dst, const vectorType &src, const std::pair< unsigned int, unsigned int > &cell_range) const