Knowledge Base

How do I perform a hydrogen-only minimization of my molecule collection, constraining or freezing the heavy atom positions?

This can be done using the MacroModel substructure facility.

In Maestro, open the Minimization panel (Tasks → Minimization → Force Field), choose the structure source and make settings in the Potential, Constraints, Mini, as usual. Then in the Substructure tab, do the following:

  1. In the "Freely moving atoms" section, click the green + button and choose Hydrogens-All.
  2. In the Shells section, click New to add a new shell.
  3. In the "Selected shell" section, deselect the "Complete residues" option.
  4. In the "Additional atoms for shell" section, click the green + button and choose Heavy Atoms.
  5. Select the "Write ASL formatted .sbc file" option.

When you run the job, a substructure (.sbc) file is created that is applied to all your molecules. If you want to freeze the heavy atoms instead of constraining them, select "Freeze atoms" in the "Selected shell" section.

You can also create a substructure file by editing an example file that is included in the MacroModel example set, located here:


The example .sbc file has the following contents:

 ASL1     -1        all
 FXAT       0      0      0      0     0.0000     0.0000     0.0000     0.0000
 FXAT       0      0      0      0    -1.0000     0.0000     0.0000     0.0000
 ASL1      0       atom.ele H
 ASL2    200.0   not (atom.ele H)

This example constrains the heavy atoms, by specifying a force constant in the ASL2 expression. To freeze the heavy atoms, change the 200.0 in the ASL2 expression to -1. For more information, see the MacroModel Reference Manual. You can then use this substructure file from the command line or read it in (using Read .sbc File).

This type of .sbc file can also be used in the Knime MacroModel Minimization node to specify constraints.

To ask a question or get help, please submit a support ticket or email us at

Back To Top