Skip to main content
2 of 3
edited tags
YCor
  • 63.9k
  • 5
  • 187
  • 286

Numerically expanding a function in a rational-power "basis"

I have some scientific code which interfaces with a library which accepts real functions specified as any number of additive terms with exponential powers. For instance, it is capable of accepting function

0.1 x^(3.14) - 0.2 x^(-156.4)

where every coefficient and exponent can be specifiable up to machine epsilon. I need to approximate a tractable sum of Gaussian functions into this form, to dispatch them to the library with tenable accuracy.

For my purposes, a sufficiently accurate Taylor expansion required 60 terms with powers as large (in magnitude) as 69, and a similar diagonal Padé approximant required 20 terms with powers up to 18. But since these powers are restrictedly integers, I cannot help but wonder whether a smaller and more accurate expansion is possible with permittedly rational powers.

I would imagine the uncountably infinite family of rational-power expressions do not satisfy the necessary conditions (like orthonormality, clearly) to constitute a basis, and hence will not admit an analytic prescription for determining the coefficients. I would further imagine that a practical way to find coefficients and powers which produce a sufficiently accurate approximation in a given region is best done with some numerical/iterative optimisation. I am happy to do this, but the expression (like the example above) must be performed in advance, independent of any x value.

My question:

  • is my intution correct that sums of real-weighted rational powers (bounded, let's say, in [-20,20]) can "better" approximate functions like gaussians (in some regime about zero)?
  • is there a protocol (which needn't be efficient) to well approximate the conditions?