Beispiel #1
0
def plotJones_fromFEKOfiles(p_chan_file, q_chan_file, freq):
    (tvf_p, tvf_q) = (TVecFields(), TVecFields())
    tvf_p.load_ffe(p_chan_file)
    tvf_q.load_ffe(q_chan_file)
    (ant_p, ant_q) = (RadFarField(tvf_p), RadFarField(tvf_q))
    (p_chan_name, q_chan_name) = (os.path.basename(p_chan_file), os.path.basename(q_chan_file))
    (ant_p.name, ant_q.name) = (p_chan_name, q_chan_name)
    dualpolAnt = DualPolElem(ant_p, ant_q)
    dualpolAnt.plotJonesPat3D(freq, vcoord='circ',
                              projection='azimuthal-equidistant',
                              cmplx_rep='ReIm')
Beispiel #2
0
def plotJones_fromFEKOfiles(p_chan_file, q_chan_file, freq):
    (tvf_p, tvf_q) = (TVecFields(), TVecFields())
    tvf_p.load_ffe(p_chan_file)
    tvf_q.load_ffe(q_chan_file)
    (ant_p, ant_q) = (RadFarField(tvf_p), RadFarField(tvf_q))
    (p_chan_name, q_chan_name) = (os.path.basename(p_chan_file),
                                  os.path.basename(q_chan_file))
    (ant_p.name, ant_q.name) = (p_chan_name, q_chan_name)
    dualpolAnt = DualPolElem(ant_p, ant_q)
    dualpolAnt.plotJonesPat3D(freq,
                              vcoord='circ',
                              projection='azimuthal-equidistant',
                              cmplx_rep='ReIm')
Beispiel #3
0
def dualpolelem_2FF():
    """Test plot of a dual-polarized antenna where one channel is given
    by Psi and the other is a rotated copy it."""
    T, P = pntsonsphere.sphericalGrid()
    dipX = numpy.array(vsh.Psi(1, 1, T, P))+numpy.array(vsh.Psi(1, -1, T, P))
    dipXT = numpy.squeeze(dipX[0,:,:])
    dipXP = numpy.squeeze(dipX[1,:,:])
    freq = 1.0
    vfdipX = tvecfun.TVecFields(T, P, dipXT, dipXP, freq)
    antp = RadFarField(vfdipX)
    antq = antp.rotate90()
    dualpolAnt = DualPolElem(antp, antq)
    rotmat = pntsonsphere.rotzmat(0*math.pi/4)
    dualpolAnt.rotateframe(rotmat)
    dualpolAnt.plotJonesPat3D(freq, projection='azimuthal-equidistant', cmplx_rep='ReIm', )
Beispiel #4
0
def dualpolelem_2FF():
    """Test plot of a dual-polarized antenna where one channel is given
    by Psi and the other is a rotated copy it."""
    T, P = pntsonsphere.sphericalGrid()
    dipX = numpy.array(vsh.Psi(1, 1, T, P)) + numpy.array(vsh.Psi(1, -1, T, P))
    dipXT = numpy.squeeze(dipX[0, :, :])
    dipXP = numpy.squeeze(dipX[1, :, :])
    freq = 1.0
    vfdipX = tvecfun.TVecFields(T, P, dipXT, dipXP, freq)
    antp = RadFarField(vfdipX)
    antq = antp.rotate90()
    dualpolAnt = DualPolElem(antp, antq)
    rotmat = pntsonsphere.rotzmat(0 * math.pi / 4)
    dualpolAnt.rotateframe(rotmat)
    dualpolAnt.plotJonesPat3D(
        freq,
        projection='azimuthal-equidistant',
        cmplx_rep='ReIm',
    )