acer

32348 Reputation

29 Badges

19 years, 330 days
Ontario, Canada

Social Networks and Content at Maplesoft.com

MaplePrimes Activity


These are replies submitted by acer

It is not clear to me what you are trying to ask.

Could you upload a text file of the comma-separated data, and a .mw worksheet that contains your failed attempt(s)?

@dianam8 Show us what you've achieved so far, and tell us explicitly how you'd like to continue and what you hope to achieve.

You can use the green up-arrow in the Mapleprimes editor to upload a .mw worksheet, and attach it to a Reply.

Perhaps it's time to program efffectively with procedures.

It's probably much easier to call a Maple command to compute the y-value for exactly x=2, than it is to use something as crude as a point-probe.

Show us your example.

I was talking only about dense, hardware float[8] linear algebra, called properly.

Sparse linear algebra is another story. If you want to ask a specific question you should branch it off this thread.

@itsme I having been doing performance testing of the key computations of dense numeric Linear Algebra, Mma vs Maple, for years, on multicore hardware.  I have also used (close) revisions of the scripts for it obtained from the Wolfram site mentioned. For datatype=float[8] Matrices, properly done, I consistently see almost no significant difference between the products across a wide range of sizes, getting both to their MKL as fast as reasonably possible. I have found this to hold, for 64bit Linux/OSX/Windows, since at least Maple 2015. 

The results cited by that Wolfram document (which is usually revised yearly), reports slower timings than I obtain, often by a factor of about 3-4, each year.  I suspect the discrepency  is due to incompetence at best, disingenuousness at worst. The performance factor discrepency (between what they claim and what I see) is usually off by an amount similar to the gain I see due to parallelism -- I try a few different quad-core CPUs on each of the three named platforms.

Perhaps they have found some CPU for which the parallel MKL isn't kicking in properly. But for hardware float[8] LU decomposition, linear solving, symmetric and nonsymmetric eigensolving, svd , QR decomposition, matrix multiplucation done *properly*, I almost always see a very close match.

@manon22lr Ok, thanks for the definition of tensdBe.

You wrote, "I tried something with "proc", I found on Maple Help Page." And you define Be11Num as a procedure.

But you misuse it, since you only use Be11Num as a parameter(!) name in the fitted objective. And even if Be11Num were to be called with values it is not written to call ode_sol at all. So the ODE parameter values are not being altered, and the Be11 values from the numeric ODE solution are not being used. So this needs rewriting.

You need objective PK to depend on ODE parameters a and eta, by virtue or their explicit presence in the PK expression. You need PK to contain calls to Be11Num as a function of a, eta, and t, and you need those calls to return unevaluated if its arguments are not numeric. It's a moderately advanced Maple programming task.

I already have a revision that does the above. And it can be done in such a way that (internally stored) dsolve,numeric structures/info are not thrown away each time the ODE parameters a and eta get set (ie. when re-set to the very same previous values).

And it can be used with (local optimization) NonlinearFit command or the routines from the (global optimization) DirectSearch package.

But it would be much better if you could state reasonable numeric ranges for the parameters, especially a and eta.

Put your followup details and queries about solving your system (or derived systems) here, rather than in a separate Question thread.

@Mohamed19 I hope to be able to look at your followup soon, perhaps tonight. (I have been busy.)

@9009134 Please keep your followup example here, instead of in a new Question.

You are missing the code that define Lens and Distance. Please include all the user-defined code necessary to reproduce the problem. You could upload and attach a worksheet.

@Mohamed19 And what difficulty did you have in entering that in Maple?

Is your Maple Help system not working? Which parts of the syntax did you not understand? Something else?

[I am not interested in playing games, like this Question thread in which it took you more than 10 submissions before you came to your main points.]

Your expression has three independent variables, u, v, and alpha.

What kind of plot do you want?

Do you want to animate 3D plots of the real and imaginary parts of the expression (as a function of real u and v), animated by a real parameter alpha?

Do you want to animate 3D plots of the modulus of the expression, colored by its complex argument (as a function of real u and v), animated by a real parameter alpha?

Either of the above, for just a fixed real value of alpha?

Something else?

 

@rookie Do you mean something like this?

restart;

K := proc(ee::algebraic, f::function)
  local m,n,v1,v2;
  if nops(f)<>2 or (not [op(1..2,f)]::list(name)) then
    error "second argument f is not a function call of two names";
  else
    (v1,v2) := op(1,f),op(2,f);
  end if;
  n := PDEtools:-difforder(ee,v1);
  m := PDEtools:-difforder(ee,v2);
  Matrix(m+1,n+1,(i,j)->frontend(coeff,[ee,diff(f,[v1$(j-1),v2$(i-1)])]));
end proc:

 

expr := f0(x,y) + f1(x,y)*diff(z(x,y),x)
         + f2(x,y)*diff(z(x,y),y) + f3(x,y)*diff(z(x,y),x,x):

K(expr, z(x,y));

_rtable[18446884361775252054]

expr := f0(x,y) + f1(x,y)*diff(z(x,y),x)
         + f2(x,y)*diff(z(x,y),y) + f3(x,y)*diff(z(x,y),x,x)
         + f4(x,y)*diff(z(x,y),x,y) + f5(x,y)*diff(z(x,y),y,y)
         + f6(x,y)*diff(z(x,y),x,x,y,y,y)
         + f7(x,y)*diff(z(x,y),x,x,x,y,y,y):

K(expr, z(x,y));

_rtable[18446884361700863998]

 

Download simple_dcoeff2.mw

The above procedure K also finds any nonzero coefficient for z(x,y), if such a term is present. It's easy to adjust K if you'd prefer the [1,1] entry to always be identically 0.  Let me know.

And in your original Question you wrote, "first term in vector always for diff((y(x),x)". So your earlier examples' results omitted a coefficient of 0 for y(x) itself. It would be a simple adjustment to earlier procedure H, to include it. For example,

restart;

H := proc(ee::algebraic, f::function)
  local i,n,v;
  if nops(f)<>1 or (not op(1,f)::name) then
    error "second argument f is not a function of a name";
  else
    v := op(1,f);
  end if;
  n := PDEtools:-difforder(ee,v);
  < seq( frontend(coeff,[ee,diff(f,[v$i])]), i=0..n) >;
end proc:

z := f0(x)*y(x) + f2(x)*diff(y(x),x,x) + f4(x)*diff(y(x),x,x,x,x):

H(z, y(x));

_rtable[18446884076432032342]

 

Download simple_dcoeff3.mw

@manon22lr What is tensdBe[1,1] supposed to be? You seem to have omitted its definition. What is the derivative in your ode?

First 157 158 159 160 161 162 163 Last Page 159 of 592