SuperNEC

SIG GUI Manual

 

Version 0.10

Document Status: Beta


Table of Contents

1     Introduction to SIG.. 1

1.1      Structure interpolation and segmentation (SIG) approach. 1

1.2      SIG features. 2

2     SIG GUI controls. 4

2.1      SIG Interface. 4

2.2      Main Controls. 5

3     Performing basic SIG functions using the Interface. 6

3.1      Opening and Saving projects. 6

3.2      Drawing lines. 6

3.2.1       Points. 6

3.2.2       Straight Lines. 6

3.2.3       Interpolated lines. 6

3.2.4       Semi-Circles/Ovals. 6

3.2.5       Lines from Workspace Variables. 7

3.2.6       Snap-to-Grid. 7

3.3      Selecting and unselecting lines. 7

3.4      Undo and Redo. 7

3.5      Adding, deleting, modifying and changing between Cross-Sections. 7

3.5.1       Adding New Cross-Sections. 8

3.5.2       Deleting current Cross-sections. 8

3.5.3       Modifying Cross-Section z-values. 8

3.5.4       Changing between Cross-Sections. 8

3.6      Changing line Tag numbers. 8

3.7      Copying and Pasting Lines. 8

3.8      Editing curves. 9

3.8.1       Moving lines. 9

3.8.2       Editing Line Points. 9

3.8.3       Rotating a line. 9

3.8.4       Editing the Number of Points Making up a line. 9

3.8.5       Adding Points to Lines. 9

3.8.6       Scaling lines. 9

3.8.7       Reflecting/flipping lines. 9

3.9      Sending Curve coordinates to workspace variable. 10

3.10     Zooming In and Out 10

4     Axes functions. 11

4.1      Grid Functions. 11

4.1.1       Displaying the grid. 11

4.1.2       Grid Spacing. 11

4.1.3       Grid Labels. 11

4.1.4       Axis limits. 11

4.1.5       Aspect ratio. 11

4.1.6       Viewing Curves. 11

5     Opening and generating .grd files. 12

6     Generating Assembly code. 13

7     Viewing Gridded structures. 14

8     Tutorial 15

8.1      Aircraft structure. 15

8.1.1       Defining the structure. 16

8.2      Patch with slot cut-out 16

8.2.1       Defining the cross-sections. 17


1         Introduction to SIG

Complex structures such as, aircraft, ships and motor vehicles etc can be accurately modelled as a mesh of MoM (Method of Moment) wire segments, for simulation in SuperNEC.  For the purpose of easily and quickly creating these complex wire grid models, the SIG (Structure Interpolation and Gridding) program was developed.

This manual will start off by introducing the Structure Interpolation and Gridding (SIG) approach and method of operation, after which the SIG GUI (Graphical User Interface) controls and features will be presented. This document will end off by investigating two examples, which will familiarise the user with SIG and the GUI controls.

1.1       Structure interpolation and segmentation (SIG) approach

SIG is a simple but powerful program which captures and interpolates three dimensional data and forms a wire grid representation of the surface which it outputs in a form which can be imported into SuperNEC. A graphical interface (SIG GUI) has now been added to make SIG even more powerful and easier to use than before. An example of the operation of the SIG package is provided in section 7, but the essential operations are summarized below:

·         The user determines which cross-sections will be used to define the structure for the purposes of the simulation. Cross-sections are ideally chosen at points of abrupt change along the structure. Each cross-section is divided into curves to which numerical tags are assigned for identification of related curves in consecutive cross-sections. These tagged curves enable the user to model the full structure by introducing and terminating appendages such as wings, wires emanating from the fuselage, canopies and the like. Example 1 below illustrates how this is achieved).

·         Each user-defined curve is composed of discretized points, these points are automatically created by the SIG GUI when user curves are drawn. The number of points used to represent each user curve can be set to achieve the level of smoothness required.

·         In addition to the functions described above the user can also:

Request a log-file giving all the augmented section information, junction information, warning and error messages, as well as grid geometry statistics. Grid geometry statistics include the number of segments, average, longest and shortest segment lengths as well as the total wire surface area of segments *(This feature is not implemented in this version of the SIG GUI).

