Main Content

planeWaveExcitation

Create plane wave excitation environment for antennas, arrays, planar structures or 3-D structures

Description

The planeWaveExcitation object creates an environment in which a plane wave excites an antenna, array, or a planar or 3-D structure. Plane wave excitation is a scattering solution that solves the receiver antenna problem.

Creation

Description

h = planeWaveExcitation creates an environment in which a plane wave excites an antenna or array. The default receiver antenna is a dipole that is excited by a plane wave travelling along the positive x-axis with a z-polarization.

example

h = planeWaveExcitation(Name=Value) sets properties using one or more name-value arguments. Name is the property name and Value is the corresponding value. You can specify several name-value arguments in any order as Name1=Value1,...,NameN=ValueN. Properties that you do not specify, retain their default values.

For example, h = planeWaveExcitation(Element=cloverleaf) creates an environment for a cloverleaf antenna where it is illuminated by an incident plane wave.

example

Properties

expand all

Antenna, array, or planar or 3-D structure, specified as one of these options:

The default element is a dipole.

Note

When SolverType property is set to "FMM", antennas with dielectric substrate other than "Air" except the dielectricLens object cannot be used to set the Element property.

Example: dielectricLens

Example: linearArray

Example: cavity(Exciter=[])

Example: shape.Sphere

Incidence direction of the plane wave, specified as a three-element real vector containing the Cartesian coordinates of a point in space. The object creates the direction vector by joining a line from origin to this point.

Example: Direction=[0 0 1]

Data Types: double

Polarization of the incident electric field, specified as a three-element complex vector containing the Cartesian components of the electric field in V/m. The polarization gives the orientation and magnitude of the electric field.

Example: Polarization=[0 1 0]

Data Types: double
Complex Number Support: Yes

Solver for the antenna analysis, specified as one of these values:

  • "MoM" — Use the method of moments solver.

  • "FMM" — Use the fast multipole method solver.

  • "PO" — Use the physical optics solver.

Example: "FMM"

Data Types: string

Object Functions

axialRatioCalculate and plot axial ratio of antenna or array
beamwidthBeamwidth of antenna
chargeCharge distribution on antenna or array surface
currentCurrent distribution on antenna or array surface
designDesign prototype antenna or arrays for resonance around specified frequency or create AI-based antenna from antenna catalog objects
doaDirection of arrival of signal
EHfieldsElectric and magnetic fields of antennas or embedded electric and magnetic fields of antenna element in arrays
feedCurrentCalculate current at feed for antenna or array
meshMesh properties of metal, dielectric antenna, or array structure
meshconfigChange meshing mode of antenna, array, custom antenna, custom array, or custom geometry
msiwriteWrite antenna or array analysis data to MSI planet file
patternPlot radiation pattern and phase of antenna or array or embedded pattern of antenna element in array
patternAzimuthAzimuth plane radiation pattern of antenna or array
patternElevationElevation plane radiation pattern of antenna or array
peakRadiationCalculate and mark maximum radiation points of antenna or array on radiation pattern
showDisplay antenna, array structures, shapes, or platform
solverAccess FMM solver settings for electromagnetic analysis
stlwriteWrite mesh information to STL file

Examples

collapse all

Excite a dipole antenna using a plane wave and view it.

h = planeWaveExcitation;
show(h)

Figure contains 2 axes objects. Axes object 1 with title dipole antenna element, xlabel x (m), ylabel y (m) contains 3 objects of type patch, surface. These objects represent PEC, feed. Axes object 2 contains 2 objects of type quiver. These objects represent dir, pol.

The blue arrow shows the direction of propagation of the plane wave. The default direction is along the x-axis. The pink arrow shows polarization of the plane wave. The default polarization is perpendicular to the direction of propagation. In this case, the polarization is along the z-axis.

Excite a dipole antenna using plane wave. Calculate the feed current at 70 MHz.

h = planeWaveExcitation 
h = 
  planeWaveExcitation with properties:

         Element: [1x1 dipole]
       Direction: [1 0 0]
    Polarization: [0 0 1]
      SolverType: 'MoM'

cur = feedCurrent(h,70e6)
cur = 
0.0182 - 0.0032i

Excite a dipole antenna using a plane wave. The polarization of the wave is along the z-axis and the direction of propagation is along the negative x-axis. View the antenna.

