sand15

787 Reputation

11 Badges

9 years, 181 days

MaplePrimes Activity


These are replies submitted by sand15

@acer 

Do you think it's decent to improve your reputation based on work others have done?
You don't need to. You've already earned it.
Personally, I would have mentioned Kitonum's work in a simple reply, not an answer.

@janhardo 

As ChapGPT is meant to provide clear synthesis on a subject, the least one can hope for is that its answers are error free and understandable.
For instance

  • Can you explain me how ChatGPT passes from the 4th equality to the 5th one (in point 4)?
  • Can you explain me how ChatGPT finds that (point 7) pi3/3! = pi2/6?
  • More generally, ChatGPT does not shine for its clarity (Point 6 is quite obscure).


Better sources than CheatGPT exist  to understand how Euler solved the Basel problem.
Wiki (see @vv) is already better but nothing is worth the original  Euler (english translation)
 

@vv 

Thank you for this explanation (even if I only remember the analytical continuation in name, it's all too far away for me).
If I have a bit of time, I'll try to refresh my memory.

@Jesús Guillera 

By the way, did you browse the references I provided you or did you made your own research about convergence conditions of your serie?

To end my contribution: are you sure what you said in your last reply is correct?
 

kernelopts(version);
Maple 2015.2, APPLE UNIVERSAL OSX, Dec 20 2015, Build ID 1097895

F(-2);
                   infinity                 
                    -----                   
                     \              2     n 
                      )     po(1, n)  (-2)  
                     /     -----------------
                    -----          2        
                    n = 1     /1   \         
                           po| -, n |  (n + 1)
                              \2   /         

A truncated serie:

FT := (z, N) -> add(po(1,n)^2/po(1/2,n)^2*z^n/(n+1),n=1..N):
evalf(F(1/2)), evalf(FT(1/2, 100)); 
                    2.254576561, 2.254576561

 evalf(F(-2)) , evalf(FT(-2, 10)), evalf(FT(-2, 50)), evalf(FT(-2, 250)); 
                                          15                75
 -1.076461643, 2002.463620, 2.323658088 10  , 3.777981621 10  

Convergence doesn't seem to hold at z=-2...

Look at this: Download Convergence_criteria.mw

@Jesús Guillera 

I'm not a specialist of hypergeometric series, but if you're right then this is a Maple bug.

F(2)
                            infinity


But on the other side, if you "think that F(2) is convergent" why do you declare assume(abs(z)<1) ?


This communication (unfortunately in French) should put an end to this dicussion, mid of page 5 "
Le rayon de convergence est évidemment l'unité"  which translate as "The convergence radius is obviously the unity" meaning the serie is convergent if abs(z) < 1 (abs(z) <= 1 ?).

An hypergeometric serie

 F := (z, a, b) ->sum(po(a,n)^2/po(b,n)^2*z^n/(n+1),n=1..infinity)