Write out the augmented structure in the format of a SIG input file (.grd file). This is a particularly useful feature should the user want to modify some of the computer generated cross-sections. The edited file can then be resubmitted to SIG to be segmented.

Export curves  to Matlab® workspace variables for editing purposes and/or import new/edit existing curves from Matlab® variables.

Select to view 3D structures views, during the construction phase, and after completion, in order to aid model construction.


 

1.2       SIG features

The main features of the SIG program are:

·         Structure input is in the form of typical cross-sections of the complex body. Normally, the cross-sections are chosen at points where the structure features change - such as at the start or end of wings, etc. The user need only define as many cross-sections as will accurately describe the structure when linear interpolation is used. Typically a structure such as a jet fighter requires between 10 and 20 user defined cross-sections for the generation of its structure.

·         A wire grid geometry is generated by SIG for the complete structure, and does not require separate modelling for different parts. A unique system of dividing complex cross-sections into tagged curves enable the program to achieve a validly joined gridded geometry for examples such as an aircraft where both wings and a canopy are linked to the main fuselage.

·         Model generation with the same input file at various frequencies is possible.

·         Segment length can be varied throughout the structure. This reduces computational time when longer segments are used in structure regions far removed from antennas. (This feature has not fully been implemented in the current version of SIG GUI, and requires the user edit a text file to achieve this at this time).

·         Cutting planes and angles can be specified to remove parts of the structure at the user's discretion in order to reduce problem size. (This feature has not fully been implemented in the current version of SIG GUI, and requires the user edit a text file to achieve this at this time).

·         Segment radii are automatically calculated by the package such that the total wire surface area is approximately twice the surface area of the actual structure. Each segment is assumed to be associated with a square grid, and the radius is calculated as: . A radius adjustment factor, , may be specified in which case the radius will be calculated as: .

·         The spacing between interpolated cross-sections is calculated to ensure that the average length of the linking segments is equal to the user specified target segment length. Even when structure dimensions are changing between user-defined cross-sections, approximately correct longitudinal segment lengths are generated.

·         Symmetry about the x- and y-planes can be specified. In such cases, the segmentation takes this fact into account, and segments abutting the symmetry planes will be half the normal length; no longitudinal segments will be produced on the symmetry plane. (This feature has not fully been implemented in the current version of SIG GUI, and requires the user edit a text file to achieve this at this time).  

·         Effective visualization is provided via the graphical interface and SuperNEC.

·         The SIG program is also suitable for discretizing simple problems such monopoles on rectangular ground planes (3 user cross-sections required), fan dipoles (4 user defined cross-sections consisting of a single point per curve can be used), conical wire antennas and the like.

 

2         SIG GUI controls

The following section labels all the buttons and controls in the SIG Interface which are referenced to in proceeding sections.

2.1       SIG Interface


A-Drawing Axes

B-Main Controls (see section below)

C-Current cross-section z-value display box (units: Metres)

D-Current cross-section number edit box

 

 

E-New cross-section button

F-Delete current cross-section button

G-Cross-section slider

H-Current x and y coordinates (contains values when drawing) (units: Metres).



 

 

 

a-Line draw button

b-Interpolated curve draw button

c-Line(s) select button

d-Copy button

e-Delete button

f-Load curve from workspace button

g-Zoom in button

h-Curve tag Number box

 

 

i-Semi-circle draw button

j-Point draw button

k-Line flip button

l-Paste button

m-Snap to grid button

n-Scale line button

o-Zoom out button

 


3         Performing basic SIG functions using the Interface

3.1       Opening and Saving projects

SIG GUI projects are saved in a .spf (SIG Project File) format. A SIG GUI project file can be opened by selecting FILE->Open and selecting the desired project file in the file browser window.

To save a project, select FILE->SAVE, or the FILE-> SAVE AS menu option, and choose a filename and location to store the project file. It is recommended that work done in the SIGGUI is saved as a project (/.spf) file rather than a .grd (.grd files should only be used for exporting purposes) as there is enhanced editing functions (.grd files will be handled in later sections). 

3.2       Drawing lines

