public float T; // Temperature public SimulatedAnnealing(AtomGrid g) { this.G = g; this.R = new Random(); this.T = 10; // Too large temperature just takes longer to converge due to too much // randomization allowed in the metropolis part of the annealing algorithm. }
protected override void Initialize() { OnePx = new Texture2D(_graphics.GraphicsDevice, 1, 1); OnePx.SetData <Color>(new Color[1] { Color.White }); // NOTE: Too large a grid takes a long time per frame. G = new AtomGrid(14, 4); SA = new SimulatedAnnealing(G); //SA.Anneal(); _graphics.PreferredBackBufferWidth = G.GetSize() * CellWidth; _graphics.PreferredBackBufferHeight = G.GetSize() * CellHeight; _graphics.ApplyChanges(); base.Initialize(); }