Hello all,
I am a new user of the deal.ii library and have been working on solving the Cahn-Hilliard problem with the following governing equations:
My main goal is to solve the problem with an implicit-explicit solver using a custom-designed preconditioner. Before diving deep into the implicit-explicit implementation, I first tried it with an explicit solver, which works fine. In that code, I computed the first derivative of the Gibbs free energy, fcV(c), within a for loop as shown below:
Next, I tried implementing the same problem using a function to compute the fcV(c) similar to the
compute_nl_term() function from Step-25. However, I obtained different results in this case. Specifically, the concentration decreases as the simulation proceeds, which is not expected. Below, you can find the corresponding section from the second code with the compute_nl_term:
The compute_nl_term function definition:
The function is called within the run() function as below:
Could you please let me know if my understanding of the usage of this function is correct? (Note: the use of
compute_nl_term() is necessary for the implicit-explicit implementation, due to the nonlinear functions)
Thanks in advance,
Best Regards,
Kubra Karayagiz