As ours is simply an implementation following Ref., here we only explain the main concepts of the approach. We aim to perform a simulation at a given potential, so first a thermopotentiostat is built, i.e. the system exchanges energy with a fictitious heat bath and exchanges charge with a fictitious potentiostat. In the potentiostat, a control mechanism sets the potential at an average value Φ 0 , the circuit has a resistance element R, and we can read the actual potential Φ(t) on the electrode at every time step. The system in its whole is charge neutral, as we have a charge n on the electrode which is compensated by a counter charge -n, set on the other electrode in the extended system described in Figure ; in the case of the SJM method, the counter charge is placed in the jellium. Connecting the system to a potentiostat (charge bath) and adapting the electrode potential result in a dissipative interaction. The energy loss caused by the potential control must be balanced on average by the energy gain from temperature-dependent fluctuations, so that the system remains in equilibrium (fluctuation-dissipation theorem). The main difference between this method and the others is that the charge, n, of the system has its own equation of motion, in addition to the equations of motion for the momentum p and position x: