NON VI, SED ARTE

Many use antenna-modelling packages to explore performance and undertake ‘what if’ studies. I have used EZNEC for many years, but there are other options.

For simple antenna structures (dipoles, verticals, end-fed wires etc) inputting wire-coordinates, segment counts, and so forth is relatively straightforward; there’s not much typing, changing wire lengths is easy.

That said, once we wish to model more-complex structures, the ‘data input’ workload starts to increase. For example, consider a 2-element Quad for the 2m band, with a driven-element (DE) and a reflector (REF).

Using pencil and paper, we make some initial estimates of DE and REF sizes. We have 8 wires that need to be appropriately connected to 8 spatial coordinates (x,y,z). The 4 REF wires are slightly longer than the 4 DE wires. And, is the (0,0,0) point to be at the centre of the DE bottom wire, the centre of the DE square, or perhaps the notional centre of the whole structure?

After several minutes typing, correction of a few mistakes, and a various other inputs, we are ready to run. The initial output shows the antenna to be resonant around 147.7MHz, nowhere near our 145.0MHz design figure; and the front-to-back (F/B) looks poor relative to text-book figures.

As such, the DE and REF lengths need to increase to move down the band; the poor F/B may be a DE-REF spacing issue, and/or an issue with the DE and REF relative sizes.

All the wire lengths need to change, together with all the spatial coordinates, in fact almost every figure in the input grid will be different. Having used pencil and paper to re-calculate lengths and coordinates, several minutes of tedious typing are required to input the new data.

A second run shows the resonant frequency to be 145.9MHz; still too high. And the F/B doesn’t seem that much better.

How many rounds of ‘rinse and repeat’ are you up for?

Not too many I imagine. But, thankfully, there is a better way.

Buried deep inside the EZNEC manual is an explanation of how to automate the inputting of ‘Wires’ data. The image below shows the menu entry in the ‘Wires’ dialog box. Choose: Other | Import Wires From ASCII File | Replace Existing Wires…

We need to make the ASCII file (which must have CR/LF line-endings, not just LF). The format is:

; comment-line(s)
;
FT IN ← the required units
x1,y1,z1,x2,y2,z2,thickness,#segments ← wire coords, thickness, seg count

Each wire requires its own row. Below you will find a full example.

Using your favourite programming language - Python, Java, C, Rust, Fortran, 64-bit ARM assembly, or whatever, you can readily automate the production of these ASCII ‘Wires’ files.

Starting with a chosen frequency, computing all the wire lengths, arrangements and coordinates is no more than High-school geometry.

So now, even if we require 23 iterations of ‘rinse and repeat’ to reach our preferred solution, the whole workflow is relatively painless.

Apologies to the many (few?) who knew this already.

73 Dave

PS For those without O-level Latin, ‘Non vi, sed arte’ = ‘Not by force, by guile’, the motto of the Long-Range Desert Group.


; 2m 2-el quad v1.00
FT IN
0.000,0.000,24.142,0.000,0.858,24.142,0.1,7
0.000,0.000,24.142,0.000,-0.858,24.142,0.1,7
0.000,0.858,24.142,0.000,0.858,25.858,0.1,14
0.000,-0.858,24.142,0.000,-0.858,25.858,0.1,14
0.000,0.858,25.858,0.000,-0.858,25.858,0.1,14
-0.780,0.901,24.099,-0.780,-0.901,24.099,0.1,14
-0.780,0.901,24.099,-0.780,0.901,25.901,0.1,14
-0.780,-0.901,24.099,-0.780,-0.901,25.901,0.1,14
-0.780,0.901,25.901,-0.780,-0.901,25.901,0.1,14


3 Likes

To the contrary of your experience: I thought entering the wires in the obscure, cryptic, non-inutive ASCII / ‘.nec’ format was the only option. Didn’t realise there was a user-friendly GUI option available! Might have more hair, if I did.

1 Like

And talking of cryptic - your latin sounds more like some cryptic advice to linux editor / search-replace fanatics, which is what had me investigating the thread in the first place!

If you use proper software such as Ansoft HFSS there are drawing tools and sweeping options. There is a limited student edition which is free, the full version will require you to sell your house to pay for it.

Sadly the vi poison transcends lots of operating systems. The correct Latin would be

Non vi, sempre emacs :wink:

2 Likes

I never thought I’d see emacs-vi war era comments anywhere near SOTA.

i-EI8JEB-esc-:wq

2 Likes

Indeed - I have office documents littered with that sort of stuff.

Force of habit …

(sorry - in danger of thread hijack. Backing off!)

2 Likes

vi vi vi :ogre: Use of vi is not a sin but a penance.

Now VS Code - that’s much better :sweat_smile:

3 Likes

I can’t get to grips with vi(m). Always chickened out and used nano for years. Are there any good vim books or resources (aside from RTFM) for learning more about it for vim-shy nano fans?