p = planeWaveExcitation(Element=dipole,Direction=[-1 0 0],Polarization=[0 0 1]);
show(p)

Figure contains 2 axes objects. Axes object 1 with title dipole antenna element, xlabel x (m), ylabel y (m) contains 3 objects of type patch, surface. These objects represent PEC, feed. Axes object 2 contains 2 objects of type quiver. These objects represent dir, pol.

Plot the current distribution on the dipole antenna at 70 MHz.

current(p,70e6);

Figure contains an axes object. The axes object with title Current distribution, xlabel x (m), ylabel y (m) contains 3 objects of type patch.

Consider a dipole excited by a plane wave.

p = planeWaveExcitation;
p.Direction = [0 1 1];
show(p)

Figure contains 2 axes objects. Axes object 1 with title dipole antenna element, xlabel x (m), ylabel y (m) contains 3 objects of type patch, surface. These objects represent PEC, feed. Axes object 2 contains 2 objects of type quiver. These objects represent dir, pol.

For this antenna, the polarization and direction are not orthogonal to each other and thus any analysis errors out.

Use the cross-product function to find the appropriate polarization direction of such wave.

p = planeWaveExcitation;
p.Polarization = cross(p.Direction,[0 1 1]);
show(p)

Figure contains 2 axes objects. Axes object 1 with title dipole antenna element, xlabel x (m), ylabel y (m) contains 3 objects of type patch, surface. These objects represent PEC, feed. Axes object 2 contains 2 objects of type quiver. These objects represent dir, pol.

Calculate the current distribution of the antenna.

current(p,75e6);

Figure contains an axes object. The axes object with title Current distribution, xlabel x (m), ylabel y (m) contains 3 objects of type patch.

Excite an infinite array using a plane wave.

p = planeWaveExcitation(Element=infiniteArray)
p = 
  planeWaveExcitation with properties:

         Element: [1x1 infiniteArray]
       Direction: [1 0 0]
    Polarization: [0 0 1]
      SolverType: 'MoM'

show(p)

Figure contains 2 axes objects. Axes object 1 with title Unit cell of reflector over a dipole in an infinite array, xlabel x (mm), ylabel y (mm) contains 7 objects of type patch, surface. These objects represent PEC, feed, Air, unit cell. Axes object 2 contains 2 objects of type quiver. These objects represent dir, pol.

This example shows how to create and analyze a cavity-shaped backing structure without an exciter element using planeWaveExcitation.

Create Cavity Antenna

Create a cavity antenna operating at 1 GHz using the design function and the cavity element from the antenna catalog. Display the antenna.

f = 1e9;
ant = design(cavity,f);
figure
show(ant)

Figure contains an axes object. The axes object with title cavity antenna element, xlabel x (mm), ylabel y (mm) contains 5 objects of type patch, surface. These objects represent PEC, feed.

Derive Backing Structure

Derive the backing structure from the cavity antenna by specifying the 'Exciter' property as an empty array.

ant.Exciter = []
ant = 
  cavity with properties:

            Exciter: []
          Substrate: [1x1 dielectric]
             Length: 0.1690
              Width: 0.1690
             Height: 0.0634
            Spacing: 0.0634
    EnableProbeFeed: 0
          Conductor: [1x1 metal]
               Tilt: 0
           TiltAxis: [1 0 0]
               Load: [1x1 lumpedElement]

Display the backing structure.

figure
show(ant)

Figure contains an axes object. The axes object with title cavity antenna element, xlabel x (mm), ylabel y (mm) contains 2 objects of type patch. This object represents PEC.

Mesh Backing Structure

Mesh the cavity structure with a maximum edge length of 10 mm.

figure
mesh(ant,MaxEdgeLength=10e-3)

Figure contains an axes object and an object of type uicontrol. The axes object with title Metal mesh, xlabel x (m), ylabel y (m) contains an object of type patch. This object represents PEC.

Plot Directivity Pattern

Use the cavity backing structure as a receiver element in a plane wave excitation environment and plot its directivity at 1 GHz.

pw = planeWaveExcitation(Element=ant);
figure
pattern(pw,f)

Figure contains 2 axes objects and other objects of type uicontrol. Axes object 1 contains 3 objects of type patch, surface. Hidden axes object 2 contains 17 objects of type surface, line, text, patch.

