Axel Vogt

5821 Reputation

20 Badges

20 years, 228 days
Munich, Bavaria, Germany

MaplePrimes Activity


These are answers submitted by Axel Vogt

I have no feeling why that should have some closed form and I find it a bit
odd that the OP does not tells where the question comes from.

Changing variables it is Sum( b(k), k = 0 .. infinity) with b(k) = 
  1/6*(1+((k+2)/(k+1))^(2/3)-((k+2)/(k+1))^(1/3))*
  (12*(k+3/2)^2-2) / (k+1)/(k+2)/(2*k+3)^2

which for p =0,1,2 is adding

Sum(1/3*((k+2)/(k+1))^(1/3*p)* 
  (6*(k+3/2)^2-1)/(k+1)/(k+2)/(2*k+3)^2,k = 0 .. infinity)

or

Sum(((k+2)/(k+1))^(1/3*p)/(k+1)/(k+2) * t,k = 0 .. infinity);

                       infinity /k + 2\(p/3)
                        -----   |-----|      t
                         \      \k + 1/
                          )     ---------------
                         /      (k + 1) (k + 2)
                        -----
                        k = 0

with t = 1/3*(6*(k+3/2)^2-1)/(2*k+3)^2

For p=0 one even gets a symbolic solution, for p=1 or 2 it converges (?!).

The term ((k+2)/(k+1))^q can be written as hypergeometric 2F1 and after
that as powerseries in 1/(k+1) or 1/(k+2) (take reciprocal with -q).

Now interchang the summation. I gave up, Maple does not give me the results
for that single cases (and I do not see, whether it would finally result
in something meaning full).

So I leave it as it is. And have a beer now. 
Do not give up, it is just not so easy to learn Maple, to find out how the
programming might work (documentation is a bit sparse on that and answers
to questions here for that special topic are rare) and to couple 2 systems.

But more or less it can be done, as far as you can put your code into some
DLL. And I doubt you need Watcom or the Maple 'WRAPPER' for that in a wider
sense.

You can do it either through wrapperless calling with define_external in an
easy way. Or using Open Maple.

If it is that your code expects a function, than using function pointers is
a way and all I showed is how one can do that through Open Maple (in C).

If you have strings or arrays (do not know how it is named on Fortran) then
you will find it out through simple examples.

Also it might be helpfull to have some knowledge for calling C from Fortran
and conversely: see ?OpenMaple, it does not mention Fortran.

If you really want and need it then you can nail it down, just try it until
your frontiers - even if it needs longer time. But that are the situations,
where you learn most, merely by being motivated. And in case of failing you
have done sound work and learned a lot being usefull for yourself beyond it.

But these are just my 2 € Cents ...
Your task and content of the file is to solve sin(3*x) = cos(5*x).
 
I think (having not really checked your result in detail) there are 2 issues:

a) Maple knowing 1/2*(2+-(2+-2^(1/2))^(1/2))^(1/2) is a sinus and arctan of
it is some integer/Pi*16

b) having a solution (as set) to simplify it into a common base using its
somewhat strange way to represent integer base:

  sin(3*x) = cos(5*x);
  RootOf(%,x);
  [allvalues(%)]:
  map(evala,%); #simplify(%, trig); convert(%, cos);
  map('t -> t/Pi*16', %);
  evalf(%);
  identify(%);
  convert(%, set);
  map('t -> t*Pi/16', %);
  simplify(%);

This (with Digits:=14 for evalf) should simplify to your solution  :-(

Here is a tip for working with Maple:

In case of troubles or being unsure about a command you highlight it (for example with the mouse).

Then hit the F1 key in classical interface or the F2 in the standard interface.

Usually the help comes up for that topic (in your case: determinant for modular arithmetics)
and at the bottom of the help page you find related topics.

Certainly it would be nice to have roots for higher orders, now no longer
expressed though radicals.

Somebody for degree 5 and 6 once pointed to
  mathworld.wolfram.com/QuinticEquation.html
  mathworld.wolfram.com/SexticEquation.html


The most general result I am (vaguely) aware is due to Umemura, Resolution
of algebraic equations by theta constants, In: D. Mumford, Tata Lectures
on Theta II, Progress in Math. Vol. 43, Birkhauser, 1984, 261-272.

As far as I remember explanations his result is, that roots can be expressed
in terms of modular functions and hyperelliptic integrals (which would make
me to look that terms again at Wikipedia or similar: it is not that I am
familiar with [just wrote this to show how educated I can be if having some
literature at hand :-) ]).


