Main Content

birdcage

Creates birdcage (MRI coil)

Description

The default birdcage object creates a birdcage MRI coil operating at 64 MHz or 128 MHz. This coil is most commonly used in clinical MRI. Its structure consists of two circular coils connected by conductive elements called rungs. The number of rungs depends on the size of the coil and is generally an even number.

The birdcage can be loaded/excited to model a highpass or lowpass coil.

Creation

Description

bc = birdcage creates a birdcage to model an MRI coil with default property values. The default dimensions are chosen for an operating frequency of around 64 MHz or 128 MHz.

example

bc = birdcage(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, bc = birdcage(NumRungs=8) creates a birdcage with eight rungs.

example

Properties

expand all

Number of rungs, specified as a scalar.

Example: 20

Data Types: int8

Coil radius, specified as a scalar in meters.

Example: 0.2

Data Types:

Coil height, specified as a scalar in meters.

Example: 0.089

Data Types: double

Height of rungs, specified as a scalar in meters. Distance is measured from the middle of the upper coil to the middle of the lower coil.

Example: 0.56

Data Types: double

Shield radius, specified as a scalar in meters. A value of zero indicates that the shield is absent.

Example: 0.2

Data Types: double

Shield height, specified as a scalar in meters. A value of zero indicates that the shield is absent.

Example: 0.089

Data Types: double

Dielectric mesh to load birdcage, specified as a structure having the following fields:

Points in custom dielectric mesh, specified as an N-by-3 matrix in meters. N is the number of points.

You can use the phantom property to insert a dielectric mesh in the shape of a human head into the bird cage antenna. This dielectric cylinder has a permeability of 80. You can upload this mesh in the form of a mat file.

Data Types: double

Tetrahedra in custom dielectric mesh, specified as an M-by-4 integer matrix. M is the number of tetrahedra.

Data Types: double

Relative permittivity of dielectric material, specified as a scalar.

Data Types: double

Loss in dielectric material, specified as a scalar.

Data Types: double

Data Types: struct

Location of feeds in Cartesian coordinates, specified as an N-by-3 matrix. You can also use the getLowPassLocs and getHighPassLocs functions to determine the feed locations in low-pass or high-pass mode.

Example: FeedLocations=[0.3981 0.0392 -0.2300;0.3528 0.1886 -0.2300]

Example: FeedLocations=getLowPassLocs(b)

Data Types: double

Magnitude of voltage applied to each feed, specified as a scalar or 1-by-N vector with each element unit in volts.

Example: 2

Data Types: double

Phase shift to the excitation voltage at each feed, specified as a scalar or 1-by-M vector with each element unit in degrees.

Example: 45

Data Types: double

Type of the metal used as a conductor, specified as a metal material object. You can choose any metal from the MetalCatalog or specify a metal of your choice. For more information, see metal. For more information on metal conductor meshing, see Meshing.

Example: m = metal('Copper'); 'Conductor',m

Example: m = metal('Copper'); ant.Conductor = m

Lumped elements added to the antenna feed, specified as a lumped element object. You can add a load anywhere on the surface of the antenna. By default, it is at the origin. For more information, see lumpedElement.

Example: 'Load',lumpedelement. lumpedelement is the object for the load created using lumpedElement.

Example: bc.Load = lumpedElement('Impedance',75)

Tilt angle of the antenna in degrees, specified as a scalar or vector. For more information, see Rotate Antennas and Arrays.

Example: 90

Example: Tilt=[90 90],TiltAxis=[0 1 0;0 1 1] tilts the antenna at 90 degrees about the two axes defined by the vectors.

Data Types: double

Tilt axis of the antenna, specified as one of these values:

  • Three-element vector of Cartesian coordinates in meters. In this case, each coordinate in the vector starts at the origin and lies along the specified points on the x-, y-, and z-axes.

  • Two points in space, specified as a 2-by-3 matrix corresponding to two three-element vectors of Cartesian coordinates. In this case, the antenna rotates around the line joining the two points.

  • "x", "y", or "z" to describe a rotation about the x-, y-, or z-axis, respectively.

For more information, see Rotate Antennas and Arrays.

Example: [0 1 0]

Example: [0 0 0;0 1 0]

Example: "Z"

Data Types: double | string

Object Functions

axialRatioCalculate and plot axial ratio of antenna or array
bandwidthCalculate and plot absolute bandwidth 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
efficiencyCalculate and plot radiation efficiency of antenna or array
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
getHighPassLocsFeeding location to operate birdcage as highpass coil
getLowPassLocsFeeding location to operate birdcage as lowpass coil
impedanceCalculate and plot input impedance of antenna or scan impedance of array
infoDisplay information about antenna, array, or platform
memoryEstimateEstimate memory required to solve antenna or array mesh
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
optimizeOptimize antenna or array using SADEA optimizer
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
rcsCalculate and plot monostatic and bistatic radar cross section (RCS) of platform, antenna, or array
resonantFrequencyCalculate and plot resonant frequency of antenna
returnLossCalculate and plot return loss of antenna or scan return loss of array
showDisplay antenna, array structures, shapes, or platform
sparametersCalculate S-parameters for antenna or array
stlwriteWrite mesh information to STL file
vswrCalculate and plot voltage standing wave ratio (VSWR) of antenna or array element

Examples

collapse all

Create and view a default birdcage coil.

bc = birdcage
bc = 
  birdcage with properties:

         NumRungs: 16
       CoilRadius: 0.4000
       CoilHeight: 0.0400
       RungHeight: 0.4600
     ShieldRadius: 0
     ShieldHeight: 0
          Phantom: []
    FeedLocations: [2x3 double]
      FeedVoltage: 1
        FeedPhase: 0
        Conductor: [1x1 metal]
             Tilt: 0
         TiltAxis: [1 0 0]
             Load: [1x1 lumpedElement]

figure
show(bc)
title("Birdcage Coil")

Figure contains an axes object. The axes object with title Birdcage Coil, xlabel x (mm), ylabel y (mm) contains 4 objects of type patch, surface. These objects represent PEC, feed.

Calculate and plot its magnetic field at 128 MHz.

[h] = EHfields(bc,128e6,ViewField="H")
h = 3×441 complex

   0.1282 + 0.1102i   0.1324 + 0.1088i   0.1266 + 0.1066i   0.1105 + 0.1044i   0.0854 + 0.1026i   0.0538 + 0.1014i   0.0193 + 0.1011i  -0.0139 + 0.1018i  -0.0417 + 0.1032i  -0.0610 + 0.1047i  -0.0699 + 0.1056i  -0.0674 + 0.1051i  -0.0539 + 0.1031i  -0.0308 + 0.0998i  -0.0011 + 0.0954i   0.0314 + 0.0902i   0.0626 + 0.0843i   0.0886 + 0.0780i   0.1068 + 0.0718i   0.1159 + 0.0661i   0.1154 + 0.0611i   0.1282 + 0.1102i   0.1314 + 0.1024i   0.1317 + 0.0940i   0.1294 + 0.0857i   0.1254 + 0.0780i   0.1203 + 0.0716i   0.1151 + 0.0668i   0.1101 + 0.0637i   0.1059 + 0.0622i   0.1025 + 0.0615i   0.1002 + 0.0613i   0.0988 + 0.0612i   0.0985 + 0.0610i   0.0993 + 0.0609i   0.1012 + 0.0611i   0.1040 + 0.0616i   0.1072 + 0.0623i   0.1103 + 0.0629i   0.1130 + 0.0629i   0.1148 + 0.0623i   0.1154 + 0.0611i   0.1282 + 0.1102i   0.1294 + 0.0967i   0.1334 + 0.0828i   0.1412 + 0.0690i   0.1532 + 0.0563i   0.1686 + 0.0453i   0.1860 + 0.0366i   0.2030 + 0.0304i
  -0.4232 - 0.3643i  -0.4324 - 0.3391i  -0.4306 - 0.3120i  -0.4192 - 0.2849i  -0.4006 - 0.2600i  -0.3777 - 0.2391i  -0.3535 - 0.2236i  -0.3307 - 0.2137i  -0.3112 - 0.2088i  -0.2963 - 0.2071i  -0.2868 - 0.2067i  -0.2830 - 0.2063i  -0.2850 - 0.2055i  -0.2927 - 0.2049i  -0.3053 - 0.2049i  -0.3213 - 0.2058i  -0.3387 - 0.2071i  -0.3553 - 0.2079i  -0.3689 - 0.2075i  -0.3779 - 0.2053i  -0.3812 - 0.2016i  -0.4232 - 0.3643i  -0.4342 - 0.3401i  -0.4338 - 0.3138i  -0.4235 - 0.2876i  -0.4055 - 0.2635i  -0.3830 - 0.2433i  -0.3590 - 0.2283i  -0.3362 - 0.2190i  -0.3167 - 0.2145i  -0.3018 - 0.2130i  -0.2923 - 0.2127i  -0.2886 - 0.2123i  -0.2906 - 0.2114i  -0.2983 - 0.2104i  -0.3107 - 0.2101i  -0.3264 - 0.2104i  -0.3434 - 0.2111i  -0.3592 - 0.2111i  -0.3717 - 0.2097i  -0.3793 - 0.2065i  -0.3812 - 0.2016i  -0.4232 - 0.3643i  -0.4328 - 0.3431i  -0.4271 - 0.3198i  -0.4071 - 0.2965i  -0.3753 - 0.2752i  -0.3358 - 0.2574i  -0.2934 - 0.2446i  -0.2530 - 0.2370i
  -0.0002 - 0.0003i  -0.0293 - 0.0074i  -0.0593 - 0.0117i  -0.0866 - 0.0138i  -0.1077 - 0.0141i  -0.1193 - 0.0133i  -0.1197 - 0.0117i  -0.1082 - 0.0100i  -0.0863 - 0.0089i  -0.0564 - 0.0090i  -0.0218 - 0.0101i   0.0137 - 0.0119i   0.0464 - 0.0138i   0.0727 - 0.0151i   0.0895 - 0.0158i   0.0953 - 0.0156i   0.0899 - 0.0144i   0.0749 - 0.0120i   0.0528 - 0.0084i   0.0267 - 0.0042i  -0.0003 + 0.0000i  -0.0002 - 0.0003i   0.0018 + 0.0004i   0.0039 + 0.0009i   0.0058 + 0.0011i   0.0074 + 0.0013i   0.0083 + 0.0013i   0.0084 + 0.0012i   0.0077 + 0.0011i   0.0062 + 0.0010i   0.0041 + 0.0009i   0.0017 + 0.0010i  -0.0007 + 0.0011i  -0.0031 + 0.0013i  -0.0049 + 0.0014i  -0.0062 + 0.0015i  -0.0067 + 0.0015i  -0.0063 + 0.0014i  -0.0054 + 0.0011i  -0.0039 + 0.0008i  -0.0021 + 0.0004i  -0.0003 + 0.0000i  -0.0002 - 0.0003i   0.0326 + 0.0081i   0.0665 + 0.0135i   0.0975 + 0.0162i   0.1213 + 0.0169i   0.1347 + 0.0161i   0.1352 + 0.0144i   0.1225 + 0.0125i

figure
EHfields(bc,128e6,ViewField="H")

Figure contains 2 axes objects and another object of type uicontrol. Axes object 1 with title Magnetic Field, xlabel X, ylabel Y contains an object of type quiver. Axes object 2 contains 4 objects of type patch, surface.

Antenna Toolbox™ provides two .mat files to load a phantom human head model into a birdcage antenna. The humanheadcoarse.mat contains a coarse dielectric mesh of the human head model and the humanheadfine.mat provides the user with a finer dielectric mesh. Load the coarse human head model.

Load human head model file. Extract the values of Points and Tetrahedra. Add a relative permittivity (EpsilonR) of 10 and a dielectric loss (LossTangent) of 0.002. Scale the dielectric mesh to fit in the birdcage antenna. In this case, the mesh points are multiplied by 0.003.

load humanheadcoarse.mat
humanhead = struct(Points=0.003*P,Tetrahedra=T,EpsilonR=10,...
    LossTangent=0.002)
humanhead = struct with fields:
         Points: [584x3 double]
     Tetrahedra: [2818x4 double]
       EpsilonR: 10
    LossTangent: 0.0020

Add and view the human head mesh inside the birdcage.

b = birdcage(Phantom=humanhead)
b = 
  birdcage with properties:

         NumRungs: 16
       CoilRadius: 0.4000
       CoilHeight: 0.0400
       RungHeight: 0.4600
     ShieldRadius: 0
     ShieldHeight: 0
          Phantom: [1x1 struct]
    FeedLocations: [2x3 double]
      FeedVoltage: 1
        FeedPhase: 0
        Conductor: [1x1 metal]
             Tilt: 0
         TiltAxis: [1 0 0]
             Load: [1x1 lumpedElement]

show(b)

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

Create a birdcage antenna.

b = birdcage;
show(b)

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

Use the birdcage as a high-pass coil.

b.FeedLocations = getHighPassLocs(b)
b = 
  birdcage with properties:

         NumRungs: 16
       CoilRadius: 0.4000
       CoilHeight: 0.0400
       RungHeight: 0.4600
     ShieldRadius: 0
     ShieldHeight: 0
          Phantom: []
    FeedLocations: [32x3 double]
      FeedVoltage: 1
        FeedPhase: 0
        Conductor: [1x1 metal]
             Tilt: 0
         TiltAxis: [1 0 0]
             Load: [1x1 lumpedElement]

show(b)

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

Shield the antenna to ensure that radiation does not leak out.

b.ShieldRadius = 0.5; 
b.ShieldHeight = 0.5;
show(b)

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

Version History

Introduced in R2017b