Assembly Utilities#

Utility functions for computing bioassemblies based on rototranslations of the asymmetric unit.

atomworks.io.utils.assembly.build_assemblies_from_asym_unit(assembly_gen_category: CIFCategory, struct_oper_category: CIFCategory, asym_unit_atom_array_stack: AtomArrayStack, fix_symmetry_centers: bool, build_assembly: Literal['all', 'first'] | list[str] | tuple[str] | None = 'all') None[source]#

Builds and annotates the assemblies from asymmetric unit coordinates and related transformation operations.

Parameters:
  • assembly_gen_category (CIFCategory) – The pdbx_struct_assembly_gen category from the CIF file.

  • struct_oper_category (CIFCategory) – The pdbx_struct_oper_list category from the CIF file.

  • asym_unit_atom_array_stack (AtomArrayStack) – The atom array stack to which the transformations will be applied (the asymmetric unit).

  • fix_symmetry_centers (bool) – Flag to indicate if non-polymers at symmetry centers should be patched.

  • build_assembly (string, list, or tuple, optional) – Specifies which assembly to build, if any. Options are None (e.g., asymmetric unit), “first”, “all”, or a list or tuple of assembly IDs. Defaults to “all”.

Returns:

The dictionary containing the built assemblies.

Return type:

assemblies (dict[str, AtomArrayStack])