, template=None, **kwargs)[source]

Load an AtomArray or class`AtomArrayStack` from a structure file without the need to manually instantiate a File object.

Internally this function uses a File object, based on the file extension. Trajectory files furthermore require specification of the template parameter.


The path to structure file.

templateAtomArray or AtomArrayStack or file-like object or str, optional

Only required when reading a trajectory file.


Additional parameters will be passed to either the get_structure() or read() method of the file object. This does not affect files given via the template parameter. The only exception is the atom_i, which is applied to the template as well if number of atoms do not match.

arrayAtomArray or AtomArrayStack

If the file contains multiple models, an AtomArrayStack is returned, otherwise an AtomArray is returned.


If the file format (i.e. the file extension) is unknown.


If a trajectory file is loaded without specifying the template parameter.