Axel Vogt

5936 Reputation

20 Badges

20 years, 256 days
Munich, Bavaria, Germany

MaplePrimes Activity


These are replies submitted by Axel Vogt

it is ok in Maple 12 ... and as for almost all software there will be no fixing for old releases

Thx - strange ...

Let me know, if I can help (so you need a licenced importeur)

And I am hungry, Schinkennudeln is the solution ... I am drifting off the topic and will stop ... for various reasons :-)

That does not make me really happy  ... I think I need some wheat beer ...

Aha ... that made me read the help ('un/known' in the context of a PDE?)... I would no longer consider it as bug, but as risky to use as 'stand alone'

If the integrand is more complex: is there an easy way or does one have to define the integrand as function to be sure?

Edited:

1. This works:
  Int(F(x)*G(x), x): 
  '%'= PDEtools[dchange](x=phi(t),%,[t], known = [F,G]);

        /                  /
       |                  |                      /d        \
       |  F(x) G(x) dx =  |  F(phi(t)) G(phi(t)) |-- phi(t)| dt
       |                  |                      \dt       /
      /                  /

2. This does not work:
  Int(F(x)*G(x),x);
  tmp:= unapply(op(1,%), x);
  '%%'= PDEtools[dchange](x=phi(t),%%,[t], known = [tmp]);
 
                        tmp := x -> F(x) G(x)


             /                  /
            |                  |            /d        \
            |  F(x) G(x) dx =  |  F(t) G(t) |-- phi(t)| dt
            |                  |            \dt       /
           /                  /

the problem with that: the notation is false (and not just sloppy), and using substituion for concrete functions F and phi will give funny results

at least it let's me doubt that results based on the use of 'dchange' are correct

for me it is just a serious bug

Yes, that problem is J=F(1,t) = F(0,t) = sqrt(Pi/t)/2 for t=1 in the cited post.

The change eta=-theta actually means to re-write the integrand after multiplying
by 1=exp(-eta)/exp(-eta) to have a Gaussian in the numerator (then it is just an
expectation value). 

With paper & pencil one might do so (to have either a simple numerator or denom).

As often I am not sure why Maple should solve the integral J or not - being too
illiterate concerning the underlying algorithm(s).


Additionally also want to note, that the usual 'expand' command (together with
'combine') can be used in most cases.


Using 'dchange' seems to have some advantages, yes (besides F1-help-key does not
find anything through the idioticy of broken help links).

Note however the following (after restart, Maple 10 ff, but having not checked
my ini-file):

  Int(F(x), x): '%'= IntegrationTools[Change](%, x=phi(t),t);

                /             /
               |             |            /d        \
               |  F(x) dx =  |  F(phi(t)) |-- phi(t)| dt
               |             |            \dt       /
              /             /

  Int(F(x), x): '%'= PDEtools[dchange](x=phi(t),%,[t]);

               /             /
              |             |             /d        \
              |  F(x) dx =  |  F(   t   ) |-- phi(t)| dt
              |             |             \dt       /
              /             /

................................  ^^^^^ ...... grrrrrrrr


may be you could upload your 'problem file' (and use restart; interface(version); as first commands, so one can see, what you are using)?

may be you could upload your 'problem file' (and use restart; interface(version); as first commands, so one can see, what you are using)?

your reply made me check my ini file ... I load 'student' ... sorry - without it does not heal the problem

your reply made me check my ini file ... I load 'student' ... sorry - without it does not heal the problem

one of the "advantages of the standard interface" ? Well, a bit kidding ...

asserting a bug would have had the need to use "evalf"

once I filed this (of course feel free to to replace 'she' be 'he' ... forgot the link), it should remind me of some of my stupid errors :-)

limit

once I filed this (of course feel free to to replace 'she' be 'he' ... forgot the link), it should remind me of some of my stupid errors :-)

limit

I see, much better to read - thx. 

The following may almost do what you are looking for (where FORTR
is your last expression used:

  qxt:=codegen[makeproc](FORTR,parameters = [CS,op(theIndets)]  ):
  qxt:=codegen[optimize](%, tryhard):
  codegen[prep2trans](%):
  qxt:=codegen[split](%):

  eval(qxt): convert(%,string):
  #StringTools[Substitute](%, "(CS", "(CS::Array(numeric, 1..100)"):
  StringTools[Substitute](%, "(CS", "(CS::Array(numeric)"):
  parse(%):
  theProc:=(%):
  CodeGeneration[Fortran](theProc);

It is a bit dirty and I do not speak Fortran ... in C it seems ok.

And I had to use Maple 11, since the idiotic help in Maple 12 lost
too much help links on older commands - what a shame ...


The proposal ... that is not a procedure, it is just the command to
replace subexpressions (one could write that in a way without typing
in all the possibly 100 different terms, but the above should do it).
I see, much better to read - thx. 

The following may almost do what you are looking for (where FORTR
is your last expression used:

  qxt:=codegen[makeproc](FORTR,parameters = [CS,op(theIndets)]  ):
  qxt:=codegen[optimize](%, tryhard):
  codegen[prep2trans](%):
  qxt:=codegen[split](%):

  eval(qxt): convert(%,string):
  #StringTools[Substitute](%, "(CS", "(CS::Array(numeric, 1..100)"):
  StringTools[Substitute](%, "(CS", "(CS::Array(numeric)"):
  parse(%):
  theProc:=(%):
  CodeGeneration[Fortran](theProc);

It is a bit dirty and I do not speak Fortran ... in C it seems ok.

And I had to use Maple 11, since the idiotic help in Maple 12 lost
too much help links on older commands - what a shame ...


The proposal ... that is not a procedure, it is just the command to
replace subexpressions (one could write that in a way without typing
in all the possibly 100 different terms, but the above should do it).
First 172 173 174 175 176 177 178 Last Page 174 of 209