added geographic model algorithms