Wolfgang, 

Thank you very much for your prompt response.

You are right that one could just leave the mapping as a simple 2D and 
change the weak formulation. However I think that it is possible to solve 
an axisymmetric problem without touching the weak formulation. I have been 
working for quite some time with GetDP, and there that is the standard way. 
For axisymmetric problems one just needs to change the "Jacobian" which in 
GetDP stands for the mapping between real cells and the reference/unit 
cell. I think the two approaches in the end boil down in the same equations 
and system assembly. In one case the coordinate transform scaling factors 
are considered as a part of the PDE and need to be explicitly inserted in 
the weak form, while in the other they are considered as part of the cell 
mapping and would appear implicitly in the jacobian of the transfrom (the 
JxW factors in the Deal.II framework). 

>From a programming point of view, I think that the latter approach would 
produce more generic and reusable code, that is why I first tried to pursue 
it. I thought that this could be done in Deal.II, similarly to GetDP, by 
using an appropriate Mapping object. I guess such a Mapping class is not 
implemented though. In case I am wrong and it is (maybe a MappingManifold 
associated with a CylindricalManifold), would it be possible to help on how 
to implement it? 

In general, how can I associate a MappingManifold object with a certain 
Manifold object? In the documentation, such an association is mentioned 
several times, but it is not specified how it can be implemented.

Cheers,
Andreas


On Thursday, November 7, 2019 at 7:40:37 PM UTC+2, Wolfgang Bangerth wrote:
>
>
> Andreas, 
>
> > I have been using Deal.II for quite a time, as the basis of the 
> multi-scale 
> > multi-physics code FEMOCS 
> > <
> https://nam01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fveskem%2Ffemocs&data=02%7C01%7CWolfgang.Bangerth%40colostate.edu%7Cd7d8d7ed6a644b803f8908d7639a4fb1%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C1%7C637087386726073424&sdata=oXStQieIrHcNMPw4sO%2FfnCF%2B8mxdRgGXSrprxUrMo0w%3D&reserved=0>
>  
>
> > we have been developing in our groups. Until now our code has been 
> strictly 
> > 3D, but now we need to solve some problems with rotational symmetry and 
> we 
> > want to adapt the code for 2D axisymmetric problems in order to save 
> > computational power. 
> > 
> > I have been trying to figure out how to set up such a system, but to be 
> honest 
> > I am completely lost. I understand that I have to use a different 
> mapping than 
> > the default one when definig the FEValues object (probably a mapping 
> that is 
> > associated with a CylindricalManifold, but I cannot figure out how to do 
> it, 
> > especially how to associate a certain manifold to a mapping. 
>
> No, if you use cylindrical coordinates, then you work in r-z space and 
> your 
> domain is probably just a rectangle. But your PDE changes. 
>
> As for resources: Yours is a rather frequently asked question. Rather than 
> trying to repeat what I've been writing on many other occasions, have you 
> tried to search through the mailing list archives to find some starting 
> point? 
>
>
> > In general, I think the webpage is really missing a tutorial or an 
> example 
> > where a simple 2D axisymmetric problem is solved (e.g. just the 
> > laplace/poisson equation in such a domain). Such problems are very 
> common and 
> > a lot of people would benefit from such a tutorial. 
>
> Yes, we should eventually write such a tutorial... 
>
> Best 
>   W. 
>
> -- 
> ------------------------------------------------------------------------ 
> Wolfgang Bangerth          email:                 bang...@colostate.edu 
> <javascript:> 
>                             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 dealii+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/dealii/b3127fda-f4b5-4d01-b206-c2077b50d431%40googlegroups.com.

Reply via email to