gensbi.flow_matching.utils.manifolds_not_implemented package#

Submodules#

gensbi.flow_matching.utils.manifolds_not_implemented.manifold module#

class gensbi.flow_matching.utils.manifolds_not_implemented.manifold.Euclidean(*args, **kwargs)[source]#

Bases: Manifold

The Euclidean manifold.

expmap(x: Tensor, u: Tensor) Tensor[source]#

Computes exponential map \(\exp_x(u)\).

Parameters:
  • x (Tensor) – point on the manifold

  • u (Tensor) – tangent vector at point \(x\)

Raises:

NotImplementedError – if not implemented

Returns:

transported point

Return type:

Tensor

logmap(x: Tensor, y: Tensor) Tensor[source]#

Computes logarithmic map \(\log_x(y)\).

Parameters:
  • x (Tensor) – point on the manifold

  • y (Tensor) – point on the manifold

Raises:

NotImplementedError – if not implemented

Returns:

tangent vector at point \(x\)

Return type:

Tensor

proju(x: Tensor, u: Tensor) Tensor[source]#

Project vector \(u\) on a tangent space for \(x\).

Parameters:
  • x (Tensor) – point on the manifold

  • u (Tensor) – vector to be projected

Raises:

NotImplementedError – if not implemented

Returns:

projected tangent vector

Return type:

Tensor

projx(x: Tensor) Tensor[source]#

Project point \(x\) on the manifold.

Parameters:

x (Tensor) – point to be projected

Raises:

NotImplementedError – if not implemented

Returns:

projected point on the manifold

Return type:

Tensor

class gensbi.flow_matching.utils.manifolds_not_implemented.manifold.Manifold(*args, **kwargs)[source]#

Bases: Module

A manifold class that contains projection operations and logarithm and exponential maps.

abstractmethod expmap(x: Tensor, u: Tensor) Tensor[source]#

Computes exponential map \(\exp_x(u)\).

Parameters:
  • x (Tensor) – point on the manifold

  • u (Tensor) – tangent vector at point \(x\)

Raises:

NotImplementedError – if not implemented

Returns:

transported point

Return type:

Tensor

abstractmethod logmap(x: Tensor, y: Tensor) Tensor[source]#

Computes logarithmic map \(\log_x(y)\).

Parameters:
  • x (Tensor) – point on the manifold

  • y (Tensor) – point on the manifold

Raises:

NotImplementedError – if not implemented

Returns:

tangent vector at point \(x\)

Return type:

Tensor

abstractmethod proju(x: Tensor, u: Tensor) Tensor[source]#

Project vector \(u\) on a tangent space for \(x\).

Parameters:
  • x (Tensor) – point on the manifold

  • u (Tensor) – vector to be projected

Raises:

NotImplementedError – if not implemented

Returns:

projected tangent vector

Return type:

Tensor

abstractmethod projx(x: Tensor) Tensor[source]#

Project point \(x\) on the manifold.

Parameters:

x (Tensor) – point to be projected

Raises:

NotImplementedError – if not implemented

Returns:

projected point on the manifold

Return type:

Tensor

gensbi.flow_matching.utils.manifolds_not_implemented.sphere module#

gensbi.flow_matching.utils.manifolds_not_implemented.torus module#

gensbi.flow_matching.utils.manifolds_not_implemented.utils module#

Module contents#