Also, is that a Compaq laptop or a Wii?

3 Likes

It is very much off-topic now Ian but as a hardcore Vi(m) fan since its Amiga times I can provide guidance offline, or give you an incentivizing demo when we meet sometime here in Ireland. I wrote an entire book in Vim and wouldn’t be convinced to use any other text editor for serious focused work. I wouldn’t recommend it to everyone, and it feels masochistic when you learn it, but once you’re past that stage it becomes a part of you, especially if you are somewhat of an arithmomaniac. The short story, and what they don’t tell you in the manual, is that if you’re the type of person who has this factory brain fault that tells you to count things (you count steps when you walk, you count any items placed in front of you, etc.), then you will feel at home using vim. Think delete 5 words from here. Move 3 paragraphs up. Mark everything up to 4 fullstops from here. This is very natural in vi(m). Plus tons of other good things.

3 Likes

What are you going to do? edit config files, contribute to Discourses, write a novel? That then determines what you should learn. Just open the file in vim and then start doing whatever you want to do, and you find out the keys you need. Doing the tutor does give you some awareness of what can be done, and thinking in a vim way. If you do want a book, then practical vim is often recommended.

3 Likes

Probably option 1. The plugin’s are the attractive part to me for vi over nano.

Thanks for the book recommendation. I have access to O’Reilly through work so will have a look for it there.

1 Like

Dave,

Thanks for your suggestion. I think the motto is actually. “ I am not strong. I shall prevail with cunning treachery”. It’s a popular political guide.

73

Ron

VK3AFW.

2 Likes

Son, here’s a nickel, go get yourself a proper computer.

I remember Amigas, I made a nice amount of money selling GCR software that bypassed AmigaDos. And as Confucius’ taught us:

"Confucius he say man who do multitasking without hardware MMU going to learn hard way about corruption, segfaults and all kinds of groovy errors. "

We could talk about Amiga Dos and how it scattered files all over the disk to increase disk error reliability (a la Cross Interleaving on a CD) but I’m still laughing nearly forty years later at how slow it made file access. :rofl:

2 Likes

Normal use of vi is to fix the broken config files so emacs works!

I first used vi on a PDP11/44 running BSD 4.x in 1983 with about 30secs delay between keypress and response. When you are using vi for the first time such a delay is guaranteed to be the cause of intense hilarity. Next exposure was on an LSI 11/23+ running Xenix in 1984. Faster response but still the experience was lacking. But so much better than trying to use GEORGE III etc. on an ICL1905

EDIT: the memory gets hazy with time.. probably and 11/40 not 11/44.

3 Likes

This is where vi shined. I never experienced 30-sec delay, but 2-sec delays on modem telnet connections in the 90s were common. You could do 4j^i#Esc:wq as one series of strokes and maybe that’s all you needed.

1 Like

And yet there is a large group of Amiga fanatics until this day who continue to build hardware and software for it. Disk corruption was common indeed, plus wrapping your head around custom chip programming required wizard-level skills, but there was an audience that swore by that platform and still do, namely the demoscene hackers.

1 Like

The greatest computer of all-time (in my opinion). :blush:

4 Likes

Hmmm.

Actually, EZNEC gives you lots of other options that I use for adjusting models.

For a 2-element quad, for example, I can select one loop and scale the size by some factor to adjust it, using the Scale or the Change Loop Size options in the Wires menu. To adjust the whole antenna, I can find, for example, the frequency where the SWR is lowest, set the Frequency to that value, then have it rescale the antenna back to the desired frequency.

To adjust the element spacing, I just select the desired loop and use Group Modify, which lets me enter the X or Y coordinate (whichever goes along the boom) for one wire and moves all the selected wires accordingly.

About the only time that I’m entering in a bunch of coordinates is when I’m copying another design, and even then the Copy and Azimuth/Elevation Rotate commands come in handy for sets of radials, or adjusting the angle of an inverted vee. If I need to adjust the lengths of an inverted vee, I choose the two wires and use the Change Length By / Change Length To options to change both by the same amount, without needing to do any calculations of the resulting coordinates.

That’s not to say that I don’t sometimes spend a lot of time tweaking my models, but by using the tools built into EZNEC I can get a lot more done in that time.

Or, of course, you can just use AC6LA’s AutoEZ (running in Excel) to make the adjustments or collect data for you.

2 Likes

Roy, W7EL, has done a great job with EZNEC providing many features for antenna designers and investigators. And while modelling simple dipoles and verticals is straightforward, EZNEC can have a learning curve measured in years to make full use of its extensive capabilities.

Effective streamlining of the workflow probably means it becomes a tool we will continue to use, rather than something that always seems like an up-hill struggle.

Typically, we each decide what works best for us.

73 Dave

1 Like