Hi Seyed,

On Wednesday, December 21, 2016 at 7:16:32 PM UTC+1, [email protected] 
wrote:
>
> Hi,
>
> I am trying to understand and learn the main structure of deal.II's 
> design, because I cannot work with a program until I do not understand it 
> fully.
> Hence, I am checking a simple 2D cube with hand-written FE solutions to 
> see how things are stored in deal.II.
>
> The model I use is created directly in deal.II by means of
>
> GridGenerator::hyper_cube (triangulation, -1, 1);
> triangulation.refine_global (0);
>
> So a cube with a length of 2. 
>
> This is what I get for a 2D cube with linear shape functions and 4 GAUSS 
> points (each row of the matrices represents a GP):
>
> GAUSS POINT COORDINATES
>
> -0.57735   -0.57735   
> 0.57735   -0.57735   
> -0.57735   0.57735   
> 0.57735   0.57735   
>
>
> SHAPE FUNCTIONS
>
>   0.6220   0.6220   0.1667   0.1667   0.1667   0.1667   0.0447   0.0447 
>   0.1667   0.1667   0.6220   0.6220   0.0447   0.0447   0.1667   0.1667 
>   0.1667   0.1667   0.0447   0.0447   0.6220   0.6220   0.1667   0.1667 
>   0.0447   0.0447   0.1667   0.1667   0.1667   0.1667   0.6220   0.6220 
>
>
> SHAPE FUNCTION DERIVATIVES
>
> -0.394338 -0.394338   -0.394338 -0.394338   0.394338 -0.105662   0.394338 
> -0.105662   -0.105662 0.394338   -0.105662 0.394338   0.105662 0.105662   
> 0.105662 0.105662   
> -0.394338 -0.105662   -0.394338 -0.105662   0.394338 -0.394338   0.394338 
> -0.394338   -0.105662 0.105662   -0.105662 0.105662   0.105662 0.394338   
> 0.105662 0.394338   
> -0.105662 -0.394338   -0.105662 -0.394338   0.105662 -0.105662   0.105662 
> -0.105662   -0.394338 0.394338   -0.394338 0.394338   0.394338 0.105662   
> 0.394338 0.105662   
> -0.105662 -0.105662   -0.105662 -0.105662   0.105662 -0.394338   0.105662 
> -0.394338   -0.394338 0.105662   -0.394338 0.105662   0.394338 0.394338   
> 0.394338 0.394338   
>
>
> JACOBIAN MATRIX
>
> 2 0 
> 0 2 
>
> Unfortunately, I do not understand the point why the shape function 
> derivatives change, if I create a geometry by means of:
>
> GridGenerator::hyper_cube (triangulation, 0, 1);
> triangulation.refine_global (0);
>

It's because the gradient is w.r.t. the real space, as opposed to the 
natural coordinates.
Check out this lecture by Prof. 
Bangerth http://www.math.colostate.edu/~bangerth/videos.676.10.html
Actually I would recommend to go through ALL of them, and not just this 
one, which answers this particular question.

Regards,
Denis.


>

-- 
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].
For more options, visit https://groups.google.com/d/optout.

Reply via email to