コード例 #1
0
import rpmClassDev_Alex as rpm

importlib.reload(rpm)

Hc = 0.062
bar_length = 220e-9
vertex_gap = 1e-7
bar_thickness = 25e-9
bar_width = 80e-9
magnetisation = 800e3

angle = 45


squareLattice = rpm.ASI_RPM(25, 25, bar_length = bar_length,\
 vertex_gap = vertex_gap, bar_thickness = bar_thickness,\
 bar_width = bar_width, magnetisation = magnetisation)

Hc_std = 0.05
squareLattice.load('RandomLattice1.npz')
Hamp = 1.15 * Hc
folder = r'C:\Users\av2813\Box\GitHub\RPM\RPMv2\AlexData\MinorLoopHamp_'
directory = folder + str(np.around(Hamp * 1000, 4)).replace('.', 'p') + 'mT'
fieldloops, q, mag, monopole = squareLattice.fieldsweep(
    Hamp / np.cos(np.pi * angle / 180),
    20,
    angle,
    n=5,
    loops=8,
    folder=directory)
np.savez(
コード例 #2
0
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import matplotlib.colors as cl
from matplotlib.ticker import MaxNLocator
#from matplotlib.colors import Normalize
import copy
import pickle
import importlib

import rpmClassDev_Alex as rpm

kagomeLattice1 = rpm.ASI_RPM(10, 10)
#kagomeLattice1.square(Hc = Hc, Hc_std=Hc_std)
folder = r'C:\Users\av2813\Box\Simulations\Mumax3\mumax3.9final_windows\HPCResults\GroundSemiCircle\pkl'
mag = []
monopole = []
q = []
field_steps = np.linspace(0, Hmax, steps + 1)
field_steps = np.append(field_steps, np.linspace(Hmax, -Hmax, 2 * steps + 1))
field_steps = np.append(field_steps, np.linspace(-Hmax, 0, steps + 1))
fieldloops = field_steps * np.array([np.cos(Htheta), np.sin(Htheta), 0.])
for root, dirs, files in os.walk(folder):
    for file in files:
        if '.npz' in file and 'AppliedFieldState' in file:
            squareLattice.load(os.path.join(root, file))
            mag.append(rpm.netMagnetisation())
            monopole.append(rpm.monopoleDensity())
            q.append(rpm.correlation(self.previous, self))
            #vertex.append(rpm.vertexTypePercentage())
コード例 #3
0
ファイル: ReadStates.py プロジェクト: av2813/RPMv2
importlib.reload(rpm)

fieldApplied = [58.9, 59.52,60.14, 60.76, 61.38, 62.0, 62.62, 63.24, 63.86]

folder = r'C:\Users\av2813\Box\GitHub\RPM\RPMv2\AlexData'

subfolder = r'\MinorLoopHamp_'
lattice_list = []

for f in fieldApplied:
	sub = subfolder+str(f).replace('.', 'p')+'mT\\'
	name = 'Lattice_Loop7_FieldStrength0p0mT_Angle0p79.npz'
	directory = r'C:\Users\av2813\Box\GitHub\RPM\RPMv2\AlexData\MinorLoopSquareLattice25x25\\'
	file = directory + sub+name
	lattice = rpm.ASI_RPM(25,25)
	lattice.load(file)
	lattice_list.append(lattice)
	#plt.suptitle(str(np.around(f/0.62,0))+'% of Hc')
	#plt.show()
corr = np.zeros((len(lattice_list), len(lattice_list)))
i = 0
for l1 in lattice_list:
	j = 0
	for l2 in lattice_list:
		corr[i, j] = l1.correlation(l1, l2)
		j+=1
	i+=1
plt.figure()
plt.plot(np.around(np.array(fieldApplied)/0.62,0), corr[:,0])
plt.ylabel('Correlation')
コード例 #4
0
ファイル: PlotMinorLoops.py プロジェクト: av2813/RPMv2
import numpy as np
import matplotlib.pyplot as plt
import rpmClassDev_Alex as rpm

n = 5
lattice = rpm.ASI_RPM(n,n)



#fieldApplied = [58.9, 59.52,60.14, 60.76, 61.38, 62.0, 62.62, 63.24, 63.86]
#fieldApplied = [68.3, 71.3,74.4, 77.5]

corrEnd = []
monoEnd = []
magEnd = []

loops = np.arange(0,9,1)

#for f in fieldApplied:
data = np.load('MinorloopQuenchedDisorder'+str(n)+'x'+str(n)+'.npz')
field = data['arr_0']
correlation = data['arr_1']
mag = data['arr_2']
monopole = data['arr_3']
vertex = data['arr_4']

cor_split = np.split(correlation, 8)
c = []
c.append(correlation[0])
for t in cor_split:
	c.append(t[-1])