Exemplo n.º 1
0
 def setUp(self):
     self.pot = XYModel(dim=[L, L], phi=1., periodic=False, phases=phases)
     self.x0 = _x0_xy
     self.e0 = -1.3466543852399337
     self.assertEqual(self.pot.nspins, self.x0.size)
Exemplo n.º 2
0
 def setUp(self):
     self.pot = XYModel(dim=[L, L], phi=0, periodic=False, phases=None)
     self.x0 = _x0_xy
     self.e0 = -0.6195031129867052
Exemplo n.º 3
0
 def setUp(self):
     self.pot = XYModel(dim=[L, L], phi=0, periodic=True)
     self.x0 = _x0_xy
     self.e0 = -0.08896226597510098
Exemplo n.º 4
0
    return np.array([cos(a), sin(a)])


def printspins(fout, pot, angles):
    for node in pot.G.nodes():
        i = pot.indices[node]
        s = angle2vec(angles[i])
        fout.write("%g %g " % (node[0], node[1]))
        fout.write("%g %g\n" % (s[0], s[1]))


pi = np.pi
L = 24
nspins = L**2

pot = XYModel(dim=[L, L], phi=np.pi)

angles = np.random.uniform(-pi, pi, nspins)
print(angles)

e = pot.getEnergy(angles)
print("energy ", e)

# try a quench
if False:
    from pele.optimize import mylbfgs

    ret = mylbfgs(angles, pot)

    print(ret)