Jau-Uei,
our apologies for letting this sit for so long. I think nobody had anything
useful to offer, given that this is not a particularly common operation.
Essentially, what I want is to compute a one-dimensional derivative w.r.t to
reference domain (i.e. D_{i,j}=\frac{d l_j}{d\xi}(\hat{\xi}_i) where
\hat{\xi}_i is i-th Gauss-Lobatto point defined in [0,1]) and compute
contravariant basis vectors (i.e \vec{a}^{1}=\frac{d\xi}{d\vec{x}} and
\vec{a}^{2}=\frac{d\eta}{d\vec{x}}).
Finite element classes have functions shape_grad() that return the gradient of
the shape functions *with regard to reference coordinates*, so that will give
you the first piece of information you seek (the D_ij objects).
The \vec a vectors are rows or columns of the Jacobian matrix or its inverse
that you can get from the FEValues object. I believe you already found out how
to deal with this.
However, I am not quite sure how to construct D_{i,j} under the framework of
step-12. A brutal way is to create dummy objects of 1-d triangulation (i.e.
[0,1]), FEValue object, and DoFHandler to construct it within the cell_worker.
However, it is resource-consuming. In addition, it is not clear to me how to
convert 1-D indices into the actual indices. For example for degree=1, we have:
(0,1) - - - (1,1)
| |
| |
(0,0) - - - (0,1)
for Lagrange polynomial \phi_{i,j}=l_i(\xi)l_j(\eta). Does the pair (i,j)
enumerate in the following way?
(2) - - - (3)
| |
| |
(0) - - - (1)
On top of that, are quadrature points enumerated in a similar fashion?
The order of shape functions is generally documented for each of the finite
elements. It is basically (first all vertex functions) (then all edge
functions) (then all face functions) (then all cell-internal functions).
The quadrature formulas have their own ordering of points. These points are
defined on the reference cell (and in reference coordinates) and are then
mapped onto actual cells, but the mapping does not affect the ordering.
Best
W.
--
------------------------------------------------------------------------
Wolfgang Bangerth email: [email protected]
www: http://www.math.colostate.edu/~bangerth/
--
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 [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/dealii/07746fc3-b4ee-d832-64fd-f4ddacd52645%40colostate.edu.