mstk.trajectory.TrjHandler¶
- class mstk.trajectory.TrjHandler¶
Base class of trajectory handlers for various trajectory formats.
The methods
get_info(),read_frame()andwrite_frame()should be implemented by subclasses. The methodclose()should also be overriden by subclasses if more works are required more than close the file.Methods
__init__()close()Close the handler.
get_handler_for_file(file)Get the appropriate handler class for a trajectory file.
get_info()Get the number of atoms and frames in the trajectory.
read_frame(i_frame, frame)Read a single frame.
register_format(extension, Handler)Register a handler class for a trajectory format based on the extension name
write_frame(frame, **kwargs)Write a frame into the trajectory file opened by the handler.
- static register_format(extension, Handler)¶
Register a handler class for a trajectory format based on the extension name
- Parameters:
extension (str) – The extension should start with ‘.’. The upper of lower cases are not distinguished.
Handler (subclass of TrjHandler) –
- static get_handler_for_file(file)¶
Get the appropriate handler class for a trajectory file.
If a list of string is provided, the CombinedTrj will be returned. Otherwise, the handler class will be determined from the extension name of the file.
- Parameters:
file (str or list of str) –
- get_info()¶
Get the number of atoms and frames in the trajectory.
Also record the offset of lines and frames, so that we can read arbitrary frame later. It assumes all frames have the same number of atoms.
- Returns:
n_atom (int)
n_frame (int)
- read_frame(i_frame, frame)¶
Read a single frame.
- Parameters:
i_frame (int) – The index of the frame in the trajectory
frame (Frame) – The information read from the trajectory will be written into this Frame
- write_frame(frame, **kwargs)¶
Write a frame into the trajectory file opened by the handler.
The handler should be initialized in mode ‘w’ or ‘a’.
- Parameters:
frame (Frame) –
kwargs (dict) –
- close()¶
Close the handler.