The SIG GUI makes it easy to define the cross-sections of your complex structures by having a number of predefined built in lines types such as single points, straight lines, interpolated lines and semi-circles. Lines of these types are added by simply selecting the appropriate line type button and clicking on the desired locations of the points to from the curves, in the SIG GUI axes (above label A). To end the drawing of a line either double-click when placing the last point or press one of the Main Control buttons. The drawing of a semi-circle line is automatically ended when the locations of the two end points have been selected.

Each time a new line is drawn the tag number defined by the Tag number box (above label h) is assigned to the line. This can later be modified if necessary.

3.2.1        Points

Single points are added by selecting the Point draw button (above label j) and clicking the desired point locations.

3.2.2        Straight Lines

Straight lines are added by selecting the Line draw button (above label a) and selecting desired points making up the line structure.

3.2.3        Interpolated lines

Smooth or interpolated lines are added by selecting the Interpolated curve draw button (above label b) and clicking the major points through which the interpolation will run. The default number of points making up the curve is 50. This can later be changed to achieve the desired level of smoothness for the curve.

3.2.4        Semi-Circles/Ovals

Semi-circles are added by selecting the Semi-circle draw button (above label i), and selecting the two end points of the semi-circle. The semi-circle will be drawn anti-clockwise from the first end point to the second end point. These curves can be later be edited to form an oval and/or arc.

3.2.5        Lines from Workspace Variables

Lines can be added from information stored in a workspace variable by using the workspace button (above label f). The line added will be of the Straight Line type. The workspace variable may have one of the following formats:

  1. The workspace variable has the n (x-coordinates) stored in the field ‘x’ in the form n x 1 or 1 x n and similarly the n (y-coordinates) stored in the field ‘y’ with the dimensions n x 1 or 1 x n
  2. The workspace variable with n (x-y) coordinates having the dimensions n x 2 ie. [x1,y1;x2,y2….]
  3. The workspace variable with n (x-y) coordinates (n>2) having the dimensions 2 x n ie. [x1,x2,x3….;y1,y2,y3….]

3.2.6        Snap-to-Grid

When the snap-to-grid toggle button is depressed, any subsequent drawing functions will add points on grid intersections. If the snap-to-grid option is selected, moving of curves and editing of major points for interpolated lines or straight lines will take place in grid spacing increments. 

3.3       Selecting and unselecting lines

Before a line(s) may be selected the SIG GUI window must be in Edit mode by making sure the Line Select button (above label c) has been depressed.

Once in edit mode a line can be selected by either Right or Left clicking on the line. Multiple line selections can be made by either holding down CTRL and Left-clicking the lines or by simply Right-clicking the additional lines.

Once a line is selected, the colour of the line changes to magenta. The line will revert back to it’s original colour as soon as it becomes unselected again.

To unselect all lines, right-click an area of the axes not containing any curves, or to unselect a single line, hold down CTRL and left-click the line to be unselected.   

Note: Only lines in the current cross-section may be selected.

3.4       Undo and Redo

The SIG GUI offer the ability to undo modifications made to your project and redo any undo commands performed by mistake. The undo and redo commands are invoked by using the menu items EDIT->UNDO and EDIT->REDO respectively.

3.5       Adding, deleting, modifying and changing between Cross-Sections

When starting a new project, the first cross-section is automatically created and given the default value of z = 0m. The following sections will detail how new cross-sections can be added, deleted and how the user can switch between cross-sections, and change their associated z-value.

3.5.1        Adding New Cross-Sections

New cross-sections can be added by making use of the new cross-section button (above label E) and entering in the required z-value for the new cross-section. The new cross-section will be added after the current cross-section and therefore the z-value entered in must be larger than the current cross-section’s z-value and smaller than proceeding cross-sections z-value (in the case of inserting a new cross-section between two existing cross-sections).

The only exception to the above rule is when requiring to add a new cross-section before the first cross-section. In this case the z-value entered in must be smaller than that of the first cross-section’s z-value.

3.5.2        Deleting current Cross-sections

To delete the current cross-section, simply press the delete cross-section button (above Label F).

3.5.3         Modifying Cross-Section z-values

To modify the current cross-section’s z-value, from the SIG GUI menu select EDIT->Cross-section z-value.

