12
1 MODELAÇÃO INTEGRADA DE SISTEMAS HÍDRICOS Frank BRAUNSCHWEIG Master, Researcher / Instituto Superior Técnico, Av. Rovisco Pais 1, 1096 Lisboa Codex, [email protected] Ramiro NEVES PhD, Prof. / Instituto Superior Técnico, Av. Rovisco Pais 1, 1096 Lisboa Codex, [email protected] Paulo LEITÃO PhD, Hidromod, Taguspark, Núcleo Central, 363, 2780-920 Oeiras, [email protected] Luís FERNANDES Master, Researcher / Instituto Superior Técnico, Av. Rovisco Pais 1, 1096 Lisboa Codex, [email protected] RESUMO Há muito tempo que a modelação matemática é utilizada para estudar sistemas hídricos. Existem vários modelos matemáticos para diferentes áreas de aplicação nomeadamente em estuários, rios, albufeiras, oceanos, bacias hidrográficas e aquíferos. No entanto, um dos maiores defeitos da maioria dos modelos actualmente existentes é a ausência de interligação entre eles. Nesta comunicação apresenta-se o sistema de modelação matemática MOHID, o qual ambiciona integrar modelos de todos os tipos acima mencionados. Este sistema foi inicialmente desenhado para simular processos de escoamento e transporte em ambientes marinhos (estuários e oceanos). Actualmente, o MOHID pode ser aplicado em qualquer massa de água superficial estando em curso estudos de desenvolvimento para a sua aplicação em bacias hidrográficas e aquíferos. Serão focados três temas principais: (i) uma breve descrição da tecnologia utilizada no design do sistema MOHID, (ii) um resumo das mais variadas aplicações já realizadas com o sistema MOHID e (iii) a apresentação como o desenvolvimento de novas áreas de aplicação que são facilmente integradas no sistema devido à tecnologia utilizada. No entanto, será dada ênfase à segunda parte, ou seja as variadas aplicações realizadas com o MOHID. A última reestruturação do sistema constitui na programação utilizando uma filosofia orientada por objectos recorrendo à linguagem FORTRAN 95. O desenvolvimento do modelo numérico foi acompanhado pelo desenvolvimento de uma interface gráfica. De modo a enfatizar a versatilidade do sistema, serão apresentadas algumas das aplicações, de diferentes escalas e de diferentes processos, realizadas com o sistema MOHID, focando as vantagens da programação orientada por objectos em dois casos: (i) na implementação de modelos encaixados para o modelo operacional do Estuário do Tejo e (ii) na modelação integrada de um sistema hídrico com os modelos do sistema MOHID do sistema da bacia hidrográfica do Rio Trancão / Estuário do Tejo. Palavras-chave: Modelação Integrada, Estuários, Bacias Hidrográficas, MOHID

MODELAÇÃO INTEGRADA DE SISTEMAS HÍDRICOS

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

1

MODELAÇÃO INTEGRADA DE SISTEMAS HÍDRICOS

Frank BRAUNSCHWEIG Master, Researcher / Instituto Superior Técnico, Av. Rovisco Pais 1, 1096 Lisboa Codex, [email protected]

Ramiro NEVES PhD, Prof. / Instituto Superior Técnico, Av. Rovisco Pais 1, 1096 Lisboa Codex, [email protected]

Paulo LEITÃO PhD, Hidromod, Taguspark, Núcleo Central, 363, 2780-920 Oeiras, [email protected]

Luís FERNANDES Master, Researcher / Instituto Superior Técnico, Av. Rovisco Pais 1, 1096 Lisboa Codex, [email protected]

RESUMO

Há muito tempo que a modelação matemática é utilizada para estudar sistemas hídricos. Existem vários modelos matemáticos para diferentes áreas de aplicação nomeadamente em estuários, rios, albufeiras, oceanos, bacias hidrográficas e aquíferos. No entanto, um dos maiores defeitos da maioria dos modelos actualmente existentes é a ausência de interligação entre eles.

