Hello Jeff,
I have sent you some cantenna models via email. They are very long, I
couldnt post it here.
Here is the source code of my cantenna model (not 4nec2/nec2/nec4
compatible!):
As I mentioned in email, the source antenna model have to be compiled.
---------------------------------
CM Cantenna WLAN Antenna Model at 2.437 GHz
CM (C) 2007 by Aziz Oeguet
CM File: Cantenna2G4Hz.txt
CE
#include "Common.txt"
#include "PP4NEC2Defs.txt"
ofsx = -0.05 // Offset x-Achsenverschiebung (zur besseren 3D-
Darstellung)
//--- Kontrollschalter (Switches) f�r Modellkonfiguration ---
#ifndef CANTENNA_TRICHTER
CANTENNA_TRICHTER = 1 // Trichter-Blende (0=kein, 1=mit)
#endif
#ifndef CANTENNA_WRMODE
CANTENNA_WRMODE = 1 // Drahtmodus (0=Surface-Path, 1=Wire-Modus)
#endif
#ifndef CANTENNA_CALC
CANTENNA_CALC = 0 // Cantenna parameter berechnen (1=berechnen,
0=auf manuellen Wert lassen)
#endif
#pragma symode = _SYMODE_REUSE
//--- Feeder(Erreger)-Parameter (Lambda/4-Element) ---
Feed_Durchmesser = 0.0015 // Antennendrahtdurchmesser
Feed_Rad = Feed_Durchmesser/2 // Antennendrahtradius
Feed_nSeg = 9 // Anzahl Segmente des
Antennendrahtes
Feed_Tagnr = 1000 // Draht Tagnummer-Start
Feed_Segnr = 1 // Segment-Number des Erregerst�cks
#if !CANTENNA_CALC
Feed_Len = 0.0308 // Antennendrahtl�nge
#else
Feed_Len = lambda/4 // Antennendrahtl�nge (Wellenl�nge/4)
#endif
Feed_Delta = Feed_Len/Feed_nSeg // Segment-L�nge (Antennendraht)
//--- Cantenna-Parameter (Tubus) ---
TubusnSegLen = 15 // Anzahl der Segmente in Tubus-L�nge
TubusnSegRad = 6 // Anzahl der Segmente im Tubus-Radius
TubusnSegMantel = 32 // Anzahl der Segmente im Tubus-Mantel
TrichternSegLen = 12 // Anzahl der Segmente in Trichter-L�nge
TrichternSegMantel = 32 // Anzahl der Segmente im Trichter-Mantel
TubusDurchmesser = 0.1 // Tubus-Durchmesser
TrichterDurchmesser = 0.198 // Trichter-Durchmesser
TrichterLen = 0.086 // Trichter-L�nge
TubusRadius = TubusDurchmesser/2 // Tubus-Radius
TrichterRadius = TrichterDurchmesser/2 // Trichter-Radius
#if !CANTENNA_CALC
//--- Cantenna Parameter manuell ---
TubusLen = 0.135 // Tubus-L�nge
Feed_Dist = 0.044452 // Erregerabstand zu hinteren Wand
#else
//--- Cantenna Parameter berechnen ---
DLc = 1.706*TubusDurchmesser
DLg = 1/sqr((1/(lambda*lambda))-(1/(DLc*DLc)))
TubusLen = DLg*3/4 // Tubus-L�nge
Feed_Dist = DLg/4 // Erregerabstand zu hinteren Wand
#endif
Feedzpos = -TubusRadius // Erregerfusspunkt (unten)
//--- Feeder ---
// Erregerspeisedraht
GW Feed_Tagnr Feed_nSeg 0 0 Feedzpos-Feed_Delta/2 0 0 Feedzpos
+Feed_Len-Feed_Delta/2 Feed_Rad
// winziger Anschlussstummel unten (NEC2 Warnung umgehen)
GW Feed_Tagnr+1 1 0 0 Feedzpos-Feed_Delta/2 0 0 Feedzpos-Feed_Delta/
2-Feed_Delta Feed_Rad
p1x = Feed_Dist-0.04
p1y = -0.03
p1z =-0.03
p2x = Feed_Dist+0.11
p2y = 0.05
p2z = 0.03
rad = 0.04
//--- Hotspot (am Erreger in der N�he keine Objekte generieren) ---
#Hotspot point=_HS_OUTSIDE Feed_Dist 0 Feedzpos 0.005
// F�r hintere Wand des Tubus n�tig, da Vierecke im Mittelpunkt zu
Dreiecken werden.
#pragma limits=1, minwirelen=0.001, minareasize=0.000001
//--- Tubus generieren ---
#if CANTENNA_WRMODE
// Parameter f�r Wire-Modus
#pragma mode= _MODE_WR, wrnumseg = 1, wrtagstart=2000, wrtaginc = 1,
wrradius = Feed_Rad
#else
#pragma mode= _MODE_SP
#endif
//--- Tubus um Erregerabstand nach hinten verschieben ---
#Move -Feed_Dist 0 0
w1 = 180
w2 = w1+360
// Tubus generieren
#Pipe TubusnSegMantel TubusnSegLen 0 0 0 w1 w2 TubusRadius TubusRadius
TubusRadius TubusRadius TubusLen _R1|_R2|_A1
// Hintere Wand (Ring) generieren
#SPArc TubusnSegMantel TubusnSegRad 0 0 0 w1 w2 0 0 TubusRadius
TubusRadius _A1
// Trichter generieren
#if CANTENNA_TRICHTER
#Pipe TrichternSegMantel TrichternSegLen TubusLen 0 0 w1 w2
TubusRadius TubusRadius TrichterRadius TrichterRadius TrichterLen _R2|
_A1
#endif
#Transform // Transformation abschliessen (Move)
//--- Ende Tubus-Verschiebung ---
// Achsen-Transformation (um aus dem Nahfeld rauszukommen)
#if !CANTENNA_TRICHTER
GM 0 0 0 0 0 -TubusLen+Feed_Dist+ofsx 0 0 0
#else
GM 0 0 0 0 0 -TubusLen+Feed_Dist-TrichterLen+ofsx 0 0 0
#endif
// End-Of-Geometry
GE 0
//--- Wire-Load (HF-Speisung) ---
EX 0 Feed_Tagnr Feed_Segnr 0 1.0 0.0
LD 5 0 0 0 62900000
// Extended-Wire-Kernel einschalten
EK 1
//--- Frequency Parameter and Execute ---
FR 0 1 0 0 freq 1
RP 0 91 181 1001 -180 0 2 2
EN
-----------------------END-------------------