is convergent for any real z if at least one of a or b is a strictly negative integer (If I'm not mistaken, because the associated Pochammer symbol cancels out beyond a certain value of n).
But you are not in this situation with  a=1 and b=1/2 ...

See also Rivoal (still in french) from which this excerpt is taken:



The highlight text translate as "with sometimes a convergence on the unit circle"


So (once again I'm not a specialist), I advice you to verify if your hypergeometric serie converges for z > 1.

@C_R 

I vote up.

In fact I spent a little time on this question where I followed a slightly different path.
But I stpped digging after some time

@Kitonum 

Two reasons:

  1. Firstly you assume that there exists some x such that 3628800 = x!  
  2. Next your first command works only by chance:
    identify(fsolve(x!=3628800+1, x=0..infinity));
                              10.00000012

Putting aside the first point, something like this would be a little bit more satisfying:

restart;
Identify := proc(n)
  local i:
  i := identify(fsolve(x!=n, x=0..infinity));
  if i::integer then 
    print(n = ``(i)!);
  else
    i:= ifactors(n)[2]:
    if numelems(i)=1 then 
      print(n = i[1][1]^``(i[1][2]));
    else
      print("no identification found")
    end if
  end if
end proc:
Identify(3628800)
                   3628800 = factorial((10))
Identify(3628800*12)
                   "no identification found"
Identify(65536)
                                  (16)
                         65536 = 2    
Identify(3*4*5*6)
                   "no identification found"

What I had initially in mind was something like this

n := 3628800:
f := n+r:    # r being a "small" float number in absolute value
identify(f)  # expected output 10!

Propbably I wasn't clear enough in my question.

Nevertheless, thank you for your contribution.

@acer 

OuterProductMatrix and KroneckerProduct do the same thing here:

OuterProductMatrix(r,c)^%T, KroneckerProduct(c, r);

OuterProductMatrix(r,c), KroneckerProduct(r^+, c^+);

Is there an advantage in using one against the other (in fact I always use KP)?

TIA

@Debdp07 

Your question was "How to evaluate the right eigenvector ...".
In Wiki, parapragh"Left and right eigenvectors" you can read:





In LinearAlgebra:-Eigenvectors (see my first reply) it is written:


Tus according to WikiLinearAlgebra:-Eigenvectors  computes right eigenvectors.

Isn'it what you asked for?
I don't understand your reply, clarify if needed.


Help page says


Then E are the right eigenvectors

@Muhammad Usman 

As I'm naturally touchy, let's just say that I don't really appreciate your phrase "I am waiting for your positive response" which sounds to me like a do-my-job-and-do-it-well injuction.

That said, let's move on to the technical aspects and the reasons why "Here some lines are directed toward zero which is not needed".
There is no "needed" here: those lines are here because RK11 does not have the desired structure for surfdata, period.

In the end, your problem is this: you want to represent information and you've made the wrong choice of the Maple function. So match your needs to the possibilities offered by Maple and find a visualization that makes sense to you and that Maple accepts.

The attached file presents detailed explanations and propose an alternative visualization (that you might consider this a "positive response" or not is irrelevant to me and I'm done with this thread).

Help-2_sand15.mw

Another possibility is given here  I_am_done_after_that.mw (I don't have time to explain what I've done, particularly as I have the feeling that "positive response" simply means 'result' and doesn't include the explanations that come with it).

@NIMA112

With @acer's suggestion L writes cos(v*y)*C where C does not depend upon y: so you don't even need Maple to integrate this.

The smoothing dependes upon two parameters (s__M and s__T) which controls thesmoothing in directions HAMM and HAMT respectively.
The higher their values the lower the smoothing.
For s__M = s__T = 2 the suface presents some spurious oscillations wich are removed when s__M = s__T = 1.

If you are interested only in qualitative results, you can search for the couple (s__M , s__T) which suits you the best.
Help_smoothing.mw

If you are interested in quantitative results, (for instance to do prediction) you must an approximative reconstruction with very specific models.
As @acer mentionned using cubic interpolation will be a poor idea.

EDITED 2024/03/22 GMT 19:00
Here is a variant of my file Help_smoothing.mw where the approximating surface is build using Kernel Regression.
If you set the parameter shrink to a small value, let's say 0.1 (I infer that much smaller values could lead to numerical problems) you will get a surface close to what ArrayInterpolation(..., method=nearest) gives.
Kernel_regression.mw

By the way, given the values of MAE[i, j, k] I adice you to do this

surfdata(
   [ seq([seq([op(i1, HAMM), op(j1, HAMT), log[10](MAE[1, i1, j1]) ]
   , j1 = 1 .. nops(HAMT))]
   , i1 = 1 .. nops(HAMM))]
   , axes = boxed, color = cyan
   , labels = ["M", "N", "MAE"]
   , labeldirections = [horizontal, horizontal, vertical]
   , labelfont = [Arial, 16, bold]
   , axesfont = [Arial, 14]
   , transparency = .1
   , style = pointline
)


Given the logarithmic range, this plot is almost like the one you could obtain by plotting only data above 1.
If you want something more correct you can do this

surfdata(
   [ seq([seq([op(i1, HAMM), op(j1, HAMT), log[10](MAE[1, i1, j1]) ]
   , j1 = 1 .. nops(HAMT))]
   , i1 = 1 .. nops(HAMM))]
   , axes = boxed, color = cyan
   , labels = ["M", "N", "MAE"]
   , labeldirections = [horizontal, horizontal, vertical]
   , labelfont = [Arial, 16, bold]
   , axesfont = [Arial, 14]
   , transparency = .1
   , style = pointline
   , view=[default, default, 1..143]
)

I don't understand what yiu are trying to achieve with

nminz, nmaxz := (min, max)(newz); C := .666*(1-ImageTools:-FitIntensity(newz)); PC := PLOT(GRID(0 .. 1, 0 .. 1, newz, COLOR(HUE, C)), STYLE(PATCHNOGRID))

and with what comes before?

What does "I want to plot the density plot for all points with the range ..." mean?


I was quite surprised that Maple 2024 offered such a feature. All the more so if it's not removable (but I only have Maple 2021 at my office  and can no longer judge).
Nevertheless scrolling matrices can be of great help and this could be done easily in previous version by using package Spread Spread.mw

1 2 3 4 5 6 7 Last Page 1 of 24