Re: integral transform definition
- To: mathgroup at smc.vnet.net
- Subject: [mg33204] Re: integral transform definition
- From: Jens-Peer Kuska <kuska at informatik.uni-leipzig.de>
- Date: Sat, 9 Mar 2002 03:19:16 -0500 (EST)
- Organization: Universitaet Leipzig
- References: <a675ii$d10$1@smc.vnet.net>
- Reply-to: kuska at informatik.uni-leipzig.de
- Sender: owner-wri-mathgroup at wolfram.com
Hi,
what's wrong with a creation of the pure function
in MyTransf[]
Kern[a_, p_, q_] := Sin[a p q]
MyTransf[n_, func_, t_] :=
Module[{s, trafo},
trafo = Integrate[Kern[n, t, s] func[s], {s, 0, 2 Pi}];
Function @@ {trafo /. t -> #1}
]
than
r1 = MyTransf[m, foo[w, #] &, t];
and
MyTransf[l, r1[t], t]
work as exprected.
You may generate the pure function also in MyTransf[] first
with
MyTransf[n_, f_, s_, t_] := Module[{trafo, func, w},
func = Function @@ { f /. s -> #1};
trafo = Integrate[Kern[n, t, w] func[w], {w, 0, 2 Pi}]
]
but this is a bit strange because you easy mix up
the dummy variable s, you nesting mus now be written as
MyTransf[m, MyTransf[m, foo[w, s], s, s1], s1, t]
Regards
Jens
Roberto Brambilla wrote:
>
> Hi Jeans, hi all,
>
> you are right. In writing the email I made a sintax error, but in the notebook
> I had the correct definition (this is only a simple demonstrative example):
>
> Kern[a_, p_, q_]:=Sin[a p q].
>
> The transform definition is
>
> (A) MyTransf[n_, func_, s_, t_] := Integrate[Kern[n, t, s] func[s], {s, 0,
> 2 Pi}]
>
> The 'dummy' variable of integration, s, is imposed as an argument in the
> case the
> integral is not explicitly solved (and I want see it in the echo on the
> screen).
> I try (A) with a function depending on some parameters list w, es. foo[w,t]
> You suggest a pure function usage
>
> (B) MyTransf[m, foo[w, #]&, s, t] (*a function of t*)
>
> Applying again the transform I have to integrate in t so that
>
> MyTransf[n, MyTransf[m, foo[w, #]&, s, #]&, t, x] (*a function of x*)
>
> a not intuitive formula. I would prefer a new definition so that I can have
> instead of (B)
>
> (B') newMyTransf[m, foo[w, s], s, t]
>
> avoiding pure function since in this case applying the successive transform
> I can write
>
> newMyTransf[n, newMyTransf[m, foo[w, s], s, t], t, x]
>
> where the integration variables clearly appear coupled.
> How can I modify definition (A) to allow an usage like (B') ?
>
> More generally this problem happens every time a function is called as an
> argument of another function
> (and so on) and we want to maintain flexibility in renaming the independent
> variables.
>
> Best regards
> Roberto
>
> Roberto Brambilla
> CESI
> Via Rubattino 54
> 20134 Milano
> tel +39.02.2125.5875
> fax +39.02.2125.5492
> rlbrambilla at cesi.it