You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Changelog
Additions
Improved MOL/SDF file support in biotite.structure.mol
CTAB V3000 blocks can be read and written in addition to V2000 in MOLFile (#575)
M CHG lines in CTAB V2000 block can can be read and written in MOLFile (#589)
Added biotite.structure.SDFile for full support of SD files (#589)
SD files with multiple records (i.e. multiple molecules) ca be read and written
Metadata in SD files can be read and written
Intra-residue bonds can now be read/written to CIF/BinaryCIF files in biotite.structure.io.pdbx (#567)
The bonds are written to the chem_comp_bond category, if include_bonds=True in set_structure()
Previously Intra-residue bonds were obtained from the Chemical Component Dictionary which only works for residues in the PDB
Added repair functions for AtomArray objects with missing or irregular annotations
structure.create_continuous_res_ids() renumbers residue IDs to make them continuous for each chain (#576)
structure.infer_elements() guesses chemical elements from atom names in case the element annotation is missing (#576)
structure.create_atom_names() names atoms based on their element in case the atom_name annotation is missing (#581)
Canonical amino acids/nucleotides can be found for arbitrary residues
structure.info.one_letter_code() obtains the most appropriate one-letter code (if existing) for a residue name, based on information from the Chemical Component Dictionary (#572)
structure.to_sequence() converts an AtomArray into a Sequence based on codes obtained via structure.info.one_letter_code() (#587)
structure.superimpose_without_outliers() allows superimposition with iterative conformational outlier removal to decrease the RMSD of the remaining atoms
structure.superimpose_homologs() finds corresponding atoms via sequence alignment and optional outlier removal
This function is quite robust for simply superimposing homologous proteins/nucleic acids without the need of atom filtering
structure.AffineTransform can be converted into a 4x4 transformation matrix containing both, translation and rotation (#576)
sequence.align.write_alignment_to_cigar() now includes terminal gaps in the segment sequence (usually the shorter sequence) in the CIGAR string, if include_terminal_gaps is set to True (#563)
The default behavior is unchanged
Changes
Deprecated get_header() and set_header() in biotite.structure.io.mol.MOLFile
MOLFile.header attribute should be used instead (#589)
Deprecated structure.renumber_atom_ids() and structure.renumber_res_ids()
renumber_res_ids() can be substituted with create_continuous_res_ids()
Fixes
Fixed parsing multi-line values in PDBx NextGen files in structure.io.pdbx.CIFFile (#555)
Fixed parsing of some operation expressions in structure.io.pdbx.get_assembly() (#555)
structure.io.pdb.PDBFile.set_structure() checks if input annotations exceed the fixed number of columns, preventing writing malformed PDB files (#588)
Trying to write malformed CIF files with categories containing no rows now raises an exception (#586)
Added more descriptive error message, if structure.residue() cannot find the requested residue (#580)
sequence.io.fasta.get_sequence() converts pyrrolyine (O) into lysine (K) when creating the Sequence object (#587)
Fixed indexing with an Annotation in sequence.AnnotatedSequence if annotation is on the minus strand (#577)
Fixed exception in biotite.structure.base_pairs() and biotite.structure.dot_bracket_from_structure() if no base paris were found (#573)