本文整理汇总了Python中xia2.Handlers.Flags.Flags.get_fixed_628方法的典型用法代码示例。如果您正苦于以下问题:Python Flags.get_fixed_628方法的具体用法?Python Flags.get_fixed_628怎么用?Python Flags.get_fixed_628使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xia2.Handlers.Flags.Flags
的用法示例。
在下文中一共展示了Flags.get_fixed_628方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: continue_from_error
# 需要导入模块: from xia2.Handlers.Flags import Flags [as 别名]
# 或者: from xia2.Handlers.Flags.Flags import get_fixed_628 [as 别名]
#.........这里部分代码省略.........
if self._indexing_solutions[lattice][
'goodness'] < fit:
continue
self._indexing_solutions[lattice] = {
'goodness':fit,
'cell':cell}
# postprocess this list, to remove lattice solutions which are
# lower symmetry but higher penalty than the putative correct
# one, if self._symm is set...
if self._symm:
assert len(self._indexing_solutions) > 0, "No remaining indexing solutions (%s, %s)" % (s2l(self._symm), self._symm);
else:
assert len(self._indexing_solutions) > 0, "No remaining indexing solutions"
# print self._indexing_solutions
if self._symm:
max_p = 2.0 * self._indexing_solutions[
s2l(self._symm)]['goodness']
to_remove = []
for lattice in self._indexing_solutions:
if self._indexing_solutions[lattice]['goodness'] > max_p:
to_remove.append(lattice)
for lattice in to_remove:
Debug.write('Ignoring solution with lattice %s' % \
lattice)
del(self._indexing_solutions[lattice])
# get the highest symmetry "acceptable" solution
list = [(k, self._indexing_solutions[k]['cell']) for k in \
self._indexing_solutions.keys()]
# if there was a preassigned cell and symmetry return now
# with everything done, else select the "top" solution and
# reindex, resetting the input cell and symmetry.
if self._cell:
# select the solution which matches the input unit cell
# actually after the changes above this should now be the
# only solution in the table..
Debug.write(
'Target unit cell: %.2f %.2f %.2f %.2f %.2f %.2f' % \
self._cell)
for l in list:
if lattice_to_spacegroup_number(l[0]) == self._symm:
# this should be the correct solution...
# check the unit cell...
cell = l[1]
if self._compare_cell(self._cell, cell) \
or not Flags.get_fixed_628():
cell_str = '%.2f %.2f %.2f %.2f %.2f %.2f' % cell
Debug.write(
'Chosen unit cell: %s' % cell_str)
self._indxr_lattice = l[0]
self._indxr_cell = l[1]
self._indxr_mosaic = mosaic
else:
cell_str = '%.2f %.2f %.2f %.2f %.2f %.2f' % cell
Debug.write(
'Ignoring unit cell: %s' % cell_str)
else:
# select the top solution as the input cell and reset the
# "indexing done" flag
sorted_list = SortLattices(list)
# print sorted_list
self._symm = lattice_to_spacegroup_number(sorted_list[0][0])
self._cell = sorted_list[0][1]
return False
# get the refined distance &c.
beam, distance = _parse_idxref_lp_distance_etc(lp)
self._refined_beam = beam
self._refined_distance = distance
# gather the output files
for file in self._output_data_files_list:
self._output_data_files[file] = os.path.join(
self.get_working_directory(), file)
return True