3.5.4        Changing between Cross-Sections

The user may change between cross-sections by making use of the cross-section slider (above label G), or by entering in the desired cross-section number in the cross-section number box (above label D).

3.6        Changing line Tag numbers

As mentioned above each curve in a cross-section contains a tag number identifier. When drawing lines, this tag number can either be automatically assigned (without any intervention), or can be manually assigned by selecting the required tag number in the Curve Tag Number box (above label h). This selection must take place after the required line type button has been selected, but must performed  before starting to draw the line.

Once lines have been drawn, the tag number(s) can be edited by firstly, selecting the line(s), and then making use of the SIG GUI menu EDIT-> Curve(s) Tag No. menu option.

3.7       Copying and Pasting Lines

In order to copy a line(s), make sure the line(s) are selected and then press the Copy button (above label d). Lines can then be pasted by using the Paste button (above label l). When lines are pasted to the same cross-section as they were copied from,  new tag numbers are assigned to the copied curve(s) and the location is marginally offset from it’s original copy location in order to aid user editing. When a line(s) is pasted to a different cross-section as it was copied from, the original tag number(s) and location will be retained for the new curves. A line may also be pasted of type ‘Straight lines’ by using EDIT-> Paste as type ‘lines’. This feature may be useful in the case the user wishes to create a complex line containing sharp points, of which as a first iteration, can be created out of a semi-circle or interpolated line curve.

3.8       Editing curves

This section will discuss the various editing functions that can be performed on the various line types. The edit functions are entered by making use of the axes context menu. This menu becomes visible when right-clicking an unselected line (with no other lines selected).

3.8.1        Moving lines

To change the position of a line(s), select Move from the context menu. The position of the line can then be altered by moving the mouse. This editing function is exited by any mouse-click. To move multiple selected lines, right click the drawing axes (after lines have been selected) to bring up the context menu, and follow the procedure for a single selected line.

If the snap-to-grid option is on, the selected line(s) will only move in increments equal to that of the grid spacing.

3.8.2        Editing Line Points

To edit the major points making up a line, select the Edit Points option from the context menu. This will then place green circles on the critical points of the curve. These points can then be edited by individually selecting them and moving them to the required position. The user can also manually enter in the coordinates for a point by holding down SHIFT and left-clicking a green circle.  The end points of a semi-circle can be edited to increase the arc-length and the center major point can be edited to create an oval line. The user must make use of scaling in order to change the major radius value of a semi-circle line.

3.8.3        Rotating a line

A line can be rotated about it’s first point by selecting the Rotate option from the context menu, and moving the mouse around this point to the desired angle of rotation.

3.8.4        Editing the Number of Points Making up a line

The number of points making up an interpolated line or semi-circle line can be edited to achieve the desired level of smoothness. Select No. Points from the context menu to enter this function.

3.8.5        Adding Points to Lines

A new point can be added to a straight line and interpolated line by right-clicking the desired position for the new point on the line, and selecting the Add Point option from the context menu.

3.8.6        Scaling lines

The overall size of a line can be increased/decreased by a user defined factor value. To perform this function, select the Scale button (above label n). The line(s) will then be resized, maintaining the position of the first point. Scaling must be used if the user wished to change the major radius of an already added semi-circle/oval line.   

3.8.7        Reflecting/flipping lines

Selected line(s) can be reflected about the x or y axis by selecting the Flip button (above label k).

3.9       Sending Curve coordinates to workspace variable

The x and y coordinates for a selected curve can be exported to a Matlab® variable, which can then be editing using Matlab® functions etc. To invoke this function, select the EDIT->Send Curve(s) to Wkspace Var -menu option.

 The Matlab® variable will contain the n coordinates with an ‘x’ field containing n x 1 x-values and a ‘y’ field containing n x 1 y-values.

3.10  Zooming In and Out

To zoom in on the current axes, select the Zoom-in button (above label g) and drag the zoom-in rectangle over the desired area. To zoom out, select the Zoom-out button (above label o). This will return the axes to the set Axis limits value.

4         Axes functions

4.1       Grid Functions

The following section will describe the various grid functions\ modifications that can be performed to aid model creation.

4.1.1        Displaying the grid

