  We present a construction of LDPC codes that have minimum pseudocodeword
weight equal to the minimum distance, and perform well with iterative decoding.
The construction involves enumerating a d-regular tree for a fixed number of
layers and employing a connection algorithm based on mutually orthogonal Latin
squares to close the tree. Methods are presented for degrees d=p^s and d =
p^s+1, for p a prime, -- one of which includes the well-known
finite-geometry-based LDPC codes.