Nesta comunicação apresenta-se o sistema de modelação matemática MOHID, o qual ambiciona integrar modelos de todos os tipos acima mencionados. Este sistema foi inicialmente desenhado para simular processos de escoamento e transporte em ambientes marinhos (estuários e oceanos). Actualmente, o MOHID pode ser aplicado em qualquer massa de água superficial estando em curso estudos de desenvolvimento para a sua aplicação em bacias hidrográficas e aquíferos.

Serão focados três temas principais: (i) uma breve descrição da tecnologia utilizada no design do sistema MOHID, (ii) um resumo das mais variadas aplicações já realizadas com o sistema MOHID e (iii) a apresentação como o desenvolvimento de novas áreas de aplicação que são facilmente integradas no sistema devido à tecnologia utilizada. No entanto, será dada ênfase à segunda parte, ou seja as variadas aplicações realizadas com o MOHID.

A última reestruturação do sistema constitui na programação utilizando uma filosofia orientada por objectos recorrendo à linguagem FORTRAN 95. O desenvolvimento do modelo numérico foi acompanhado pelo desenvolvimento de uma interface gráfica.

De modo a enfatizar a versatilidade do sistema, serão apresentadas algumas das aplicações, de diferentes escalas e de diferentes processos, realizadas com o sistema MOHID, focando as vantagens da programação orientada por objectos em dois casos: (i) na implementação de modelos encaixados para o modelo operacional do Estuário do Tejo e (ii) na modelação integrada de um sistema hídrico com os modelos do sistema MOHID do sistema da bacia hidrográfica do Rio Trancão / Estuário do Tejo.

Palavras-chave: Modelação Integrada, Estuários, Bacias Hidrográficas, MOHID

2

1. INTRODUÇÃO

1.1. História do MOHID

O desenvolvimento do MOHID iniciou-se em 1985. Vários projectos de investigação e de engenharia deram origem na consolidação e na implementação de novas potencialidades no modelo.

No início o MOHID era um modelo bidimensional para o estudo de padrões de escoamento em estuários e zonas costeiras. A primeira versão desde modelo foi escrita em FORTRAN 77 (Neves, 1985) e utilizava o conceito das diferenças finitas. Foi também esta versão que deu o nome ao actual modelo, que deriva do termo “Modelo Hidrodinâmico”. Nos anos subsequentes, modelos de transportes eulerianos e lagrangeanos foram acoplados a este modelo. Em 1991 um modelo de Boussinesq, para simular ondas gravíticas, foi igualmente acoplado (Silva, 1991). A primeira versão tridimensional do modelo surge com a versão MOHID 3D. Esta versão utilizava uma coordenada vertical do tipo duplo Sigma (Santos, 1995). A limitação da coordenada vertical dupla Sigma revelou a necessidade de programar uma versão que pudesse lidar com qualquer tipo de coordenada vertical. A versão MESH 3D implementou no sistema MOHID o conceito dos volumes finitos (Martins, 1999), através dos quais se conseguiu implementar a potencialidade do uso de uma coordenada vertical genérica. Ao modelo MESH 3D foram acoplados vários modelos: (i) um modelo de transporte euleriano tridimensional, (ii) um modelo de transporte lagrangeano (Leitão, 1996) e (iii) um modelo ecológico (Miranda, 1999). Esta versão revelou que um modelo integrado tridimensional, baseado numa coordenada vertical genérica é uma ferramenta poderosa. Todavia verificou-se que seria difícil de manter e expandir esta versão, devido à limitação da linguagem FORTRAN 77 e de um número crescente de programadores com um carácter interdisciplinar. Por esta razão foi procurada uma metodologia que permitisse reutilizar sempre que possível código existente e tornasse o código fonte mais protegido contra a introdução involuntário de erros (Leitão, 2003). Decidiu-se reorganizar o modelo, utilizando o ANSI FORTRAN 95 e beneficiar de todas as potencialidades desta linguagem de programação, nomeadamente a possibilidade de programar o modelo utilizando uma filosofia orientada por objectos, embora a linguagem escolhida não seja uma linguagem orientada por objectos. A migração do código começou em 1998, com a implementação das primeiras potencialidades orientada por objectos, como descrito em Decyk (Decyk, et al., 1997) com mudanças significativas na organização do código fonte (Miranda, et al., 2000). Esta migração resultou num modelo orientado por objectos para águas superficiais que integra escalas e processos (Leitão, 2003).

