geopro:modelos:roadmap:funcoes
Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Próxima revisão | Revisão anterior | ||
geopro:modelos:roadmap:funcoes [2007/02/23 01:21] – created gcamara | geopro:modelos:roadmap:funcoes [2007/02/23 11:03] (atual) – gcamara | ||
---|---|---|---|
Linha 1: | Linha 1: | ||
- | ==== TerraME - conceitos | + | ===== TerraME - Novas Funções ===== |
- | 1. Um dos pontos mais delicados do TerraME (mas necessário) é a revisão dos conceitos originais. Esta revisào deverá ser muito debatida, pois (como dito acima) muitos conceitos nasceram de reflexão longa do Tiago, e ainda não foram plenamente absorvidos pelo resto da equipe. | + | ==== TerraME |
+ | == Gilberto Câmara | ||
- | 2. No curso, usamos | + | 1. Estamos muito interessados em usar os conceitos de autômatos aninhados. Consideremos duas situações distintas: (a) Dois espaços celulares na mesma resolução em tempos diferentes; (b) Dois (ou mais) espaços celulares com resoluções diferentes. |
- | 3. Minha intuição é que podemos descartar de vez os conceitos de Automatos Híbridos.No caso de Automatos Globais e Locais, seria bom construir exemplos de seu uso, para podermos entender melhor todas as implicações destes conceitos. | + | 2. No caso (a), seria bom ter uma extensão da função ForEachCell que combine os dois espaços celulares na área onde haja intersecção. Minha sugestão é '' |
+ | //(Update 21/Fev: O Tiago já implementou esta função - que rápido!).// | ||
- | ==== TerraME - Suporte adicional para automatos aninhados ==== | + | 3. No caso (b), a interface entre dois dados de resoluções e extensões distintas precisa de funções de passagem de escala que façam " |
- | 1. Estamos muito interessados em usar os conceitos de autômatos aninhados. A idéia é ótima, já está disponível na versão atual do TerraME. Seria muito útil amplia-la permitir usar automatos aninhados em programação " | + | ==== TerraME - Autômatos Aninhados (2) ==== |
+ | == Tiago Carneiro (22/ | ||
- | 2. Consideremos duas situações distintas: | + | 1. TerraME não possui o conceito de células aninhadas, somente escalas são aninhadas |
- | 3. No caso (a), seria bom ter uma extensão da função ForEachCell que combine os dois espaços celulares na área onde haja intersecção. Minha sugestão é '' | + | 2. Suponha os espaços celulares " |
- | + | ||
- | 4. No caso (b), a interface entre dois dados de resoluções e extensões distintas precisa de funções de passagem de escala que façam " | + | |
- | Essa função permitiria o " | + | |
- | + | ||
- | | + | |
- | + | ||
- | 4.1. TerraME não possui o conceito de células aninhadas, somente escalas são aninhadas (Scale ou Environment), | + | |
- | + | ||
- | 4.2. Suponha os espaços celulares " | + | |
{{geopro: | {{geopro: | ||
**Figura 1. Aninhamento de células por meio da relação de vizinhança.**\\ | **Figura 1. Aninhamento de células por meio da relação de vizinhança.**\\ | ||
- | 4.3. Desta maneira, a função " | + | 3. Desta maneira, a funcionalidade |
<code lua> | <code lua> | ||
ForEachCell( cs1, | ForEachCell( cs1, | ||
- | function( cell ) | + | |
- | ForEachNeighbor( cell, | + | |
- | | + | 1, -- 1 refere-se ao índice da vizinhaça, que foi utilizada |
- | -- para implementar a estrutura espacial como discutido | + | |
- | function( cell, neigh, weight ) -- neigh é uma nested_cell | + | function( cell, neigh, weight ) -- neigh é uma nested_cell |
| | ||
- | | + | -- coloque aqui o seu codigo |
- | | + | |
); | ); | ||
end | end | ||
Linha 45: | Linha 39: | ||
</ | </ | ||
- | 4.4. O codigo | + | 4. O código |
<code lua> | <code lua> | ||
-- Creates a Moore neighborhood for each cell | -- Creates a Moore neighborhood for each cell | ||
function CreateMooreNeighborhood( cs ) | function CreateMooreNeighborhood( cs ) | ||
- | for i, cell in ipairs( cs.cells ) do | + | for i, cell in ipairs( cs.cells ) do |
- | local neigh = Neighborhood(); | + | local neigh = Neighborhood(); |
- | local lin = -1; | + | |
- | while ( lin <= 1 ) do | + | while ( lin <= 1 ) do |
- | local col = -1; | + | local col = -1; |
- | while ( col <= 1 ) do | + | while ( col <= 1 ) do |
- | -- add nieghbor | + | -- add neighbor |
- | local index = TeCoord{ x = (cell.x + col), y = (cell.y + lin)}; | + | local index = TeCoord{ x = (cell.x + col), y = (cell.y + lin)}; |
- | neigh: | + | neigh: |
- | col = col + 1; | + | col = col + 1; |
- | end | + | end |
lin = lin + 1; | lin = lin + 1; | ||
- | end | + | end |
- | cell: | + | cell: |
end | end | ||
end | end | ||
Linha 70: | Linha 64: | ||
- | 4.5. O arquivo a seguir demonstra como o conceito de vizinhaça de TerraME pode ser utilizado | + | 5. O arquivo a seguir demonstra como o conceito de vizinhaça de TerraME pode ser utilizado |
geopro/modelos/roadmap/funcoes.1172193671.txt.gz · Última modificação: 2007/02/23 01:21 por gcamara