Thanks for your answer !

I'm working in 2D on a disk !

This is my mesh on the 4 cycle of refinement (which I never use in practice 
because it's not refined enough for what I want to do).


I don't think I have a mapping object...
What i do to initalize my system on phi is :
//On génère le dofhandler
    phi_dof_handler.distribute_dofs (phi_fe);

    //On génère les conditions aux bords
    phi_constraints.clear();
    DoFTools::make_hanging_node_constraints(phi_dof_handler, phi_constraints
);
    VectorTools::interpolate_boundary_values(phi_dof_handler,
                                             0,
                                             ZeroFunction<2>(1),
                                             phi_constraints
                                            );

    //On créer le sparsity pattern
    DynamicSparsityPattern dsp(phi_dof_handler.n_dofs());
    DoFTools::make_sparsity_pattern (phi_dof_handler, dsp);
    phi_sparsity_pattern.copy_from(dsp);

    //On resize les objets à la bonne taille
    phi_system_matrix.reinit (phi_sparsity_pattern);
    phi_solution.reinit (phi_dof_handler.n_dofs());
    phi_old_solution.reinit (phi_dof_handler.n_dofs());
    phi_system_rhs.reinit (phi_dof_handler.n_dofs());

    //On affiche les infos intéressantes
    std::cout << YELLOW << "     Nombre de degrés de liberté pour les 
angles : " 
              << RESET  << WHITE  << phi_dof_handler.n_dofs() << RESET
              << std::endl;



Le jeudi 10 octobre 2019 14:00:23 UTC+2, Bruno Blais a écrit :
>
> A quick question, since you are working on a sphere, are you specifying a 
> mapping of the same order as your phi?
>
> On Wednesday, 9 October 2019 08:57:45 UTC-4, Félix Bunel wrote:
>>
>> Hello everyone.
>>
>> I'm having some trouble to understand the convergence rate i'm observing 
>> in my code.
>>
>> Here is what i'm solving :
>>
>> - I'm in 2D on a round mesh.
>> - I'm solving a simple Poisson equation on this mesh for a variable named 
>> Phi the solution is known for this and is 1-x^2-y^2
>> - With this solution phi I'm then solving a Stokes equation that has 
>> special terms that depends on phi.
>>
>> For the stokes problem i'm using the usual mixed fe element as such :
>> stokes_fe(FE_Q<2>(2), 2,
>>           FE_Q<2>(1), 1),
>> So second order for the speeds and first order for the pressure (just 
>> like in the boussinesq problem from the tutorials.
>>
>> For the poisson/phi problem, i'm using FE_Q<2>  also
>> initialized as such :
>> phi_fe (2),
>> So second order.
>>
>> For a special case, I have a known solution which is u=v=0 and p of the 
>> form 1-x^2-y^2 (just like phi)
>> And i have solved this on multiple refinement cycle which gives me 
>> different number of dofs and cellsize.
>>
>> The thing is, when I plot the error as a function of the maximum cell 
>> diameter, I get a quadratic convergence rate for the speed, and a linear 
>> rate for P and phi.
>> What surprises me is that I don't have a quadratic convergence rate for 
>> my poisson/\phi problem even though I used 
>> phi_fe (2),
>>
>> My norm is the L2 norm which is simply sqrt(sum(error**2))). I'm 
>> computing it with python after exporting the solution as a gpl file.
>> Here are the graphs :
>>
>>
>> I have also tried 
>> phi_fe (1),
>>
>> But in this case I don't even have convergence for the speed.
>>
>>
>>
>> In my integration part, I have always used     
>> QGauss<2>  quadrature_formula(4);
>> which is equal to degree+2.
>>
>> So here are my questions :
>>
>> 1- Is this convergence rate the one i'm expecting for a poisson equation 
>> (phi problem) ?
>>
>> 2- If no, any idea why I don't have the correct convergence rate ?
>>
>> 3- In the tutorial step 31, a degree of 2 is used for the temperature 
>> (which is very similar to my phi), is there some reason for that choice 
>> (just like using degree+1 for the speed and degree for the pressure in a 
>> stokes problem...)
>>
>> Thanks in advance.
>>
>

-- 
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/966a3637-8ca8-462a-bf7a-621746c9c6ad%40googlegroups.com.

Reply via email to