Carl Love

Carl Love

28035 Reputation

25 Badges

12 years, 321 days
Himself
Wayland, Massachusetts, United States
My name was formerly Carl Devore.

MaplePrimes Activity


These are replies submitted by Carl Love

@radaar Use

kernelopts(numcpus= 8);

etc. It may be that you need to issue this command immediately after a restart. Or, maybe that bug has been fixed and you can issue it anytime.

@minhthien2016 Geez, you can't figure that out on your own? For 3-4-5, the solutions are pure rational, so there's no RootOfs, so SolA is a single solution set rather than a sequence of multiple solution sets, so SolA[1] needs to be changed to SolA.

@WmEllis That's great. But I wonder how it originally got set incorrectly.

If you measure "total time" / "number of solutions", your procedure is still much faster.

It should be possible to easily modify your procedure to return the first solution found, if that's wanted.

 

@WmEllis You should set this permanently, because it affects all output, not just matrices. You can do this from the menus: Tools => Options => Display => Output display; select either "Typeset Notation" or "2-D Math Notation"; close the menus with "Apply Globally".

If at any time you need to see output in plaintext ASCII characters (which is very useful for debugging), you can do

lprint(%);

to see just the last output in plaintext; or you can do 

interface(prettyprint= 0); 

to see it in plaintext until you reset it with

interface(prettyprint= 2); #or 3

A closely related setting is 

interface(typesetting= extended);

(My Goodness, why didn't they just make this prettyprint= 4?) In my personal opinion, this extended level is not fully implemented, and it's riddled with bugs. But it is user-adjustable for every type of expression to be output. The opposite of extended is standard.

By the way, there's another way to enter your matrix, which I usually find more convenient:

A:= <1,6; 2,7; 3,8>;

This has no effect on the way that the output is displayed, so it doesn't have anything to do with your Question.

Another entry format is to enter the transpose followed by the transpose operator ^+:

A:= <1,2,3; 6,7,8>^+;

@Nadeem_Malik 

1. I see that you're ignoring my suggestion to convert CylinderD to HermiteH

The command evalc is used for simplifying complex-number expressions under the assumption that parameters are real. So, picking up where my last message left off:

#Fourier transform oF exp(-t^2)/t^a*Heaviside(t):
F:= 2^(a-2)*sqrt(Pi)*exp(-w^2/4)*
   ((sec(a*Pi/2)-I*csc(a*Pi/2))*HermiteH(-a,-w/2) + 
    (sec(a*Pi/2)+I*csc(a*Pi/2))*HermiteH(-a,w/2)
   )
;
#Get spectrum:
S:= simplify(evalc(F*conjugate(F)));

#Do a little simplification by hand:
H:= w-> HermiteH(-a, w/2):
S:= 4^(a-1)*Pi*csc(a*Pi)*exp(-w^2/2)*
   (csc(a*Pi)*(H(-w)^2 + H(w)^2) - 2*cot(a*Pi)*H(-w)*H(w))
;

I just used some trivial trig identities. There were no HermiteH identities that seemed to apply. The above simplifications are only fully valid for a and w real due to my use of evalc.

2. Use eval to give values to parameters, for example, eval(S, a= 0.3).

3. The plot can be made by

plot(eval(S, a= 0.3), w= -15..15);

@Nadeem_Malik 

CylinderD is a special mathematical function. See ?CylinderD and FunctionAdvisor(CylinderD(a,w)). It can be (and probably should be) converted to HermiteH by convert(..., HermiteH).

The inttrans:-fourier command is very weak, IMO. It is supposed to resort to direct integration if it otherwise fails, but it never seems to. You might as well just use direct integration.

If you want to use Heaviside, the direct integration works fine:

int(exp(-t^2-I*w*t)/t^a*Heaviside(t), t= -infinity..infinity);
simplify(convert(%, HermiteH));

#Then I simplified by hand to:
2^(a-2)*sqrt(Pi)*exp(-w^2/4)*
   ((sec(a*Pi/2)-I*csc(a*Pi/2))*HermiteH(-a,-w/2) + 
    (sec(a*Pi/2)+I*csc(a*Pi/2))*HermiteH(-a,w/2)
   )
;

 

That's a strange request given the wide spread of the Cauchy distribution. Why are you using Cauchy(0,1) if you want such a restriction? You could've used Cauchy(0,1/6), for example.

That's quite an interesting discovery. Vote up.

I wonder if the erroneous values are always 0.*I. I confirm that you've thoroughly and meticulously documented a genuine serious bug, likely in CLAPACK sw_dgeevx_ (CLAPACK sw_zgeevx_ seems okay). Until it's known to be fixed, I recommend to always use datatype= complex(sfloat) in place of datatype= sfloat, even if one is not explicitly computing eigenvalues.

@vv Your piecewise trick is brilliant. It's obvious why it works, but I hadn't thought of it. Vote up.

I doubt that it's possible except possibly by very elaborate "surgery" by a human expert in hypergeometric functions.

Three comments though:

  1. Richardson's Theorem guarantees that there are, and always will be, expressions (even fairly simple univariate expressions with no singularities) which equal 0 for all complex values of their variables, yet no algorithm can verify that. This is not a joke theorem like Murphy's Law; it's an actual mathematical theorem. See also: zero-equivalence problem. You should always keep this in mind when trying to simplify something to 0.
  2. Your command subs(sol, ode) is total nonsense because sol is an implicit solution rather than one solved for y(x).
  3. For what it's worth, the hypergeometric solutions can be converted to an integral form with convert(..., Int). This doesn't help much, but it does give you a different perspective.

@vv Thank you (and a vote up). That is more-than-sufficient explanation for me.

@vv To further my mathematical education, would you please elaborate a bit mathematically? Whether or not you elaborate Maple-wise doesn't matter to me. Specifically, how does an integrand that's entire (in the sense of complex analysis) become something with essential singularities? And, also, what is the path of integration in the complex plane? Is a semicircle added to the real interval 0..2*Pi?

You've asked 137 Questions here over the past 6 years. Most of them have been Answered. So why are you still using linalg? Worse yet, why are you mixing LinearAlgebra and linalg? Are you learning anything from our Answers?

Other than that, I don't understand your Question: Do you have an unwanted execution, or an unwanted expression? Please comment on exactly what part is unwanted., because it's not clear to me from reading your worksheet.

First 261 262 263 264 265 266 267 Last Page 263 of 708