ellipsix informatics
 
 
Trackback URI
2012
Nov
27

More on scale invariant functions

Bookmark and Share

Back in February I did a post on scale invariant functions of one variable. These are functions that satisfy the condition

f(\lambda x) = C(\lambda) f(x)

Depending on which source you look at, you might find a more specific definition, but I think this is the most general condition that you can sensibly use to call a function scale invariant. Under this definition, I showed that all scale invariant functions of interest to physicists are power laws, of the form

f(x) = ax^k

Homogeneous functions

There is a related concept called a homogeneous function (thanks to that site's creator, Ondřej Čertík, for pointing it out), defined as those functions h(x) which satisfy

h(\lambda x) = \lambda^k h(x)

for some k, called the degree of homogeneity. While the definition is similar to the one I'm using for scale invariant functions, it's less restrictive. A homogeneous function has to satisfy the condition for only one particular choice of C(\lambda), not any arbitrary choice, so you can have homogeneous functions which are not scale invariant.

Multivariate scale invariant functions

The definitions of homogeneous functions apply to multivariate functions too, so let's see if we can do the same for scale invariance. Again, I'm going to use a more general definition than the one for homogeneous functions:

f(\lambda_1 x_1, \lambda_2 x_2, \ldots) = C(\lambda_1, \lambda_2, \ldots) f(x_1, x_2, \ldots)

Are all these functions required to be power laws as well?

Let me try the same trick I used for single-variable functions. First, take the logarithm of both sides:

\ln f(\lambda_1 x_1, \lambda_2 x_2, \ldots) = \ln C(\lambda_1, \lambda_2, \ldots) + \ln f(x_1, x_2, \ldots)

Introduce a new function F(\ln x_1, \ln x_2, \ldots) = f(x_1, x_2, \ldots) and write

\ln F(\ln \lambda_1 + \ln x_1, \ln \lambda_2 + \ln x_2, \ldots) = \ln C(\lambda_1, \lambda_2, \ldots) + \ln F(\ln x_1, \ln x_2, \ldots)

which can be rearranged to

\ln F(\ln \lambda_1 + \ln x_1, \ln \lambda_2 + \ln x_2, \ldots) - \ln F(\ln x_1, \ln x_2, \ldots) = \ln C(\lambda_1, \lambda_2, \ldots)

In the 1D case I would then divide by \ln \lambda and take the limit as that quantity goes to zero. But which \lambda to use?

This is well-studied mathematical territory, of course. F is a function on the vector space of all possible values of \{\ln\lambda_1, \ln\lambda_2, \ldots\}, and thus we can use the same technique used to define multidimensional derivatives. First, let's compute the partial derivatives, one variable at a time. Setting \lambda_i = 1 for i\neq 1, we get

\lim_{\ln\lambda_1\to 0}\frac{\ln F(\ln \lambda_1 + \ln x_1, \ln x_2, \ldots) - \ln F(\ln x_1, \ln x_2, \ldots)}{\ln\lambda_1} = \lim_{\ln\lambda_1\to 0}\frac{\ln C(\lambda_1, 1, \ldots)}{\ln\lambda_1}

Assuming the limit on the right side converges to some constant k_1, that becomes

\pd{\ln F(\ln x_1, \ln x_2, \ldots)}{\ln x_1} = k_1

which is the same differential equation that we had in the 1D case. You can integrate it to find that

f(x_1, x_2, \ldots) = b(x_2, \ldots) x_1^{k_1}

again, just as in the 1D case.

Then you can do the same thing for each of the remaining variables in turn, and you'll find that the function has to have a power law dependence on each of its individual variables.

f(x_1, x_2, \ldots) = a x_1^{k_1} x_2^{k_2} \cdots

"Less multivariate" scale invariant functions

There's a different, and more general, way you could define a scale invariant function for multiple variables:

f(\lambda x_1, \lambda x_2, \ldots) = C(\lambda) f(x_1, x_2, \ldots)

This definition has only one scaling constant, not one for each variable. To find which functions satisfy this definition, you can use the logarithm trick only once.

\lim_{\ln\lambda\to 0}\frac{\ln F(\ln \lambda + \ln x_1, \ln \lambda + \ln x_2, \ldots) - \ln F(\ln x_1, \ln x_2, \ldots)}{\ln\lambda} = \lim_{\ln\lambda\to 0}\frac{\ln C(\lambda)}{\ln\lambda} = k

The limit on the left side can be evaluated by adding and subtracting terms, like this:

\begin{multline}\lim_{\ln\lambda\to 0}\frac{\ln F(\ln \lambda + \ln x_1, \ln \lambda + \ln x_2, \ldots) - \ln F(\ln x_1, \ln \lambda + \ln x_2, \ldots)}{\ln\lambda} \\ + \lim_{\ln\lambda\to 0}\frac{\ln F(\ln x_1, \ln \lambda + \ln x_2, \ldots) - \ln F(\ln x_1, \ln x_2, \ldots)}{\ln\lambda} + \cdots \\ = \pd{\ln F(\ln x_1, \ln x_2, \ldots)}{\ln x_1} + \pd{\ln F(\ln x_1, \ln x_2, \ldots)}{\ln x_2} + \cdots = k_1 + k_2 + \cdots = k\end{multline}

Solving this differential equation is a little more interesting than in the earlier case. Because only the total k is specified, not the individual constants k_i, we can pick any combination of them that add up to k. And that means there's a whole set of different solutions. As usual, when there are multiple independent solutions to a differential equation, the general solution is a linear combination of them, which works out to

f(x_1, x_2, \ldots) = \sum_{\{k_i\}} a_{\{k_i\}} x_1^{k_1} x_2^{k_2} \cdots

This means you can have solutions like

f(x, y, z) = \frac{x^2y^3}{z} + 3z^4

in which the totals of the powers in each term add up to 4, and that will still be scale invariant under the one-\lambda definition! Functions like this don't qualify as scale invariant when you have separate scaling constants for each variable.

The forms of these solutions have implications for what you can do with various kinds of physical equations involving quantities with units. But that will have to wait for a future post...

blog comments powered by Disqus