A short antenna optimization tutorial using MMANA-GAL, Part 2
Al Couper NH7O
Now we can cover in more detail the array of options available to optimize antennas. Here we'll cover the columns of the optimization table in order. First click in the "Type" column, and hit enter. The pop up menu has these options, which control to the physical dimensions of the antenna:
- Wire refers to any of the wires that are defined in the geometry tab. Each wire has a beginning point X1, Y1, Z1, and an ending point X2, Y2, Z2 in rectangular coordinates. Any of these values can be varied individually for optimization purposes.
- Wire (polar coordinates) refers to the same wires defined above, but now each wire is varied in terms of radius (the length of the wire), azimuth angle (the direction the wire points when projected onto the X-Y plane), and the zenith angle (the elevation angle the wire makes with the X-Y plane). More on this below.
- Element refers to a line from the Edit > Edit elements window. Elements can be the same as wires, or an element can be made from a number of wires. A quad element is thus made up of four different wires. By considering these wires together as a unit, one can optimize their location together, rather than having separate table entries for each wire.
- Load refers to the load table on the geometry page. If your antenna has a matching network, or loading coils, you can vary them using this parameter. Like with the wire definitions, each load is numbered according to its line number in the load table.
- Height varies the height above ground, starting at the value set in the drop down box on the calculation tab. Note the calculation will stop if the Z value goes negative, i.e. your antenna buries.
- Frequency varies the frequency of the voltage source(s), again starting with the value set on the calculation page. This parameter is not all that useful for simple HF antennas. I prefer to use the Plot function to see how my antenna behaves over a range of frequencies.
- Source varies the amplitude and phase of the selected source from the source table on the geometry page. This can be useful for designing optimum phased arrays.
- Stack interval allows for varying the spacing in a stacked array. MMANA-GAL has the facility to create a stack of identical copies of the present antenna, as determined in the Edit > Make Stack menu.
The next column, Position, is an integer that refers to the line number of the corresponding item to be optimized. If your antenna has 10 wires, and you selected "Wire" as the type, then this column could have entries of 1-10. The same applies to the elements, loads and sources, in their respective tables.
The What column answers the question, "What part of the Type in column 1 gets varied?" This column has a pop up window that is context sensitive to the data in the Type cell. If the Type is "Element", it looks like this:
- Interval is the distance from the previous element to the present element. If in the course of optimization the element in the position 1 less is moved, the present element will also move, keeping the interval constant. If the present element gets its interval value modified, the previous element stays in its place. The other parameter in the menu, Position is similar, except that it references the distance from the base element only. Thus if the element has its position value changed, only it will move. N.B.: This use of the term Position is now different to the use in the previous column. Here Position means physical spacing of an element. In the previous column, it referred to the lines in the various tables (geometry, loads, sources) that define the antenna. In general, it seems yagis are better optimized using the Position rather than the Interval, but the two can lead to different optimization results.
- Width Y, Height Z refer to the the total width or height of an element. This means that the Width of a dipole element would have both ends changed by the same amount, keeping its midpoint fixed, or the height of a vertical would be varied, keeping the base fixed at ground level. Perimeter or length X is a little confusing. If the element type is a horizontal loop, then the overall perimeter will change with the change in the X dimension. If the element is a simple wire that has an projection in the X axis, then those X coordinates will change. An example of this would be the bent elements of a Moxon beam, where the middle is parallel to the Y axis, and the ends are parallel to the X axis. Making some simple elements and doing a few experiments will be a quick way see how these parameters work.
- R refers to the radius of the wire. This is set in the geometry table, and you can vary it over the limits set in the optimization table. This is not too useful for most normal antennas, since the materials are usually fixed beforehand.
- The X, Y, Z (all coordinates) menu items are for moving more complex elements en masse. This means that a vertical loop, for example, would be moved as a unit, rather than just its top, by the Height Z (all coordinates) setting. In general, for the wires in the element, all the X, Y, or Z endpoint values are changed together, rather than just the outermost as in the previous X, Y, Z menus items above.
If the Type column is set to "Wire", the What menu looks like this:
All these menu items refer to the rectangular coordinates of the start point X1, Y1, Z1, or the end point X2, Y2, Z2, of the wire indicated by the Position value. This is pretty straight forward. The R entry again refers to the radius of the wire.
Finally, if the Type is "Wire (polar coordinates)", the menu looks like this:
These specify the start and end point of the chosen wire, just like the previous menu. Now those rectangular coordinates have been changed to polar coordinates, given by a radius, an azimuth, and an elevation, as measured from the origin (X=0, Y=0, Z=0). An example, as mentioned in the Help file, where these are useful is in designing V beams. The V would be formed by two wires, each starting from the origin (0,0,0) and going at an angle to the X axis, one rotated clockwise, one rotated counterclockwise. Then the parameter "Length (Start point)" could be used to vary the lengths of the wires, and the parameter "Azimuth angle (start point)" could be used to vary the angle of the V between the wires. Note that the menu offers the confusing choice of varying the Length (Start point), Length (Mid point), and Length (End point). The parenthesis should be read as "while holding (...) constant". I.e. Length (Start point) means vary the length while holding the start point constant, etc.
The remaining items in the What menu are pretty clear, given the context of the Type setting. If the Type is "Load", then the "What" will be the resistive or reactive part of the given load. The "Height" type will want a "What" in meters. The "Frequency" type will want Hertz. The "Source" type will specify either the voltage or the phase of the given source. This last is used for phased arrays. The "Stack interval" type will want a distance like, "Height".
I will skip the "Associated" column for now, as it deserves its own section, with example, below. We looked at the Step, Min, and Max columns in part 1. Usually the program sets a reasonable "Step" size by default, and unless you are being very precise, it is usually OK to go with it. The Min and Max values often need to be set to keep the algorithm within a realistic range. There are times when the searching process will find the algorithm shrinking an element down to zero, or moving an element interval out to infinity. These may or may not be what you want, and this is where experience is needed to guide the process. A typical case might involve putting too many elements on a yagi of fixed length. Close spacing does not enhance gain, so it may happen that the optimization will eliminate an element. The last column, "Value" is simply what value the given variable has at present, and is filled in by the program as the optimization proceeds. You can change this value manually also, and restart the optimization.
Now for the last few items on the optimization window. The sliders set the priority for each of the parameters as the algorithm searches, as discussed in Part 1. There is the check box "No Goal Set (simple sweep)". This is used to bypass the sliders, and to just step through a set of values from the Min value to the Max value. An interesting use of this is use the "Height" as the variable, and to step it from very low to some upper number. While the stepping is going on, look at the Far Fields tab and watch as the vertical lobes of the pattern are formed at different angles. The same procedure can be done for a stacked array, by varying the stack interval.
Clicking on the Advanced button brings up this window:
The "Rear range for F/B" refers to how the front to back ratio will be calculated. The default values are usually fine, as this will discard any side lobes or high angle lobes in the calculation. There are times, perhaps with NVIS (high angle) antennas that you may want to change these values. The "Standard Z" sets the feed point impedance which will be used for the purpose of calculating the SWR. Often an antenna will have a different impedance than 50 ohms, so this is where you change that. Then the optimization will tune for that value if the SWR slider is set. If you want to make a hairpin match on a yagi, often a good impedance to shoot for is 25 - j25, and you can enter both the resistive and reactive parts. The program will even calculate the length of transmission line needed in this case, if you give it a value for the Zo by clicking the "Set Z for Hairpin match" button.
Click on the "Goal" tab to see this:
The Optimization Targets give the algorithm values which it tries to attain in its searching. If one of the goals is attained, the other goals are then given more priority until they are attained. These defaults are good for most purposes, unless you are modeling a high gain antenna, in which case you might want to bump up the Gain setting. The "Current" section controls the behavior of the "Current" slider and how it attains its goal if used. The current can be minimized or maximized for a given source. The Matching circuit section is still mysterious to me, but apparently relates to the matching slider mentioned earlier. Again, I have never found I needed to use this section. The MMANA-GAL help file has some guidance on this aspect. Like most complex software systems, there is usually more than one way to accomplish the same thing.
Now for some final examples, and a demonstration of some of the elegant features available in MMANA-GAL through the Association column.