Interface Model

All Known Implementing Classes:
BaseModel2

public interface Model

Represents the new style of Riskscape model. A model fits into a predefined framework that defines how it will behave. The user can then configure parameters that customize how the model behaves. The underlying data-processing work that the model actually carries out is achieved using a Pipeline.

  • Method Details

    • getFramework

      ModelFramework getFramework()
      Returns:
      what sort of ModelFramework was used to build this model.
    • getBoundParameters

      BoundParameters getBoundParameters()
      Returns:
      the configurable parameters that will be applied to the model when it is run. Note these parameters are subservient to the framework parameters that were used to create the model - change the framework parameters will likely result in a totally different set of model parameters.
    • getFrameworkParameters

      BoundParameters getFrameworkParameters()

      Returns the parameters used by the ModelFramework to build this model (e.g. "template = default"). These parameters are so central to the model that it doesn't really make sense to override them at all, once the user has defined them.

    • getModelParameters

      List<? extends ModelParameter> getModelParameters()

      Returns the model's parameters. A ModelParameter contains more detailed metadata about a model's parameter compared to a regular Parameter

    • getModelParameter

      default Optional<? extends ModelParameter> getModelParameter(String parameterName)
      Returns:
      the ModelParameter that matches the given name
    • realize

      Produces an executable pipeline that will 'run' the model and produce results.

      Returns:
      a RealizedPipeline that can be executed, or a list of Problems that occurred during realization.
    • getPipelineAsExecuted

      default Optional<PipelineDeclaration> getPipelineAsExecuted()

      Get the PipelineDeclaration that is used to evaluate this model. The returned declaration should have all parameters substituted with the actual values.

      Returns:
      pipeline declaration used to evaluate this model