FreeEnergyMachine
Documentation for FreeEnergyMachine.
FreeEnergyMachine.SBCheckpoint
FreeEnergyMachine.SimulatedBifurcation
FreeEnergyMachine.SimulatedBifurcationState
FreeEnergyMachine.force!
FreeEnergyMachine.kinetic_energy
FreeEnergyMachine.potential_energy
FreeEnergyMachine.potential_energy
FreeEnergyMachine.potential_energy
FreeEnergyMachine.simulate_bifurcation!
FreeEnergyMachine.SBCheckpoint
— TypeCheckpoint structure to store system state during simulation.
FreeEnergyMachine.SimulatedBifurcation
— TypeA mutable struct representing a simulated bifurcation system. T: Type parameter for numerical values KIND: Type of bifurcation (:aSB, :bSB, or :dSB)
FreeEnergyMachine.SimulatedBifurcationState
— TypeState of the simulated bifurcation system. x: Position variables p: Momentum variables
FreeEnergyMachine.force!
— MethodCalculate forces for asymmetric simulated bifurcation (aSB). F = -(x^3 + ax) + c0 Σ(Jij xj)
FreeEnergyMachine.kinetic_energy
— MethodCalculate kinetic energy: K = Σ(p^2/2)
FreeEnergyMachine.potential_energy
— MethodCalculate potential energy for asymmetric simulated bifurcation (aSB). V = Σ(x^4/4 + ax^2/2) - c0 Σ(Jij xi xj)
FreeEnergyMachine.potential_energy
— MethodCalculate potential energy for symmetric simulated bifurcation (bSB). V = Σ(ax^2/2) - c0 Σ(Jij xi xj)
FreeEnergyMachine.potential_energy
— MethodCalculate potential energy for discrete simulated bifurcation (dSB). V = Σ(ax^2/2) - c0 Σ(Jij (xi sign(xj) + xj sign(xi)))
FreeEnergyMachine.simulate_bifurcation!
— MethodSimulate the bifurcation system using Störmer-Verlet integrator.
Parameters:
- state: Initial state of the system
- sys: Bifurcation system
- nsteps: Number of simulation steps
- dt: Time step size
- a0: Initial control parameter value (default: 1.0)
- a1: Final control parameter value (default: 0.0)
- checkpoint_steps: Number of steps between checkpoints (default: typemax(Int))
Returns:
- Updated state
- Vector of checkpoints