The description of the plugins (e.g. PMP, EPP etc..) in the GUI panel informs you about its scope of application and this should be accordingly considered when you define your scenario.
In order to prevent the plugins from reporting physically wrong results the validity of actual parameter values are checked during the calculations (Figure 317). In case parameter values exceed the valid range, appropriate exceptions, e.g. RuntimeException, stops the plugin from doing further calculations.
Figure 318: RuntimeException checker in the calculation codes
This can be avoided if you are informed about such conflicts before starting the simulation by checking the consistency of your plugins like it is done for the rest of the SEAMCAT workspace. Therefore the method consistencyCheck() is available to all the plugins.
The basic principle on that is quite simple: the more extensive the checks the less the risk of running into problems during the simulation.
For this, each type of plugins provides the same method consistencyCheck() to perform the recommended checks:
Figure 319: Common method to perform checks
The referenced parameters are detailed as follow:
Figure 320: ConsistencyCheckContext interface
Concerning the ConsistencyCheckContext it is important to be aware of the applicability of plugins to the scenario components:
This default information can be replaced or extended if the plugin is nested, i.e. if the plugin is used as an input parameter of another plugin (annotation, see the previous section 14.3.1).
In case you apply nested plugins it is highly recommended to check the validity of these nested plugins inside the consistency check of your 'parent' plugin. The below example of an EPP which uses a nested PMP wants only to show the principle of checking input parameters:
In case you apply nested plugins it is highly recommended to check the validity of these nested plugins inside the consistency check of your 'parent' plugin. The below example of an EPP which uses a nested PMP wants only to show the principle of checking input parameters:
Figure 321: Example of checking the validity of a nested plugin