版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、 專業(yè)技術(shù)資料VSim螺旋線行波管模擬案例講義第一部分 概述模擬的對象為一個典型的螺旋線行波管?;窘Y(jié)構(gòu)是在金屬管內(nèi)裝有螺旋線和介質(zhì)夾持桿,然后在兩端引入輸入和輸出端口。當(dāng)電子束進入螺旋線波導(dǎo)時,就產(chǎn)生微波放大。實際模擬時我們用很多圈的螺旋線,為了看清幾何,我們用一組示意圖來描述:第二部分 幾何生成從上面的圖形可以看到,整個幾何模型包括下面的主要內(nèi)容:金屬外殼:在外殼上安裝了耦合端口,這里使用的耦合端口是一個簡單的同軸線針頭-壁面耦合,在模擬的時候直接從同軸線送入TEM波。然后是作為波導(dǎo)的螺旋線,同軸線針頭直接耦合到螺旋線上。接下來,為了支持螺旋線,需要三根介質(zhì)夾持桿:剖面圖顯示出夾持結(jié)構(gòu):實
2、際計算中,我們需要使用一個圈數(shù)很多的螺旋線(N=100 turns以上)。此外,在實踐中還需要加入衰減器。我們首先把匝數(shù)調(diào)整到100,然后可以看到衰減器的結(jié)構(gòu)(去掉外殼以便看清):中央綠色的是衰減器。這里需要考慮一下VSim的邏輯,金屬件都必須被實現(xiàn)為幾何結(jié)構(gòu)(gridBoundary),而夾持桿(介電結(jié)構(gòu))和衰減器(電導(dǎo)耗散)既可以實現(xiàn)為幾何結(jié)構(gòu),也可以直接用函數(shù)引入,它們并不是必須被寫成gridBoundary的。確定一個結(jié)構(gòu)是否要被實現(xiàn)為gridBoundary,要看它的具體應(yīng)用。例如如果設(shè)置夾持桿和衰減器都要吸收電子,那么就應(yīng)該將它們實現(xiàn)為gridBoundary,而如果我們暫時不考慮
3、夾持桿和衰減器的吸收,那么就可以到處理電磁場的時候再寫這個部分。除了上述的部分之外,VSim邏輯建議把所有的粒子發(fā)射源(emitter)都設(shè)置成為gridBoundary。所以,在幾何建模部分,需要建立金屬部件和發(fā)射體的gridBoundary。特別是,如果整個系統(tǒng)中有若干組金屬部件,但其中只有一個用作發(fā)射體,那么這個必須額外被單獨幾何建模一次,吸收體同理。gridBoundary可以用常規(guī)的<gridBoundary>對象來做,也可以使用geometry宏來做。下面是用geometry宏實現(xiàn)的金屬部件幾何,其中復(fù)雜的主要是螺旋線結(jié)構(gòu)?;舅悸肪褪菑囊粋€實體開始,不斷貼上或者挖去部
4、分,最后形成金屬部件。$ DM_FRAC = 0.25$ import geometryfillGeoExpression(tube, geoCylinderXP(x-XBGN_GUN_WALL,y,z,REND_TUBE,LENGTH_TUBE_SHELL) )$ if PERIODIC_GEOMETRY=0fillGeoExpression(inputCoaxShell, geoCylinderXP(y-YBGN_COAX,z,x-XBGN_HELIX,RSHELL_COAX,LEGNTH_COAX) )fillGeoExpression(outputCoaxShell, geoCylin
5、derXP(y-YBGN_COAX,z,x-XEND_HELIX,RSHELL_COAX,LEGNTH_COAX) )$ endifvoidGeoExpression(tubeInterior, geoCylinderXP(x-XEND_GUN_WALL,y,z,RBGN_TUBE,LENGTH_TUBE_INTERIOR) )$ if PERIODIC_GEOMETRY=0voidGeoExpression(inputCoaxInterior, geoCylinderXP(y-YBGN_COAX,z,x-XBGN_HELIX,ROUTER_COAX,LEGNTH_COAX) )voidGeo
6、Expression(outputCoaxInterior, geoCylinderXP(y-YBGN_COAX,z,x-XEND_HELIX,ROUTER_COAX,LEGNTH_COAX) )$ endiffillGeoExpression(helix, geoCylinderXP(x-XBGN_HELIX_WIRE,yHelix(y,z),zHelix(x,y,z),RWIRE_HELIX,LENGTH_HELIX_WIRE) )$ if PERIODIC_GEOMETRY=0voidGeoExpression(trimHelixInput, myHalfCylinderXPZ(x-XB
7、GN_HELIX_WIRE,y,-z,RBGN_TUBE,LENGTH_TRIM_HELIX_INPUT) )voidGeoExpression(trimHelixOutput, myHalfCylinderXPZ(x-XTRIM_HELIX_OUTPUT,y,z,RBGN_TUBE,LENGTH_TRIM_HELIX_OUTPUT) )fillGeoExpression(inputCoaxInner, geoCylinderXP(y-YBGN_COAX,z,x-XBGN_HELIX,RINNER_COAX,LEGNTH_COAX) )fillGeoExpression(outputCoaxI
8、nner, geoCylinderXP(y-YBGN_COAX,z,x-XEND_HELIX,RINNER_COAX,LEGNTH_COAX) )$ endifsaveGeoToGridBoundary(metalParts,DM_FRAC)其中有一部分幾何用$ if PERIODIC_GEOMETRY=0來設(shè)置為條件形式。這些部分主要是兩端的切斷以及饋電的同軸線接口。涉及到的幾個宏的具體描述參考VSim In Depth。emitter幾何可以類似地來做,應(yīng)該指出的是emitter一般來說不必和金屬部件有什么關(guān)系,但是實踐中emitter往往是金屬部件的一部分。在這種情況下,emitter必
9、須被獨立地實現(xiàn)為一個gridBoundary:resetGeoToVoid()fillGeoExpression(emitterDisk, geoCylinderXP(x-XBGN_GUN_WALL,y,z,RBGN_TUBE,THICKNESS_ENDCAPS) )saveGeoToGridBoundary(emitter,DM_FRAC)第三部分:場模型和頻率分析基本框架產(chǎn)生金屬部件模型后,就可以啟用電磁場模型了。電磁場模型看上去很復(fù)雜,實際上基本都是從一個模板產(chǎn)生的,最簡單的模板是以前用的dMYee宏。對于微波器件,一般我們可以從VSim6的例子中選擇一個類似的模型,然后逐步修改成我們需
10、要的模型。這里我們使用的是一個比較通用的模板,它基本來自于dMYee宏。<MultiField yeeEM># 場定義.#推進公式# - - - - - - - - - - - - - - - - - - - - - - - - -# update operations# 實際的推進步驟</MultiField>通常幾乎不會有人真的從頭寫出整個電磁模塊,而都是在一個類型比較相似的模塊上進行修改。當(dāng)然,我們可以使用以前遺留的一個宏deymittra.mac,此外現(xiàn)在的TWT輸入文件也是一個不錯的模板。這個模板是利用MultiField寫成的。為了在需要的時候修改這個模板,
11、我們需要解釋其基本內(nèi)容。一般來說,MultiField框架要包含三個主要的部分:場定義,更新器和算法包裝。由于MultiField是一個具有相當(dāng)自由的場計算框架,原則上我們應(yīng)該首先列出場方程。實踐中因為微波器件的場模型是非常類似的,一般只要簡單修改就可以,無需如此復(fù)雜。這里為了解釋清楚,我們列出基本概念。微波器件計算的電磁場,一般包含靜態(tài)外場(主要是外磁場)和微波時變電磁場。時變電磁場的方程是和在計算電磁學(xué)中的方法一樣,電場強度(和電流強度)被定義在網(wǎng)格的棱邊上,而磁場強度B被定義在面心,如同下面這個圖:和標(biāo)準(zhǔn)計算電磁學(xué)稍有區(qū)別的是,由于存在粒子電流J,為了計算的精度,上述方程是被拆成三步來進
12、行FDTD推進。按照VSim的邏輯,我們引入一個參數(shù)toDtFrac,它的取值從0.0到1.0。我們假設(shè)每個推進步推進中,迭代器的絕對時間從推進到,每個電磁場推進步的時間步長是。實際中MultiField總是要由一組“更新步”組成,而每個更新步代表從“當(dāng)前時間”推進到某個值?,F(xiàn)在我們可以列出PIC算法里面最標(biāo)準(zhǔn)的電磁場推進步,推進開始的時刻是,所有場的“內(nèi)部時間”都是:第一步:進行磁場B的推進。設(shè)置toDtFac參數(shù)為0.5,也就是推進目標(biāo)時間然后按照法拉第電磁感應(yīng)定律將磁場推進為其中,其中是磁場在這個更新步之前的內(nèi)部時間。這里顯然。于是,于是磁場被推進了半個時間步,推進結(jié)束后,磁場內(nèi)部時間被
13、推進到。第二步:進行電場E的推進,這是利用廣義的安培定律:由于電場只有一步推進,因此這里的toDtFrac=1.0,所以,并且在執(zhí)行這個推進后,電場的內(nèi)部時間被推進到。第三步:再次推進磁場,仍然使用法拉第定律,并且設(shè)置toDtFrac=1.0,于是并且。執(zhí)行這個推進后,磁場內(nèi)部時間被推進到?,F(xiàn)在我們可以分析行波管的MultiField模型了。在開始的部分,必須定義這個MultiField框架所蘊含的場:<Field edgeE>numComponents = 3offset = edgeoverlap = 1 2</Field><Field faceB>nu
14、mComponents = 3offset = faceoverlap = 1 2</Field><Field edgeJ>kind = depFieldnumComponents = 3offset = edgeoverlap = 1 2</Field>$ if INCLUDE_PARTICLES=1<Field nodalE>numComponents = 3offset = noneoverlap = 1 2dumpPeriod = 0</Field><Field nodalB>numComponents = 3of
15、fset = noneoverlap = 1 2dumpPeriod = 0</Field>$ endif幾個場的語法是一樣的,都是要定義場的分量,位置(offset參數(shù)用來約定場量定義是在頂點,面心還是棱邊上),存盤周期以及鬼網(wǎng)格結(jié)構(gòu)。在這里首先定義了電場,磁場和電流場。接下來兩個節(jié)點電磁場nodalE和nodalB是用來將計算出的電磁場傳遞給帶電粒子計算。所以這個部分是使用了條件編譯。接下來是更新算法,我們看到一系列的FieldUpdater和FieldMultiUpdater:<FieldMultiUpdater yeeFaraday>gridBoundary =
16、 metalPartsinteriorness = deymittrakind = yeeFaradayUpdatercomponents = 0 1 2expandToTopInComponentDir = 1lowerBounds = 0 0 0upperBounds = NX NY NZreadFields = edgeEwriteFields = faceB</FieldMultiUpdater><FieldUpdater deyMittraFaraday>gridBoundary = metalPartsinteriorness = deymittrakind
17、 = deyMittraUpdaterlowerBounds = 0 0 0upperBounds = NX NY NZreadFields = edgeEwriteFields = faceB</FieldUpdater><FieldMultiUpdater yeeAmpere>gridBoundary = metalPartsinteriorness = deymittrakind = yeeAmpereUpdatercomponents = 0 1 2contractFromBottomInNonComponentDir = 1lowerBounds = 0 0
18、0upperBounds = NX NY NZreadFieldCompShifts = 0 0readFields = faceB edgeJwriteFields = edgeE</FieldMultiUpdater>$ if INCLUDE_PARTICLES=1<FieldUpdater nodalEupdate>kind = edgeToNodeVeclowerBounds = 0 0 0upperBounds = $NX+1$ $NY+1$ $NZ+1$readFields = edgeEwriteFields = nodalE</FieldUpdat
19、er><FieldUpdater nodalBupdate>kind = faceToNodeVeclowerBounds = 0 0 0upperBounds = $NX+1$ $NY+1$ $NZ+1$readFields = faceBwriteFields = nodalB</FieldUpdater>$endif這里面有五個Updater。一般來說前三個都是標(biāo)準(zhǔn)的:yeeFaradayUpdater和deyMittraUpdater用來推進電磁場的法拉第感應(yīng)定律:由于導(dǎo)體表面處沒有切向電場,需要對這個方程做特殊考慮,所以法拉第定律包含了兩個updater
20、,yeeFaradayUpdater用于計算不和導(dǎo)體接觸的網(wǎng)格,而deyMittraUpdater用于計算導(dǎo)體邊界處的網(wǎng)格,兩個updater一般都是在一起應(yīng)用的。yeeAmpereUpdatery用來推進安培定律:上面兩種updater足以完成FDTD推進步驟,為了把電磁場輸出給粒子,需要把edgeE和faceB的值傳送給nodalE和nodalB,這是后面兩個updater完成的工作。一般情況下我們基本不需要修改這些updater,只要補充我們需要的updater并且封裝就可以了。最后是包裝成完整的推進步:<UpdateStep finishFaraday>toDtFrac =
21、 0.5messageFields = faceBupdaters = yeeFaraday deyMittraFaraday</UpdateStep><UpdateStep Ampere>toDtFrac = 1.0updaters = yeeAmperemessageFields = edgeE</UpdateStep><UpdateStep startFaraday>toDtFrac = 1.0messageFields = faceBupdaters = yeeFaraday deyMittraFaraday</UpdateStep
22、>$ if INCLUDE_PARTICLES=1<UpdateStep getEatNodes>toDtFrac = 1.0updaters = nodalEupdatemessageFields = nodalE</UpdateStep><UpdateStep getBatNodes>toDtFrac = 1.0updaters = nodalBupdate messageFields = nodalB</UpdateStep>$ endif按照我們說的那樣,首先是finishFarady(半步法拉第定律),然后是Ampere(一步安培
23、定律),再startFarady(另外半步法拉第定律)。實際上完成這三步之后,一個FDTD推進步就完成,剩下的兩個更新步用于將E和B輸出到nodalE和nodalB。加入介質(zhì)和損耗上面的計算只包含了導(dǎo)體部分,而實際的行波管還包含夾持桿和衰減器。從模擬的角度來說夾持桿是一塊電介質(zhì),而衰減器是一塊部分導(dǎo)體。對于電介質(zhì)和衰減介質(zhì)的建模,VSim有兩種方案,一種是使用現(xiàn)成的兩個求解器(更新器),另一種是干脆自己寫一個更新器。兩者的區(qū)別是前者可以處理復(fù)雜外形(包括CAD導(dǎo)入),但是只能是均勻的介電函數(shù)或者電導(dǎo)函數(shù);后者只能處理用函數(shù)描述的結(jié)構(gòu),但可以處理介電/電導(dǎo)函數(shù)的演化。這里因為外形很簡單,我們使用
24、第二種方法。首先看一下處理介電和電導(dǎo)問題的方法,在考慮介電和電導(dǎo)的情況下,安培定律是使用半點差分,這個方程可以寫成化簡后就是或者寫成其中第二個方程完全等價于原來的安培更新步,所以我們只需要在原來的安培更新步之前之后各插入一個轉(zhuǎn)換步,就可以實現(xiàn)帶電導(dǎo)和介電的器件的求解。為了實現(xiàn)這兩個步驟,首先要寫出介電和電導(dǎo)的表達式,這兩個表達式是:<function epsRelTerm(x,y,z)> 1.0 + (EPS_ROD-1.0)*geoCylinderXP(x-XBGN_HELIX_WIRE,y-YROD1,z-ZROD1,RADIUS_ROD,LENGTH_HELIX_WIRE)
25、+ (EPS_ROD-1.0)*geoCylinderXP(x-XBGN_HELIX_WIRE,y-YROD2,z-ZROD2,RADIUS_ROD,LENGTH_HELIX_WIRE) + (EPS_ROD-1.0)*geoCylinderXP(x-XBGN_HELIX_WIRE,y-YROD3,z-ZROD3,RADIUS_ROD,LENGTH_HELIX_WIRE)</function># definitions for attenuator$ VPHASEX_HELIX = LIGHTSPEED*SINPHI$ XBGNTURN_ATTENUATOR = XBGN_HELI
26、X + BGNTURN_ATTENUATOR*PITCH_HELIX$ LENGTH_ATTENUATOR = (ENDTURN_ATTENUATOR - BGNTURN_ATTENUATOR)*PITCH_HELIX$ SIGMA = (VPHASEX_HELIX*EPS0/LENGTH_ATTENUATOR)*ln(10.0*(DB_ATTENUATOR/10.0)$ ATTENUATE_FACTOR = 0.5*DT*SIGMA/EPS0<function attenuateTerm(x,y,z)> ATTENUATE_FACTOR*geoPipeXP(x-XBGNTURN_
27、ATTENUATOR,y,z,RMID_HELIX,REND_TUBE,LENGTH_ATTENUATOR)</function>然后需要在MultiField框架內(nèi)加入updater和updaterStep:<Field epsRelMinus> # = epsRel - 0.5*sigma*dt/eps0numComponents = 3overlap = 1 2offset = edge<InitialCondition vacuumEps>kind = variablelowerBounds = 0 0 0upperBounds = NX NY NZ
28、components = 0 1 2<STFunc component0>kind = expressionexpression = epsRelTerm(x,y,z) - attenuateTerm(x,y,z)</STFunc><STFunc component1>kind = expressionexpression = epsRelTerm(x,y,z) - attenuateTerm(x,y,z)</STFunc><STFunc component2>kind = expressionexpression = epsRelT
29、erm(x,y,z) - attenuateTerm(x,y,z)</STFunc></InitialCondition></Field><Field epsRelPlus># = epsRel + 0.5*sigma*dt/eps0numComponents = 3overlap = 1 2offset = edge<InitialCondition vacuumEps>kind = variablelowerBounds = 0 0 0upperBounds = NX NY NZcomponents = 0 1 2<STFu
30、nc component0>kind = expressionexpression = epsRelTerm(x,y,z) + attenuateTerm(x,y,z)</STFunc><STFunc component1>kind = expressionexpression = epsRelTerm(x,y,z) + attenuateTerm(x,y,z)</STFunc><STFunc component2>kind = expressionexpression = epsRelTerm(x,y,z) + attenuateTerm
31、(x,y,z)</STFunc></InitialCondition></Field><FieldUpdater EtoD>kind = fieldBinOpUpdaterlowerBounds = 0 0 0upperBounds = NX NY NZbinOp = multiplyaCoeff = 0.0bCoeff = 0.0readFields = edgeE epsRelMinus writeFields = edgeE</FieldUpdater><FieldUpdater DtoE>kind = fieldB
32、inOpUpdaterlowerBounds = 0 0 0upperBounds = NX NY NZbinOp = divideaCoeff = 0.0bCoeff = 0.0readFields = edgeE epsRelPlus writeFields = edgeE</FieldUpdater>上面是電磁場的基本部分。按照我們知道的,行波管除了等離子體自生電磁場之外,還有一個導(dǎo)向磁場,為此我們還要再加入一個更新器:<FieldUpdater addInBstatic>kind = STFuncUpdateroperation = addlowerBounds
33、 = 0 0 0upperBounds = $NX+1$ $NY+1$ $NZ+1$writeFields = nodalBcomponent = 0<STFunc wave>kind = expressionexpression = BSTATIC</STFunc></FieldUpdater>然后我們需要把這些updater安裝在正確的位置,首先我們裝入EtoD和DtoE:<UpdateStep Ampere>toDtFrac = 1.0updaters = EtoD yeeAmpere DtoEmessageFields = edgeE&l
34、t;/UpdateStep>然后裝入靜磁場:<UpdateStep getBatNodes>toDtFrac = 1.0updaters = nodalBupdate addInBstaticmessageFields = nodalB</UpdateStep>最后還有一個問題,即行波管具有輸入和輸出端口。在VSim6中,最簡單的實現(xiàn)輸入和輸出端口的方法是使用Port和incident宏。這兩個宏必須使用在ampereUpdater附近:applyPortAtBoundary_beforeAmpere(1,1,LIGHTSPEED,DY,DT,edgeE,NX,N
35、Y,NZ)<UpdateStep Ampere>.</UpdateStep>applyPortAtBoundary_afterAmpere(1,1,LIGHTSPEED,DY,DT,edgeE,NX,NY,NZ)addIncidentWaveAtBoundaryPort(1,1,LIGHTSPEED,DY,DT,edgeE,NX,NY,NZ,0,0,inputWaveX(x,y,z,t)addIncidentWaveAtBoundaryPort(1,1,LIGHTSPEED,DY,DT,edgeE,NX,NY,NZ,2,0,inputWaveZ(x,y,z,t)此外,這
36、兩個宏都包含在port文件里面,所以要在文件的開頭加入$import port原理上,這樣行波管的cold部分就設(shè)計完成了,接下來,我們可以加入一些診斷來檢查電磁波會不會在行波管內(nèi)正常傳播。例如,加入出射信號診斷:# input signals$ IXVINPUTBGN = int(XBGN_HELIX-RSHELL_COAX-XBGN)/DX)$ IXVINPUTMID = int(XBGN_HELIX -XBGN)/DX)$ IXVINPUTEND = int(XBGN_HELIX+RSHELL_COAX-XBGN)/DX)<History inputVoltage>kind
37、= pseudoPotentialfield = yeeEM.edgeEreferencePoint = IXVINPUTMID $NY-1$ $int(NZ/2)$measurePoint = $IXVINPUTEND+1$ $NY-1$ $int(NZ/2)$</History><History inputPoynting>kind = fieldPoynlowerBounds = IXVINPUTBGN $NY-1$ 0upperBounds = $IXVINPUTEND+1$ $NY-1$ NZfields =yeeEM.edgeE, yeeEM.faceB&l
38、t;/History># output signals$ IXVOUTPUTBGN = int(XEND_HELIX-RSHELL_COAX-XBGN)/DX)$ IXVOUTPUTMID = int(XEND_HELIX -XBGN)/DX)$ IXVOUTPUTEND = int(XEND_HELIX+RSHELL_COAX-XBGN)/DX)$ IYVINPUT = NY-1<History outputVoltage>kind = pseudoPotentialfield = yeeEM.edgeEreferencePoint = IXVOUTPUTMID $NY-1
39、$ $int(NZ/2)$measurePoint = $IXVOUTPUTEND+1$ $NY-1$ $int(NZ/2)$</History><History outputPoynting>kind = fieldPoynlowerBounds = IXVOUTPUTBGN $NY-1$ 0upperBounds = $IXVOUTPUTEND+1$ $NY-1$ NZfields = yeeEM.edgeE, yeeEM.faceB</History>診斷的內(nèi)容包括輸入輸出功率/電壓。其中電壓需要特殊注意。嚴(yán)格的說電磁波器件并沒有電壓,實踐中VSim用
40、“偽勢”量度兩點之間的壓差。在現(xiàn)在的情況下,輸入輸出電壓就是在輸入和輸出端口同軸電纜芯部和外皮上各任選一點然后測量的偽勢。輸入電壓輸出電壓第四部分:粒子加入和放大性能物理建模的最后一步是加入粒子。由于沒有背景等離子體,所以只要加入粒子發(fā)射和吸收就可以了。引入粒子的基本模式就是先寫一個標(biāo)準(zhǔn)的Species: $ NPARTICLES_PER_CELL_PER_TIME_STEP = 0.1 $ VEMIT = sqrt(2.0*BEAM_VOLTAGE/511.0e3)*LIGHTSPEED $ BEAM_AREA = PI*BEAM_RADIUS*2 $ JDENS = BEAM_CURREN
41、T/BEAM_AREA $ NSTEPS_ACROSS_CELL = DX/(VEMIT*DT) $ NOMINAL_DENSITY = JDENS/(VEMIT*1.602176487e-19) $ NOMINAL_PARTICLES_PER_CELL = NPARTICLES_PER_CELL_PER_TIME_STEP*NSTEPS_ACROSS_CELL <Species electron> kind = relBorisVW charge = -1.602176487e-19 mass = 9.10938215e-31 nominalDensity = NOMINAL_D
42、ENSITY nomPtclsPerCell = NOMINAL_PARTICLES_PER_CELL fields = yeeEM.nodalE yeeEM.nodalB currDeps = Jdepostion.</Species>這里有一個需要特殊注意的地方,是我們必須將粒子和電磁場耦合起來。耦合包含兩部分,一個是讓粒子接受電磁場力的作用,這是通過fields = yeeEM.nodalE yeeEM.nodalB 這樣語法實現(xiàn)的;另一點則是將粒子的電流密度傳遞給電磁場,這是通過currDeps語句。 為了讓currDeps生效,我們還要對其中的Jdepositi
43、on進行定義:<VectorDepositor Jdepostion> kind = areaWeighting depField = yeeEM.edgeJ </VectorDepositor>其中areaWeighting 表示使用面積權(quán)重計算,具體到這個語法的詳細(xì)內(nèi)容可以研究手冊,我們這里只指出一點:如果使用的是MultiField類型的場,那么我們的電流是自己定義的,因此必須使用一個獨立的VectorDepositior;如果按照以前的方法使用emMultiField,那么電流場自動定義成SumRhoJ,也就無需自己再定義VectorDepositior,當(dāng)然對
44、應(yīng)地也不需要定義edgeJ。定義了粒子類型后,需要引入一個粒子源。在現(xiàn)在的情況下,發(fā)射體已經(jīng)定義,所以直接使用一個cutCellPosGen的xvLoaderEmitter就好。一般我們總是xvLoaderEmitter:<ParticleSource beamEmission> kind = xvLoaderEmitter positionFunction = bitReversed useCornerMove = true emitBasedOnLocalForce = false load = false applyTimes = 0.0 1.0 <PositionGe
45、nerator bitRevSlab> kind = cutCellPosGen numMacroPtclsPerStep = $int(NPARTICLES_PER_CELL_PER_TIME_STEP*BEAM_AREA/(DY*DZ)$ emitterBoundary = emitter emissionOffset = 0.01 <STFunc mask> kind=expression expression = H(x-(XEND_GUN_WALL-DX)*H(BEAM_RADIUS*2-y*2-z*2)-0.5 </STFunc> </PositionGenerator> <VelocityGenerator emitVelGen> kind = funcVelGen velocityIsLocal = true <STFunc component0> kind = expression # negative sign is necessary expression = -VEMIT </STFunc> </Velocit
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度環(huán)保監(jiān)測試劑購置與服務(wù)合同3篇
- 2024年版汽車租賃服務(wù)協(xié)議
- 2025機器買賣合同的范本
- 2024圖書采購合同-涵蓋國內(nèi)外圖書采購與文化交流3篇
- 透明卷簾門定制安裝合同
- 無人駕駛船舶材料保證書
- 城市植物園停車場施工合同
- 建筑材料采購授權(quán)委托書樣本
- 礦井科學(xué)化聚氨酯保溫施工協(xié)議
- 物流行業(yè)走動式管理改進措施
- 學(xué)優(yōu)生學(xué)情分析及措施
- 競賽試卷(試題)-2023-2024學(xué)年六年級下冊數(shù)學(xué)人教版
- 2024糖尿病酮癥酸中毒診斷和治療課件
- 2024-淘寶商城入駐協(xié)議標(biāo)準(zhǔn)版
- 中國青少年籃球訓(xùn)練教學(xué)大綱-姚維
- 長方體的表面積說課市公開課一等獎省賽課微課金獎?wù)n件
- 中國石油天然氣集團有限公司投標(biāo)人失信行為管理辦法(試行)
- 中醫(yī)藥與中華傳統(tǒng)文化智慧樹知到期末考試答案2024年
- 產(chǎn)品質(zhì)量保證函模板
- 模板支撐腳手架集中線荷載、施工總荷載計算表(修正)
- GB/T 43700-2024滑雪場所的運行和管理規(guī)范
評論
0/150
提交評論