swamp.parsers.mtzparser module

class MTZColumnTypes[source]

Bases: enum.Enum

An enumerator that contains the different types expected for each column of a given MTZ file

dp = 'D'
f = 'F'
f_minus = 'G'
f_plus = 'G'
free = 'I'
i = 'J'
i_minus = 'K'
i_plus = 'K'
sigdp = 'Q'
sigf = 'Q'
sigf_minus = 'L'
sigf_plus = 'L'
sigi = 'Q'
sigi_minus = 'M'
sigi_plus = 'M'
class MtzColumnLabels[source]

Bases: enum.Enum

An enumerator that contains the regular expression used to detect the column labels of a given MTZ file

dp = re.compile('^([Dd][Pp]|[Dd][Aa][Nn][Oo][Pp]?)')
f = re.compile('^[Ff][Pp]?(?![Cc])(?![Ww][Tw])')
f_minus = re.compile('^[Ff][Pp]?.*(\\(-\\)|[Mm][Ii][Nn][Uu][Ss])')
f_plus = re.compile('^[Ff][Pp]?.*(\\(\\+\\)|[Pp][Ll][Uu][Ss])')
free = re.compile('^.*?[Ff][Rr][Ee][Ee].*')
i = re.compile('^[Ii]')
i_minus = re.compile('^[Ii].*(\\(-\\)|[Mm][Ii][Nn][Uu][Ss])')
i_plus = re.compile('^[Ii].*(\\(\\+\\)|[Pp][Ll][Uu][Ss])')
sigdp = re.compile('^[Ss][Ii][Gg]([Dd][Pp]|[Dd][Aa][Nn][Oo][Pp]?)')
sigf = re.compile('^[Ss][Ii][Gg][Ff][Pp]?')
sigf_minus = re.compile('^[Ss][Ii][Gg][Ff][Pp]?.*(\\(-\\)|[Mm][Ii][Nn][Uu][Ss])')
sigf_plus = re.compile('^[Ss][Ii][Gg][Ff][Pp]?.*(\\(\\+\\)|[Pp][Ll][Uu][Ss])')
sigi = re.compile('^[Ss][Ii][Gg][Ii]')
sigi_minus = re.compile('^[Ss][Ii][Gg][Ii].*(\\(-\\)|[Mm][Ii][Nn][Uu][Ss])')
sigi_plus = re.compile('^[Ss][Ii][Gg][Ii].*(\\(\\+\\)|[Pp][Ll][Uu][Ss])')
class MtzParser(fname, logger=None)[source]

Bases: swamp.parsers.parser.Parser

Class to parse and store mtz label data.

Parameters:
  • stdout (str) – the stdout to be parsed (default None)
  • logger (SwampLogger) – logging interface for the parser (default None)
Example:
>>> from swamp.parsers import MtzParser
>>> my_parser = MtzParser('<fname>')
>>> my_parser.parse()
parse()[source]

Parse the input mtz file and retrieve the column names of the labels as described at MTZLabels

read_reflections()[source]

Read the data in reflection_file file using gemmi.read_mtz_file()

summary

Tuple with all the parsed label names