To display/hide the x-grid, select the  VIEW->X GRID->DISPLAY option. Similarly follow the same procedure for showing/hiding the y-grid.

4.1.2        Grid Spacing

The spacing of the grid, used as a visual aid and for functions such as snap-to-grid, can be altered by selecting the VIEW->X GRID->GRID SPACING option for the x-grid and VIEW->Y GRID->GRID SPACING option for the y-grid.

4.1.3        Grid Labels

The grid labels options found under VIEW->x Grid->Labels->manual and VIEW->y Grid->Labels->manual, allows the user to manually specify the axes numbering for each axis. The user can also set the grid labelling to Auto, in which case the SIG GUI will determine the best labelling for viewing and editing purposes.

4.1.4        Axis limits

The axis limits can be changed by selecting VIEW->Axis Limits and entering in a matrix of the form [x-min value, x-max value, y-min value, y-max value].

4.1.5        Aspect ratio

The axes aspect ratio may be changed by selecting VIEW->Keep Aspect ratio. When “Keep Aspect ratio” is set to on, 1 unit of increment in the x direction is equal to the same unit of increment in the y direction and thus ensuring that images to not appear distorted. When set to off, the axes are stretched to fill the window.

4.1.6        Viewing Curves

The curves to be displayed in the current cross-section can be defined by using the VIEW->Curves->Manual menu option, and entering in a matrix of the tag numbers of the required curves. The user may also wish to display curves from other cross-sections in order to aid model design by using the VIEW->Cross-sections->Manual menu option. The curves from other than the current cross-section will be displayed as dotted lines, and can not be selected in the current cross-section. The curves that will be displayed in this case is also limited to those set by the View-> Curves menu option.

 

5         Opening and generating .grd files

A .grd file created by the SIG GUI or from the original SIG program can be opened by using the FILE->Open menu option and selecting the .grd file extension in the file browser. All the curves read from the .grd file will be of the ‘straight lines’ type. Currently, the SIG GUI does not support CP, GM and SY commands, these commands will be ignored

A .grd file can be generated by using the Generate -> Grd file menu option, and entering in the segmentation frequency to be used. These files and .grd files written in the stand alone version of SIG can be opened in SuperNEC by using the snsigfile structure assembly or by selecting the “Readfile” option in the stand alone version of SIG.

6         Generating Assembly code

The SIG GUI window can be used to generate SuperNEC m-file assembly code, which the user can later edit to for example add variables, add curves manually, make structural changes etc. The procedure for creating an m-file assembly from the SIG GUI is as follows:

  1. In SuperNEC create a new assembly .m file by selecting FILE->NEW-> ASSEMBLY
  2. In the Assembly editor dialog box, fill in the assembly name and assembly description fields.
  3. Save the assembly .m file in the appropriate SuperNEC assemblies directory.
  4. Close SuperNEC.
  5. In the SIG GUI window select GENERATE->ASSEMBLY CODE. A file browser window will then appear. Select the assembly which you have just created in SuperNEC. The SIG GUI will then append the assembly code to the end of the assembly m-file.
  6. Open SuperNEC (the assembly list should be refreshed at this point), and load the assembly.

7         Viewing Gridded structures

In order to view the gridded representation of the current cross-sections from the SIG GUI, select the menu option GENERATE->3D Structure View. This will then prompt the user for the segmentation frequency (frequency at which segments are set to roughly 0.1*wavelengths).

Please note the 3D structure view may take a couple of minutes to load, depending on the size and frequency of the structure to be processed.

 

8         Tutorial

The tutorials presented in this section will help the user familiarize themselves with the operation of SIG and the SIG GUI interface. The first example will examine an generic “aircraft” structure, while the second example will look at a patch antenna with cut-out slot example.

8.1       Aircraft structure

This tutorial is aimed at familiarising the user with the SIG GUI, and demonstrating the use of the SIG GUI for a complex structure containing various extrusions. The generic “airplane”

Figure 1: Aircraft structure

Figure 1 shows the plan view, side view and front view of a generic "airplane" structure. The cross-sections that will be used to construct the structure is also shown.

Note: A cross-section is used where ever structure characteristics change in a discontinuous manner.