However a question would be whether Maple can work with such stuff.
Or who can make use of it.
If I understand you correctly, then you need something named a callback.

The link below shows how I did this a longer time ago (not in Fortran,
but in C (and working on Windows), so I can not say how it translates
to your needs).

Essentially the runtime library DLL contains an integrator (not shown,
since it is not mine), the function to be integrated is defined in Maple
and the integration is to be called from Maple.

Thus the integrator (purely in C) needs to know the function - which
lives outside in Maple.

For that one determines the pointer to the function (code shown in the
worksheet). This is an integer of type long and if interpreted in the
correct way (= the signatur or type or how the guys from CS call it),
then you can access it from C (as long as Maple lives at the same time).

Hence you have the values of the function in your integrator.

Thus one can use integrator( pointer_to_function ) in C, call it from
Maple as externalIntegrator( function_inMaple) and return the result.

It would work for functions 'only' known to Maple (like Lambert's W).

Hope it helps, but can not say anything towards Fortran (or how it
may be done in Java).
www.axelvogt.de/axalom/maple/maple-external/external_integration.zip
plot3d( max(min(-z*(1/(x^2+z^2)^(3/2)-1), 1000),-1000),x=-0.3..0.3,z=-0.3..0.3,
  numpoints=50^2,axes=boxed,lightmodel=light2,orientation=[27, 54]);

why not writing Re(theProcedure) or Re(theProcedure)^2 ... would that help?

I think you use notation used in Physics: differentiation w.r.t. function of a variable [ conjugate(z) ], while Maple uses Math notation, i.e. w.r.t. to a variable (which is what G A Edgar may have already said)

y=(-4+4*d)*x^2+(4-4*d)*x-3*d+2; # your equation
RootOf(%, x); # using RootOf to find solutions
[allvalues(%)]; # ask, to give it (more) explicite
simplify(%, size); # to show it in nicer form


             1/2                           1/2
   -1 + d + 4    ((-1 + d) (d - 3/4 + y/4))
  [-------------------------------------------,
                    -2 + 2 d

                  1/2                           1/2
        -1 + d - 4    ((-1 + d) (d - 3/4 + y/4))
        -------------------------------------------]
                         -2 + 2 d

Note that Maple does not care for the case d=1 (which
would mean that your quadric is at most 'linear'), it
silently assumes the leading coefficient is non-zero.

PS: If you type something here it is better to use pure ASCII, then
one can just copy&paste it to a worksheet

May be it is my limited English: but what do you mean be 'File tab' and 'Windows Theme'? May be an example helps (though I always work with 'old appearance of Windows' if it is what you mean ... and start by clicking from the Explorer [or start through a symbol from the desktop]).

"(1 - 2 x y[x]) y'[x] == x^2 + (y[x])^2 - 2"; # put it in quotationsmarks
 de:=convert(%, FromMma);

                                /d      \    2       2
           de := (1 - 2 x y(x)) |-- y(x)| = x  + y(x)  - 2
                                \dx     /

dsolve(de);

                      4       2            1/2
         3 + (9 - 12 x  + 72 x  + 36 x _C1)
  y(x) = -------------------------------------,
                          6 x

                               4       2            1/2
                 -3 + (9 - 12 x  + 72 x  + 36 x _C1)
        y(x) = - --------------------------------------
                                  6 x


And for the 2nd part of your question denote S := [ dsolve(de) ], then 

S[1]; isolate(%,_C1);
rhs(%) - lhs(%);
collect(%, x);

                    3
                   x                 2
                  ---- + x (-2 + y(x) ) - y(x) - _C1
                   3

sneaker, you should guide all your students to this homework forum :-)

hint: express f without using recursion

Digits:=14;
f:= x -> 20 * x * exp(x) - 1 ;
 'Int(f(x), x=0.05270598355 .. k) = 
  1/2*Int(f(x), x=0.05270598355 .. 4.499755289)';
value(%);
fsolve(%,k, 0 .. 5);
  20.023931123316 + 20. k exp(k) - 20. exp(k) - 1. k =
        3157.3705634612
                           3.9685806367780

First 60 61 62 63 64 65 66 Last Page 62 of 92