Help with a 4NEC2 antenna model - Page 1
Forum section: electronics / rf-microwave

author: A.Z.
author_rank: Super Contributor
timestamp: July 03, 2024, 03:43:56 pm
content: Hello all, I'm unsure if this is the right section to post this, if not please let me know and I'll move it elsewhereAs for the topic, days ago an old friend of mine which is a "hardcore" CBer asked me if I could model his "Sirio Vector 4000" (the antenna is the same as the "Avanti Sigma IV" and others), so I found some time and wrote a 4NEC2 model file for such an antenna, the model is the followingCode:CM Avanti Sigma 4 / Sirio Vector 4000CM use "auto segmentation" in NECCE' base valuesSY freq=27.210 ' calc frequencySY test=freq ' test frequency' materialsSY alum=37700000 ' alluminiumSY copp=58000000 ' copper' pipesSY pip0=0.0055 ' link at cage bottomSY pip1=0.0080 ' 16 mm diamSY pip2=0.0100 ' 20 mm diamSY pip3=0.0125 ' 25 mm diamSY wfac=1 ' shortening factorSY wave=(300/freq)*wfac ' LambdaSY ftop=0.50 ' upper section factorSY fbot=0.25 ' lower section factorSY ltop=(wave*ftop) ' upper section lengthSY lbot=(wave*fbot) ' lower section lengthSY ffac=0.81 ' feedpoint adjSY flow=(lbot*ffac) ' lower splitSY fupr=(lbot-flow) ' upper splitSY hfac=0.61 ' height factorSY base=(wave*hfac) ' base from groundSY hbot=flow+base ' lower section apexSY hmid=hbot+fupr ' upper section apexSY htop=hmid+ltop ' antenna apexSY rfac=0.2754 ' cage calc factorSY rads=(wave*rfac) ' cage elements lengthSY urad=(base+rads) ' ring heightSY stub=0.02 ' cage link at bottomSY uspc=0.336 ' ring radiusSY segl=31 ' long elementsSY segm=5 ' midsize elementsSY segs=1 ' short elementsSY fedw=1 ' feed elementSY feds=segm ' feed segment' ring dataSY rad=uspcSY inc=30SY a01=15SY a02=a01+incSY a03=a02+incSY a04=a03+incSY a05=a04+incSY a06=a05+incSY a07=a06+incSY a08=a07+incSY a09=a08+incSY a10=a09+incSY a11=a10+incSY a12=a11+inc' vertical elementsGW 1 segm 0 0 base 0 0 hbot pip2GW 2 segm 0 0 hbot 0 0 hmid pip3GW 3 segl 0 0 hmid 0 0 htop pip3' cage linksGW 4 segs 0 0 base stub 0 base pip0GW 5 segs 0 0 base -stub 0 base pip0GW 6 segs 0 0 base 0 stub base pip0GW 7 segs 0 0 base 0 -stub base pip0' cage elementsGW 10 segm stub 0 base uspc 0 urad pip1GW 11 segm -stub 0 base -uspc 0 urad pip1GW 12 segm 0 stub base 0 uspc urad pip1GW 13 segm 0 -stub base 0 -uspc urad pip1' cage ringGW 31 3 rad*sin(a01) rad*cos(a01) urad rad*sin(a01+inc) rad*cos(a01+inc) urad pip1GW 32 3 rad*sin(a02) rad*cos(a02) urad rad*sin(a02+inc) rad*cos(a02+inc) urad pip1GW 33 3 rad*sin(a03) rad*cos(a03) urad rad*sin(a03+inc) rad*cos(a03+inc) urad pip1GW 34 3 rad*sin(a04) rad*cos(a04) urad rad*sin(a04+inc) rad*cos(a04+inc) urad pip1GW 35 3 rad*sin(a05) rad*cos(a05) urad rad*sin(a05+inc) rad*cos(a05+inc) urad pip1GW 36 3 rad*sin(a06) rad*cos(a06) urad rad*sin(a06+inc) rad*cos(a06+inc) urad pip1GW 37 3 rad*sin(a07) rad*cos(a07) urad rad*sin(a07+inc) rad*cos(a07+inc) urad pip1GW 38 3 rad*sin(a08) rad*cos(a08) urad rad*sin(a08+inc) rad*cos(a08+inc) urad pip1GW 39 3 rad*sin(a09) rad*cos(a09) urad rad*sin(a09+inc) rad*cos(a09+inc) urad pip1GW 40 3 rad*sin(a10) rad*cos(a10) urad rad*sin(a10+inc) rad*cos(a10+inc) urad pip1GW 41 3 rad*sin(a11) rad*cos(a11) urad rad*sin(a11+inc) rad*cos(a11+inc) urad pip1GW 42 3 rad*sin(a12) rad*cos(a12) urad rad*sin(a12+inc) rad*cos(a12+inc) urad pip1GE 1GN 2 0 0 0 13 0.005LD 5 0 0 0 alumEKEX 0 fedw feds 0 1 0 0FR 0 1 0 0 test 0ENnow, the model works w/o problems, even if I was forced to set "auto segmentation" in NEC due to the cage elements junctions creating warnings, but the problem is that running the model I get a gain of 5.89dBi (see attached image) which seems too good to be true, so I'm here asking if someone with more expertise than me in 4NEC2/NEC would be so kind to revise the model and tell me where the error is