This example shows how to simulate the radiation pattern of a top-hat monopole structure with an FR4 dielectric substrate in receiver mode using the plane wave excitation environment.

Create Top-Hat Monopole Geometry

Use the shape objects and geometric operations to create the Top-Hat, ground plane, feed, and substrate shapes.

% Ground plane and substrate shapes
gnd = shape.Rectangle(Length=0.15,Width=0.075);
sub = shape.Box(Length=0.15,Width=0.075,Height=0.006,Dielectric="FR4");
[~] = translate(sub,[0 0 sub.Height/2]);
% Top-Hat and feed shapes
patch = shape.Rectangle(Length=0.075,Width=0.0375);
feed = shape.Rectangle(Length=0.006,Width=0.002);
[~] = translate(patch,[0 0 0.006]);
[~] = rotateY(feed,90);
[~] = translate(feed,[0 0 feed.Length/2]);

Add all the shapes to create the Top-Hat monopole structure. Use addSubstrate function to add an FR4 substrate to the structure.

antShape = add(gnd,patch);
antShape = add(antShape,feed);
antShapeWithSub = addSubstrate(antShape,sub);

Analyze Top-Hat Monopole Structure in Plane Wave Excitation Environment

Use the planeWaveExcitation object to create a plane wave excitation environment. Assign the Top-Hat monopole structure to the Element property of this object and view the structure.

env = planeWaveExcitation(Direction=[0 0 -1],Polarization=[1 1 0]);
env.Element = antShapeWithSub;
figure
show(env)

Figure contains 2 axes objects. Axes object 1 with title planeWaveExcitation of shape.Custom3D, xlabel x (mm), ylabel y (mm) contains 4 objects of type patch. These objects represent PEC, sub1. Axes object 2 contains 2 objects of type quiver. These objects represent dir, pol.

Use the pattern function to plot the radiation pattern of the structure at 1 GHz. in plane wave excitation environment.

figure
pattern(env,1e9)

Figure contains 2 axes objects and other objects of type uicontrol. Axes object 1 contains 4 objects of type patch. This object represents sub1. Hidden axes object 2 contains 17 objects of type surface, line, text, patch. This object represents sub1.

This example shows how to plot the surface current distribution of a custom patch antenna with an FR4 dielectric substrate in receiver mode using the plane wave excitation environment.

Create Custom Patch Antenna Geometry

Use the shape objects and geometric operations to create the patch, ground plane, feed, and substrate shapes.

% Ground plane and substrate shapes
gnd = shape.Rectangle(Length=0.15,Width=0.075);
sub = shape.Box(Length=0.15,Width=0.075,Height=0.006,Dielectric="FR4");
[~] = translate(sub,[0 0 sub.Height/2]);
% Patch and feed shapes
patch = shape.Rectangle(Length=0.075,Width=0.0375);
feed = shape.Rectangle(Length=0.006,Width=0.002);
[~] = translate(patch,[0 0 0.006]);
[~] = rotateY(feed,90);
[~] = translate(feed,[0 0 feed.Length/2]);

Add all the shapes to create the custom patch antenna structure. Use addSubstrate function to add an FR4 substrate to the structure. Use customAntenna object to convert the structure to an antenna. Add feed point to this antenna and view the custom antenna.

antShape = add(gnd,patch);
antShapeWithSub = addSubstrate(antShape,sub);
ant = customAntenna(Shape=antShapeWithSub);
[~] = createFeed(ant,[0 0 0],1,FeedShape=feed);
figure
show(ant)

Figure contains an axes object. The axes object with title customAntenna antenna element, xlabel x (mm), ylabel y (mm) contains 5 objects of type patch, surface. These objects represent PEC, feed, sub1.

Analyze Surface Current Distribution of Custom Patch Antenna

Use the planeWaveExcitation object to create a plane wave excitation environment. Assign the custom patch antenna to the Element property of this object. Plot the surface current distribution of this antenna at 1 GHz. in plane wave excitation environment.

env = planeWaveExcitation;
env.Element = ant;
figure
current(env,1e9,Scale="log10");

Figure contains an axes object. The axes object with title Current distribution (log10), xlabel x (m), ylabel y (m) contains 3 objects of type patch.

References

[1] Balanis, C. A. Antenna Theory. Analysis and Design. 3rd Ed. Hoboken, NJ: John Wiley & Sons, 2005.

Version History

Introduced in R2017a

expand all