Ronan

827 Reputation

14 Badges

11 years, 201 days
East Grinstead, United Kingdom

MaplePrimes Activity


These are replies submitted by Ronan

@acer Thank you. I have it working now. What is "src" supposed to stand for

`save IrrConvert,  "C:/Users/Ronan/Documents/maple/Alibrary/Procedures/IrrConvert.mpl"`

@Mariusz Iwaniuk I guess you can use MMA. Could you check the equation there, please? So is it a math fail or a maple fail? But looking at the constraints the answer is correct. I have never use the NPL command.  In the Mathematica code, there is  && which I don't know what that means. Typing this out I realized something. I added one more constraint  I1+I2<=I3. That gives the answer. Can't claim I really understand why. A bit like saying if you are to the left on one wall and the right of the other and touching both you are between them. As opposed to if you are left of a wall and touching it you are at the wall.

I2 := 2; Optimization:-NLPSolve(I2*(I3-I1)/((I3-I2)*(I2-I1)), {I1+I2<=I3, 0 <= I1, I1 <= I2, I2 <= I3, I1+I2 >=I3})
 
[4.0000000000000000000, [I1 = 1.0, I3 = 3.0000000000000000000]]

 

 @Rouben Rostamian  I found the reference in the for the proof of  1:2:3 inertia ratios

http://arkadiusz-jadczyk.eu/blog/2017/02/1-2-3-butterfly-effect/

 

Yes, it is quite hard to find things in it.

@Rouben Rostamian   Great solution and demonstration. From what I remember just assign the values of inertia. The simplest is 1:2:3 and that is the best inertia ratio set, for the effect. The body is just a graphic to demonstrate the effect. You would have to troll through the blog I referenced for details. There are other subtle effects based on the ratio of angular momentum and kinetic energy. If < 1 tumbles in one direction. If =1 tumbles only once. If > 1 tumbles in the other direction.

Is there a way to set the time increment in your solution because as the rotational speed is increased the body it appears to turn in the opposite direction? I was trying to see if the numerical solution would reflect the property of change in tumbling direction.

 I followed this blog http://arkadiusz-jadczyk.eu/blog/2017/01/04/  on the topic last year from January to about April. Its is based on MMA and the physicist developes an explicit set of solutions.  I got it to work in Maple, with a good bit of help from Ark too, but it was a lot of work.Can dig out some of the simulations if needed. 

Edit:- I have a Maple numerical solution aswell I found on line while looking for data last year. I can post that document later. 

@tomleslie This is a very detailed answer.  Good to know about [ ]. Solve can be a real pain at times with that.

 I don't have a programming background and am self-taught (with a lot of help from here) on Maple. That is why I use the 2D input. I see one's eye would get tuned to your style. It definitely makes the code readable. 

@Carl Love Ok. Good advice, that could cause some real problems. I guessed what I was trying wouldn't be recommended. What would you do to store a series of values etc, generated in a loop? I am also a using the equations Pedal||i later.

@tomleslie  Thank you that works very well.
At several places, you have these brackets [ ]. What do they do?  How do you achieve the formatting of your code?

.

@Ramakrishnan   Sorry. I meant to remove that line. There is a procedure at the start called Trunc. It is normally stored in my package called RonanRoutines. I copied and pasted it into the doc so it should work for you. Am at work so will check tonight.

@Christian Wolinski  Sorry. I meant to remove that line. There is a procedure at the start called Trunc. It is normally stored in my package called RonanRoutines. I copied and pasted it into the doc so it should work for you.

@Christian Wolinski Thank you. Very workable. I would love to give you best answer, thumbs up. They are not available.

@Joe Riel That is nice proc and a big step towards the end goal. At this point, I am going to start a new question on reducing the equations as this one was primarily about plotting.

@Joe Riel Thank you. I have the same problem. I can't figure out how to get Maple to reduce (x^2 + y^2 -1)^2 to  x^2 + y^2 -1. I am trying to find a way to do this automatically. Do you have any ideas on how to?  It could be for example  (x^2 + y^2 -1)^6.  I just picked the circle equation as a representative example.

Another good example is; because it has no constant term.

(-27*x^2*y^2-27*y^4+4*x^3)^2

 

Christian Wolinski Very nice and powerful. I was just going to post a similar question. I have a couple of questions and a problem.

The code doesn't seem to need Y or am I missing something?

k doesn't match my variable x but it works with k?

I found a situation where it returns a squared version of the desired answer. Is there a way around this? 
 

restart

rtr := sqrt(54*x+6*sqrt(81*x^2-48*A+48*x))*(9*x+sqrt(81*x^2-48*A+48*x)-18*A)/(243*x+27*sqrt(81*x^2-48*A+48*x)+72)

