Rouben Rostamian

MaplePrimes Activity


These are replies submitted by Rouben Rostamian

@The function I asked for an explanation of your method. You wrote:

For the formula of the first answer a. I used the ratio that is 2/0.5=4, so for ever part x it goes down, the radius increases with x/4, and that gives the formula.

I had hoped for a more thorough explanation. To show what I mean, I have attached my explanation of the solution to part (a) in my previous answer.  That's the kind of explanation that you need to communicate your idea to others.  Can you do something like that for parts (b) and (c)?

draining-a-cone.pdf

@erik10 I have attached a modified version of the previous proc that accepts extra options to_upper and to_lower. These cause everything to change to uppercase or lowercase.  The default (when no options are specified) is to leave the cases unchanged.

The uppercase conversion may be turned on by specifying the option to_upper = true or simply to_upper. The to_lower option works in the same way. 

Download mw.mw

@tomleslie You are reiterating the obvious, and if you are happy with that answer, that's fine too.

But I am more interested in understanding why Maple treats a worksheet with Array(0..2) in it differently from those containing Array(1..3).

The answer to your question very much depends on how that curve was generated.  Is it the graph of a known function? Is it a solution of a differential eqation?  Is the graph of a market data? Does it represent a random walk?  Or perhaps something else?

Apparently the point of nm's original observation has been lost on the responders to this thread. So let me expand on his note.

Maple has no qualms about silently saving a worksheet containing the following huge amount of data:

restart;
Matrix(10,10, (i,j)->(a+b)^(i+j)):
expand~(%);

but it unnecessarily queries the user when asked to save the tiny worksheet

restart;
Array(0..2, [1,2,3]);

Curiously, the issue goes away when when we change the array bounds to 1..3:

restart;
Array(1..3, [1,2,3]);

What is the Iterative Projection Theorem? I haven't heard of it, and from the lack of responses here, it appears that no one else has heard of it either. Perhaps it's known by some other name?

Suggestion: Explain to us what you mean by the Iterative Projection Theorem.

In fact, by forcing yourself to explain what that theorem says, you may find the solution yourself without help from anyone. But, if you still need help with this homework problem, show what you have done so far, and point out where you need help.

@erik10 Maple's string handling is not kind to non-ASCII characters. Fortunately, Maple offers an interface to Python which handles non-ASCII with ease. The do_Danish() proc defined below selects only characters a-z and the three extra Danish characters from the given string.

restart;

Removes all characters other than a-z and å, æ, ø from the string str.

do_Danish := proc(str)
        uses Python;
        ImportModule("re");
        sprintf("re.split(\"[^a-zåæø]*\", %a)", str);
        Python:-EvalString(%);
        remove(has, %, "");
        convert~(%, symbol);
        Matrix(5,5, %);
end proc:

S0 := "This is a Dånish tæxtø";

"This is a Dånish tæxtø"

do_Danish(S0);

Matrix(5, 5, {(1, 1) = h, (1, 2) = i, (1, 3) = s, (1, 4) = i, (1, 5) = s, (2, 1) = a, (2, 2) = å, (2, 3) = n, (2, 4) = i, (2, 5) = s, (3, 1) = h, (3, 2) = t, (3, 3) = æ, (3, 4) = x, (3, 5) = t, (4, 1) = ø, (4, 2) = 0, (4, 3) = 0, (4, 4) = 0, (4, 5) = 0, (5, 1) = 0, (5, 2) = 0, (5, 3) = 0, (5, 4) = 0, (5, 5) = 0})

Download mw.mw

@Kitonum That's excellent. Thanks. I didn't know about phaseamp. That can be quite useful in other occasions as well.

@vv That's an interesting observation. I had not noticed that. But now that you have pointed out, I see that the polynomial is actually symmetric about t=1. After replacing t by t+1 it simplifies to a cubic in t^2:

9*t^6 - 87*t^4 + 51*t^2 - 5

@vv Yes, that's the correct solution. The answer may be slightly simplified by combining the sine and cosine terms. I don't know how to get Maple to do that. I calculated the simplified version by hand:

alpha__max__1 := Pi - Pi*sqrt(29 - 4*sqrt(43)*cos(arctan((9*sqrt(191))/1121)/3) - 4*sqrt(3)*sqrt(43)*sin(arctan((9*sqrt(191))/1121)/3))/3;

Pi-(1/3)*Pi*(29-4*43^(1/2)*cos((1/3)*arctan((9/1121)*191^(1/2)))-4*3^(1/2)*43^(1/2)*sin((1/3)*arctan((9/1121)*191^(1/2))))^(1/2)

alpha__max__2 := Pi - Pi*sqrt(29 - 8*sqrt(43)*cos(Pi/3 - arctan((9*sqrt(191))/1121)/3))/3;

Pi-(1/3)*Pi*(29-8*43^(1/2)*sin((1/6)*Pi+(1/3)*arctan((9/1121)*191^(1/2))))^(1/2)

simplify(alpha__max__1 - alpha__max__2);

0

 

There is an interesting symmetry-breaking in this problem. Since the values of the two volumes are symmetric about α = π, one would think that the maximum will occur at α = π, but that's not so as we see in the solution presented. In fact, α = π corresponds to a local minimum!

@JAMET I made that animation based on what you had proposed, but come to think of it, it's likely that a practical motorcycle engine will be configured to distribute power symmetrically over one revolution, as in this modified version.

The power distribution is still not quite symmetric, but it can be made symmetric by adding two more pistons, making it a 4-cylinder engine.

piston-crank-animation-alt.mw

 

@nm In my earlier reply I wrote: "The format of the font specification is defined in ?plot,options under the "font" entry. ".  Did you look?

A font specification is expected to be a list of the form [A,B,C] where A is the font family (e.g., Helvetica), B is the fine style (e.g., Bold), and C is the font size (e.g., 18).  B or C may be omitted, but not A. Saying axisfont=[12,12] or axisfont=12 makes no sense.

@Kevin Dragnet As Carl noted, the use of dchange in this context is an overkill, but for whatever it's worth, here it is:

restart;
sys := { diff(x(t),t) = y(t), diff(y(t),t) = -x(t) };
Tr := {x(t) = r(t)*cos(theta(t)), y(t)=r(t)*sin(theta(t))};
PDEtools:-dchange(Tr, sys, {r(t), theta(t)});
solve(%, {diff(r(t),t), diff(theta(t),t)});

The line that defines Tr in the code above may be obtained alternatively through the method that Carl proposed, as in:

Tr := [x(t), y(t)] =~ changecoords([x(t),y(t)], [x(t),y(t)], polar, [r(t), theta(t)]);

but in my view that's also an overkill.

Simultaneous access to multiple help pages will be a welcome enhancement. But I would rather have the multiple pages displayed as tabbed panels within a single help window (as it's done in web browsers and maple worksheets) rather than multiple help windows cluttering my screen.

@mmcdara That's a clever idea!

First 16 17 18 19 20 21 22 Last Page 18 of 91