AddBranch

Module

viennaptm.modification.modification_library
class AddBranch(*, anchor_atoms: List[str] = <factory>, weights: List[float] = <factory>, add_atoms: List[str] = <factory>)

Bases: BaseModel

Definition of an application branch for residue transformation.

An AddBranch describes how a specific part (branch) of a residue should be modified. It specifies anchor atoms used for geometric alignment, optional weights for the alignment, and atoms to be added from a template residue.

Each branch is applied independently, allowing complex modifications to be decomposed into multiple localized transformations.

Variables:
  • anchor_atoms (list[str]) – Atom names defining the alignment reference.

  • weights (list[float]) – Weights applied to anchor atoms during alignment. If empty, all anchor atoms are weighted equally.

  • add_atoms (list[str]) – Atom names to be added from the template residue.

Note: If no weights are provided but anchor atoms are defined, equal weights are automatically assigned during validation.

add_atoms: List[str]
anchor_atoms: List[str]
check_branch()

Validate anchor atom and weight consistency.

Ensures that the number of weights matches the number of anchor atoms. If no weights are provided, equal weights are assigned automatically.

Raises:

ValueError – If the number of weights does not match the number of anchor atoms.

model_config = {'extra': 'forbid'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

weights: List[float]

Methods

__init__(**data)

Create a new model by parsing and validating input data from keyword arguments.

check_branch()

Validate anchor atom and weight consistency.

construct([_fields_set])

copy(*[, include, exclude, update, deep])

Returns a copy of the model.

dict(*[, include, exclude, by_alias, ...])

from_orm(obj)

json(*[, include, exclude, by_alias, ...])

model_construct([_fields_set])

Creates a new instance of the Model class with validated data.

model_copy(*[, update, deep])

!!! abstract "Usage Documentation"

model_dump(*[, mode, include, exclude, ...])

!!! abstract "Usage Documentation"

model_dump_json(*[, indent, ensure_ascii, ...])

!!! abstract "Usage Documentation"

model_json_schema(by_alias, ref_template, ...)

Generates a JSON schema for a model class.

model_parametrized_name(params)

Compute the class name for parametrizations of generic classes.

model_post_init(context, /)

Override this method to perform additional initialization after __init__ and model_construct.

model_rebuild(*[, force, raise_errors, ...])

Try to rebuild the pydantic-core schema for the model.

model_validate(obj, *[, strict, extra, ...])

Validate a pydantic model instance.

model_validate_json(json_data, *[, strict, ...])

!!! abstract "Usage Documentation"

model_validate_strings(obj, *[, strict, ...])

Validate the given object with string data against the Pydantic model.

parse_file(path, *[, content_type, ...])

parse_obj(obj)

parse_raw(b, *[, content_type, encoding, ...])

schema([by_alias, ref_template])

schema_json(*[, by_alias, ref_template])

update_forward_refs(**localns)

validate(value)