Axel Vogt

5821 Reputation

20 Badges

20 years, 228 days
Munich, Bavaria, Germany

MaplePrimes Activity


These are replies submitted by Axel Vogt

I used a (cleaned up and) compiled version for you J, it works in M15 with standard grid (though it looks different opening with M18), I gave up for M18. But did not try the classical interface.

PS: nice to read you again beyond usenet - where is your current homepage?

Trying to have a look at the function (without deeper look) I get an error:

f(x);
Error, (in test) cannot determine if this expression is true or false: 0 < 26.0+100*x

It is only to show nice printings. But it is a mess for work.

I prefer to use a1 or a_1 (and similar) instead of a variable with subscript.

You should use multiplication signs, always. Especially if you use the "Standard Interface".

Hm ... why that 1) have all rank r  [for given r] and 2) why that are all?

3 points determine a parabola. Thus I would use "solve", perhaps re-writing as rationals.

please type in as text for copy+paste, no formatting or external picture (which I will not see)

Depends on what you want to see ...
(y1-3)^2+(x1-1)^2 ; % = 25*(y1-3)^2+200+100*(x1-1)^2 + a; isolate(%, a);
                                2                    2
                a = -24 (y1 - 3)  - 200 - 99 (x1 - 1)

however: the best way would be to give the formal reason based on the mathematical model and not only based on test data (i.e. the formula to be examined). And I am not sure whether your splitting into 2 cases makes sense after plotting them - is there a common expression which you just are trying to split?

Yes, provide the constants with more than 6 decimals.

And instead of seeking for fancy solvers I would study the test case for that. It is far more easy to look at a problem which is already located.

You may try to provide your data with more than 6 decimal places, use Digits:= n good enough and avoid evalf as far as possible.

At least I sketched a way to look into your problem, hope it helps

I wanted to know the (or one ?) reason and looked at the task over [0..1]^4. The inner integral has a symbolic solution. Now feed the above parameters and as example take x=9/10, y=1/10. A situation like this is likely to occure for the overall integral

This is a function of theta (which should be integrated). Plotting shows high socillating behaviour for theta ---> 1 and in a purely numerical setting Maple is not able to find the limit (one can do it using symbolics).

I guess that this prevents the integrators from finishing their task.

@Carl Love I do not have it here, will do this evening. But roughly the 1st inner is over 0 ... upper bound which constant w.r.t. the integration variable, so scaling by upperbound shrinks it to 0 .. 1. The 2nd is similar - independent w.r.t. theta but now a linear transformation, the rest is the same way. I did the inner one and the 2nd level with 2 call to 'Change' and the remaining by a 'Change' for 2 variables.

Edited:

A := sin(k*Pi*(x-h*cos(theta))/a)*sin(l*Pi*(y-h*sin(theta))/b)*
       sin(k0*h)*sin(k*Pi*x/a)*sin(l*Pi*y/b):
A := subs(l=m, A);

Int('A', h=0 .. (x-a)/cos(theta));
Change(%, h= H * (x-a)/cos(theta), H): subs(H=h, %):
Eins:=combine(%, Int);

transform2 := theta =
  (1/2*Pi-arctan((b-y)/(a-x)))*xi + Pi+arctan((b-y)/(a-x));

Int('Eins', theta = Pi+arctan((b-y)/(a-x)) .. 3*Pi*(1/2));
Change(%, {h=H, transform2}, [H, xi]):
subs(H=h, xi=theta, %): combine(%, Int):
Zwei:=%;

Int('Zwei', x=0 ..a);
Change(%, {h=H, theta=phi, x = xi*a}, [H, phi, xi]):
subs(H=h, phi=theta, xi=x, %): combine(%, Int):
Drei:=%;

Int('Drei', y=0 .. b);
Change(%, {h=H, theta=phi, x = xi, y=eta*b}, [H, phi, xi, eta]):
subs(H=h, phi=theta, xi=x, eta=y, %): combine(%, Int):
J:=%;

Now W = J is written as integral over [0 .. 1]^4.


The problem then is in (x,y) ~~ (1,0). But even for x=0..0.9, y=0.1..1
the integrators seem to need endless time (already for  epsilon = 1e-2)

 

@Carl Love It avoids symbolics, I think

Edited for PS: I changed k[0] to k0 (the integrator did not like it) and switched to a 4-dim integral over [0 .. 1]^4, but it does not finish. Have no idea how to modify the task.

1) You want to use evalf(  Int(, epsilon = ...)  ).
   Note UpperCase Int, not lower case (with option 'numeric').
2) So k,l,k0 are positive integers always, and a=b positive reals?  
First 44 45 46 47 48 49 50 Last Page 46 of 207