[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
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
only once, To use your inverse, you just evaluate your interpolant
(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?
- Reverse function numerically, stn021, 2018/01/28
- Re: Reverse function numerically, stn021, 2018/01/28
- Re: Reverse function numerically, Steven Dorsher, 2018/01/28
- Message not available
- Message not available
- Re: Reverse function numerically, stn021, 2018/01/28
- Re: Reverse function numerically, Montgomery-Smith, Stephen, 2018/01/28
- Message not available
- Fwd: Reverse function numerically,
Juan Pablo Carbajal <=
- Re: Reverse function numerically, stn021, 2018/01/31
- Re: Reverse function numerically, Juan Pablo Carbajal, 2018/01/31
Re: Reverse function numerically, Montgomery-Smith, Stephen, 2018/01/31