Hello, all,
I’m currently working on solving the temperature advection-diffusion equation in an axisymmetric domain. However, it seems that the diffusion function in Basilisk (http://basilisk.fr/src/diffusion.h) doesn't directly support axisymmetric cases.
Could anyone suggest how I might modify the diffusion function to solve the advection-diffusion equation in an axisymmetric setup? Alternatively, I would appreciate any guidance on how to input the necessary variables for diffusion to handle axisymmetry.
Thank you in advance!
Yannick
event tracer_diffusion (i++) {
/**
We compute the diffusivity coefficient. */
face vector D[];
foreach_face()
D.x[] = lambda/rho/cp*fm.x[];
scalar theta[];
foreach()
theta[] = max(cm[], 1.e-20);
/**
We solve the diffusion equations using the·
Poisson–Helmholtz solver. */
diffusion (T, dt, D, theta=theta);
}
Dear Edoardo,
Thank you very much for your thorough and insightful response. I greatly appreciate the time and detail you put into explaining the modifications needed for axisymmetric cases.
Following your guidance, I tested the implementation, and I’m pleased to report that the code works correctly in the axisymmetric setup!Thank you once again for your invaluable support.
Best regards,
Yannick