1.2. Estado Actual

A arquitectura modular orientada por objectos desde modelo foi a base para a criação do actual MOHID Water Modeling System, que é um sistema de várias ferramentas numéricas. Actualmente existem três programas principais: (i) MOHID Water, (ii) MOHID Land e (iii) MOHID Soil. A primeira ferramenta é uma versão actualizada para simular processos em corpos de água superficiais, a segunda pode ser utilizada na modelação de bacias hidrográficas e a terceira destina-se para o estudo dos processos em meios porosos. Hoje em dia o Mohid Water Modeling System é um sistema robusto e fiável para a modelação integrada dos recursos hídricos.

A versatilidade da ferramenta MOHID Water pode facilmente ser demonstrada pelo leque de aplicações em que este modelo foi utilizado: aplicações no Atlântico Norte para o estudo geral de circulação (Neves, et al., 1998, Coelho, et al., 2002), derrames de petróleos (Leitão, et al., 2003), eutrofização e tempos de residência em estuários (Braunschweig, et al., 2003), processos em albufeiras (Braunschweig, 2001).

3

O executável MOHID Soil foi comparado com o modelo Hydrus2D tendo-se obtido resultados iguais para várias aplicações de escoamento e transporte de solutos no solo (Neves et al., 2002, Galvão et al. 2004). O MOHID Soil foi também aplicado a estudos de salinidade em solos em função da qualidade da água de rega (Chambel-Leitão, 2003).

O MOHID Land é a ferramenta mais recente do sistema MOHID e ainda não tem a maturidade do MOHID Water. Até agora foi aplicado em alguns bacias hidrográficas, nomeadamente a bacia do Trancão e a bacia da Ribeira da Pradiela.

2. ARQUITECTURA ORIENTADA POR OBJECTOS DO MOHID

2.1. Geral

Este capítulo descreve-se a forma como as funcionalidades “orientada por objectos” estão implementadas no Mohid Water Modeling System. Numa linguagem orientada por objectos (Object Oriented Language - OOL), como o JAVA ou o VB.NET, os objectos são criados a partir de classes. O FORTRAN 95 não é uma linguagem orientada por objectos, mas pode ser utilizado para a programação orientada por objectos (Object Oriented Programming - OOP), podendo módulos em FORTRAN serem utilizados como classes (Decyk, et al., 1997, Akin, 1999).

Como já mencionado, actualmente o Mohid Water Modeling System é escrito em FORTRAN 95. Toda a estrutura do modelo é dividida em módulos, cabendo a cada módulo a funcionalidade de uma classe.

A arquitectura do MOHID baseia-se em diferentes funcionalidades de um programa orientado por objectos, como o encapsulamento, o polimorfismo, function overloading e a herança. Cada objecto tem quatro métodos comuns: (i) construtor, (ii) seleccionador, (iii) modificador e (iv) destrutor.

A Tabela 1 mostra algumas classes seleccionadas de diferentes níveis.

Tabela 1 – Classes de MOHID de diferentes níveis.

Nome da Classe Descrição Informação Pública EnterData Lê e interroga ficheiros

ASCII que têm um formato similar ao formato XML.

Classe de baixo nível que é utilizada por todos os módulos que acedem a ficheiro de dados.

