Archive

Posts Tagged ‘triangle’

Optimal triangles with vertices on fixed circles

October 5, 2015 Leave a comment

Let {x,y,z>0} and suppose {ABC} is a triangle such that there exists a point {O} which satisfies {OA=x}, {OB = y}, {OC = z}. What is the relative position of {O} with respect to the triangle {ABC} such that

a) The area is maximized;

b) The perimeter is maximized.

This was inspired by this answer on Math Overflow.

Read more…

Identifying edges and boundary points – 2D Mesh – Matlab

April 21, 2015 1 comment

A triangulation algorithm often gives as output a list of points, and a list of triangle. Each triangle is represented by the indexes of the points which form it. Sometimes we need extra information on the structure of the triangulation, like the list of edges, or the list of boundary points. I will present below two fast algorithms for doing this.

Finding the list of edges is not hard. The idea is to go through each triangle, and extract all edges. The algorithm proposed below creates the adjacency matrix in the following way: for each triangle {[i,j,k]} we set the elements {a_{ij},a_{jk},a_{ik}} (and their symmetric correspondents) to be equal to {1}.

In order to find the points on the boundary (in two dimensions), it is enough to look for the edges which are sides to only one triangle. We can do this using the adjacency matrix. Note that if {A} is the adjacency matrix, then {A^2=(b_{ik})} stores the number of paths of length {2} (two sides) between two points of the triangulation. Note that any edge which is not on the boundary will contain the starting and ending point of two paths of length {2}. If {[i,j,k]} is a triangle such that points {i,j} are on the boundary, then {b_{i,j}=1} (there is one path of length {2} going through {i,k,j}. We also have {a_{i,j} = 1}. Conversely, if {a_{i,j} = 1} and {b_{i,j} = 1} then {i,j} are connected, and there is a unique path of length {2} going from {i} to {j}. Thus, {i,j} is an edge on the boundary. Therefore, we just need to identify the indexes {i} such that there exists {j} with {a_{i,j} b_{i,j} = 1}.

Below are two short Matlab codes doing these two algorithms. I guess they are close to being optimal, since only sparse and vectorized operations are used.


%p is the list of points
%T is the list of triangles, ap is the number of points
%this computes the adjacency matrix
A = min(sparse(T(:,1),T(:,2),1,ap,ap)+sparse(T(:,2),T(:,3),1,ap,ap)+sparse(T(:,3),T(:,1),1,ap,ap),1);
A = min(A+A',1);
% this finds the boundary points, whose indexes are stored in Ibord
B = A^2.*A==1;
Ibord = find(sum(B,2)>0);

Nice characterization side-lengths of a triangle

November 29, 2013 Leave a comment

Find the greatest {k} such that {a,b,c>0} and {kabc > a^3+b^3+c^3} implies that {a,b,c} are the side-lengths of a triangle.

Read more…

Continuity in Geometry

November 22, 2013 Leave a comment

Here are a few interesting geometry problems which use continuity problems in their solutions.

Pb 1. Consider three parallel lines in the plane {d_1,d_2,d_3}. Prove that there exist points {A_i\in d_i} such that the triangle {A_1A_2A_3} is equilateral.

Pb 2. Consider a triangle {ABC}. Prove that {ABC} is equilateral if and only if for every point {M} in the plane we can construct a triangle with sides {MA,MB,MC}.

Read more…

The Existence of a Triangle with Prescribed Angle Bisector Lengths

August 9, 2010 1 comment

Prove that for any m,n,p>0 there exists a unique triangle (up to an isometry) such that m,n,p are the lengths of bisectors of this triangle
Solved by L. Panaitopol & P. Mironescu in 1994, AMM 101, 58-60
Read more…

Application of the isoperimetric inequality

July 7, 2010 Leave a comment

Find the shortest curve which splits an equilateral triangle with edge of length 1 into two regions having equal area.
Read more…

Find the angle 2

December 3, 2009 Leave a comment

In triangle ABC we have AB=AC and \angle BAC=20^\circ. We take D \in AB such that AD=CD and E \in AC such that BC=CE. Find \angle CDE.

%d bloggers like this: