Skip to content

Skipping a lambda state in ABFE due to incorrect alchemical definition #806

Description

@MartinFuentetaja

Dear all,

I would like to ask whether it is possible to skip a lambda state in an ABFE calculation performed with YANK.

To provide some context, I have already completed ABFE simulations using the following alchemical scheme:

Complex phase:

        alchemical_path:         #0     1     2     3     4     5     6     7     8     9     10    11    12    13    14    15    16    17    18    19    20    21    22    23    24    25    26    27    28    29    30    31    32    33    34    35    36    37    38    39    40    41    42    43     44    45    46     47     48    49     50    51     52    53     54    55     56    57     58    
        
        lambda_restraints:     [0.00, 0.01, 0.03, 0.05, 0.07, 0.10, 0.20, 0.40, 0.60, 0.75, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.000, 1.00, 1.000, 0.00, 1.000, 1.00, 1.000, 1.00, 1.000, 1.00, 1.000, 1.00, 1.000, 1.00, 1.000, 1.00]

        lambda_electrostatics: [1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 0.95, 0.90, 0.85, 0.80, 0.75, 0.70, 0.65, 0.60, 0.55, 0.50, 0.45, 0.40, 0.35, 0.30, 0.25, 0.20, 0.15, 0.10, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00]

        lambda_sterics:        [1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 0.95, 0.90, 0.85, 0.80, 0.75, 0.70, 0.65, 0.60, 0.55, 0.50, 0.45, 0.40, 0.375, 0.35, 0.325, 0.30, 0.275, 0.25, 0.225, 0.20, 0.175, 0.15, 0.125, 0.10, 0.075, 0.05, 0.025, 0.00]

Solvent phase:

      alchemical_path:         #0     1     2     3     4     5     6     7     8     9     10    11    12    13    14    15    16    17    18    19    20    21    22    23    24    25    26    27    28    29    30    31    32    33    34     35    36     37    38     39    40     41    42    43    44        
        
      lambda_electrostatics: [1.00, 0.97, 0.93, 0.90, 0.85, 0.80, 0.75, 0.70, 0.65, 0.60, 0.55, 0.50, 0.45, 0.40, 0.35, 0.30, 0.25, 0.20, 0.15, 0.10, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.000, 0.00, 0.00, 0.00, 0.00]

      lambda_sterics:        [1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 0.95, 0.90, 0.80, 0.75, 0.70, 0.65, 0.60, 0.55, 0.50, 0.45, 0.40, 0.35, 0.325, 0.30, 0.275, 0.25, 0.225, 0.20, 0.175, 0.15, 0.10, 0.05, 0.00]

As you may notice, there is an error in lambda state 46 of the complex phase. The defined values are:

[lambda_restraints,lambda_electrostatics, lambda_sterics] = [0.0, 1.0, 0.3]

However, this state should have been:

[1.0, 1.0, 0.3]

This incorrect definition appears to cause convergence issues in the free energy analysis. I am therefore wondering:

  • Is it possible to skip or remove a single lambda state during post-processing?
  • Alternatively, is there a recommended way to reweight or correct this without re-running the entire calculation?

If anyone has encountered a similar issue or has suggestions on how best to proceed, I would greatly appreciate your advice.

Thank you very much for your help.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions