Changelog
Additions
- Added convenience functions for chains, similar to the functions for residues
- Added
get_chain_starts()
- Added
get_chains()
- Added
get_chain_count()
- Added
chain_iter()
- Added
- Revamped interface for GenBank files
sequence.io.genbank.GenBankFile
provides a low-level API for obtaining field names and the corresponding lines and subfieldssequence.io.genbank.GenBankFile
is now used for both GenBank and GenPept files- High level objects are obtained via module-level functions
get_locus()
,get_definition()
,get_accession()
,get_version()
,get_gi()
,get_source()
,get_db_link()
,get_annotation()
,get_sequence()
andget_annotated_sequence()
are now functionssequence.io.genbank
- Added
set_locus()
,set_annotation()
,set_sequence()
,set_annotated_sequence()
, tosequence.io.genbank
for creating and editing GenBank files
Changes
structure.dihedral_backbone()
does not require a chain ID anymore- The dihedrals are automatically calculated over all chains
- Dihedrals at the transition of one chain to the next one are NaN
- Completely changed usage of
sequence.io.genbank.GenBankFile
(see above)
Fixes
- Atom IDs above 99999 and residue IDs above 9999 do not break writing
structure.io.gro.GROFile
- In case of overflow, the ID restarts at 1
- Dummy boxes in
.gro
files are not converted into a realbox
attribute of astructure.AtomArray
anymore - When creating a
sequence.Alignment
from strings, it is checked whether at least to strings (sequences) are given - Fixed annotation equality checks when setting an
structure.AtomArrayStack
element with anstructure.AtomArray
- Fixed indexing a
sequence.AnnotatedSequence
with asequence.Feature
containing multiple locations- Previously the locations were merged in a random order resulting in wrong
sequence.Sequence
objects
- Previously the locations were merged in a random order resulting in wrong