author: tomnut
author_rank: Newbie
timestamp: July 06, 2024, 12:17:37 am
content: Nice coding in the 4nec2 model!NEC2 is sensitive to segments at acute angles like this, especially near the feedpoint.I can't see how many segments you have, but it's possible the bottom four are almost overlapping where the meet.The right way to model this would be to extend a single wire upwards for some distance. Make it a bit fatter if you like (but respect the length/diameter ratio, at least 2:1).Then at some point say 1/5 of the way up, branch out with four wires at about 45 degrees, and then continue with the almost-parallel wires all the way to the ring.Maybe you have done this, I can't quite tell from the file.You could also just model the ring with four wires, no need to make it circular, the effect will be very small.To test the model, apart from throwing no errors,- switch to a perfect ground plane- turn on integration over radiation pattern- confirm that the integrated radiated power is the same as the input power (I think... could be a factor of 2 because of the hemisphere)

author: A.Z.
author_rank: Super Contributor
timestamp: July 08, 2024, 08:13:52 am
content: Thank you, nothing special, I'm far below the level of knowledge of people like Owen Duffy or Cebik, my only merit is using a vanilla editor to create/modify the NEC models, instead of using the built-in "easy" editorAs for the segments, they are defined by the "segl", "segm" and "segs" symbols in the model, the warnings I'm getting from NEC are the followingCode:Warn.: Wire 1, seg 5 (tag 1), EX-src: Nearby segm-length or radius differs too much.Error: Wire 1, seg 1 (tag 1), seg-len (0.489) differs more than 5 * seg-len (0.02) for wire 4Error: Wire 1, seg 5 (tag 1), seg-len (0.489) differs more than 5 * seg-len (0.073) for wire 2Error: Wire 2, seg 6 (tag 2), seg-len (0.073) differs more than 5 * seg-len (0.489) for wire 1Warn.: Wire 2, seg 6 (tag 2), len/rad at junction (5.842) below 6.Warn.: Wire 2, seg 10 (tag 2), len/rad at junction (5.842) below 6.Warn.: Wire 4, seg 42 (tag 4), len/rad at junction (3.636) below 6.Error: Wire 4, seg 42 (tag 4), seg-len (0.02) differs more than 5 * seg-len (0.622) for wire 8Warn.: Wire 4, seg 42 (tag 4), len/rad at junction (3.636) below 6.Warn.: Wire 5, seg 43 (tag 5), len/rad at junction (3.636) below 6.Error: Wire 5, seg 43 (tag 5), seg-len (0.02) differs more than 5 * seg-len (0.622) for wire 9Warn.: Wire 5, seg 43 (tag 5), len/rad at junction (3.636) below 6.Warn.: Wire 6, seg 44 (tag 6), len/rad at junction (3.636) below 6.Error: Wire 6, seg 44 (tag 6), seg-len (0.02) differs more than 5 * seg-len (0.622) for wire 10Warn.: Wire 6, seg 44 (tag 6), len/rad at junction (3.636) below 6.Error: Wire 7, seg 45 (tag 7), seg-len (0.02) differs more than 5 * seg-len (0.489) for wire 1Warn.: Wire 7, seg 45 (tag 7), len/rad at junction (3.636) below 6.Error: Wire 7, seg 45 (tag 7), seg-len (0.02) differs more than 5 * seg-len (0.622) for wire 11Warn.: Wire 7, seg 45 (tag 7), len/rad at junction (3.636) below 6.Error: Wire 8, seg 46 (tag 10), seg-len (0.622) differs more than 5 * seg-len (0.02) for wire 4Error: Wire 9, seg 51 (tag 11), seg-len (0.622) differs more than 5 * seg-len (0.02) for wire 5Error: Wire 10, seg 56 (tag 12), seg-len (0.622) differs more than 5 * seg-len (0.02) for wire 6Error: Wire 11, seg 61 (tag 13), seg-len (0.622) differs more than 5 * seg-len (0.02) for wire 7and I've tried changing the segments to no luck, so I was forced to enable "auto segmentation" even if I don't like that, as for the problematic areas, I'm attaching a pic showing themHope that you may spot where my mistakes are, because sincerely I'm here scratching my head