Skip to content

Biotite 0.13.0

Compare
Choose a tag to compare
@padix-key padix-key released this 18 Mar 13:56
521c320

Changelog

Additions

  • structure.hbond() supports periodic boundary conditions
  • Added structure.remove_pbc() and structure.remove_pbc_coord(), that sanitize structures that are segmented due to periodic boundaries
  • Write support for trajectory files
    • This includes structure.io.save_structure()
  • Support for DCD and NetCDF trajectory formats (structure.io.dcd and structure.io.netcdf)

Changes

  • The coord and box attribute in structure.AtomArray and structure.AtomArrayStack are stored as float32 arrays
    • File readers are changed accordingly
    • Previously, both float64 and float32 were allowed, which made type conversions necessary for some functions
    • If an atom array (stack) is provided with an float64 array, the type is implicitly converted.
  • Faster encoding and decoding in sequence.LetterAlphabet
    • Internally uses bytes instead of str for symbols
    • sequence.LetterAlphabet does only accept ASCII characters
  • Discontinued support for Python type annotations
    • May be re-enabled when official type annotations for NumPy arrive
  • Changed protected abstract methods in structure.io.TrajectoryFile
  • structure.filter_solvent() regards only the res_name and ignores the hetero field

Fixes

  • structure.io.mmtf.MMTFFile fields can be set with ndarray objects for non-encoded fields
    • The ndarray objects are implicitly converted into list objects
  • The box attribute of structure.AtomArrayStack objects are correctly sliced when slicing the atom array stack
  • structure.displacement(), structure.distance(), structure.angle() and structure.dihedral() accept structure.Atom instances as parameter