Hamed,

 [...]
> Considering for example the term  [*M*+k*theta**A*]**U* in my right-hand 
> side, since the mass matrix(M) and laplace matrix(A) in the local level 
> have the size of *dofs_per_cell * dofs_per_cell* I need to have a local 
> solution vector to multiply with them. However, 
> FEValuesBase::get_function_values returns solution values at quadrature 
> points in a vector with the size of  *n_q_points*. I was wondering if 
> there is a function that returns nodal solution values for every cell.
>
There are different possibilities to construct the right-hand side. 
Often, you assemble your matrix at the same time as the right-hand side. In 
this case, you need the function values/gradients/... at the quadrature 
points of quadrature rule and you can use 
FEValuesBase::get_function_values. 
If you already have local matrices you want a local solution vector to 
multiply with, you can just extract the desired values via

Vector<double> local_values(dofs_per_cell);
for (unsigned int i=0; i<dofs_per_cell; ++i)
  local_values(i) = solution(local_dof_indices[i]);

Best,
Daniel

-- 
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see 
https://groups.google.com/d/forum/dealii?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"deal.II User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to dealii+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to