3 Commits
0.7.3 ... 0.7.4

Author SHA1 Message Date
a165167902 Updating for version 0.7.4 2023-05-25 13:51:29 +02:00
0b88ab0c7f Use scan["nu"] as a scalar
Fix #53
2023-05-23 08:56:18 +02:00
59d392c9ec Update to a new data format in ccl/dat files 2023-05-16 11:26:08 +02:00
3 changed files with 39 additions and 19 deletions

View File

@ -6,4 +6,4 @@ from pyzebra.sxtal_refgen import *
from pyzebra.utils import * from pyzebra.utils import *
from pyzebra.xtal import * from pyzebra.xtal import *
__version__ = "0.7.3" __version__ = "0.7.4"

View File

@ -811,7 +811,7 @@ def create():
gamma = scan["gamma"][0] gamma = scan["gamma"][0]
omega = scan["omega"][0] omega = scan["omega"][0]
nu = scan["nu"][0] nu = scan["nu"]
chi = scan["chi"][0] chi = scan["chi"][0]
phi = scan["phi"][0] phi = scan["phi"][0]

View File

@ -8,41 +8,45 @@ import numpy as np
META_VARS_STR = ( META_VARS_STR = (
"instrument", "instrument",
"title", "title",
"sample", "comment",
"user", "user",
"ProposalID", "proposal_id",
"original_filename", "original_filename",
"date", "date",
"zebra_mode", "zebra_mode",
"proposal", "sample_name",
"proposal_user",
"proposal_title",
"proposal_email",
"detectorDistance",
) )
META_VARS_FLOAT = ( META_VARS_FLOAT = (
"omega",
"mf",
"2-theta",
"chi",
"phi",
"nu",
"temp",
"wavelength",
"a", "a",
"b", "b",
"c", "c",
"alpha", "alpha",
"beta", "beta",
"gamma", "gamma",
"omega",
"chi",
"phi",
"temp",
"mf",
"temperature",
"magnetic_field",
"cex1", "cex1",
"cex2", "cex2",
"wavelength",
"mexz", "mexz",
"moml", "moml",
"mcvl", "mcvl",
"momu", "momu",
"mcvu", "mcvu",
"2-theta",
"twotheta",
"nu",
"gamma_angle",
"polar_angle",
"tilt_angle",
"distance",
"distance_an",
"snv", "snv",
"snh", "snh",
"snvm", "snvm",
@ -55,6 +59,13 @@ META_VARS_FLOAT = (
"s2vb", "s2vb",
"s2hr", "s2hr",
"s2hl", "s2hl",
"a5",
"a6",
"a4t",
"s2ant",
"s2anb",
"s2anl",
"s2anr",
) )
META_UB_MATRIX = ("ub1j", "ub2j", "ub3j", "UB") META_UB_MATRIX = ("ub1j", "ub2j", "ub3j", "UB")
@ -116,6 +127,10 @@ def parse_1D(fileobj, data_type):
var_name = var_name.strip() var_name = var_name.strip()
value = value.strip() value = value.strip()
if value == "UNKNOWN":
metadata[var_name] = None
continue
try: try:
if var_name in META_VARS_STR: if var_name in META_VARS_STR:
metadata[var_name] = value metadata[var_name] = value
@ -123,6 +138,10 @@ def parse_1D(fileobj, data_type):
elif var_name in META_VARS_FLOAT: elif var_name in META_VARS_FLOAT:
if var_name == "2-theta": # fix that angle name not to be an expression if var_name == "2-theta": # fix that angle name not to be an expression
var_name = "twotheta" var_name = "twotheta"
if var_name == "temperature":
var_name = "temp"
if var_name == "magnetic_field":
var_name = "mf"
if var_name in ("a", "b", "c", "alpha", "beta", "gamma"): if var_name in ("a", "b", "c", "alpha", "beta", "gamma"):
var_name += "_cell" var_name += "_cell"
metadata[var_name] = float(value) metadata[var_name] = float(value)
@ -202,9 +221,10 @@ def parse_1D(fileobj, data_type):
dataset.append({**metadata, **scan}) dataset.append({**metadata, **scan})
elif data_type == ".dat": elif data_type == ".dat":
# TODO: this might need to be adapted in the future, when "gamma" will be added to dat files # TODO: this might need to be adapted in the future, when "gamma_angle" will be added to dat files
# This happen in April 2023
if metadata["zebra_mode"] == "nb": if metadata["zebra_mode"] == "nb":
metadata["gamma"] = metadata["twotheta"] metadata["gamma_angle"] = metadata["twotheta"]
scan = defaultdict(list) scan = defaultdict(list)
scan["export"] = True scan["export"] = True