function out = model % % Dipole_AxialSym_Eigenvalue.m % % Model exported on Jun 25 2013, 23:22 by COMSOL 4.3.0.184. import com.comsol.model.* import com.comsol.model.util.* model = ModelUtil.create('Model'); model.modelPath('C:\Users\xyi6\Lester\FHWA\Simulation\Comsol\dipole'); model.name('dipole_antenna_AxialSym_Eigenvalue.mph'); model.param.set('Freq', '1e8'); model.param.set('c', '3e8'); model.param.set('lamda', 'c/Freq'); model.param.set('R', 'lamda*0.3'); model.param.set('L_dipole', 'lamda/4'); model.param.set('W_dipole', 'lamda/50'); model.param.set('Gap', 'lamda/1000'); model.param.set('offset', 'lamda/150'); model.modelNode.create('mod1'); model.geom.create('geom1', 2); model.geom('geom1').axisymmetric(true); model.geom('geom1').feature.create('r1', 'Rectangle'); model.geom('geom1').feature.create('r2', 'Rectangle'); model.geom('geom1').feature.create('r3', 'Rectangle'); model.geom('geom1').feature.create('r5', 'Rectangle'); model.geom('geom1').feature.create('c1', 'Circle'); model.geom('geom1').feature.create('b1', 'BezierPolygon'); model.geom('geom1').feature.create('r4', 'Rectangle'); model.geom('geom1').feature.create('dif1', 'Difference'); model.geom('geom1').feature('r1').set('pos', {'0' 'Gap/2'}); model.geom('geom1').feature('r1').set('size', {'W_dipole/2' 'L_dipole'}); model.geom('geom1').feature('r2').set('pos', {'0' '-L_dipole-Gap/2'}); model.geom('geom1').feature('r2').set('size', {'W_dipole/2' 'L_dipole'}); model.geom('geom1').feature('r3').set('pos', {'offset' '0'}); model.geom('geom1').feature('r3').set('size', {'W_dipole/2-offset' 'Gap/2'}); model.geom('geom1').feature('r5').set('pos', {'offset' '-Gap/2'}); model.geom('geom1').feature('r5').set('size', {'W_dipole/2-offset' 'Gap/2'}); model.geom('geom1').feature('c1').set('rot', '-90'); model.geom('geom1').feature('c1').set('r', 'R'); model.geom('geom1').feature('c1').set('angle', '180'); model.geom('geom1').feature('b1').active(false); model.geom('geom1').feature('b1').set('p', {'W_dipole/2' 'W_dipole/2'; '-Gap/2' 'Gap/2'}); model.geom('geom1').feature('b1').set('degree', {'1'}); model.geom('geom1').feature('b1').set('w', {'1' '1'}); model.geom('geom1').feature('r4').set('pos', {'0' '-Gap/2'}); model.geom('geom1').feature('r4').set('size', {'offset' 'Gap'}); model.geom('geom1').feature('dif1').selection('input').set({'c1'}); model.geom('geom1').feature('dif1').selection('input2').set({'r1' 'r2' 'r3' 'r4'}); model.geom('geom1').run; model.view.create('view2', 3); model.material.create('mat2'); model.material('mat2').propertyGroup('def').func.create('eta', 'Piecewise'); model.material('mat2').propertyGroup('def').func.create('Cp', 'Piecewise'); model.material('mat2').propertyGroup('def').func.create('rho', 'Analytic'); model.material('mat2').propertyGroup('def').func.create('k', 'Piecewise'); model.material('mat2').propertyGroup('def').func.create('cs', 'Analytic'); model.physics.create('emw', 'ElectromagneticWaves', 'geom1'); model.physics('emw').feature.create('pec2', 'PerfectElectricConductor', 1); model.physics('emw').feature('pec2').selection.set([2 4 5 6 8 10 11]); model.physics('emw').feature.create('sctr1', 'Scattering', 1); model.physics('emw').feature('sctr1').selection.set([12 13]); model.physics('emw').feature.create('ffd1', 'FarFieldDomain', 2); model.physics('emw').feature('ffd1').selection.set([1]); model.physics('emw').feature.create('port1', 'Port', 1); model.physics('emw').feature('port1').selection.set([7]); model.mesh.create('mesh1', 'geom1'); model.mesh('mesh1').feature.create('ftri1', 'FreeTri'); model.view('view1').axis.set('xmin', '-0.7803702354431152'); model.view('view1').axis.set('xmax', '1.6803703308105469'); model.view('view1').axis.set('ymin', '-0.9899999499320984'); model.view('view1').axis.set('ymax', '0.9899999499320984'); model.material('mat2').name('Air'); model.material('mat2').propertyGroup('def').func('eta').set('arg', 'T'); model.material('mat2').propertyGroup('def').func('eta').set('pieces', {'200.0' '1600.0' '-8.38278E-7+8.35717342E-8*T^1-7.69429583E-11*T^2+4.6437266E-14*T^3-1.06585607E-17*T^4'}); model.material('mat2').propertyGroup('def').func('Cp').set('arg', 'T'); model.material('mat2').propertyGroup('def').func('Cp').set('pieces', {'200.0' '1600.0' '1047.63657-0.372589265*T^1+9.45304214E-4*T^2-6.02409443E-7*T^3+1.2858961E-10*T^4'}); model.material('mat2').propertyGroup('def').func('rho').set('expr', 'pA*0.02897/8.314/T'); model.material('mat2').propertyGroup('def').func('rho').set('args', {'pA' 'T'}); model.material('mat2').propertyGroup('def').func('rho').set('dermethod', 'manual'); model.material('mat2').propertyGroup('def').func('rho').set('argders', {'pA' 'd(pA*0.02897/8.314/T,pA)'; 'T' 'd(pA*0.02897/8.314/T,T)'}); model.material('mat2').propertyGroup('def').func('rho').set('plotargs', {'pA' '' ''; 'T' '' ''}); model.material('mat2').propertyGroup('def').func('k').set('arg', 'T'); model.material('mat2').propertyGroup('def').func('k').set('pieces', {'200.0' '1600.0' '-0.00227583562+1.15480022E-4*T^1-7.90252856E-8*T^2+4.11702505E-11*T^3-7.43864331E-15*T^4'}); model.material('mat2').propertyGroup('def').func('cs').set('expr', 'sqrt(1.4*287*T)'); model.material('mat2').propertyGroup('def').func('cs').set('args', {'T'}); model.material('mat2').propertyGroup('def').func('cs').set('dermethod', 'manual'); model.material('mat2').propertyGroup('def').func('cs').set('argders', {'T' 'd(sqrt(1.4*287*T),T)'}); model.material('mat2').propertyGroup('def').func('cs').set('plotargs', {'T' '' ''}); model.material('mat2').propertyGroup('def').set('relpermeability', {'1' '0' '0' '0' '1' '0' '0' '0' '1'}); model.material('mat2').propertyGroup('def').set('relpermittivity', {'1' '0' '0' '0' '1' '0' '0' '0' '1'}); model.material('mat2').propertyGroup('def').set('dynamicviscosity', 'eta(T[1/K])[Pa*s]'); model.material('mat2').propertyGroup('def').set('ratioofspecificheat', '1.4'); model.material('mat2').propertyGroup('def').set('electricconductivity', {'0[S/m]' '0' '0' '0' '0[S/m]' '0' '0' '0' '0[S/m]'}); model.material('mat2').propertyGroup('def').set('heatcapacity', 'Cp(T[1/K])[J/(kg*K)]'); model.material('mat2').propertyGroup('def').set('density', 'rho(pA[1/Pa],T[1/K])[kg/m^3]'); model.material('mat2').propertyGroup('def').set('thermalconductivity', {'k(T[1/K])[W/(m*K)]' '0' '0' '0' 'k(T[1/K])[W/(m*K)]' '0' '0' '0' 'k(T[1/K])[W/(m*K)]'}); model.material('mat2').propertyGroup('def').set('soundspeed', 'cs(T[1/K])[m/s]'); model.material('mat2').propertyGroup('def').addInput('temperature'); model.material('mat2').propertyGroup('def').addInput('pressure'); model.physics('emw').feature('port1').set('PortExcitation', 'on'); model.physics('emw').feature('port1').set('PortType', 'Coaxial'); model.mesh('mesh1').feature('size').set('hauto', 9); model.mesh('mesh1').run; model.study.create('std2'); model.study('std2').feature.create('eigv', 'Eigenvalue'); model.sol.create('sol1'); model.sol('sol1').study('std2'); model.sol('sol1').attach('std2'); model.sol('sol1').feature.create('st1', 'StudyStep'); model.sol('sol1').feature.create('v1', 'Variables'); model.sol('sol1').feature.create('e1', 'Eigenvalue'); model.result.dataset.create('rev1', 'Revolve2D'); model.result.create('pg1', 'PlotGroup2D'); model.result('pg1').feature.create('surf1', 'Surface'); model.result.create('pg2', 'PolarGroup'); model.result('pg2').set('probetag', 'none'); model.result('pg2').feature.create('ff1', 'FarField'); model.result.create('pg3', 'PlotGroup3D'); model.result('pg3').feature.create('ff1', 'FarField'); model.study('std2').feature('eigv').set('neigs', '10'); model.study('std2').feature('eigv').set('shift', '-8e7*2*pi*i'); model.sol('sol1').attach('std2'); model.sol('sol1').feature('st1').name('Compile Equations: Eigenvalue'); model.sol('sol1').feature('st1').set('studystep', 'eigv'); model.sol('sol1').feature('v1').set('control', 'eigv'); model.sol('sol1').feature('e1').set('control', 'eigv'); model.sol('sol1').feature('e1').set('neigs', '10'); model.sol('sol1').feature('e1').set('shift', '-8e7*2*pi*i'); model.sol('sol1').feature('e1').set('eigref', '-8e7*2*pi*i'); model.sol('sol1').feature('e1').feature('aDef').set('complexfun', true); model.sol('sol1').runAll; model.result.dataset('rev1').name('Revolution 2D'); model.result.dataset('rev1').set('startangle', '-90'); model.result.dataset('rev1').set('revangle', '225'); model.result('pg1').name('Electric field'); model.result('pg1').setIndex('looplevel', '10', 0); model.result('pg1').set('frametype', 'spatial'); model.result('pg1').feature('surf1').name('Surface'); model.result('pg1').feature('surf1').set('rangecoloractive', 'on'); model.result('pg1').feature('surf1').set('rangecolormax', '3'); model.result('pg1').feature('surf1').set('rangedataactive', 'on'); model.result('pg1').feature('surf1').set('rangedatamax', '5.9798545953073'); model.result('pg2').feature('ff1').set('legend', true); model.result('pg3').set('data', 'none'); model.result('pg3').set('edges', 'off'); model.result('pg3').feature('ff1').set('data', 'dset1'); model.result('pg3').feature('ff1').setIndex('looplevel', '1', 0); model.result('pg3').feature('ff1').set('expr', 'mod1.emw.normEfar'); model.result('pg3').feature('ff1').set('colorexpr', 'mod1.emw.normEfar'); model.result('pg3').feature('ff1').set('thetadisc', '180'); out = model;