Public Functions for Marconi
Index
Marconi.ArrayFactorMarconi.DataNetworkMarconi.EquationNetworkMarconi.RadiationPatternMarconi.RadiationPatternBase.:+Marconi.applyAFMarconi.cascadeMarconi.cascadeMarconi.cascadeMarconi.equationToDataNetworkMarconi.generateCircularAFMarconi.generateRectangularAFMarconi.inputZMarconi.inputZMarconi.interpolateMarconi.phaseLocationsMarconi.plotLStabCircle!Marconi.plotPattern2DMarconi.plotPattern3DMarconi.plotSStabCircle!Marconi.plotSmithCircle!Marconi.plotSmithDataMarconi.plotSmithData!Marconi.plotVSWR!Marconi.processTouchstoneLineMarconi.readHFSSPatternMarconi.readTouchstoneMarconi.s2tMarconi.s2yMarconi.s2zMarconi.t2sMarconi.testDeltaMarconi.testKMarconi.testMAGMarconi.testMSGMarconi.testMUGMarconi.testMagDeltaMarconi.testμMarconi.writeTouchstoneMarconi.y2sMarconi.y2tMarconi.y2zMarconi.z2sMarconi.z2tMarconi.z2yMarconi.ΓMarconi.∠
Public Interface
Marconi.ArrayFactor — Type.ArrayFactorStores the array factor due to N isotropic radiators located at locations with phasor excitations excitations. Calling an ArrayFactor object with the arguments ϕ,θ,and frequency will return in dB the value of the AF at that location in spherical coordinates.
Marconi.DataNetwork — Type.The base Network type for representing n-port linear networks with characteristic impedance Z0. By default, the network is stored as S-Parameters with the corresponding frequency list.
Marconi.EquationNetwork — Type.The base Network type for representing n-port linear networks with characteristic impedance Z0. The S-Parameters for an EquationNetwork are defined by a function that returns a ports-square matrix and accepts kwargs Z0 and freq. Please provide default arguments for any input parameters.
Marconi.RadiationPattern — Type.RadiationPatternStores a 3D antenna radiation pattern in spherical coordinates. Φ and Θ are in degrees, pattern is in dBi
Marconi.RadiationPattern — Method. RadiationPattern(AF,ϕ,θ,freq)Constructs a RadiationPattern from an ArrayFactor sampled in ϕ and θ at freq
Base.:+ — Method. +(Pattern1,Pattern2)Adds two patterns of equal size together. Useful for arrays
Marconi.applyAF — Method. applyAF(pattern,AF,freq)Applys an ArrayFactor to a RadiationPattern.
Marconi.cascade — Method.cascade(net1,net2,net3,...,netN)Returns a new DataNetwork that is the cascaded result of net1,net2,net3,...netN where the nets are a mixture of 2-Port DataNetwork objects and 2-Port EquaionNetwork object. Optionally takes kwarg numpoints for how many points in the result.
See the docs for details of dealing with equation-driven networks
Marconi.cascade — Method.cascade(net1,net2,net3,...,netN)Returns a new DataNetwork that is the cascaded result of net1,net2,net3,...netN where the nets are 2-Port DataNetwork objects. Optionally takes kwarg numpoints for how many points in the result.
Marconi.cascade — Method.cascade(net1,net2,net3,...,netN)Returns a new EquationNetwork that is the cascaded result of net1,net2,net3,...netN where the nets are 2-Port EquationNetwork objects.
See the docs for details of dealing with equation-driven networks
Marconi.equationToDataNetwork — Method.equationToDataNetwork(equationNet,args=(arg1,arg2),freqs=[1,2,3])Utility function to convert an equation network to a data network by evaluating it at every frequency in the list or range freqs.
Marconi.generateCircularAF — Method. generateCircularAF(N,R,ϕ,θ,freq)Creates an ArrayFactor object from a circular array with N excitations in a circle with radius R. The excitations are phased such that the main beam is in the ϕ, θ, direction at frequency freq.
Marconi.generateRectangularAF — Method. generateRectangularAF(Nx,Ny,Spacingx,Spacingy,ϕ,θ,freq)Creates an ArrayFactor object from a rectangular array that is Nx X Ny big with spacing Spacingx and Spacingy. The excitations are phased such that the main beam is in the ϕ, θ, direction at frequency freq.
Marconi.inputZ — Method.inputZ(Zr,Θ,Z0)Calculates the input impedance of a lossless transmission line of length θ in degrees terminated with Zr. Z0 is optional and defaults to 50.
Marconi.inputZ — Method.inputZ(Γ,Z0)Calculates the input impedace from complex reflection coefficient Γ. Z0 is optional and defaults to 50.
Marconi.interpolate — Method.interpolate(network,frequencies)Returns a new network object that contains data from network reinterpolated to fit frequencies.
Marconi.phaseLocations — Method. phaseLocations(Locations,ϕ,θ,freq)Given antennas at locations Locations which is a vector of 3-Tuples of cartesian coordinates, calculate the corresponding phases to steer the beam in ϕ and θ at frequency freq
Marconi.plotLStabCircle! — Method.plotLStabCircle!(sc,network,freq)Plots the the load stability circle on Smith Chart sc from network at frequency freq.
Marconi.plotPattern2D — Method. plotPattern2D(pattern,ϕ)Plots the 2D Radiation Pattern of pattern at the phi cut ϕ. Optionally can set the minimum and maximum gain with kwargs gainMin and gainMax.
Marconi.plotPattern3D — Method. plotPattern3D(pattern,ϕ)Plots the 3D Radiation Pattern of pattern. Optionally can set the minimum and maximum gain with kwargs gainMin and gainMax.
Marconi.plotSStabCircle! — Method.plotSStabCircle!(sc,network,freq)Plots the the source stability circle on Smith Chart sc from network at frequency freq.
Marconi.plotSmithCircle! — Method.plotSmithCircle!(sc, xc, yc, rad)Plots a cricle with center coordinates (xc,yc) on the $\Gamma$ plane with radius rad on an existing Smith Chart object.
Returns the sc object
Marconi.plotSmithData! — Method.plotSmithData!(sc, network,(1,1))Plots the S(1,1) parameter from network on an existing Smith Chart sc
Returns the sc object
Marconi.plotSmithData — Method.plotSmithData(network,(1,1))Plots the S(1,1) parameter from network on a Smith Chart.
Returns a PGFPlotsX.SmithChart object.
Marconi.plotVSWR! — Method.plotVSWR!(sc,VSWR)Plots the circle that represents a VSWR of VSWR onto an existing Smith Chart.
Marconi.readHFSSPattern — Method. readHFSSPattern("myAntenna.csv")Reads the exported fields from HFSS into a Marconi RadiationPattern object.
Marconi.readTouchstone — Method.readTouchstone("myFile.sNp")Reads the contents of myFile.sNp into a Network object. This will convert all file types to S-Parameters, Real/Imaginary
Currently does not support reference lines (Different port impedances) or noise parameters
Marconi.s2t — Method. s2t(s)Converts S-Parameters s to T-Parameters.
Marconi.s2y — Method. s2y(s)Converts S-Parameters s to Y-Parameters. Optionally include reference impedance with kwarg Z0 with s2z(s,Z0=50).
Marconi.s2z — Method. s2z(s)Converts S-Parameters s to Z-Parameters. Optionally include reference impedance with kwarg Z0 with s2z(s,Z0=50).
Marconi.t2s — Method. t2s(t)Converts T-Parameters t to S-Parameters.
Marconi.testDelta — Method.testDelta(network)Returns a vector of Δ, the determinant of the scattering matrix. Optionally, returns Δ for S-Parameters at position pos.
Marconi.testK — Method.testK(network)Returns a vector of the magnitude of K, the Rollet stability factor.
Marconi.testMAG — Method.testMAG(network)Returns a vector of the maximum available gain of a network.
Marconi.testMSG — Method.testMSG(network)Returns a vector of the maximum stable gain of a network.
Marconi.testMUG — Method.testMUG(network)Returns a vector of the maximum unilateral gain of a network.
Marconi.testMagDelta — Method.testMagDelta(network)Returns a vector of |Δ|, the magnitude of the determinant of the scattering matrix. Optionally, returns |Δ| for S-Parameters at position pos.
Marconi.testμ — Method.testμ(network)Returns a vector of the magnitude of μ, the μ stability factor[1].
Definition
The network is unconditionally stable if μ > 1, for μ defined as:
[1]: M. L. Edwards and J. H. Sinsky, "A new criterion for linear 2-port stability using a single geometrically derived parameter," in IEEE Transactions on Microwave Theory and Techniques, vol. 40, no. 12, pp. 2303-2311, Dec. 1992. doi: 10.1109/22.179894
Marconi.writeTouchstone — Method.writeTouchstone(network,filename)Writes a Touchstone file from a Marconi network.
Marconi.y2s — Method. y2s(y)Converts Y-Parameters y to S-Parameters. Optionally include reference impedance with kwarg Z0 with y2s(y,Z0=50).
Marconi.y2t — Method. y2t(y)Converts Y-Parameters y to T-Parameters. Optionally include reference impedance with kwarg Z0 with y2s(y,Z0=50).
Marconi.y2z — Method. y2z(y)Converts Y-Parameters y to Z-Parameters.
Marconi.z2s — Method. z2s(z)Converts Z-Parameters z to S-Parameters. Optionally include reference impedance with kwarg Z0 with z2s(z,Z0=50).
Marconi.z2t — Method. z2t(z)Converts Z-Parameters z to T-Parameters. Optionally include reference impedance with kwarg Z0 with z2s(z,Z0=50).
Marconi.z2y — Method. z2y(z)Converts Z-Parameters z to Y-Parameters.
Marconi.Γ — Method.Γ(Z,Z0)Calculates the complex reflection coefficient Γ from impedance Z. Z0 is optional and defaults to 50.
Marconi.∠ — Method.∠(mag,angle)A nice compact way of representing phasors. Angle is in degrees.
Marconi.processTouchstoneLine — Method.Internal function to process touchstone lines