Incorporating a Module into the FRAMEwork System (FRAMES) | |
Title Page Legal Notice Table of Contents Introduction Example STEP 1 STEP 2 STEP 3 STEP 4 STEP 5 APPENDIX A APPENDIX B APPENDIX C APPENDIX D |
Step 2: Define Model Inputs and Boundary ConditionsAfter the measure and units for the model have been defined, inputs the model will consume and outputs it will produce must be described in detail. While FRAMES 2.0 does not require object-oriented programming, using such a design process can be of great assistance. As models move from initial integration into more reusable integration, this will be a part of the process. A programmer need not learn object-oriented programming or switch languages, but an understanding of how such programming mirrors real-world objects will help in understanding how concepts get compartmentalized in the more standard dictionaries that house the datasets for inputs and outputs in FRAMES. The term dictionary is used to refer to a collection of data about data (otherwise known as metadata). A dataset is a specific instance of values that conform to a dictionary specification. From an object-oriented programming perspective, dictionary would be the declaration of a class; the dataset would be the instance of the class. Think of a dictionary as a simple class that has all public data-members that are multi-dimensional arrays. Note that FRAMES does not use class within other classes because this would eliminate some programming languages from use (namely FORTRAN). Metadata are entered into FRAMES through the Dictionary Editor, which provides an interface to construct the dictionaries your model will consume and produce. Note that all data flowing into and out of components in FRAMES 2.0 goes through the dictionary-dataset construct. You are not limited in the number of input and output dictionaries for your model, but each should have a real-world interpretation. You are limited to one dictionary that encompasses the input you wish to obtain from the user. This one dictionary is called a module input dictionary, and it only differs from other dictionaries in that it is populated by a user. The dictionaries in FRAMES 2.0 are where we transition from the real-world meaning of a model to its parameter meaning. Thus, it is critical that precise real-world names and descriptions be given to dictionaries and associated parameters. When creating a dictionary within the FRAMES 2.0 Dictionary Editor, a .DIC file extension is automatically assigned to the dictionary file. FRAMES 2.0 does not require that a dictionary contain a .DIC file extension; however, the Dictionary Editor only recognizes .DIC file extensions as dictionaries. More information on creating a dictionary without using the Dictionary Editor can be found in the design documentation for that editor. There are several different types of dictionaries in FRAMES 2.0. Model Input Dictionaries are expected to be populated by the user, while Boundary Conditions Dictionaries are used to define datasets produced or consumed by models as part of calculation. Dictionaries are not simply labeled input and output because what one model produces another consumes. There are also System Developer Dictionaries, which can be used universally by models, and Module Developer Dictionaries, which are idiosyncratic to a model or a modeling system. To create the model's dictionaries in FRAMES,
Once a dictionary is created, data (called variables) must be added to it and their properties defined. To add variables,
To define properties for each variable, select the newly created variable from the tree. A panel will appear listing all the properties of the variable. Fill in the data accordingly. Properties include the following:
Step 3: Invoke the model Step 4: Provide a description of the model Step 5: Categorize the model |
|