Axel Vogt

5936 Reputation

20 Badges

20 years, 259 days
Munich, Bavaria, Germany

MaplePrimes Activity


These are replies submitted by Axel Vogt

Will try to understand tonight, but I can not see at a glance, where the thing
is analytic (and that probably would be needed): complex R3 given lambda?

You are welcome :-)

No, have not heared about Tecplot.

Best,
Axel

You are welcome :-)

No, have not heared about Tecplot.

Best,
Axel

Glad to hear, that all this technical discussion finally helped a bit, so that you find your own and intended answer!

Glad to hear, that all this technical discussion finally helped a bit, so that you find your own and intended answer!

evalf[n](someNumber) usually displays n decimal places, so you can do

  oldDigits:=Digits:
  Digits:=60                       # new working precision
  for
    ...                            # computations done with 60 Digits
    lprint( evalf[20](myNumber) ); # display 20 of them
  end do:
  Digits:=oldDigits:               # restore the previous precision
evalf[n](someNumber) usually displays n decimal places, so you can do

  oldDigits:=Digits:
  Digits:=60                       # new working precision
  for
    ...                            # computations done with 60 Digits
    lprint( evalf[20](myNumber) ); # display 20 of them
  end do:
  Digits:=oldDigits:               # restore the previous precision
Yes, it seems it is numerical a bit instable. And the 'linear' relation only
holds in the large, while for smaller values of lambda the roots are almost
constant, as your task for the range 45 ... 50 shows.


Just for the last question: the very command in the sheet repeats work which can
be done outside the loop and 'simplify' for numerical expressions often is not a
good idea. Plotting the task shows that only 1 solution is expected and it is
roughly at R3 ~ 0.7:

  #G:=subs(S0=S01,subs(parvals,A0)):
  #indets(G, symbol); # = {R3, l}

  theRange:= l=45 .. 50, R3=-1 .. 0.2;
  plot3d(G,theRange,grid=[10,10],axes=BOXED,style=PATCHCONTOUR, orientation=[50,60]):
  plot3d(0,theRange, axes=boxed, style=wireframe, color="DarkRed" ):
  display(%%,%);

  for K from 45.6 by 0.1 to 50 do
    tmp:= eval(G, l=K);
    sol:=fsolve(tmp, R3=-0.70, maxsols=1);
    eval(tmp, R3=sol);
    evalf[15](abs(%));
    lprint('l'=K, 'R3'=sol, 'fct(l,R3)' = %);  
  end do:
  K:='K': # clean index variable, housekeeping

That should be fast enough.
Yes, it seems it is numerical a bit instable. And the 'linear' relation only
holds in the large, while for smaller values of lambda the roots are almost
constant, as your task for the range 45 ... 50 shows.


Just for the last question: the very command in the sheet repeats work which can
be done outside the loop and 'simplify' for numerical expressions often is not a
good idea. Plotting the task shows that only 1 solution is expected and it is
roughly at R3 ~ 0.7:

  #G:=subs(S0=S01,subs(parvals,A0)):
  #indets(G, symbol); # = {R3, l}

  theRange:= l=45 .. 50, R3=-1 .. 0.2;
  plot3d(G,theRange,grid=[10,10],axes=BOXED,style=PATCHCONTOUR, orientation=[50,60]):
  plot3d(0,theRange, axes=boxed, style=wireframe, color="DarkRed" ):
  display(%%,%);

  for K from 45.6 by 0.1 to 50 do
    tmp:= eval(G, l=K);
    sol:=fsolve(tmp, R3=-0.70, maxsols=1);
    eval(tmp, R3=sol);
    evalf[15](abs(%));
    lprint('l'=K, 'R3'=sol, 'fct(l,R3)' = %);  
  end do:
  K:='K': # clean index variable, housekeeping

That should be fast enough.
Thus it helps?
Attached the file for my reply before (ok, not very readable, but see the
comments above, which explain it)
Kopie_von_asympt_pro.mws
Thus it helps?
Attached the file for my reply before (ok, not very readable, but see the
comments above, which explain it)
Kopie_von_asympt_pro.mws
Thx for the infos, may be I will try to read them later (I am not clever
enough for Math Physics)

