Is it possible to provide additional condition for the solution of 2d problem at one point of the boundary (in FreeFem++)? Solution is a vector and the condition includes equality between one component and derivative of the another.
Have you tried using a penalty method? Try penalizing the condition in the weak form with a huge value like 1e30.
No, I have not such an idea. Thank you so mauch, I’l try.
-
in freeFem for thecnical raison you can not put dirichlet boundary condition on 1 points
-
if I have understanse you want to coupled for example u1 and dx(u2) at one point,
it is possible with penalization but I have idea if this converge. or not.
Frederic Hecht.
Thank you so much for the response.
I am very beginner in FreeFem++, I rather specialized in PDE theory.
The problem I consider is a 2d elasticity in a domain with a cut (elastic body with a crack).
The Signorini type conditions are imposed on the crack faces.
It seems that ANSYS and COMSOL does not allow to realise variational inequalities in such a problems.
So I learn the FreeFem++ opportunities.
At the one of faces of the crack I have thin inclusion, It is 1d object.
The inclusion has two parts: one of the parts modeling in the framework of elastic Timoshenko beam,
and the second part has a specific properties. So I have joint point between them.
Due to solve variational inequality I use domain decomposition method and
in case without any conditions at the joint point it works satisfactory.
But If I want to get a smooth junction between 2 parts of inclusion additional condition is nesessary at the point.
This is the fragment of code:
solve timoshenkosemirigidlame0([u11, u12, phi], [uu11, uu12, pphi], solver=CG)
= int2d(Th1)(
lambda*div(u11,u12) *div(uu11,uu12)
+ 2.*mu*epsilon(u11,u12)'*epsilon(uu11,uu12))
- int1d(Th1, G11)(fh1*uu12)
+ int1d(Th1, gt)(dx(u11)*dx(uu11))
+ int1d(Th1, gs)(dx(u11)*dx(uu11))
+ int1d(Th1, gt)(dx(phi)*dx(pphi)+phi*dx(uu12)+dx(u12)*pphi+phi*pphi+dx(u12)*dx(uu12))
+int1d(Th1, gt)(l22*uu12)
+int1d(Th1, gs)(l22*uu12)
+int1d(Th1, G131, G132)(l11*uu11+l12*uu12)
+ on(G12, u11=0, u12=0)
+ on(G14, u11=0, u12=0);
I want to put equality -dx(u12)(0,0)=phi(0,0) in the problem formulation but don’t know how to realise it.
me too,
this formulation is incorrect at continus level, to day no way,
change the formulation,