##
History

### The Evolution of MOHID

The development of the *Mohid* model started back in 1985,
passing since this time through continuously updates and
improvements due to its use during different projects of scientific
research and engineering projects. Initially the *Mohid* water
modeling system was a bi-dimensional hydrodynamic model, called *
Mohid 2D* (Neves, 1985). This model was used to study estuaries
and coastal areas using a classical finite difference approach.

In
the following years, a bi-dimensional eulerian and lagrangian
transport model were included in this model. The first
three-dimensional was introduced by Santos (1995), which used a
vertical double Sigma coordinate. This version was called *Mohid
3D*.

The limitations of the double Sigma coordinate revealed the
necessity to develop a model which could use a generic vertical
coordinate, permitting the user to choose the type of vertical
coordinate, depending on the study area. Due to this necessity the
concept of finite volumes was introduced with the version *Mesh 3D*
by Martins (1999). In the *Mesh 3D* model were included a three
dimensional eulerian transport model, a three dimensional lagrangian
transport model (Leitão, 1996) and the zero-dimensional water
quality model (Miranda, 1999). Since the introduction of the finite
volumes approach, this discretization remains in the model *Mohid*.

With the growing model complexity, it was necessary to introduce a new
way in the organization of the information of the *Mohid* model. In
1998 the whole code was submitted to a complete rearrangement, using the
new feature of programming languages and also the capacities of the
computer to reprogram the whole *Mohid* model. The main goal of
this rearrangement was to turn the model more robust, reliable and
protect its structure against involuntary programming errors, so it
would be more easily “grow able”. To achieve this goal, objected
oriented programming in FORTRAN was introduced to the *Mohid *
model, although FORTRAN is not an object oriented language. This
migration began in 1998, implementing object oriented features like
those described in Decyk [8] with significant changes in code
organization. This migration resulted in an object oriented model for
surface water bodies which integrates scales and processes.

The philosophy of this new *Mohid *model, further on simple designated *Mohid*, permits to use the
model in any dimension (one-dimensional, two-dimensional or
three-dimensional). The whole model is programmed in ANSI FORTRAN 95,
using the objected oriented philosophy. The subdivision of the program
into modules, like the information flux between these modules was object
of a study by the *Mohid *authors.

The object oriented modular design of
this model was the base to build the present MOHID Water Modelling
System, which is a set of several numerical tools.
Actually MOHID Water Modelling System is composed by over 40 modules
which complete over 240
000
code lines.