Rouben Rostamian

MaplePrimes Activity


These are answers submitted by Rouben Rostamian

The equation of motion given in Peter Stone's note is not correct.  The correct equation is

(1 + f'(x)^2)*a + f'(x)*f''(x)*v^2 + g*f'(x) = 0,

where a = diff(x(t),t,t),  v = diff(x(t),t), assuming zero friction. I haven't worked out the case with nonzero friction but that should make no difference to you since you are setting the friction to zero anyway.

This is not ideal, but may be of some use to your students.

Define

    f := (r,t) -> r*exp(t/180*Pi*I):
    F := proc(z) polar(z); evalf(op(1,%)), evalf(op(2,%)*180/Pi); end proc:

Then the equivalent of your 4 < 45 + 5 < 30 = 8.9240 < 36.332 would be

    F(f(4,45) + f(5,30));
                            8.923958373, 36.66193394

And in the same vein:

    F(f(4,45) + f(5,30) - f(3,60));

                            6.282837822, 25.75811853

    F(f(4,45) * f(5,30));
                            20., 74.99999999

de := diff(y(x),x,x) + y(x) = sin(x);

eval(de, y(x)=sin(x));

I see that you have posted an answer to your own question.  In the meantime I came up with my own solution which, in retrospect, is very similar to yours, but perhaps a little more organized.  Here it is  mw.mw for whatever it's worth.

with(LinearAlgebra):
A := Matrix(3,3, symbol=a);
B := Matrix(3,3, symbol=b);
M1 := DiagonalMatrix([A,0,0]);
M2 := DiagonalMatrix([0,0,B]);
M := M1 + M2;
 

You have posted an image of your expression.  It would have been helpful to post a real expression which I could copy and paste on my Maple worksheet.  Not having access to that expressions, I will attempt to sketch the idea of a solution.

  1. Generate a sequence of coefficients, such as u*u_xx, etc., which you are interested in:
        C := seq(seq(seq(u^k*diff(u(x,y), [x$i], [y$j]), i=0..2-j), j=0..2), k=0..2);
    Adjust as needed.
  2. Let's say your expression is called expr.  Do:
        coeffs(expr, [C], 'terms');
    This will return the the sequence of coefficients you are looking for.  The variable terms will contain the terms from which the coefficients were extracted.

 

For a similar question, see here.

Short answer:

f := x -> 9*surd(x, 3) + 9/2*x*surd(x,3);

pdsolve is for solving partial differential equations. Yours are ordinary differential equations, so use dsolve instead, as in:

de := diff(f1(t),t) = f2(t),  diff(f2(t),t) = -f2(t);

ic := f1(1)=0, f2(0)=1;

dsolve({de, ic});

plots:-polarplot(tan(t)/cos(t), t=-Pi/3..Pi/3);

with(plots):

x  := [0., .20, .40, .60, .80, 1.0]:
y1 := [0., .20, .40, .60, .80, 1.0]:
y2 := [0., .64, .96, .96, .64, 0.]:

display([
  pointplot(x,y1, connect=true),
  pointplot(x,y2, connect=true)
]);

The title of your post says: "solve this integral equation".  An equation is expected to have an equal sign, as in =, but there is no equal sign in the rest of your post.

I assume that your objective is to evaluate that integral.  If so, the answer is +infinity becasue the integrand behaves like 1/(2*x) as x goes to infinity:

z := 1/((1+x)*(1 + sqrt(x/a)*arccot(1/sqrt(a/x))));

asympt(z, x, 3) assuming a > 0;

Thomas Dean has already pointed out, and here I want to stress, that assigning values to your mathematical variables is not a good worksheet management policy and should be avoided in general.  In your problem, q is a mathematical variable, so seting q := whatever is not a good idea. On the other hand, S is not a part of your mathematics, therefore setting S := { t = 2cm, ... }, as you have done, is just fine.

Here is how to solve your problem without making assignments to your mathematical variables.


 

and so on...

Here is a complete worksheet: Download mw.mw

 

@MagnusIC3 Your assumptions on what is small and what is not seem to be quite ad hoc or arbitrary, and leave me feeling a bit unfomfortable.  Perhaps a more systematic approach can help.

Generally "smallness" makes sense in the context of a problem which is expressed in terms of a parameter, let's say h, and where we are interested in the behavior of the solutions as h approaches zero.  In fluid mechanics, for instance, h can be the Reynolds number, and the limiting case of h going to zero would lead from the nonlinear Navier-Stokes equations to the linear Stokes equations of motion.

The general method of linearizing a nonliner equation involving such a paramater h is to express the solution as a power series in h, substitute in the differential equation, and keep the lowest order terms.  So in your case, let's say

u(x,t) = 0*u[0](x,t) + h*u[1](x,t) + h^2*u[2](x,t) + ...
b(x,t) = 0*b[0](x,t) + h*b[1](x,t) + h^2*b[2](x,t) + ...

where I have written u and b for your uu0 and beta to simplify the notation.  Note that I have set the coefficients of u[0] and b[0] in the expansion above to zero because you said both u(x,t) and b(x,t) are small.

We substitute these in your PDEs, collect the like powers of h, and pick the coefficients of the lowest powers of h:

expansion :=
  u(x,t) = 0*u[0](x,t) + h*u[1](x,t) + h^2*u[2](x,t),
  b(x,t) = 0*b[0](x,t) + h*b[1](x,t) + h^2*b[2](x,t);

eval(rhs(KFBC)-lhs(KFBC), [expansion]):
expand(%):
collect(%, h):
coeff(%, h, 1) = 0;

eval(rhs(Eulerx[1])-lhs(Eulerx[1]), [expansion]):
expand(%):
collect(%, h):
coeff(%, h, 1) = 0;

This is a linear system of PDEs for the unknows b[1](x,t) and u[1](x,t). 

 

Let (O) be the point where the merchant ship (M) disappears.  Set up a Cartesian coordinates system with the origin at (O) and the x axis pointing toward the pirate ship (P).  Let L be the distance between (P) and (M) at the moment of (M)'s disappearance.  We measure the time t beginning from that moment.

In this analysis we assume that the (M) and (P) can move only at constant speeds v and V, respectively.  We assume V > v.

After its disappearance, (M) escapes along a straight line away from the origin (O) in an undetermined direction with a polar angle a.  Therefore, the (r_m,a_m) polar coordinates of its position at any time t are given by
   r_m(t) = v*t,
   a_m(t) = a.

The pirate ship's pursuit strategy

Beginning at time t=0, (P) movies straight toward (O) up to the time t = T when its distance from (O) becomes equal to (M)'s distance from (O).  During this phase, the polar coordinates of (P)'s position are given by
    r_p(t) = L - V*t,
    a_p(t) = 0.
The time T is determined from the requirement that r_m(T) = r_p(T), that is, v*T = L - V*T, whence T = L/(V+v).

From the time t = T onward, the pirate ship changes course and follows a spiral path given by
    r_p(t) = v*t,
    a_p(t) = b(t),
where b(t) is to be determined.  Note that r_p(t) = r_m(t) for all t >= T, that is, (P) and (M) keep equal distances from (O), albeit in different directions in general.

We determine b(t) from the requirement that (P) moves at a constant speed V.  This implies that
   V^2 = v^2 + v^2*t^2*b'(t)^2,
where b'(t) is the derivative of b(t).  It follows that
   b'(t) = sqrt((V/v)^2 - 1) / t.
We solve this admittedly trivial differential equation with the initial condition b(T) = 0 and arrive at
   b(t) = sqrt((V/v)^2 - 1) * ln((V+v)/L*t),     t >= T.

The pirate ship will capture the merchant ship when b(t)=a (because r_m(t) = r_p(t) at all times as noted above).  The time of the capture is:
   t_capture = L/(V+v) * exp(a/sqrt((V/v)^2 - 1)).

The following animation corresponds to the choice of the parameters L = 1, V = 3, v = 1, a = 7*Pi/4.

Ideally such a demo would be presented as a Maplet, allowing the user to adjust the parameters at will.  I haven't bothered learning about Maplets; someone knowledgeable about Maplets can give it a try.

z := (u(h,e)^(1/a))^a;

simplify(z) assuming a>0,  u(h,e)>0;

First 51 52 53 54 55 56 57 Page 53 of 58