- Home
- Documents
*Automatic design using FD TD simulator in an optimization loop Presented by: Wojciech K.Gwarek with...*

prev

next

of 32

View

215Download

0

Tags:

Embed Size (px)

- Slide 1

Automatic design using FD TD simulator in an optimization loop Presented by: Wojciech K.Gwarek with contributions from : Malgorzata Celuch-Marcysiak, Przemyslaw Miazga, Maciej Sypniewski and Andrzej Wieckowski the authors are with: Institute of Radioelectronics Warsaw University of Technology 00-665 Warszawa, Nowowiejska 15/19 Poland E-mail: gwarek@ire.pw.edu.pl Slide 2 Abstract Abstract : We discuss the elements of a general optimization scheme consisting of : 1. A parametric shape editor 2. An FD-TD simulator 3. An optimizer 4. A goal function calculator The aim is to discuss the possibilities provided to engineers by general-purpose tools available commercially. In particular we examine the possibilities provided by QWEDs QuickWave-3D FD-TD simulator and widely used Matlab toolbox. We discuss particular features of the FD-TD method applied in electromagnetic simulations for automatic design purposes, the sources of errors of analysis and ways to make it more efficient. We show the results of automatic design on 5 examples: a coaxial connector, a microstrip to waveguide transition, a waveguide diode mount, a septum polarizer and a waveguide filter. In each case we discuss the sources of errors, the ways to speed up the optimization process and to enhance the chances of convergence to a satisfactory solution. We also provide hints on practical applications. Slide 3 General scheme for automatic design using FD TD simulator in an optimization loop Slide 4 General requirements: 1. Simulator which: - is fast enough to produce the single simulation results in seconds or minutes, not in hours - allows smooth change of the results as a function of the change in dimensions 2. Parametric shape editor which is: - universal, allowing a large variety of shapes and media - easy to use 3. Comprehensive and programmable goal function calculator 4. Optimizer which - is relatively insensitive to rough goal function and preferably - is able to skip local minimum to look for the global one. Slide 5 Why should we use FD-TD method When applied to linear circuits with pulse excitation it permits to extract wide-band circuit parameters after just one simulation It is very fast especially when applied to a wide scope of deterministic problems concerning S-matrix or radiation pattern extraction. It produces acceptable computing times even for relatively large problems. It has clear physical interpretations giving good insight into the operation of the circuit It is easy to apply with a variety of media forming the analyzed structure There are practically no problems with parasitic solutions and the algorithms are not sensitive to computer round-off errors Disadvantages to be fought: Fast, explicit integration schemes used in time domain enforce additional restrictions on meshing flexibility High-Q circuits (like narrow band filters) need special consideration Slide 6 Hints how to use FD-TD electromagnetic simulation in automatic design and/or optimization processes whenever possible reduce the number of considered dimensions or use symmetry conditions if possible perform segmentation and assign specific goals to optimization of the specific segments check carefully the number of needed FD-TD iterations; avoid exciting off-band resonances check the accuracy of the FD-TD approximation and continuity of the goal function with respect to change of variables try to avoid the situation when the change of a dimension drastically modifies meshing in sensitive areas try to economize the computing time by taking into account systematic errors prior to final setting of the set of variables and scaling factors run sensitivity analysis and/or grid search to see the type of dependence on major variables Slide 7 Whenever possible reduce the number of considered dimensions. Problems presented below are all 2-D ( or more precisely vector 2D) Slide 8 Example 1: Optimisation of N to LCM20 coaxial connector for 0-8GHz band Original commercial design: Optimised design: Slide 9 Comparison of the simulated S 11 for the original and the optimized design: Reference:P.Miazga, W.Gwarek, IEEE Trans MTT, May 1997, pp.858-861 Slide 10 Example 2 : Object: Microstrip to waveguide transition Design goal: Lowest possible S 11 in the band 10-12 GHz Microstrip-to-waveguide transition considered in Example2. Picture shows half of the structure assuming magnetic symmetry plane in the middle. Upper and lower waveguide walls are not shown for clarity of the picture. Slide 11 Example 2 (cont): The optimized variables in 2 options: A: One variable optimization with respect to lst=lst1=lst2=lst3 B: Six variable optimization with respect to lst1,lst2,lst3,hs2,hs3,sis Side and upper view of the microstrip to waveguide transition with parameters as they are used in optimization Slide 12 0 do ELEMENT(z,msh,0,med,substr,IN); NEWLINE(x+msl,y,x+msl+sis,y); ADDY(wgah); ADDX(-sis); CLOSELINE; ENDELEM; endif; ELEMENT(z+msh,0,0,metal,strip,I N); NEWLINE(x,y,x+msl+lst1,y); ADDY(mswh); ADDX(-msl-lst1); CLOSELINE; ENDELEM;.... PORT(z,wgb,INPTEMPLATE,UP,in pms,rinpms); NEWLINE(x,y,x,y+msswh); NEWLINE(x,y+0.5*mswh,x,y); PORTEXC(msh,msh); GETIOPAR("mstowgi.iop"); ENDPORT; Example of a parser type parametrized input of a 3-D shape Editor for optimization purposes Microstrip-to-waveguide transition described in the UDO language by QWED. Header appearing in the Editor (below) and parts of the UDO code (right)"> aacomment="Microstrip to waveguide transition"; bitmap="nobitmap.bmp"; PAR("Name ",oname,"mstowg"); PAR("wg width (wga)",wga,23); PAR("wg height (wgb)",wgb,11); PAR("ms width (msw)",msw,3.75); PAR("ms height (msh)",msh,1.27); PAR("ms substr. width",mssw,30); PAR("ms substrate",med,substr); PAR("ref. dist. (rd)",rd,7); PAR("length of step1 (lst1)",lst1,6); PAR("length of step2 (lst2)",lst2,6); PAR("length of step3 (lst3)",lst3,6); PAR("height of step2 (hs2)",hs2,7); PAR("height of step3 (hs3)",hs3,3); PAR("substrate insert (sis)",sis,0); ENDHEADER; msl= rd*3; wgl=lst1+lst2+lst3+rd*2; wgah=wga*0.5; mswh=msw*0.5; msswh=mssw*0.5; ltot=msl+wgl; hs1=wgb-msh; OPENOBJECT(oname); sis1=0; if sis0 do ELEMENT(z,msh,0,med,substr,IN); NEWLINE(x+msl,y,x+msl+sis,y); ADDY(wgah); ADDX(-sis); CLOSELINE; ENDELEM; endif; ELEMENT(z+msh,0,0,metal,strip,I N); NEWLINE(x,y,x+msl+lst1,y); ADDY(mswh); ADDX(-msl-lst1); CLOSELINE; ENDELEM;.... PORT(z,wgb,INPTEMPLATE,UP,in pms,rinpms); NEWLINE(x,y,x,y+msswh); NEWLINE(x,y+0.5*mswh,x,y); PORTEXC(msh,msh); GETIOPAR("mstowgi.iop"); ENDPORT; Example of a parser type parametrized input of a 3-D shape Editor for optimization purposes Microstrip-to-waveguide transition described in the UDO language by QWED. Header appearing in the Editor (below) and parts of the UDO code (right) Slide 13 Choice of optimizer : Option A: an optimizer specially prepared to work with a particular simulator (as exemplified belowby the one from QWED) Advantage: simplicity in use with prepared dialogues Disadvantage: limited flexibility in choice of the optimization method and the goal function Slide 14 % Microstrip to waveguide trans. % minimax method x0=[7.7363 5.7097 7.0488 7.1318 2.8375 0.0578]; global spar; global start_ch; global best_ch; global fbest; global first; global iterac; fbest=1; first=1; iterac=1; OPTIONS(1)=0; %display intermediate results OPTIONS(2)=0.0001; %termination tolerance x OPTIONS(3)=0.0001; %termination tolerance F OPTIONS(14)=2000; %max function call OPTIONS(16)=0.003; %min change for grad OPTIONS(17)=0.1; %max change for grad OPTIONS(18)=1; %step length grid on minimax('ms2wgb',x0,OPTIONS); Choice of optimizer : Option B: a general purpose optimizer (as exemplified below by the one from Matlab Toolbox). The text on this and next slide is a complete code for running a minimax optimization on 6 variables of the microstrip to waveguide transition using an FD-TD Editor and Simulator activated from a DOS command line Slide 15 function [w,g] = ms2wgb(x) global spar;global start_ch; global best_ch;global fbest; global first;global iterac; save 'c:\3dex\matopt\ms2wgb\paramsb' x -ASCII; dos('"c:\Program Files\Qwed\Qw_3d\Qw_edi\bin\zed.exe" - p"c:\3dex\matopt\ms2wgb\ms2wgb.pro" -m -o1000 -e -q -i'); dos('"c:\Program Files\Qwed\Qw_3d\Qw_sim\bin\ker1.exe" -t "c:\3dex\matopt\ms2wgb\ms2wgb.ta3"'); spar=load('c:\3dex\matopt\ms2wgb\ms2wgb.spl'); w=spar(41:81,2);g=zeros(1,41); if(first) first=0; start_ch=spar(:,2); end if(max(w)