I am working on an astrophysical research in which we relate the cumulative number of Damped Lyman Alpha HI clouds/galaxies, namely their number densities, $\frac{dN_{DLA}}{dz}(>M, z=0),$ to the hosting Dark Matter halo mass function, $\frac{dn_{h}}{d(\log M)}$, and the incidence cross section area, $\sigma_{DLA}$, in the Local Universe through the following integral equation:

$$\frac{dN_{DLA}}{dz}\left(>\log(M_{min}), z=0\right) = \int_{\log(M_{min})}^{\infty}\frac{dn_{h}}{d(\log M)}(\log M) \times\sigma_{DLA}(\log M) \times d(\log M)$$

I happen to have observational information of the number density on the left-hand side and Dark Matter mass function on the right-hand side (with known functional forms.) However, I have no information on the parametrization of the incidence cross section, $\sigma_{DLA}(\log M)$. I would like to receive some hints as to how to model this function numerically and if there could be any degeneracy, or non-uniqueness of its functional form, given the fact that it is not known a priori?

I am familiar with few programming languages but just don't know how to tackle the problem numerically in the first place.

Your help is greatly appreciated.


2 Answers 2


First, let me reframe your problem in simpler notation: by defining \begin{align} \ell &:= \log M \\ \ell_0 &:= \log M_{\text{min}} \\ DN(\ell) &:= \frac{dN_{DLA}}{dz}(\log M, z=0) \\ Dn(\ell) &:= \frac{dn_h}{d(\log M)}(\log M) \\ f(\ell) &:= \sigma_{DLA}(\log M) \end{align} you can write your equation as $$DN(\ell_0) = \int_{\ell_0}^{\infty} Dn(\ell)\, f(\ell)\, d\ell$$ You can apply the fundamental theorem of calculus to this and easily determine that $$f(\ell) = -\frac{1}{Dn(\ell)}\frac{d}{d\ell}DN(\ell)$$ Or in your notation, $$\sigma_{DLA}(\log M) = -\biggl(\frac{dn_h}{d(\log M)}(\log M)\biggr)^{-1}\frac{d}{d(\log M)}\frac{dN_{DLA}}{dz}(\log M, z=0)$$

If you know $\frac{dN_{DLA}}{dz}(\log M, z=0)$ and $\frac{dn_h}{d(\log M)}(\log M)$ for a range of values of $\log M$, then you can easily calculate the unknown function $\sigma_{DLA}$ over that same range of $\log M$ (maybe except for a bit near the endpoints) using numerical differentiation. Any numerical library you care to use should include functions for this.

If you only know $\frac{dN_{DLA}}{dz}(\log M_{\text{min}}, z=0)$ at the one value of $M = M_{\text{min}}$, then your problem is underconstrained, because $\sigma_{DLA}$ could be basically anything. Specifically, you could guess pretty much any form for $\sigma_{DLA}(\log M)$ (any form that allows the integral to be defined, anyway), and up to an overall normalization constant, you can satisfy your equation with that form. So with only one data point for $\frac{dN_{DLA}}{dz}$, you cannot determine anything useful about $\sigma_{DLA}$. (I'm not sure if that's what you meant.)

  • $\begingroup$ Hi David, Thanks for the answer. I do have a functional form for the number density as a function of different $M_{min}$. However, at Local Universe, it seems that this simply reduces to a constant. And using your method, derivative of a constant would be zero and hence inconclusive. (since $\sigma$ is not supposed to be zero.) $\endgroup$
    – Benjamin
    Mar 29, 2016 at 18:56
  • $\begingroup$ @Benjamin that's not inconclusive, though. It is conclusively telling you that the product of $dn/d\ell$ and $\sigma_{DLA}$ is zero. That is the only way for the equation to be satisfied if $dN_{DLA}/dz$ is constant with respect to $\log M$. (Alternatively, perhaps the equation is not satisfied, not well enough for your purposes, anyway. You are using a continuous approximation to a discrete system, after all, and that can cause problems when you start taking derivatives.) $\endgroup$
    – David Z
    Mar 30, 2016 at 8:25
  • 1
    $\begingroup$ Actually I guess I misspoke; if $dn/d\ell$ is zero, then this method is inconclusive about $\sigma_{DLA}$. But it's still conclusive about the fact that you will not be able to extract any information about $\sigma_{DLA}$ from your available data. In other words, it's not a failure of the method, and you can't get information about $\sigma_{DLA}$ by using a different method. $\endgroup$
    – David Z
    Mar 30, 2016 at 8:57

I am going to use the notation that David Z used, to help simplify things. I will also define the following:

$$ \langle g,f\rangle_k = \int_{l_k}^\infty g(l)f(l)dl $$

So let's assume you can compute $DN(l)$ and $Dn(l)$ at a set of $k$ values for $l_0$, which I will just call $l_k$.

Let's also assume you can approximate $f(l)$ with a finite basis of size $m\leq k$, like so: $$ f(l) = \sum_{j=1}^m a_j \phi_j(l) $$

where $\phi_j$ is some basis function and $a_j$ are coefficients to solve for.

Given this representation, you should end up with $k$ equations with $m$ unknowns, with the form:

$$ DN(l_k) = \sum_{j=1}^m a_j \langle Dn,\phi_j\rangle_k \;\;\;\;\;\;\forall k $$

Based on the number of numerically unique values for $l_k$ that you can compute, you should be able to find a suitable basis to approximate $f(l)$.

If you only have one value for $l_k$, you might just want to assume a constant value for $f(l)$ and compute that approximation.

  • $\begingroup$ Thanks choward, If I understand it correctly, you mean that even for a constant $DN(l)=DN(l_{o})$, I should be able to find the coefficients of the basis function $\phi_{j}$. Right? $\endgroup$
    – Benjamin
    Mar 29, 2016 at 22:25
  • $\begingroup$ Yes, you should be able to find the coefficient for the basis function $\phi_j$, assuming it's the only function in your basis (aka $m = 1$). $\endgroup$
    – spektr
    Mar 29, 2016 at 22:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.