Question: Geometric transformations

Hello

 

I've to do some geometric work ; the problem is that it seems to me there will be no other solution than trying a different approach of the problem, due to huge amount of time required by computation...

 

However, I would have liked to learn how my program can be fastened. I've heard of multi threaded programming model ; could it be applied here ?

To simplify, I have a initial point (its coordinates). My procedure computes the next point. How to get the 1 000 th point fastly for instance ? The 20th is fastly computed, but the 30th won't...

The problem is also that Maple needs to manipulate huge exact fractions.. but I need the exact value..

 

Thanks

 



restart; with(geometry)
 

 

 
Cons := proc (coord) local x, y, H, X, P1, P2, P3, L, LP, E1, E2, S; hyperbola(H, 12*x^2+7*x*y-12*y^2 = 625, [x, y]); point(X, 7, 1); point(P1, coord[1]); point(P2, coord[2]); line(L, [P1, X]); ParallelLine(LP, P2, L); E1 := Equation(LP, [x, y]); E2 := Equation(H, [x, y]); S := solve({E1, E2}, {x, y}); if rhs(S[1, 1]) <> coordinates(P2)[1] then assign(S[1]) else assign(S[2]) end if; point(P, x, y); [coordinates(P2), coordinates(P)] end proc:
NULL

NULL

Coord := [[13, 61/4], [-43/6, -4]];

[[13, 61/4], [-43/6, -4]]

(1)

Cons(Coord);

[[-43/6, -4], [-19/2, -229/24]]

(2)

Iter := proc (Coord, n) local i, c; c := Coord; for i to n do c := Cons(c) end do; c end proc:

NULL

st := time():

183.347

(3)

st := time():

.546

(4)

``

Please Wait...