In fact, when I start my model I defined those corner cause I thought that 
without Dirichlet condition getfem can not resolve the model with only the 
source term (maybe I am wrong). So I chose corners as conditions in order to 
have the smallest conditions as possible.

So now with your indications I do not use those corners anymore. Also I only 
put the Dirichlet condition at the top. It is enough isn't it ?

I can not re-test my program again today, maybe I made an other mistake. 
Anyway, if you told me it should work like this, i will check the rest of my 
program tomorrow morning. Thank you for your help, you helped me a lot I'll let 
you know if it works.

Have a nice evening.
________________________________
From: Konstantinos Poulios <[email protected]>
Sent: Monday, August 2, 2021 5:24:26 PM
To: BLANCKAERT Benjamin <[email protected]>
Cc: [email protected] <[email protected]>
Subject: Re: Problem with dirichlet condition and source term

So you apply a displacement of [0,1,0] at the top, and your entire body moves 
by this amount as rigid body, right? This means that the top BC is applied 
correctly, now you need to check for mistakes in the other BCs/loads. How is 
CORNER defined? You cannot define a single point as a region.

BR
Kostas

On Mon, Aug 2, 2021 at 4:13 PM BLANCKAERT Benjamin 
<[email protected]<mailto:[email protected]>> wrote:

Thank you so much for your fast answer. I have already tried to do this :


md.add_initialized_data('condition',[0,1,0])
md.add_Dirichlet_condition_with_multipliers(mim,'u',mfu,TOP,'condition')

But when i visualize the results I have the same displacement everywhere on my 
mesh. I have well written my constitutive law so normally I should have more 
little displacement when I go deeper but it is not the case.


/// Blanckaert Benjamin




________________________________
De : Konstantinos Poulios 
<[email protected]<mailto:[email protected]>>
Envoyé : lundi 2 août 2021 15:38:55
À : BLANCKAERT Benjamin
Cc : [email protected]<mailto:[email protected]>
Objet : Re: Problem with dirichlet condition and source term

Dear Benjamin,

A source term corresponds to a Neumann BC. So the [0,1,0] vector that you apply 
is a actually a traction, not a displacement. You need to apply a 
non-homogeneous Dirichlet condition if you want to enforce a displacement of 
[0,1,0] at the top surface.

BR
Kostas


On Mon, Aug 2, 2021 at 3:17 PM BLANCKAERT Benjamin 
<[email protected]<mailto:[email protected]>> wrote:

Dear Getfem Users,

I am doing an internship in which I try to modelize a simple case of soil 
reinforced with rigid inclusions but I have a problem with the interaction 
between the source term I apply and the dirichlet conditions. I explain :


I apply Dirichlet Condition in the 4 corner at the bottom of my model in the 
simplest way : md.add_Dirichlet_condition_with_multipliers(mim,'u',mfu,CORNER) 
(I use Python module)


I also add a source_term_brick at the top of my model, here an example with an 
unit displacement:

d = [0,1,0]
md.add_initialized_data('d',d)
md.add_source_term_brick(mim, 'u', 'd',TOP)


When I visualize the results with paraview I don't have the expected results. 
Indeed the displacement at the TOP is 2.2E-6 (which is very far from 1).


I tried to identify the problem and I am almost sure that it is a problem with 
the dirichlet conditions which spread too much.


Do you have any idea about How to fix it ?


/// Blanckaert Benjamin


Reply via email to