sisl.mixing.PulayMixer

class sisl.mixing.PulayMixer(weight=0.1, history=2, metric=None)

Bases: DIISMixer

Methods

coefficients()

Calculate coefficients of the Lagrangian

mix(coefficients)

Calculate a new variable \(f'\) using history and input coefficients

set_history(history)

Replace the current history in the mixer with a new one

set_weight(weight)

Set a new weight for this mixer

solve_lagrange()

Calculate the coefficients according to Pulay's method, return everything + Lagrange multiplier

history

History object tracked by this mixer

weight

This mixers mixing weight, the weight is the fractional contribution of the derivative

__call__(f, df, delta=None, append=True)

Append data to the history (omitting None values)!

Return type

TypeVar(T)

__init__(weight=0.1, history=2, metric=None)
coefficients()

Calculate coefficients of the Lagrangian

Return type

ndarray[Any, dtype[TypeVar(_ScalarType_co, bound= generic, covariant=True)]]

property history: History

History object tracked by this mixer

mix(coefficients)

Calculate a new variable \(f'\) using history and input coefficients

Parameters

coefficients (numpy.ndarray) – coefficients used for extrapolation

Return type

Any

set_history(history)

Replace the current history in the mixer with a new one

Parameters

history (Union[int, History]) – if an int a new History object will be created with that number of history elements Otherwise the object will be directly attached to the mixer.

Return type

None

set_weight(weight)

Set a new weight for this mixer

Parameters

weight (float) – the new weight for this mixer, it must be bigger than 0

solve_lagrange()

Calculate the coefficients according to Pulay’s method, return everything + Lagrange multiplier

Return type

Tuple[ndarray[Any, dtype[TypeVar(_ScalarType_co, bound= generic, covariant=True)]], ndarray[Any, dtype[TypeVar(_ScalarType_co, bound= generic, covariant=True)]]]

property weight: Union[float, int]

This mixers mixing weight, the weight is the fractional contribution of the derivative