Carl Love

Carl Love

28035 Reputation

25 Badges

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

MaplePrimes Activity


These are replies submitted by Carl Love

@Markiyan Hirnyk Your timing is not valid because of remember tables. You have to test on different numbers. Here's a better test. Actually, doing the integration symbolically first is about 25 times faster using 512 evaluation points. 

restart;

DQ:= -((D@@2)(y))(r)-2*y(r)/r+y(r) = ((4/9-exp(-r)/r)*2)*r*exp(-r):

Y:= rhs(dsolve({DQ, y(1)=1, D(y)(1)=2}, y(r))):

L1,L2:= seq(RandomTools:-Generate(list(float(range= 1..9), 2^9)), k= 1..2):

st:= time():

Y1:= simplify(Y):

CodeTools:-Usage(assign('EY1', [seq](evalf(eval(Y1, r= x)), x= L1))):

memory used=2.49GiB, alloc change=60.01MiB, cpu time=25.38s, real time=24.55s

t1:= time()-st;

25.406

st:= time():

Y2:= simplify(value(applyrule(Ei(1,_X::algebraic)= -Ei(-_X), Y1))):

CodeTools:-Usage(assign('EY2', [seq](evalf(eval(Y2, r= x)), x= L2))):

memory used=81.38MiB, alloc change=0 bytes, cpu time=860.00ms, real time=809.00ms

t2:= time()-st;

1.016

t1/t2;

25.0059055118110


Download Ei_integration_timin.mw

If you're trying to solve with fsolve, then you need to drastically reduce the value of Digits.

If you're trying to solve with fsolve, then you need to drastically reduce the value of Digits.

Your g(x) reduces to g(x) = A, because of most-well-known trig identity: cos^2 + sin^2 = 1. So, there is not really any parameter C.

Nicely detailed plot!

I don't how clock faces usually appear in your culture, but I think that in most of the Western World the position that you have labeled as 0 is labeled as 12 (even though mathematicians and especially computer programmers must wish it was 0). It is so culturally ingrained that we refer to an distant object directly in front of us as "at 12 o'clock" and a distant overhead object as being "12 o'clock high".

@Christopher2222 Like I said, bytes and alt-codes are not the same for me, except that the regular keyboard characters 32-127 are the same. Maybe it has something to do with what language keyboard you're using. I'm uaing USA Standard English. What are you using?

@Christopher2222 Like I said, bytes and alt-codes are not the same for me, except that the regular keyboard characters 32-127 are the same. Maybe it has something to do with what language keyboard you're using. I'm uaing USA Standard English. What are you using?

@Joe Riel You're right, the Output Display can be set to 2D Math Notation or Typseset. However, I still need Typesetting Level set to Standard, not Extended. Which begs the question, What is Extended Typesetting for?

@Joe Riel You're right, the Output Display can be set to 2D Math Notation or Typseset. However, I still need Typesetting Level set to Standard, not Extended. Which begs the question, What is Extended Typesetting for?

You have 13 equations and only 12 unknowns. It is possible to remove the last equation? Using fsolve on the first 12 equations, I get RT = -10.054. Is that feasible for your problem? Do you have feasibility ranges for the other variables?

@brian bovril I got Joe's code to work after a bunch of fiddling with my output settings. I am running in a Standard worksheet with 1D input (Maple Input). I load the code out of a Code Edit Region, but the good old bold red Maple Input works as well. In order for it do anything interesting, however, the output display needs to be set to "Typeset Notation" and the Typesetting Level needs to be set to "Maple Standard". These settings are accessed via the Tools => Options => Display menu.

Joe, where can I find documentation for these MathML codes? Particularly, I am interested in the identifier names the begin `#mrow. There doesn't seem to be anything about it in packages TypeSetting, MathML, DocumentTools, Worksheet, or XMLtools.

Minor point, easily correctable: I think you missed the point about the searches needing to be case insensitive. Perhaps you haven't seen the opening credits of the show. For example, the actor name Anna Gunn is shown as AnNa Gunn, with the Na highlighted as the sodium block from the periodic table.

@brian bovril I got Joe's code to work after a bunch of fiddling with my output settings. I am running in a Standard worksheet with 1D input (Maple Input). I load the code out of a Code Edit Region, but the good old bold red Maple Input works as well. In order for it do anything interesting, however, the output display needs to be set to "Typeset Notation" and the Typesetting Level needs to be set to "Maple Standard". These settings are accessed via the Tools => Options => Display menu.

Joe, where can I find documentation for these MathML codes? Particularly, I am interested in the identifier names the begin `#mrow. There doesn't seem to be anything about it in packages TypeSetting, MathML, DocumentTools, Worksheet, or XMLtools.

Minor point, easily correctable: I think you missed the point about the searches needing to be case insensitive. Perhaps you haven't seen the opening credits of the show. For example, the actor name Anna Gunn is shown as AnNa Gunn, with the Na highlighted as the sodium block from the periodic table.

@Markiyan Hirnyk Well, I did say that the questioner's ranges defined a nonagon, not a hexagon. It makes a nice looking plot though. Could be a new airplane design. :-). I have verified that the provided corrected ranges do define a right hexagon, the plot of which is, of course, boring.

@Markiyan Hirnyk Well, I did say that the questioner's ranges defined a nonagon, not a hexagon. It makes a nice looking plot though. Could be a new airplane design. :-). I have verified that the provided corrected ranges do define a right hexagon, the plot of which is, of course, boring.

@Kitonum Here's your recursion written in more standard Maple. In particular, note the remember, thisproc, and the "seeding" of the remember table in the last line. Also note that this technique avoids the need to give an initial value for a(2).

a:= proc(n::posint)
   option remember;
   local a:= thisproc, k:= irem(n,3);
   a(n-1) + `if`(k=2, -1, a(n-2) + `if`(k=1, 2, 0))
end proc:
a(1):= 2:  

First 686 687 688 689 690 691 692 Last Page 688 of 708