My suspicion is the same as yours that since llg-heun is used in the example that it is the recommend one. Though, you could try using the monte-carlo to see what happens and you could compare the results between the two.
There were references I came across mentioning monte-carlo being specified for equilibrium properties calculations and LLG for dynamics properties calculations. The citations for those should be in the post at [1].
It is noted, though, that there was a conversation about monte-carlo and llg-heun for Curie temperature calculations at [2]. Perhaps, you could take some of the ideas from it to see if they are still applicable to the field cooling.
When using "sim:program=field-cool", it looks like it is helpful set temperatures in the input file with keywords:
sim:equilibration-temperature
sim:minimum-temperature
sim:maximum-temperature
sim:cooling-function
If you leave those out of the input file, it looks like it sets them be default to:
sim:equilibration-temperature=300.0
sim:minimum-temperature=0.0
sim:maximum-temperature=
300.0
sim:cooling-function
= exponential
Since in simulation/sim.cpp [3], it looks like the default values are set, respectively, with:
line 82: double Teq=300.0;
line 82: double Tmin=0.0;
line 81: double Tmax=300.0;
line 132: int cooling_function_flag=0; /// 0 = exp, 1 = gaussian, 2 = double-gaussian, 3 = linear
According to page 52 of the VAMPIRE manual [4], the sim:cooling-function can be set as exponential, gaussian, double-gaussian, or linear.
From the input file example at [5] for the
3b_skyrmions_in_built_dmi, it looks like is best to set the
sim:equilibration-temperature and
sim:maximum-temperature to the same value of 30.0.
As when running the simulation, it looks like the first temperature is writes to the output file is 30 K that comes from "sim:equilibration-temperature=30". For the next temperature in the output file, it looks like it comes from the "sim:maximum-temperature=30.0", but it seems to not include the 30.0 but the temperature of 29.999 K as an incremented temperature based on a gaussian step (from sim:cooling-function = gaussian). Then, it looks like it will continue to write decrements of the temperature until it hits the stopping point set by "sim:minimum-temperature=0.0".