Carl Love

Carl Love

28070 Reputation

25 Badges

13 years, 29 days
Himself
Wayland, Massachusetts, United States
My name was formerly Carl Devore.

MaplePrimes Activity


These are replies submitted by Carl Love

@goli Sorry, there's no rotation option for textplot in Maple 15. This is a situation where you'll need a newer version.

I can concoct a solution that uses colored symbols (that are not arrowheads) to indicate the direction of travel.

@goli Did you re-execute the entire worksheet by clicking on the !!! on the toolbar?

@hym100 So, my solution is

C:= solve(int(c*x^2, x= 0..3)=1);
int(piecewise(x < 0, 0, x <= 3, C*x^2, 0), x= -1..1);

 

@goli Change the procedure Ang to

Ang:= tau->
    eval(
        eval(
            arctan(diff(y(t),t)*(Zmax-Zmin), diff(z(t),t)*(Ymax-Ymin)),
            sys11
        ),
        dsol(tau)
    )
:

I also recommend that you remove the stepsize option from DEplot and change the t-range to -3..3.

@goli I'll rewrite it to use plain eval. It should only take a few minutes.

@goli Check your Maple help (?eval) to see if there's an option eval[recurse]. If there is, it'll be mentioned right at the top of the help page.

@Ramakrishnan Yes, it's a great example: It shows using dsolve with parameters, sophisticated use of eval, and two-argument arctan.

But the OP, goli, was mistaken in calling these PDEs. They're actually ODEs. The distinction is the number of independent variables with respect to which derivatives are taken. In this case, there's only one, t. One such variable makes them ODEs; more than one, PDEs.

@goli Beginning exactly where your worksheet leaves off, do this:

PrePlot:= %:
(Zmin,Zmax):= (-1,1): (Ymin,Ymax):= (0,1):
dsol:= dsolve(
    {sys11[], z(0)=z0, y(0)=y0}, 
    numeric, parameters= [z0,y0]
):
Ang:= tau->
    eval[recurse](
        arctan(diff(y(t),t)*(Zmax-Zmin), diff(z(t),t)*(Ymax-Ymin)),
        [dsol(tau)[], sys11[]]
    )
:
Arrows:= proc(ics)
local k;
    dsol(parameters= eval([z(0),y(0)], ics));
    plots:-textplot(
        [seq](
            eval([z(t), y(t), ">", rotation= Ang(k)], dsol(k)),
            k= [-1, 0, 1]
        ),
        font= [Symbol, Bold, 30], _rest
    )
end proc
:
plots:-display(
    [PrePlot, Arrows(ics1, color= red), Arrows(ics2, color= blue)]
);

@MapleUser09 My procedure is not intended to compute Fibonacci numbers! I posted it because it uses a computational technique similar to what you'd use for Fibonacci numbers. You need to write that. The defining property of Fibonacci numbers is

Fib(1)=1, Fib(2)=1, F(n)=Fib(n-1)+Fib(n-2)

@MapleUser09 My code above is not for Fibonacci numbers. Once you've written your own Fib with option remember, you could say Fib(100)Fib(1000)Fib(10000), and all will be computed very quickly. I'm trying to help you without completely giving away the answers. These are very easy homework problems.

Couldn't you at least try to rewrite your homework problems in your own words?

What have you done? What's your Fib procedure?

@Ramakrishnan Add the option font= [Symbol, Bold, nwhere n is some positive integer proportional to the desired size. But note that this number is not directly related to the thickness.

plots:-display(
    PrePlot,
    plots:-textplot(
        [seq([k, f(k), ">", rotation= Angle(k)], k= ceil(Xmin)..floor(Xmax))],
        color= red, font= [Symbol, Bold, 40]
    ),
    thickness= 5
);

Couldn't you at least try to rewrite your homework problems in your own words? and come up with a better title? Your style is lame.

I find that rewriting a problem often makes me realize the solution.

@Ramakrishnan Thank you so much for catching that. I've now corrected the Answer. As you've probably guessed, I originally used A in both places, but at the last moment changed the name in the definition to Angle for clarity.

@dharr The computational effort required for gridrefine=n is an exponential function of n in both time and memory. The highest that I've ever used was gridrefine=5.

First 212 213 214 215 216 217 218 Last Page 214 of 709