(54*x+6*(81*x^2-48*A+48*x)^(1/2))^(1/2)*(9*x+(81*x^2-48*A+48*x)^(1/2)-18*A)/(243*x+27*(81*x^2-48*A+48*x)^(1/2)+72)

(1)

eq := y = rtr

y = (54*x+6*(81*x^2-48*A+48*x)^(1/2))^(1/2)*(9*x+(81*x^2-48*A+48*x)^(1/2)-18*A)/(243*x+27*(81*x^2-48*A+48*x)^(1/2)+72)

(2)

NULL

collect((`@`(evala, Norm))((lhs-rhs)(eq)), Y, proc (E) convert(E, parfrac, k, {I, sqrt(5)}); map(radnormal, %) end proc)

-A*x*y^2+x^2*y^2+y^4+(4/27)*A^3-(4/9)*A^2*x+(4/9)*A*x^2-(4/27)*x^3

(3)

"(=)"

-A*x*y^2+x^2*y^2+y^4+(4/27)*A^3-(4/9)*A^2*x+(4/9)*A*x^2-(4/27)*x^3

(4)

NULL

eq1 := y = simplify(rtr)

y = (54*x+6*(81*x^2-48*A+48*x)^(1/2))^(1/2)*(9*x+(81*x^2-48*A+48*x)^(1/2)-18*A)/(243*x+27*(81*x^2-48*A+48*x)^(1/2)+72)

(5)

Works without Y

collect((`@`(evala, Norm))((lhs-rhs)(eq1)), proc (E) convert(E, parfrac, k, {I, sqrt(5)}); map(radnormal, %) end proc)

-A*x*y^2+x^2*y^2+y^4+(4/27)*A^3-(4/9)*A^2*x+(4/9)*A*x^2-(4/27)*x^3

(6)

NULL

A := 0

0

(7)

eq2 := y = rtr

y = (54*x+6*(81*x^2+48*x)^(1/2))^(1/2)*(9*x+(81*x^2+48*x)^(1/2))/(243*x+27*(81*x^2+48*x)^(1/2)+72)

(8)

collect((`@`(evala, Norm))((lhs-rhs)(eq2)), Y, proc (E) convert(E, parfrac, k, {I, sqrt(5)}); map(radnormal, %) end proc)

x^2*y^2+y^4-(4/27)*x^3

(9)

This next one leaves the equation  squared    

eq3 := y = simplify(rtr)

y = (54*x+6*3^(1/2)*(27*x^2+16*x)^(1/2))^(1/2)*(3^(1/2)*(27*x^2+16*x)^(1/2)+9*x)/(27*3^(1/2)*(27*x^2+16*x)^(1/2)+243*x+72)

(10)

collect((`@`(evala, Norm))((lhs-rhs)(eq3)), Y, proc (E) convert(E, parfrac, k, {I, sqrt(5)}); map(radnormal, %) end proc)

(1/729)*(-27*x^2*y^2-27*y^4+4*x^3)^2

(11)

expand doesn't fix the problem.

eq4 := expand(eq3)

y = (54*x+6*3^(1/2)*(27*x^2+16*x)^(1/2))^(1/2)*3^(1/2)*(27*x^2+16*x)^(1/2)/(27*3^(1/2)*(27*x^2+16*x)^(1/2)+243*x+72)+9*(54*x+6*3^(1/2)*(27*x^2+16*x)^(1/2))^(1/2)*x/(27*3^(1/2)*(27*x^2+16*x)^(1/2)+243*x+72)

(12)

collect((`@`(evala, Norm))((lhs-rhs)(eq4)), Y, proc (E) convert(E, parfrac, k, {I, sqrt(5)}); map(radnormal, %) end proc)

(1/729)*(-27*x^2*y^2-27*y^4+4*x^3)^2

(13)

NULL


 

Download sometimes_not_full_reduction.mw

@acer That is great. So useful. Is there a way to extend the functionality to handle for example trig functions? I multiplied one side by sin(x) and the other by tan(x).

fact := proc (expr::equation) options operator, arrow; frontend(gcd, [numer(lhs(expr)), numer(rhs(expr))])/frontend(gcd, [denom(lhs(expr)), denom(rhs(expr))]) end proc;
 eq1 := F*R = (1/2)*M*R^2*(a/R); eq1/fact(eq1); 
eq2 := (F+G)*R*sin(x)/sqrt(W-1) = (1/2)*M*R^2*tan(x)*(a/(R*sqrt(W-1)));
 fact(eq2); eq2/fact(eq2)

(F+G)*sin(x) = (1/2)*M*tan(x)*a

 

First 9 10 11 12 13 14 15 Last Page 11 of 20