SEAMCAT’s propagation model plugin Karl Koch, BNetzA, CEPT SEAMCAT Workshop Copenhagen, –
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 2 TOPICS Preface o General comment o Propagation Plugin Interface o Example Task: create a propagation plugin (PP) o Definition (what shall it do?) and requirements Source code Configuration of workspace Output o conclusion
General remarks Basic instruction for PP on Creating a propagation model plugin 1)Creating a propagation model plugin Environment set up (see Environment on the online manual)Environment How to compile (see User defined on the online manual)User defined Java Editor (the author uses the Eclipse version “indigo”, which provides WindowBuilder Editor implemented)Eclipse o I would like to recommend to include the path plugin-libs of the source code (corresponds to seamcat_needed_for_plugin.jar) on your working environment (see draft Installation manual)draft Installation manual Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 3 Preface - general 1) Note: as the examples are well documented, for this presentation an “own” model should be developed.
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 4 Propagation Plugin - interface Propagation model Calculate path loss Set configuration Evaluate (f, d, h tx, h rx, params) Propagation Plugin Path loss each event and each link PropagationPluginModelWrapper In case plugin Configuration panel (params)
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 5 Propagation Plugin – example 1 (reference-) Name on the library Check box Parameters required Parameters optional Combo box Reset to default with units
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 6 Propagation Plugin – example 2 Theoretically as many as you want
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 7 Propagation Plugin – definition We want to create a PP which calculates a path loss based on a random factor of the square-root of the distance considering additionally as an option the general environment For that we need as input parameters: The limit of the random factor Parameter required A list of general environments Combo box An indication whether the general environments are to be considered Check box The value of the standard deviation (for variations 1) ) Parameter required 1) Note that the check box “Variations” is mandatory given by the interface “evaluate” and not editable.
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 8 Propagation Plugin – source code Procedure 1.Define the parameters and their default values required to set the configuration 2.Assign the values taken from the configuration to the corresponding variables 1) 3.Formulate the calculation method(s) 4.Test it 1) Please take care that all variables are defined as object, i.e. as Double / Integer
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 9 Propagation Plugin – definition ParameterDefinition (interface) parameters.add(new DoubleParameter( "name"). defaultValue(defaultValue). unit("unit"). description("description"). optional() ); In this order required - Optional - Note that the check box of ‘optional()’ is set to “true” by default, i.e. the check box is selected.
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 10 Propagation Plugin – definition ParameterDefinition (interface) Note that SelectionParameter [combo box] allows only String values as input and the option “description”.
Parameters required Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 11 Propagation Plugin – definition Define the parameters and their default values required to set the configuration The content of the optional “description” is used as tool kit Combo box Check box Name of the parameter
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 12 Propagation Plugin – declare Declare variables Linked to the configuration
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 13 Propagation Plugin – definition Assign the values taken from the configuration to the corresponding variables
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 14 Propagation Plugin – calculate Formulate the calculation method Values provided by the calling method see definition
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 15 Propagation Plugin – configure workspace Copy the compiled class to the folder “plugins” of the home folder of the SEAMCAT installation. Please ensure that on the plugin folder is also the jar-file seamcat_needed_for_plugin
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 16 Propagation Plugin – configure workspace The background remains red as long as the class name is not correct, maybe due to not existing on the folder “plugins”
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 17 Propagation Plugin – configure workspace Fill in the class name Reference name (may differ from class name) Choose a reference name You may add a description here
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 18 Propagation Plugin – output Reset to default On the link, e.g. Transmitter to Receiver Path on the VLK, choose “Propagation Model” and take to model to be assigned to this path from “Selection”
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 19 Propagation Plugin – output To test your model you may also use Or directly from the panel
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 20 Propagation Plugin – output In order to compare your model with others
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 21 Propagation Plugin – output
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 22 Propagation Plugin – output The values given on the Identification panel are calculated considering the vectors of the selected models
Karl Koch | SEAMCAT Workshop June 2013 | propagation plugin 23 Propagation Plugin – conclusion This quite simple propagation plugin did intend only to show the principle on how you could create your own plugin. SEAMCAT provides the following parameters of each link, which could be the system link of VLK or ILK as well as any interfering link using this propagation model: Frequency in MHz Distance in km Antenna height of the transmitter in meter Antenna height of the receiver in meter all above by reference directly from the workspace (taking account of distributions), and through the configuration panel (always constant) Whether variations are to be simulated (this is mandatory due to OFDMA feature requirements) The parameter set as defined by the plugin
Karl Koch | SEAMCAT Workshop June 2013| propagation plugin 24 Thank you. Questions? Karl Koch BNetzA Fon