Releases: project-gemmi/gemmi
Releases · project-gemmi/gemmi
0.5.7
- new functions for working with Structure: assign_serial_numbers(), assign_cis_flags(), has_hydrogen()
- enhanced transform_to_assembly()
- functions count_atom_sites() and count_occupancies() now take Selection as an optional arg
- deprecated count_hydrogen_sites(): can be replaced with has_hydrogen() or count_atom_sites(Selection("[H,D]"))
- selection syntax extended with ";polymer" and ";solvent" (it can also be "!polymer,solvent")
- improved preparation of the intermediate file (crd) for Refmac
- gemmi program: several options were added to subprograms
- Ccp4.setup() now returns void (previously – number)
- python: cif.Block.find_pair() and Item.pair were changed to return tuple (previously – list)
0.5.6
0.5.5
- determining lattice symmetry and (psuedo-)merohedral twinning laws
- added GroupOps::derive_symmorphic() and GroupOps::add_inversion()
- getting change-of-basis in the Niggli reduction
- added transform_to_assembly() – it does a bit more than make_assembly()
- removed Op::negated()
- python: add bindings to UnitCell.orth and UnitCell.frac
- additional options in gemmi-mtz2cif and gemmi-cif2mtz
- bug fixes (in Ccp4::set_extent(), merge_atoms_in_expanded_model(), status column in mtz2cif)
0.5.4
- new sub-program under development: gemmi-prep
- parse pdb AUTHOR record and corresponding mmCIF category
- new function flood_fill_above()
- mtz2cif: rhombohedral groups in hexagonal settings start with H now
- renamed MonLib::find_link() to get_link(), modified MonLib::match_link()
- CIF files can be written with left-aligned columns
- bug fixes and minor changes (in particular in class Topo)
0.5.3
- API change: changed arguments for Ccp4.setup()
- added Binner class for analyzing reflections in resolution bins
- added support for neutron scattering in gemmi-sfcalc and the library
- new functions: seitz_to_op, normalize_grid, Grid.get_subarray, Grid.set_subarray
- minor improvements in programs mtz2cif, cif2mtz, map
- fix: CIF tags are now case insensitive
- changes in preparing topology accounting for changes in Refmac and CCP4 monomer library
0.5.2
- various bug fixes and small improvements, many of them for the MTZ -> mmCIF conversion
- new and documented functions: cif.Table.move_row(), ResidueInfo.fasta_code(), GroupOps.add_missing_elements(), NeighborSearch.add_chain()
- added customizable form factors for unknown element (X) #167
- improved reading of unusual PDB files #169
- calculate_superposition(): added option to use backbone only
- calculating RMSD without superposition is a separate function now: calculate_current_rmsd()
- simplified MaskedGrid, Grid.asu() renamed to masked_asu()
- renamed Intensities.Type to DataType
- a few experimental functions (not documented and not sufficiently tested yet):
- read_first_block_gz() – read only first block of CIF without reading the whole file
- Mtz.ensure_asu() – changes Miller indices together with phase shifts and anomalous data swapping
- interpolate_grid_of_aligned_model() – for grid interpolation based on model alignment (currently global alignment only, local alignment such as in PanDDA is not implemented yet)
- check_data_type_under_symmetry() – for checking if mmCIF refln category contains mean, anomalous or unmerged data
0.5.1
- various bug fixes
- support for huge MTZ files (>2GB) using the format extension added in CCP4 8.0 – implemented by Claus
- better handling of NaNs in maps
- option to detect the format of a coordinate file (format=CoorFormat.Detect)
- major changes in class Topo (which is undocumented yet)
- store _atom_site.label_entity_id from mmCIF as Residue::entity_id
- two more tabulated space group settings: C 4 2 2 and C 4 2 21
- new functions Mtz.copy_column() and Mtz.replace_column(), SmallStructure.make_cif_block()
- and a number of minor additions including: Grid.clone(), Grid.change_values(), Model.remove_*(), transform_pos_and_adp(), MonLib.mon_lib_list, SmallStructure.wavelength, UnitCell.approx(), SMat33.multiply(), Structure.input_format
- new options in the command-line program: gemmi mtz --histogram, gemmi cif2mtz --add
0.5.0
0.4.9
- centred to primitive lattce transformation
- Niggli reduction and Buerger reduction for lattice basis
- added
UnitCell::is_compatible_with_spacegroup()
- Topology-related improvements (Keitaro)
- functions
SMat33::elements()
andchange_basis()
were replaced – each was replaced with two new functions - more options in gemmi-merge
- more Python bindings
- various fixes, in particular in validation in
gemmi mtz2cif --depo
.
0.4.8
- reindexing MTZ files,
- tricubic map interpolation,
- extended selection syntax,
- merge_atoms_in_expanded_model() – sort out atoms on special positions after expanding NCS or making bioassembly,
- IT92::normalize() – makes exactly the same scattering coefficients that Refmac uses,
- Mtz::remove_column(),
- understanding triplets with x/N ("h/2+k/2, -h/2+k/2, l"),
- better inference of elements in a PDB file with missing element field,
- Topo::Force was renamed to Topo::Rule,
- various other additions and, most importantly, bug fixes.