MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Finding inverse of non-linear transformation

  • To: mathgroup at smc.vnet.net
  • Subject: [mg116413] Re: Finding inverse of non-linear transformation
  • From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
  • Date: Mon, 14 Feb 2011 04:26:36 -0500 (EST)
  • References: <ij8d29$396$1@smc.vnet.net>

Chris,

A few remarks:

1. Your definition of the function F is a bit weird. Not using Blanks
for a, b, and c, means the function will only be defined if you use
precisely these variable names. Values as arguments can't be used.
2. InverseFunction is *not* used to *calculate* the inverse function
of a given function, but is used by Mathematica to *represent* inverse
functions that emerge in its calculations. Read the InverseFunction
doc page for more details.
3. If you have a function f[x_] = ... then the inverse function can
(sometimes and not always correctly because of non-unique inverses) be
found by Solve[f[x]==fx,{x}] with fx a known result of f[x]. If you
have a function of more variables f[x_,y_] = ..., then you have to
solve two equations: Solve[{f[x,y]==fxy1, f[x,y]==fxy2},{x,y}] and
hope for the best. Quite often you won't be able to find a solution.
4. You have to modify 3. to accommodate the  2x1 matrix you're using
in the function definition, as the function now has two outputs
instead of one.

Cheers -- Sjoerd


On Feb 13, 11:50 am, "Christopher O. Young" <c... at comcast.net> wrote:
> I'm trying to find the inverse of the simple non-linear transformation
>
> (a x + b x + c) ({
> {x},
>  {y}})
>
> I'm trying to use this as a sort of counter-example to the usual projective
> transformation, which has the polynomial in the denominator. Does
> Mathematica have a way to do this? InverseFunction doesn't seem to work
> here.
>
> In[1]:= F[x_, y_, a, b, c] := (a x + b x + c) ( {  {x},  {y}  }=
 )
>
> In[2]:= InverseFunction[[x_, y_, a, b, c]]
>
> During evaluation of In[2]:= Part::pspec: Part specification x_ is neither
> an integer nor a list of integers. >>
>
> Out[2]= InverseFunction[[x_, y_, a, b, c]]
>
> Any help very much appreciated.
>
> Chris Young
> c... at comcast.net



  • Prev by Date: Re: how to drop ContextPath when printing from a package?
  • Next by Date: Re: Filtering data from numerical minimization
  • Previous by thread: Re: Finding inverse of non-linear transformation
  • Next by thread: Mathematica: subscript simplification under non-communicative multiplication.