Add code for 1D detector #69
@ -99,37 +99,28 @@ def parse_1D(fileobj, data_type):
|
|||||||
if data_type == ".ccl":
|
if data_type == ".ccl":
|
||||||
measurements = {}
|
measurements = {}
|
||||||
decimal = list()
|
decimal = list()
|
||||||
data = fileobj.readlines()
|
for line in fileobj:
|
||||||
position = -1
|
|
||||||
for lines in data:
|
|
||||||
position = position + 1
|
|
||||||
if (
|
|
||||||
bool(re.match("(\s\s\s\d)", lines[0:4])) == True
|
|
||||||
or bool(re.match("(\s\s\d\d)", lines[0:4])) == True
|
|
||||||
or bool(re.match("(\s\d\d\d)", lines[0:4])) == True
|
|
||||||
or bool(re.match("(\d\d\d\d)", lines[0:4])) == True
|
|
||||||
):
|
|
||||||
counts = []
|
counts = []
|
||||||
measurement_number = int(lines.split()[0])
|
measurement_number = int(line.split()[0])
|
||||||
d = {}
|
d = {}
|
||||||
d["h_index"] = float(lines.split()[1])
|
d["h_index"] = float(line.split()[1])
|
||||||
decimal.append(bool(Decimal(d["h_index"]) % 1 == 0))
|
decimal.append(bool(Decimal(d["h_index"]) % 1 == 0))
|
||||||
d["k_index"] = float(lines.split()[2])
|
d["k_index"] = float(line.split()[2])
|
||||||
decimal.append(bool(Decimal(d["k_index"]) % 1 == 0))
|
decimal.append(bool(Decimal(d["k_index"]) % 1 == 0))
|
||||||
d["l_index"] = float(lines.split()[3])
|
d["l_index"] = float(line.split()[3])
|
||||||
decimal.append(bool(Decimal(d["l_index"]) % 1 == 0))
|
decimal.append(bool(Decimal(d["l_index"]) % 1 == 0))
|
||||||
if metadata["zebra_mode"] == "bi":
|
if metadata["zebra_mode"] == "bi":
|
||||||
d["twotheta_angle"] = float(lines.split()[4]) # gamma
|
d["twotheta_angle"] = float(line.split()[4]) # gamma
|
||||||
d["omega_angle"] = float(lines.split()[5]) # omega
|
d["omega_angle"] = float(line.split()[5]) # omega
|
||||||
d["chi_angle"] = float(lines.split()[6]) # nu
|
d["chi_angle"] = float(line.split()[6]) # nu
|
||||||
d["phi_angle"] = float(lines.split()[7]) # doesnt matter
|
d["phi_angle"] = float(line.split()[7]) # doesnt matter
|
||||||
elif metadata["zebra_mode"] == "nb":
|
elif metadata["zebra_mode"] == "nb":
|
||||||
d["gamma_angle"] = float(lines.split()[4]) # gamma
|
d["gamma_angle"] = float(line.split()[4]) # gamma
|
||||||
d["omega_angle"] = float(lines.split()[5]) # omega
|
d["omega_angle"] = float(line.split()[5]) # omega
|
||||||
d["nu_angle"] = float(lines.split()[6]) # nu
|
d["nu_angle"] = float(line.split()[6]) # nu
|
||||||
d["unkwn_angle"] = float(lines.split()[7])
|
d["unkwn_angle"] = float(line.split()[7])
|
||||||
|
|
||||||
next_line = data[position + 1]
|
next_line = next(fileobj)
|
||||||
d["number_of_measurements"] = int(next_line.split()[0])
|
d["number_of_measurements"] = int(next_line.split()[0])
|
||||||
d["angle_step"] = float(next_line.split()[1])
|
d["angle_step"] = float(next_line.split()[1])
|
||||||
d["monitor"] = float(next_line.split()[2])
|
d["monitor"] = float(next_line.split()[2])
|
||||||
@ -141,13 +132,13 @@ def parse_1D(fileobj, data_type):
|
|||||||
for i in range(
|
for i in range(
|
||||||
int(int(next_line.split()[0]) / 10) + (int(next_line.split()[0]) % 10 > 0)
|
int(int(next_line.split()[0]) / 10) + (int(next_line.split()[0]) % 10 > 0)
|
||||||
):
|
):
|
||||||
fileline = data[position + 2 + i].split()
|
fileline = next(fileobj).split()
|
||||||
numbers = [int(w) for w in fileline]
|
numbers = [int(w) for w in fileline]
|
||||||
counts = counts + numbers
|
counts = counts + numbers
|
||||||
d["om"] = np.linspace(
|
d["om"] = np.linspace(
|
||||||
float(lines.split()[5])
|
float(line.split()[5])
|
||||||
- (int(next_line.split()[0]) / 2) * float(next_line.split()[1]),
|
- (int(next_line.split()[0]) / 2) * float(next_line.split()[1]),
|
||||||
float(lines.split()[5])
|
float(line.split()[5])
|
||||||
+ (int(next_line.split()[0]) / 2) * float(next_line.split()[1]),
|
+ (int(next_line.split()[0]) / 2) * float(next_line.split()[1]),
|
||||||
int(next_line.split()[0]),
|
int(next_line.split()[0]),
|
||||||
)
|
)
|
||||||
|
Reference in New Issue
Block a user