mlcolvar.core.stats.TICA

class mlcolvar.core.stats.TICA(in_features, out_features=None)[source]

Bases: Stats

Time-lagged independent component analysis base class.

__init__(in_features, out_features=None)[source]

Initialize a TICA object.

Methods

__init__(in_features[, out_features])

Initialize a TICA object.

compute(data[, weights, remove_average, ...])

Perform TICA computation.

extra_repr()

Return the extra representation of the module.

forward(x)

Compute linear combination with saved eigenvectors

timescales(lag)

Return implied timescales from eigenvalues and lag-time.

compute(data, weights=None, remove_average=True, save_params=False)[source]

Perform TICA computation.

Parameters:
  • data ([list of torch.Tensors]) – Time-lagged configurations (x_t, x_{t+lag})

  • weights ([list of torch.Tensors], optional) – Weights at time t and t+lag, by default None

  • remove_average (bool, optional) – whether to make the inputs mean free, by default True

  • save_params (bool, optional) – Save parameters of estimator, by default False

Returns:

eigenvalues,eigenvectors

Return type:

torch.Tensor,torch.Tensor

extra_repr() str[source]

Return the extra representation of the module.

To print customized extra information, you should re-implement this method in your own modules. Both single-line and multi-line strings are acceptable.

forward(x: Tensor) Tensor[source]

Compute linear combination with saved eigenvectors

Parameters:

x (torch.Tensor) – input

Returns:

out – output

Return type:

torch.Tensor

timescales(lag)[source]

Return implied timescales from eigenvalues and lag-time.

Parameters:

lag (float) – lag-time

Returns:

its – implied timescales

Return type:

tensor

Notes

If lambda_i are the eigenvalues and tau the lag-time, the implied times are given by:

\[t_i = - tau / \log\lambda_i\]

Attributes

T_destination

call_super_init

dump_patches

training