Dear Yves,
Thank you very much for your reply. There’s still something I don’t understand from your explanation.
The equation q” = D*(TairT) = k*grad(T).n is the specific heat flow through a unitary surface [ex. W/m2]. If I multiply epsilon only to the rhs term, then I change the conduction heat flow since the surface is epsilon wide in one direction, but for the heat flow equilibrium I should multiply also the lhs term by epsilon, since also the convection heat flow pass throw the same epsilon wide surface, and so the two epsilon disappear for simplification.
Also, I cannot see k in both your source_term and Fourier_Robin bricks input data, but k is part of the surface heat flow equations.
These are the reasons why I’d replace D/epsilon with D/k in your implementation.
Thank you in advance for your kind feedback.
Regards, Lorenzo
Dear Lorenzo, You are right. The boundary conditions of the thermal problem do not follow what is announced and the equation on the top and bottom edges are the one you indicate but with a small correction (D*(TairT) = epsilon*k*grad(T).n). The term epsilon comes from the fact that the temperature is assumed constant in the thickness. And yes, the Fourier_Robin_brick works only on the stiffness matrix (see http://getfem.org/python/cmdref_Model.html for a short description). Of course, it is possible to use directly GWFL to describe the terms instead of using the Fourier_Robin_bricks, these is equivalent. And so concerning the question 1, it seems to me that the terms are corrects (integration of the equation in the thickness). Best regards, Yves Le 26/04/2021 à 16:56, Lorenzo Ferro a écrit : Dear Yves,
Thank you for your reply, thanks to which I’ve started studying the tutorials, and I’ve a question related to the Thermoelastic and electrical coupling example.
Looking at the python file I can read that the convection coefficient D is applied to all the surfaces except the holes and the left surface (in my opinion it is not applied to the right surface too, can you confirm?).
Then I see that Fourier_Robin_brick and source_term_brick are used to impose the convection condition the Top and Bottom edges. I suppose that the equation to be included is something like q” = D*(TairT) = k*grad(T).n => grad(T).n + D/k*T = D/k*Tair
The left side term is supposed to be assembled via the Fourier_Robin_brick whereas the right side term via the source_term_brick.
Questions:
1) Looking at the python file I see that you calculate D/epsilon and D*Tamb/epsilon where epsilon is the plate thickness. Is this an error and we should replace epsilon with k?
2) Does the Fourier_Robin_brick work only on the stiffness matrix?
I’m asking because the usage of these bricks, their convection equations and relevant assembly, are not mentioned/explained in the tutorial.
Thank you very much. Lorenzo
Il giorno 20 apr 2021, alle ore 11:02, Yves Renard <Yves.Renard@insalyon.fr> ha scritto:
Dear Lorenzo,
Through its Python interface, GetFEM offers generic tools for complex modeling and evolutionary equations, even nonlinear ones, can be taken into account using the weak form language (GWFL). Practical tools for managing meshes, regions in these meshes, meshes cut by levelsets complete the system, as well as postprocessing functions. These tools allow to build complex static or transient codes, but of course, GetFEM is above all a toolbox, not a readymade code allowing to do simulations quickly.
Examples are given in the interface/src/python directory on basic modeling. In particular, it may be interesting to follow the tutorial example http://getfem.org/tutorial/index.html on the thermoelastic problem.
Best regards,
Yves
On 19/04/2021 18:48, Lorenzo Ferro wrote:
Dear All,
I need to simulate a flashbutt welding process, where two steel bars are welded together, head to head, applying electrical current (flash welding) until the bar heads reach the melting temperature, eventually pushing them together to make the joint. During this process, some metal reaches the melting point (almost evaporation) and bursts away, so some metal is lost during the heating phase and the two bars must be brought closer together to keep the current flowing and the process going on.
So the model would include (at least): A) a transient thermal simulation with external convection and radiation B) internal heat generated by joule effect C) nonlinear material properties D) elements removal from the simulation once the melting temperature has been reached, with consequent change of boundary elements on the heads of the bars E) moving the bars closer, stepbystep, to restore the surface contact and current flow (no need of a real contact function, contact can be estimated based on the boundary elements distance, since some current can flow also when the faces are enough close).
To do so I've two options: 1) making a simulation model with a programming language like Python, etc... 2) exploring the usage of the GetFEM library. At the end of the work, a new scientific article will follow. The simulation is only the first part, the article will also include a part related to the automation control of the welding process.
Questions: i) can GetFEM be convenient for the implementation of the above mentioned problem? ii) does GetFEM allows to implement all of the above features? iii) principally, can you give me guidance about the needed GetFEM native functions?
I've never used GetFEM before but I'd like to learn how to use it, also in view of other future projects and publications.
Thank you in advance. Lorenzo

Yves Renard (Yves.Renard@insalyon.fr) tel : (33) 04.72.43.87.08 INSALyon 20, rue Albert Einstein 69621 Villeurbanne Cedex, FRANCE http://math.univlyon1.fr/~renard

 Yves Renard ( Yves.Renard@insalyon.fr) tel : (33) 04.72.43.87.08 INSALyon 20, rue Albert Einstein 69621 Villeurbanne Cedex, FRANCE http://math.univlyon1.fr/~renard