Toda a informação contida no ficheiro.

HorizontalGrid Guarda/trata a informação sobre uma malha horizontal estruturada.

Classe intermédia utilizada pelos principais executáveis do sistema MOHID.

Rotação da malha, área das células, coordenadas dos centros das células, coordenadas dos vértices das células, distância entre centros, etc.

Hydrodynamic Resolve as propriedades não turbulentas da coluna de água de corpos de água superficiais (p.e. oceanos, estuários, albufeiras).

Classe de alto nível, somente utilizada no MOHID Water.

Nível de água, campo de velocidades, fluxos de água entre células.

4

2.2. Uma classe comum no MOHID

Cada uma das mais de 50 classes que compõe o sistema MOHID, é desenhada de acordo com algumas regras comuns referentes a programação e na definição de conceitos, de modo a permitir uma fácil ligação entre módulos. Estas regras reflectem-se na organização da memória, sistematização de métodos públicos, possíveis estados dos objectos, relação servidor/cliente e gestão de erros (Leitão, 2003).

Cada classe é responsável por tratar uma informação específica. O uso de módulos a funcionar como classes permite que a informação possa ser encapsulada utilizando a instrução PRIVATE (Figura 1). O encapsulamento garante que toda a informação só está acessível ao próprio módulo, evitando assim possíveis erros introduzidos noutros módulos.

Figura 1 – Encapsulamento da informação através da instrução PRIVATE

No sistema MOHID, cada módulo define um tipo derivado que contém além da informação específica do módulo, duas variáveis (Figura 2): InstanceID e Next. A variável InstanceID é a identificação da instância criada e é atribuída sempre que uma instância é criada.

Figura 2 – Variáveis para a instanciação

Sempre que um novo objecto é criado, ele é adicionado à colecção de objectos que é guardada em forma de uma lista ligada. A variável Next serve para ligar os objectos na lista ligada.

Figura 3 – Variáveis globais de cada classe

Cada classe tem duas variáveis globais, definidas como apontadores a tipos derivados (Figura 3). As variáveis globais são o primeiro objecto na lista ligada (FirstObject - ponto de ancoragem da lista ligada) e o objecto sobre qual os métodos actuam quando a classe é chamada (Me).

Para aceder a um dado objecto, percorre-se a lista, começando no primeiro objecto até se encontrar o objecto com o InstanceID desejado. Cada módulo tem uma função própria de busca que é impreterivelmente chamada no início da cada método público. Após a localização na lista ligada do objecto desejado, a variável global Me aponta para a instância actual.

2.3. Objectos do MOHID

Os módulos do MOHID são estruturados hierarquicamente. Todos os executáveis do MOHID Water Modeling System são construídos em cima de uma ou mais bibliotecas de base. A estrutura hierárquica do sistema MOHID é representada na Figura 4.

5

Mohid Base 1Process, IO and Function modules

Executable

Library

Interprocess Communication

Triangulator RiverNetwork

Mohid Base 2Grid and Atmosphere modules 0D

Main

BasinDelineator

DigitalTerrainCreator

MOHIDWater

Mohid Base 3Soil modules

MOHIDSoil

MOHIDLand

Global Data, Water Quality, Sediment Quality, EnterData, HDF, Functions, Time, LUD, Triangulation, Time Series, ...

Horizontal Grid,Vertical Grid, Atmosphere, Advection Diffusion, ...

Soil, Soil Properties,...

Figura 4 – A estrutura hierárquica do sistema MOHID

Os três executáveis principais (MOHID Water, MOHID Soil e MOHID Land) podem ser encontrados no topo da pirâmide. Pequenos programas adicionais são facilmente criados no topo das bibliotecas de base e normalmente são desenhados para o pré ou pós processamento da informação dos executáveis principais.

