コード例 #1
0
ファイル: _quench.py プロジェクト: yangxi1209/pele
def fire(coords, pot, tol=1e-3, nsteps=100000, **kwargs):
    """
    A wrapper function for the pele FIRE implementation
    """
    opt = Fire(coords, pot, **kwargs)
    res = opt.run(fmax=tol, steps=nsteps)
    return res
コード例 #2
0
ファイル: _quench.py プロジェクト: pele-python/pele
def fire(coords, pot, tol=1e-3, nsteps=100000, **kwargs):
    """
    A wrapper function for the pele FIRE implementation
    """
    opt = Fire(coords, pot, **kwargs)
    res = opt.run(fmax=tol, steps=nsteps)
    return res
コード例 #3
0
ファイル: _quench.py プロジェクト: borislavujo/pele
def fire(coords, pot, tol=1e-3, nsteps=100000, **kwargs):
    """
    A wrapper function for the pele FIRE implementation
    """
    if not hasattr(pot, "getEnergyGradient"):
        # for compatibility with old quenchers.
        # assume pot is a getEnergyGradient function
        pot = _getEnergyGradientWrapper(pot)
    opt = Fire(coords, pot, **kwargs)
    res = opt.run(fmax=tol, steps=nsteps)
    return res
コード例 #4
0
ファイル: _quench_obsolete.py プロジェクト: borislavujo/pele
def fire(coords, getEnergyGradient, tol=1e-3, nsteps=100000, **kwargs):
    """
    A wrapper function for the pele FIRE implementation
    """
    if hasattr(getEnergyGradient, "getEnergyGradient"):
        # this is to aid compatibility between old and new quenchers.
        # This function will now accept a potential object
        getEnergyGradient = getEnergyGradient.getEnergyGradient
    pot = getEnergyGradientWrapper(getEnergyGradient)
    opt = Fire(coords, pot, **kwargs)
    opt.run(fmax=tol, steps=nsteps)
    e,g = getEnergyGradient(opt.coords)
    rms = np.linalg.norm(g)/np.sqrt(len(g))
    return opt.coords, e, rms, opt.nsteps