new contribute to FEniCS and help request

19 views
Skip to first unread message

Enrico Borinato

unread,
Sep 18, 2020, 11:08:20 AM9/18/20
to fenics-dev

Dear FEniCS Developers,
I am Enrico Borinato a master student from Italy, University of Trento. My background is environmental engineering.
Currently, I am working on my master thesis and my supervisors are Professor Riccardo Rigon (University of Trento), Professor Stepha Gruber (University of Ottawa), and Niccolò Tubini a third year Ph.D. student  (University of Trento).
The aim of my master thesis is to implement a finite element solver for the heat equation by considering the phase change of water. Specifically this model will be applied to simulate frozen soil.

Existing frozen soil models based on the heat transfer equation differ each other both in the formulation of the governing equation and in the approach to solve the non-linearity caused by phase change.
My work is based on the work by my supervisors that will be soon submitted and the  novelty regards the use of the nested Newton algorithm (Casulli and Zanolli, 2010) to solve the nonlinear system resulting from the discretization of the enthalpy equation, attached pdf.The nested Newton algorithm was previously applied to Richards' equation and it guarantees the convergence of the solution for any time step size.

This is a key feature since the integration time step can then be chosen according to the timescale of the processes to study, from seconds to days.



For this purpose I would like to use FEniCS. I have already started to learn how it works following the tutorials. I am able to solve the pure conduction, the non-linear conduction problem and now I am working with the conduction and phase change without water movement.

For my work I would need to implement the nested Newton algorithm and some other functions that relate the specific enthalpy of soil with temperature.

May I ask you if it is possible to contribute to FEniCS? And if it is, could you help me?
At the moment I do not know where the source code is and I have some difficulties understanding how I can implement these pieces of code I need.

Thanks in advance,
Enrico
problem_explanation.pdf
Reply all
Reply to author
Forward
0 new messages