real dist, r_coeff, length, angle; model ("inv-v uda-yagi") { real height, eps, gauge, segments, a, b, r_a, r_b; element center, left, right, r_center, r_left, r_right ; height = 10; eps = 0.01; gauge = #20; segments = 21; b = length*sin(pi*angle/2/180); a = length*sin(pi*(90 - angle/2)/180); r_b = b*r_coeff; r_a = a*r_coeff; center = wire(0,-eps, height, 0, eps, height, gauge, segments); left = wire(0, -b, height - a, 0,-eps, height, gauge, segments); right = wire(0, b, height - a, 0,eps,height, gauge, segments); // reflector r_center = wire(dist,-eps, height, dist, eps, height, gauge, segments); r_left = wire(dist, -r_b, height - r_a, dist,-eps, height, gauge, segments); r_right = wire(dist, r_b, height - r_a, dist,eps,height, gauge, segments); voltageFeed(center, 1.0, 0.0); azimuthPlotForElevationAngle(31); elevationPlotForAzimuthAngle(0); // frequencySweep(14.0, 14.35, 10); setFrequency(14.150); // poorGround(); averageGround(); // goodGround(); } control() { length = 5.25; while(length < 5.4) { angle = 90; while(angle < 130) { dist = -0.2; while(dist > -6) { r_coeff = 1.01; while(r_coeff < 1.1) { runModel(); if( vswr(1) < 1.33 ) { printf(">>> "); } printf("length = %.2f, dist = %.2f, angle = %.2f, r_coeff = %.2f, vswr = %.2f, maxGain = %.2f, elAngle = %.2f, F/B = %.2f\n", length, dist, angle, r_coeff, vswr(1), maxGain, elevationAngleAtMaxGain, frontToBackRatio); r_coeff = r_coeff + 0.01; } dist = dist - 0.1; } angle = angle + 5; } length = length + 0.05; } }