A vantagem de uma arquitectura orientada por objectos, num sistema complexo como é o caso do MOHID, é facilmente demonstrada através da classe EnterData. Esta classe é uma classe de baixo nível (que pode ser encontrada na biblioteca MOHID Base 1) e tem como objectivo a análise e leitura de ficheiros de dados. Todos os módulos que lêem ficheiros de dados utilizam uma ou mais instâncias desta classe. Uma vez construída uma classe poderosa como a classe EnterData, as funcionalidades desta classe podem ser usadas por todas as classes que a “herdem”. A protecção dos dados (p. e. Numero de unidade) é garantida pelo encapsulamento. Existem métodos públicos existem para abrir, ler e fechar os ficheiros. Existem também seleccionadores para aceder à informação encapsulada. Sempre que uma funcionalidade é acrescentada a esta classe, ela fica disponível para todas as classes que usam a classe EnterData.

Outras classes pertencem exclusivamente a um executável e a raramente mais do que uma instância destas classes é criada. Por exemplo, a classe Hydrodynamic, que resolve um campo tridimensional de escoamento para uma dada geometria, só é compilada com o MOHID Water. Mais do que uma instância desta classe só é criada se o modelo correr com modelos encaixados.

No topo do executável MOHID Water existe a classe Model que é responsável para coordenar a evolução de um corpo de água:

1. a evolução temporal e fluxos entre os três compartimentos (atmosfera1, coluna de água e sedimentos);

2. a evolução temporal dentro de cada compartimento (p. e. a evolução na coluna de água e a troca de informação entre as principias classes: Hydrodynamic, Turbulence e Waterproperties);

1 As condições atmosféricas não são simuladas explicitamente pelo sistema MOHID, mas

podem ser importadas a partir de diferentes modelos atmosféricos (p.e. MM5, ARPS)

6

3. a troca de informação entre modelos e modelos encaixados; 4. a evolução temporal do modelo;

2.4. Interface Gráfica

2.4.1. Geral

À medida que ferramentas numéricas como o MOHID se tornam mais complexas, a necessidade de uma interface gráfica bem estruturada cresce. Assim o desenvolvimento do sistema MOHID é constantemente acompanhado pelo desenvolvimento de uma interface gráfica. Antigamente esta interface gráfica era desenvolvida em Visual FORTRAN a partir das bibliotecas base do MOHID. Entretanto apercebeu-se que o desenvolvimento de uma interface gráfica neste ambiente de programação é muito demorado, comparativamente com linguagens desenhadas para esse fim, como JAVA ou Visual Basic. Assim, em 2003 optou-se por reprogramar a interface gráfica, utilizando a plataforma .NET. Esta escolha revelou-se certa, uma vez que a interface gráfica do sistema MOHID evoluiu muito desde então.

Hoje em dia a interface gráfica do sistema MOHID é composta por dois programas principais, o MOHID GUI e o MOHID GIS:

1. o programa MOHID GUI visa estruturar todos os ficheiros de entrada e saída dos executáveis do sistema MOHID (Figura 5).

2. o programa MOHID GIS têm como objectivo representar dados georeferenciados e resultados do modelo (Figura 6).

Estas interfaces são programadas principalmente em VB.NET, embora algumas partes estejam escritas em C#.NET e C++.NET, sendo todas estas linguagens são linguagens orientadas por objectos.

A troca de informação entre a interface gráfica e as ferramentas numéricas são conseguidas através de dois tipos de ficheiros:

1. ficheiros ASCII que seguem a formatação implementada pela classe EnterData; 2. ficheiros que são escritos em formato HDF.

7

Figura 5 – Janela principal da MOHID GUI

Figura 6 – Janela principal do MOHID GIS

3. IMPLEMENTAÇÃO

Este capítulo descreve as vantagens de uma arquitectura orientada por objectos em sistemas como o MOHID sobre sistemas que utilizam programação sequencial. A programação sequencial é muito comum em ferramentas numéricas escritas em FORTRAN.

8

