#Created cooling.c and cooling.h
Followed example of external potentials. Struct contains cooling data, have a function which reads parameters into the struct.
Wrote function which takes the 'old particle data', the cooling data, and a timestep as arguments, and returns a new internal energy. This function would have to be different depending on the cooling model used. For now we just have a constant cooling rate for all particles.
Another functions takes the 'new internal energy' and updates the entropy.
#Added the function runner_do_cooling to runner.c
Followed the 'external potentials' example. Calls the 'update entropy' unction for a particle when it is active
#Added cooling to the engine
Added'engine_policy_cooling' to the list of engine policies. Added a 'cooling task' to the cell struct The cooling task is unlocked after the kick is performed. It does not unlock anything
#Added a 'C' flag option
#Started to run successfully
Seems to know how to read the .yml file by magic. Just needed to put in Cooling:lambda:0.0 etc.
But then crashes...
#Include task_type_cooling in the 'task_acts_on' function in task.c
This let's the scheduler know what the task acts on. For cooling we set this to be 'task_action_part'.