help-octave
[Top][All Lists]

## Fwd: Reverse function numerically

 From: Juan Pablo Carbajal Subject: Fwd: Reverse function numerically Date: Wed, 31 Jan 2018 14:12:56 +0100

```As said before, you are essentially searching for zeros of the
function g(x1,x2) - f(y1,y2), i.e.

g(x1,x2) - f(y1,y2) = 0

You can solve this with with any zero finding routine: Gauss-Seidel,
Picard, Newton-Rapson, etc... or you can approximate it with a
minimizing problem, e.g.

[x1,x2] = argmin ||g(x1,x2) - f(y1,y2)||

where ||.|| is some distance (or squared norm). The iterative methods
can be fast or not depending on the structure of your functions, the
minimization method will in general be slow.
To sped up you can resource to interpolation, as you did already,
solve the problem for a bunch of relevant points, then interpolate.
The solving and the creation of the interpolant is done off-line and
(usually very cheap). The interpolation can be done with Polynomials
(since it is a 2D domain), with Special functions or generalized
Fourier series (truncated, of course), or with Gaussian processes
(kriging or co-kriging).

There are packages in octave to do any f these thigns.

The particular choice depends on your function, is the example you
send the actual function you want to invert?

```