Figure 1 also shows the six cross-sections with the tagged curves. The user should check that the curve definitions do not violate any of the rules for curves. The main ones are:

·         Two curves in one specific cross-section are considered joined when a point in both coincide; the coincident point must be entered for both joined curves.

·         Only the end of one curve may join the midpoint of another; i.e. no two curve midpoints may be joined. Any number of curve end points can join together. Any number of curve end points may also join one curve mid point. Both ends of a specific curve can join another curve(s).

·         Curves may not join themselves; cases of closed curves must be artificially divided in two to avoid this from happening.

·         Curves which occur in two cross-sections must have the same tag number; this will ensure a “wing” curve which exists on one curve will be extrapolated to the same "wing" curve on the next cross-section. If tag numbers differ, this "wing" will terminate in the current cross-section and restart in the next. If a curve only exists in one cross-section then it will be represented as a simple wire protruding from the structure.

8.1.1        Defining the structure

This section describes the cross sections defining the structure. Please refer to figure 1 above.

  • The first cross-section at z=0 consists of a single point. This will represent the very tip of the front of the aircraft.
  • The second cross-section exists at z=0.5. The “circle” cross-section is created from 2 semi-circles joined together (a curves end points may not join together at the same point), each having a radii of 0.5m.
  • The third cross-section (at z=3.5m) consists of two semi-circles with a radii of 0.7m, and two points on the semi-circles to mark the start of the wing.
  • The fourth cross-section (at z=6.5m) makes use of two semi-circles with a radii of 0.9m. The curves representing the wings are extended in this cross section. The total length of the wings from tip to tip is 3m.
  • In the fifth cross-section (at z=7.5) the radius of circular section increases to 0.95m, and two additional points are introduced to mark the start of the tail wings 0.9m radius.
  • The sixth cross-section, contains extensions for the tail wings, and does not include any wing tagged curves. The radii representing the fuselage are 1.0m and the tail wings have a maximum height of 1m.

 

8.2       Patch with slot cut-out

This tutorial will investigate the creation of a patch antenna structure containing a shorting wall,  v-slot cut-out, and small ground plane. This example is by no means a real antenna, but rather is used to illustrate the capabilities for plate structures. The structure we wish to create is shown in figure 4 and 5   below:

Figure 4: Patch structure with slot and shorting wall

Figure 5: Dimensions of patch structure

8.2.1        Defining the cross-sections

In order to create this structure, we will require 5 cross-sections to define this structure. These are shown below, along with the corresponding tag numbers used for each curve. It is recommended that the x and y gird spacing in the SIGGUI is set to 0.25m and that the snap to grid option is selected. This will facilitate easy model creation and editing.

Figure 6: First cross-section at z=0m

The first cross-section is created at z=0m. The ground plane is constructed from two curves (Tag no. 1 & 2) to accommodate the junction of the shorting wall. The  surface consists of 3 curves (Tag no.s 6,5 & 4). Curve tag no. 5 is 0.25m in length and used to later accommodate the slot.

Figure 7: Second cross-section at z=0.1

The second cross-section is identical to the first and exists at z=0.1m.Note this is the last time that curve tag no 5 will appear in any of the cross-sections. That is the gridding from the first definition of curve tag no 5 will end, and hence create the start of the slot.

Figure 8: Third cross-section at z=0.4

The third cross-section is taken at the centre of the patch and exists at z=0.4m. If you have used snap to grid and set your grid spacing to 0.25 as suggested above, then you can either turn off snap-to-grid to create the correct length curves 4,6, or set your grid spacing to 0.125, or you could simply create these two curves having the same dimensions above, and then edit the curves points manually by holding down shift and right clicking the appropriate point on the green circle.

Figure 9: fourth cross-section at z=0.7

The fourth cross-section occurs at z=0.7m. Notice the introduction of a new tag 7, this is to ensure the gridding where the slot previously was. The only difference between this and the second cross-section is the new tag number.

Figure 10: Fifth cross-section at z=0.8

The final cross-second is identical to the previous cross section, as expected. The final structure modelled in SuperNEC at 300Mhz is shown below:

 

Figure 11: Model in SuperNEC segmented at 300Mhz