dynamo.vf.Potential
- dynamo.vf.Potential(adata, DiffMat=None, method='Ao', **kwargs)[source]
Function to map out the pseudo-potential landscape.
Although it is appealing to define “potential” for biological systems as it is intuitive and familiar from other fields, it is well-known that the definition of a potential function in open biological systems is controversial (Ping Ao 2009). In the conservative system, the negative gradient of potential function is relevant to the velocity vector by ma = −Δψ (where m, a, are the mass and acceleration of the object, respectively). However, a biological system is massless, open and nonconservative, thus methods that directly learn potential function assuming a gradient system are not directly applicable. In 2004, Ao first proposed a framework that decomposes stochastic differential equations into either the gradient or the dissipative part and uses the gradient part to define a physical equivalent of potential in biological systems (P. Ao 2004). Later, various theoretical studies have been conducted towards this very goal (Xing 2010; Wang et al. 2011; J. X. Zhou et al. 2012; Qian 2013; P. Zhou and Li 2016). Bhattacharya and others also recently provided a numeric algorithm to approximate the potential landscape.
This function implements the Ao, Bhattacharya method and Ying method and will also support other methods shortly.
- Parameters:
adata (AnnData object that contains embedding and velocity data.) –
DiffMat (The function which returns the diffusion matrix which can variable (for example, gene) dependent.) –
method (Method to map the potential landscape.) –
- Return type:
- Returns:
adata: AnnData object that is updated with the Pot dictionary in the uns attribute.