changes method of instrument list deduplication
picks first occurrence in every set (ded_lasers, ded_chambers, ded_rheeds) and eventually warns user if duplicates exist
This commit is contained in:
16
src/main.py
16
src/main.py
@@ -110,11 +110,21 @@ def deduplicate_instruments_from_layers(layers):
|
|||||||
lasers.append(instruments["laser_system"])
|
lasers.append(instruments["laser_system"])
|
||||||
chambers.append(instruments["deposition_chamber"])
|
chambers.append(instruments["deposition_chamber"])
|
||||||
rheeds.append(instruments["rheed_system"])
|
rheeds.append(instruments["rheed_system"])
|
||||||
|
ded_lasers = list( set( lasers ) )
|
||||||
|
ded_chambers = list( set( chambers ) )
|
||||||
|
ded_rheeds = list( set( rheeds ) )
|
||||||
|
elegant_list = [ ded_lasers, ded_chambers, ded_rheeds]
|
||||||
|
if not all([ len(i) == 1 for i in elegant_list ]):
|
||||||
|
print("Warning: different instruments have been used for different layers - which is currently not allowed.")
|
||||||
|
print("Selecting the first occurence for every category...")
|
||||||
instruments_used_dict = {
|
instruments_used_dict = {
|
||||||
"laser_system": list( set( lasers ) ),
|
"laser_system": ded_lasers[0],
|
||||||
"deposition_chamber": list( set( chambers ) ),
|
"deposition_chamber": ded_chambers[0],
|
||||||
"rheed_system" : list( set( rheeds ) ),
|
"rheed_system": ded_rheeds[0],
|
||||||
}
|
}
|
||||||
|
return instruments_used_dict
|
||||||
|
|
||||||
|
|
||||||
# lasers = { f"layer_{lyr.layer_number}": lyr.laser_system for lyr in layers }
|
# lasers = { f"layer_{lyr.layer_number}": lyr.laser_system for lyr in layers }
|
||||||
# chambers = { f"layer_{lyr.layer_number}": lyr.deposition_chamber for lyr in layers }
|
# chambers = { f"layer_{lyr.layer_number}": lyr.deposition_chamber for lyr in layers }
|
||||||
# rheeds = { f"layer_{lyr.layer_number}": lyr.rheed_system for lyr in layers }
|
# rheeds = { f"layer_{lyr.layer_number}": lyr.rheed_system for lyr in layers }
|
||||||
|
|||||||
Reference in New Issue
Block a user