This is an old revision of the document!


PHP's gd library is missing or unable to create PNG images

Dinamica EGO Reference

This wiki documents Dinamica EGO's scripting language, execution model, and the functors most commonly needed when building a model — organized here by topic rather than alphabetically, so each section can be read in order as an introduction to that part of the system.

Language

  • EGO Script Language — the primary text notation for writing a model: functor calls, constants, containers, the calculator shorthand family, properties, and submodels. Start here for the language itself.
  • EGOML Script — the equivalent XML notation, generated by the GUI or written by hand, and its DTD.
  • Submodels — packaging part of a model as a reusable functor with its own declared inputs and outputs, so it can be called from other models the same way a built-in functor is: local, user, store, and system submodels, expansion before execution, and the GUI workflow for creating, updating, and publishing them.

Execution Model

  • Basic Data Flow — the execution model underneath both notations: how connections and containers determine execution order, independent of whether the model was written as EGO Script, EGOML, or built visually.
  • Image Virtualization — how Dinamica reconciles maps of different extents, resolutions, or rotations at runtime: every map handed to a functor is wrapped in a virtual version at a shared resolution and extent first, so functors never see mismatched inputs; requirements (shared projection), the Not Allowed / Limited / Unrestricted control under “Tools ⇒ Options | Advanced | Virtualization”, and the functors that opt out of it entirely.

Type System

Calculator Functors

Tables and Lookup Tables

  • Table Type — the general table format: key and value columns, naming, and type inference.
  • Lookup Table Type — the single-key, single-value specialization of Table Type, and its own literal syntax and conversions.
  • Manipulating Tables and Lookup Tables — functors and techniques for reading, iterating, restructuring, and computing statistics from tables and lookup tables, from a table with a known shape through to tables with an arbitrary number of columns or keys.

Regions

  • Working with Subregions Using Region Manager — when and why to split a model's computation by region; defining regions from a categorical map with Region Manager; reading region metadata; visiting one region or looping over all of them; splitting a global map into regional pieces and merging them back; and the two supporting patterns — per-region functor parameters and per-region accumulation — a region-based model typically needs.

Command-Line Execution

  • Dinamica Console — running a model script from the command line instead of the GUI: execution flags, worker and memory control, logging, accelerators, metadata, and converting a script to another format without running it.

Practical Guidance