I asked this question on MSE here.
Given a scalene triangle $A_1B_1C_1$ , construct a triangle $A_{n+1}B_{n+1}C_{n+1}$ from the triangle $A_nB_nC_n$ where $A_{n+1}$ is the orthocenter of $A_nB_nC_n$, $B_{n+1}$ is the incenter of $A_nB_nC_n$ and $C_{n+1}$ is the centroid of $A_nB_nC_n$, My question is If this process is repeated indefinitely would the sequences $\{A_n\}$, $\{B_n\}$, $\{C_n\} $ converge ?
There are only four possible scenarios:
- The points will converge to a point.
- The points will eventually stuck on a loop.
- The points will completely diverge.
- The points will eventually make an isosceles triangle (or equilateral triangle) which will end the sequence.
All of these scenarios would depend on the initial triangle. So given the initial triangle $A_1 B_1 C_1$ how to determine which of the four scenario would happen to the sequences $\{A_n\}$, $\{B_n\}$, $\{C_n\} $?
I tried to draw the first few triangles and see if the point will converge or not.
Graphing the first 25 triangles suggests that the sequence converge.
Here is the graphing the first 30 triangle, If anyone needs them.
If this is true that the three sequences will converge to a point this point will be unique to the triangle, I wonder what extra properties this point have.
Here is a python code that can calculate $A_n, B_n, C_n$
import math
print("Number of Triangles ")
n=int(input() )
m=max(n,50)
from decimal import Decimal
import decimal
decimal.getcontext().prec = m
Decimal(10)**(-m)
# enter your coordinates here----------------------------------------------------------------------------------------
A=[Decimal(0),Decimal(0)]
B=[Decimal(0),Decimal(0)]
C=[Decimal(0),Decimal(0)]
print("Enter the coordinates of A_1")
A[0]=Decimal(float (input() ))
A[1]=Decimal(float (input() ))
print("Enter the coordinates of B_1")
B[0]=Decimal(float (input() ))
B[1]=Decimal(float (input() ))
print("Enter the coordinates of C_1")
C[0]=Decimal(float (input() ))
C[1]=Decimal(float (input() ))
X=[Decimal(0),Decimal(0)]
Y=[Decimal(0),Decimal(0)]
Z=[Decimal(0),Decimal(0)]
#defining some useful functions----------------------------------------------------------------------------------------
def v(a,b):
result= [b[0]-a[0], b[1]-a[1]]
return result
def dis(a,b):
result =[Decimal(math.sqrt((a[0]-b[0])**2+(a[1]-b[1])**2))]
return result
def det1(a,b,c):
result=[Decimal(a[0]*(b[1]-c[1])-a[1]*(b[0]-c[0])+b[0]*c[1]-b[1]*c[0])]
return result
def det2(a,b,c):
result=[Decimal(a[1]*((a[0]*c[0]+b[1]**2)-(b[0]*a[0]+c[1]**2))-(b[0]*c[0]+a[1]**2)*(b[1]-c[1])+b[1]*(b[0]*a[0]+c[1]**2)-(a[0]*c[0]+b[1]**2)*c[1])]
return result
def det3(a,b,c):
result=[Decimal((b[1]*c[1]+a[0]**2)*(b[0]-c[0])-a[0]*((a[1]*c[1]+b[0]**2)-(b[1]*a[1]+c[0]**2))+(a[1]*c[1]+b[0]**2)*c[0]-b[0]*(b[1]*a[1]+c[0]**2))]
return result
for i in range (2,n+1):
AB= dis(A,B)[0]
BC= dis(B,C)[0]
CA= dis(C,A)[0]
#Here to calculate A_n----------------------------------------------------------------------------------------
X[0]=(det2(A,B,C)[0])/(det1(A,B,C)[0])
X[1]=(det3(A,B,C)[0])/(det1(A,B,C)[0])
#Here to calculate B_n----------------------------------------------------------------------------------------
Y[0]=(BC*A[0]+CA*B[0]+AB*C[0])/(AB+BC+CA)
Y[1]=(BC*A[1]+CA*B[1]+AB*C[1])/(AB+BC+CA)
#Here to calculate C_n----------------------------------------------------------------------------------------
Z[0]=(A[0]+B[0]+C[0])/(3)
Z[1]=(A[1]+B[1]+C[1])/(3)
A[0]=X[0]
A[1]=X[1]
B[0]=Y[0]
B[1]=Y[1]
C[0]=Z[0]
C[1]=Z[1]
print(f"A_{i}= {A}")
print(f"B_{i}= {B}")
print(f"C_{i}= {C}")
print("\n")
It seems that the limit point (assuming it exists) in not in the Encyclopedia of Triangle Centers,
$A_{200}$= (8.6517261735796624259738866329868556565084282680250211296497747096925130468748471270311512731368352997396376217183698044561298843731579912635996830539690878380408962952883253860600049288093494865497599 , 2.6448983193088667221426565924157297722624220231935390980264815214196851480235776604874831322040452866206749638086977011401669267140152803272215053706747629093984074903821689253277924827830127005097490)
the distance between $A_{200} $ and $\overline {B_1C_1}$ (in the triangle 6-9-13) is
0.53607927192029201038720734406762285666375854671162570169736131240500819198707277389944959286896591541232676930403964641142971002571581881565561923735731504211210609184202055267373207796429563740347276
which doesn't exist on this list.