I'm trying to undestand the self-similarity as an invariance of a function under certain transformation. For example I think $$f(\lambda x)=\lambda^\epsilon f(x)$$ could be understood as a self-similarity like follows: a stretch of the $x$ variable is equivalent to a scale factor $\lambda^\epsilon$ over the whole profile $f(x)$. However it is not clear to me, when multiple variable are involved, if self-similarity could "couple" them together. For example $$u(x,t)=At^{-\alpha}f(\xi) \qquad \xi=xt^{-\beta}$$ is a self-similar function? In this case it is not true $$u(\lambda x,t)=\lambda^\gamma u(x,t)$$ nor $$u(x,\lambda t)=\lambda^\delta u(x,t)$$ but $$u(x,\lambda t)=\lambda^{-\beta}u(\frac{x}{\lambda^\beta},t)$$ still holds. So a stretch over the time is equivalent to a stretch of the profile AND of the $x$ variable.
Is there a general rule to check if a function is self similar? I looked up online but nothing sufficiently clear.