Para descrever estas vantagens, são dados dois exemplos de implementação do MOHID, em que a arquitectura por objectos demonstra as suas vantagens:

1. a implementação de modelos encaixados para a costa portuguesa do modelo MOHID Water; 2. o acoplamento de modelo de bacias hidrográficas com modelos de corpos de água.

3.1. Modelos encaixados

O modelo operacional do Estuário do Tejo (http://www.mohid.com/tejo-op) implementa três níveis de modelos encaixados do MOHID Water. O modelo mais grosseiro (nível 1) cobre quase toda a costa ocidental portuguesa e serve para fornecer condições de fronteira aos modelos do nível dois. Os modelos do segundo nível cobrem o Estuário do Tejo e são utilizados com dois objectivos: (i) estudar os processos de transporte e ecológicos do estuário do Tejo e (ii) fornecer as condições de fronteira aos modelos do nível três. Actualmente correm dois modelos no nível dois: um modelo bidimensional e um modelo tridimensional.

No nível três existem vários modelos para estudar os processos à escala local. Por exemplo existe um modelo que cobre a zona da influência do emissário submarino da Guia, outro que simula a influência das descargas da Ribeira da Laje sobre as praias de Oeiras, Torre e Carcavelos.

A Figura 7 mostra os modelos encaixados dos três níveis.

Figura 7 – Três níveis de modelos encaixados. A figura mostra grande parte da Costa

ocidental Portuguesa (à esquerda), o Estuário de Tejo (no meio), a zona do emissário da Guia (em cima à direita) e Praia de Carcavelos (em baixo à direita).

Actualmente existem duas opções para correr as simulações do modelo operacional do Estuário do Tejo:

1. Correr um único executável que simula todos os modelos, utilizando a instanciação da classe Model (e de todas as subclasses). Por exemplo, se no nível três existiram dois modelos no total serão criadas cinco instâncias (1+2+2) da classe Model.

2. Correr diferentes executáveis, um para cada modelo. A comunicação entre eles é assegurada através de uma biblioteca de processamento paralelo (MPI).

A primeira opção mostra claramente as vantagens da utilização da programação orientada por

objectos na implementação de sistemas complexos, como é o caso do MOHID. Como não existe nenhuma limitação (além da capacidade de cálculo), um número infinito de modelos encaixados

9

podem ser implementados, garantindo-se assim que erros associados às condições de fronteira se encontrem longe da área em estudo.

De facto, a limitação da capacidade de cálculo foi o factor determinante que levou o grupo de desenvolvimento do modelo MOHID a implementar a segunda opção. Com esta opção o cálculo fica distribuído por uma série de computadores ligados em rede, permitindo que os tempos de cálculo sejam visivelmente reduzidos, sendo limitados pelo submodelo mais exigente em termos computacionais e pela quantidade de informação trocadas pelos executáveis.

3.2. Modelos de Bacias Hidrográficas

MOHID Land é o executável principal mais recente do MOHID Water Modeling System encontrando-se ainda em desenvolvimento. Este capítulo descreve como a arquitectura orientada por objectos ajudou no desenvolvimento desta ferramenta.

Muitas classes existentes no sistema MOHID são incorporadas na compilação do MOHID Land: 1. classes relacionadas com a entrada e saída de dados (p.e. EnterData, HDF e TimeSeries); 2. classes relacionadas com a malha horizontal (p.e. HorizontalGrid, HorizontalMap e GridData); 3. classes relacionadas com as condições de fronteira (p.e. Discharges e Atmosphere); 4. classes que simulam processos “zero dimensional” (p.e. a dinâmica dos nutrientes na coluna

da água. A alguma destas classes foram adicionadas algumas funcionalidades. Por exemplo, em versões

antigas a classe GridData era somente utilizada para relacionar dados batimétricos com a malha horizontal. Esta classe foi modificada de forma a poder relacionar qualquer variável com a malha horizontal. O MOHID Land usa esta classe para obter informação sobre a topografia, uso de solo, tipo de solo, etc.

As novas classe que se encontram em desenvolvimento estão relacionadas com processos específicos de bacias hidrográficas. Alguns exemplos são:

1. a classe RunOff que calcula o escoamento superficial; 2. a classe Infiltration que resolve os processos de infiltração da água; 3. a classe DrainageNetwork que solve a hidráulica de uma rede de rios.

3.2.1. Integração das ferramentas de modelação

A integração das diferentes ferramentas de modelação, nomeadamente a integração do MOHID Water com o MOHID Land, pode ser utilizada no estudo integrado dos recursos hídricos. Uma vez que estas duas ferramentas assentam sobre a mesma base, a integração destas ferramentas é relativamente fácil.

Uma maneira de integrar as ferramentas consiste em correr primeiro o MOHID Land para todas as bacias que afluem a um dado corpo de água e criar uma série temporal na secção de saída da bacia hidrográfica. Depois, estas séries temporais podem ser utilizadas como condições de fronteira do modelo MOHID Water. Como as duas ferramentas utilizam a mesma classe TimeSerie para a leitura e escrita de séries temporais, este acoplamento é imediato.

Esta opção tem no entanto um defeito, já que os modelos das bacias hidrográficas nunca são influenciados pelos modelos dos corpos de água, existindo situações em que esta influência é importante:

1. Se a zona jusante de um rio é influenciada pela maré, a condição de fronteira a jusante tem ser obtidas a partir de um modelo do tipo MOHID Water. Estas condições ocorrem por exemplo na ligação do Rio Trancão com o Estuário do Tejo (Figura 8)

2. Uma rede de albufeiras, ligadas a indústrias agrícolas, é outro exemplo da ligação directa do MOHID Water e do MOHID Land.

10

Para contornar estes problemas, encontra-se actualmente em vias de estudo a ligação entre os modelos através de uma biblioteca de processamento paralelo.

4.

Figura 8 – O sistema integrado Estuário do Tejo / Bacia Hidrográfica do Trancão

5. CONCLUSÕES

A maneira como uma arquitectura orientada por objectos pode ser útil na programação de um sistema como o Mohid Water Modeling System é apresentada. Esta utilidade é também reflectida no número crescente de utilizadores e programados do sistema MOHID.

Desde que se começou a utilizar a programação orientada por objectos, erros relacionados com a gestão de memória (que eram frequentes em versões anteriores) desapareceram por completo. O uso do encapsulamento, a hereditariedade e outras funcionalidades da programação orientada por objectos tornou o sistema MOHID um sistema robusto facilmente entendido por engenheiros e cientistas que começam a trabalhar com o sistema, mesmo tendo em conta as mais de 200 mil linhas de código que compõe o sistema.

Uma das maiores desvantagens que este tipo de programação reside no tempo de cálculo que modelo necessita actualmente. Em comparação com a última versão em FORTRAN 77 o tempo de execução aumentou duas a três vezes (Miranda, et al., 2000).

Para ganhar consistência o MOHID Land tem de ter uma vasta gama de aplicações. Para fechar o ciclo de água, ao sistema MOHID precisa ser acrescentado um modelo para

aquíferos, estando o seu desenvolvimento em progresso.

11

BIBLIOGRAFIA

Akin, J. E. (1999) - Object Oriented Programming via FORTRAN 90, Engineering Computations, v. 16, n. 1, pp. 26-48

Braunschweig, F. (2001) – Generalização de um modelo de circulação costeira para albufeiras, Tese Mestrado, Instituto Superior Técnico, Universidade Técnica de Lisboa

Braunschweig, F., F. Martins, P. C. Leitão and R. J. J. Neves (2003) - A methodology to estimate renewal time scales in estuaries: the Tagus Estuary case, Ocean Dynamics, Vol. 53, Nº3, 137-145.

Chambel-Leitão, P., Gonçalves, M.C., Neves, R., Galvão, P., Mesquita, M.E., (2003) Modelação da dinâmica da água e dos sais no solo. Apresentado no Encontro Anual da Sociedade de Ciência do Solo de 2003. Submetido para publicação na Revista de Ciências Agrárias.

H.S. Coelho, R. J. J. Neves, M. White, P.C. Leitão and A. J. Santos (2002) - A model for ocean circulation on the Iberian coast. Journal of Marine Systems. Vol. 32 153– 179.

Decyk, V. K., C. D. Norton, B. K. Szymanski (1997) – Expressing Object-Oriented Concepts in Fortran90. ACM Fortran Forum, Vol. 16

Folk, M (2000) – Introduction to HDF5, NCSA/University of Illinois at Urbana-Champaign http://hdf.ncsa.uiuc.edu/HDF5/papers/HDF5_overview/index.htm

Galvão, P., Chambel-Leitão, P., Leitão, P.C., Neves, R., (2004) A diferent approach to the modified Picard method for water flow in variably saturated media. Submitted for publication in Proceedings of Computational Methods in Water Resources.

Leitão, J. C., P. C. Leitão, F. Braunschweig, R. Fernandes, R. J. J. Neves and P. Montero (2003) - Emergency activities support by an operational forecast system – The Prestige accident. 4th Seminar of the Marine Environment, Rio de Janeiro,

Leitão, P. C. (1996) – Modelo de Dispersão Lagrangeano Tridimensional. Ms. Sc. Thesis, Instituto Superior Técnico, Universidade Técnica de Lisboa

Leitão, P. C. (2003) – Integração de Escalas e Processos na Modelação do Ambiente Marinho, PhD. Thesis, Instituto Superior Técnico, Universidade Técnica de Lisboa

Martins, F. (1999) – Modelação Matemática Tridimensional de Escoamentos Costeiros e Estuarinos usando uma Abordagem de Coordenada Vertical Genérica. PhD. Thesis, Instituto Superior Técnico, Technical University of Lisbon

Miranda, R. (1999) – Nitrogen Biogeochemical Cycle Modeling in the North Atlantic Ocean. Tese de Mestrado, Universidade Técnica de Lisboa, Instituto Superior Técnico, Universidade Técnica de Lisboa

Miranda, R., F. Braunschweig, P. Leitão, R. Neves, F. Martins and A. Santos (2000) – Mohid 2000, A Coastal integrated object oriented model. Hydraulic Engineering Software VIII, WIT Press

Neves, R. J. J. (1985) - Étude Experimentale et Modélisation des Circulations Trasitoire et Résiduelle dans l’Estuaire du Sado. Ph. D. Thesis, Universidade de Liège

Neves, R., Chambel-Leitão, P., Fernando, R.M., Leitão, P.C., Cameira, M.R. (2002) Modelação da infiltração e redistribuição de água num Fluvissolo. Revista de Ciências Agrárias vol. 15, nº 3 e 4. pag. 240-255. Lisboa.

Neves, R., H. Coelho, P. Leitão, H. Martins, and A. Santos (1998) - A numerical investigation of the slope current along the western European margin. In: Burgano V., Karatzas G., Payatakas A., Brebbia C., Gray W. and Pinder G. (Ed.), Computational Methods in Water Resources XII, 2, 369-376, 1998.

12

Silva, A.J.R., 1991, Modelação Matemática Não Linear de Ondas de Superfície e de Correntes Litorais, Tese apresentada para obtenção do grau de Doutor em Engenharia Mecânica. Instituto Superior Técnico, Universidade Técnica de Lisboa

Santos, A. J. (1995) - Modelo Hidrodinâmico Tridimensional de Circulação Oceânica e Estuarina. Ph. D, Thesis, Instituto Superior Técnico, Universidade Técnica de Lisboa