The main interface of EFMSim is structured to reflect the normal modeling process shown in Figure 2. For example, the buttons on the lefthand side of Figure are labeled Layouts, Data, Communities, Logic, and Scenario Builder, which closely follow the model sequence described above. Clicking on one of the buttons would open the collection of interfaces related to that part of the process. For examples, clicking Layouts would open a layout map where the user could work with elements and clicking Scenario Builder would open an interface where the user could create alternatives. If an interface is closed, it can be reopened by clicking on its associated button by using the Windows menu.

Figure. Main interface of EFMSim.
The buttons and related capabilities in figure 3 are parts of the “model construct” interfaces in EFMSim, which is separate from the “simulation module”. Toggling between model construct and simulation is controlled through the View menu.
EFMSim has several real-time logs available that report status of and actions performed by the software. The Message log lists high level actions such as opening an EFMSim project and setting the study area. The Data Controls Compute Output log details data import during Prepare for Simulation. The Variable Output log details status of variables computation during Prepare for Simulation. The Simulation log reports messages for each simulation time step. The IDE log has real-time information about computer actions and status of EFMSim. It is the most detailed of the logs and is useful when troubleshooting.
EFMSim is programmed in the NetBeans software development environment. One of the fun and really useful benefits of NetBeans is that most (maybe all) basic interface functionalities are already built. Therefore, interfaces created for EFMSim inherit those functionalities and can be moved, pinned, collapsed, expanded, etc. This allows users to customize collections of interface to best serve their modeling needs. Also, NetBeans includes a memory that stores these preferences per user.
More details about menus and interfaces are provided throughout this manual.