Define your function G:=subs(S0=S01,subs(parvals,A0)) as in (my) sheet
and F:=subs(R3=r, l=lambda, G), that's just renaming the variables.

By plotting it is 'obvious', that for r=0 this is always negative (so r
must decrease to have a chance to fullfill F=0.

For lambda = 10^3 and 10^4 compute solutions for F=0 with an initial
guess of r = -2*lambda which then defines a line equation

Lin := lambda -> -1.591517842027199990210998791356366512040*lambda
                 +2.229559088349405643936812337536203057778

More or less the 6 leading decimal places would do as well (Digits=40).

Then rInitial = Lin(lambda) should be a close guess for F(r,lambda) = 0.

Then for testing use something like the following (or put in a procedure,
which compares the error between fsolve and the linear guess):

  tst:=3*1e8;
  Lin(tst);
  'eval(F, lambda=tst)';
  fsolve(%, r=Lin(tst));

You will find, that the actual zero given by fsolve is very close to
the linear estimate (6 leading decimals in that case).


Note that for really large values that is a bit artifical, since Maple
will return 0 anyway (even for very high precision). It seems (to me)
that partially one can go further converting to rationals, but the very
problem (numbers will be too large) remains.

Of course that does not *prove* that the relation is almost linear
(and it does not say anything, whether smaller values for r would do).

But if so, then the candidates for r, F=0, are running away while the
lambda increases.

Probably you can verify that only qualitatively through the theory in
your posted pdf:

for me the structure of F (or your G, which initially is A0) is not
quite clear (my screen is not large enough?). But it seems to be of
type A/B, both involving exponentials (and more), which go to infinty
each.

But Maple often fails to handle such correctly (for example l'Hospital,
and his rule may not help in case of exponentials).
Thx for the infos, may be I will try to read them later (I am not clever
enough for Math Physics)

Define your function G:=subs(S0=S01,subs(parvals,A0)) as in (my) sheet
and F:=subs(R3=r, l=lambda, G), that's just renaming the variables.

By plotting it is 'obvious', that for r=0 this is always negative (so r
must decrease to have a chance to fullfill F=0.

For lambda = 10^3 and 10^4 compute solutions for F=0 with an initial
guess of r = -2*lambda which then defines a line equation

Lin := lambda -> -1.591517842027199990210998791356366512040*lambda
                 +2.229559088349405643936812337536203057778

More or less the 6 leading decimal places would do as well (Digits=40).

Then rInitial = Lin(lambda) should be a close guess for F(r,lambda) = 0.

Then for testing use something like the following (or put in a procedure,
which compares the error between fsolve and the linear guess):

  tst:=3*1e8;
  Lin(tst);
  'eval(F, lambda=tst)';
  fsolve(%, r=Lin(tst));

You will find, that the actual zero given by fsolve is very close to
the linear estimate (6 leading decimals in that case).


Note that for really large values that is a bit artifical, since Maple
will return 0 anyway (even for very high precision). It seems (to me)
that partially one can go further converting to rationals, but the very
problem (numbers will be too large) remains.

Of course that does not *prove* that the relation is almost linear
(and it does not say anything, whether smaller values for r would do).

But if so, then the candidates for r, F=0, are running away while the
lambda increases.

Probably you can verify that only qualitatively through the theory in
your posted pdf:

for me the structure of F (or your G, which initially is A0) is not
quite clear (my screen is not large enough?). But it seems to be of
type A/B, both involving exponentials (and more), which go to infinty
each.

But Maple often fails to handle such correctly (for example l'Hospital,
and his rule may not help in case of exponentials).

Ok, I took the last one - though I did nor read all of it, I am a bit lost
between the paper and the sheet as well :-) But for the moment that is
not much a problem

Playing with task further on it looks as if there is a linear relation between
those pairs (R3,l), for which the surface has the value 0, that means, they
define a line (look at the graphs from 'above', move them with the mouse)

asympt_problem3.mws

Ok, I took the last one - though I did nor read all of it, I am a bit lost
between the paper and the sheet as well :-) But for the moment that is
not much a problem

Playing with task further on it looks as if there is a linear relation between
those pairs (R3,l), for which the surface has the value 0, that means, they
define a line (look at the graphs from 'above', move them with the mouse)

asympt_problem3.mws

First 114 115 116 117 118 119 120 Last Page 116 of 209