Hi, I am using the command fix ttm/mod with Lammp-2Aug 2023 version. I find that the program can

progress slowly when the value of intensity I0 is small, and that the code almost is stuck when the intensity exceeds some value. Does the calculation speed depend on the value of this parameter? Anyone has ever been in that situation?

Realistically, increasing I_0 should not affect the simulation much. However, from what I have seen in the code, the chosen form of equations for heat capacity and heat conductivity causes the finite difference timestep size to become very small at very high temperature gradients (as in the case of a larger value of I_0). This causes the code to run slower. In my case, I have modified the equations in my code based on fitting them to available DFT or experimental data.

More importantly, if I_0 is too large, it will result in high electron temperatures at the surface, which in turn leads to larger Langevin random forces. Depending on your timestep size, this might cause certain atoms to gain unrealistic velocities, and lammps is unable to process that with this fix. You will see ion temperature reaching millions of kelvin suddenly just before simulation is stuck. This is due to that very high velocity.

Sometimes you may encounter an error called “non-numeric coordinate calculated,” which results from some sort of division by zero or a very small number occurring at some stage of the code, causing the simulation to cease. This has happened to me many times.

I_0 is calculated from fluence. Here’s a suggestion, at first when testing avoid fluence that might cause phase explosion. Most of the time my simulations got stuck when I tripped into phase explosion regime. There is also some metals which are well behaved during ablation simulation compared to others.

If you are working with copper for example, you are out of luck.

Hi Sabik,

I found that I was troubled by the units of gamma_p and gamma_s. Lammps manual says that the two parameters have mass/time unit. However, from the left part of the electronic heat diffusion equation, Ce*rho_e* \frac{\partial Te}{\partial t}, we can derive the unit: energy/(temperature electrons) * electrons/volume * tempeture/time = energy/(volume * time) ; from this, I think it can’t be equivalent to the unit (mass/time) * temperature. So I doubt if Lammps manual make mistakes.

The original paper by Duffy and Rutherford gives how g_s and g_p depend on \gamma_s and \gamma_p respectively:

g_s = \frac{3Nk_B}{m \Delta V} \times \gamma_s

g_p = \frac{3N'k_B}{m \Delta V} \times \gamma_p

that is, the gammas are “intensive” friction coefficients that are then multiplied by particle number and Boltzmann’s constant and divided by particle mass and simulation volume to give the “extensive” g’s (and N’ is the number of particles with velocities exceeding the stopping velocity v_0).

While it’s technically not good form for the LAMMPS manual to omit these equations, they are easily looked up in the listed reference.

Hi srtee,

Thank you for your reply. I think I mistook the input parameters gamma_p and gamma_s for g_p and g_s.