Panel |
---|
|
Table of Contents |
---|
minLevel | 2 |
---|
outline | true |
---|
indent | 30px |
---|
type | flat |
---|
separator | newline |
---|
|
|
...
An example for
...
Track3P multipacting computation on a single field level. Field gradient: 97e+06
Code Block |
---|
TotalTime: 20 ModelInfo: {
File: cell.ncdf
BoundaryCondition: {
Magnetic: 1 3 4
Impedance: 6 //total running time in RF cycles, default: 20 RF cycle
// If you don't give this block, it will use default value
ParticlesTrajectories: // record particles' trajectory, only for running single
//Impedance boundary condition
Waveguide: 7 8//field case
{ ParticleFile: p // file name
//the ports where waveguideSkip: can10 be loaded
}
SurfaceMaterial: {
// write file ReferenceNumber:each 610 steps
Start: //surface10 material property
Sigma: 5.8e7
}
// start }
time step Portfor :writing {file
Stop: 100000 ReferenceNumber: 7
// stop Origin:time step for writing file
}
// Field level(V/m) / Port power(W)
FieldScales:
{
ScanToken: 0 // 1: scan, 0: no scan
Scale: 97e+06 //field scale for particle trajectory
}
//Normalize field, only for closed waveguide case
NormalizedField:
{
StartPoint: 0 0 0.0486225 //start point of the line for field integral calculation
EndPoint: 0 0 0.2061 //end point of the line for field integral calculation
}
// Primary particles emission
Emitter:
{
x0: -0.001
x1: 0.001
y0: 0.09
y1: 0.12
z0: -0.068
z1: 0.068
BoundaryID: 6
}
// Boundary Material
//Type Boundary type
//1 / Reflector
//2 / Absorber
//3 / Secondary
//4 / Primary
//5 / SymmetryPlane
Material:{
Type: Primary
BoundarySurfaceID: 6 //Boundary surface ID
}
Material:{
Type: Secondary
BoundarySurfaceID: 6 //Boundary surface ID
}
Material:{
Type: Absorber
BoundarySurfaceID: 3 4 7 8 //Boundary surface ID
}
Material:{
Type: SymmetryPlane
BoundarySurfaceID: 1 2 //Boundary surface ID
}
OutputImpacts: on
// Field information container
Domain:
{
PostprocessFile: ./vector1/postprocess.in
}
Postprocess: // multipacting postprocess
{
Toggle: on // on: postprocess, off: no postprocess
ResonantParticles: // postprocess for resonant particles
{
Token: on // on: analysis resonant particles, no: no analysis is done for resonant particles
}
}
|
A complete example with impedance boundary condition
Code Block |
---|
ModelInfo: {
File: cell.ncdf
BoundaryCondition: {
Magnetic: 1 3 4
Impedance: 6
Waveguide: 7 8
}
SurfaceMaterial: {
ReferenceNumber: 6
Sigma: 5.8e7
}
}
Port : {
Reference number: 7 0.0, 0.04105, 0.0
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 0.0, -1.0
ESolver: {
Type: Analytic
Mode: {
WaveguideType: Rectangular
ModeType: TE, 1, 0
A: 0.028499 //larger dimension
B: 0.00895 //smaller dimension
}
}
}
Port : {
ReferenceNumber: 8
Origin: 0.0, -0.04105, 0.0
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 0.0, -1.0
ESolverOrigin: {
0.0, 0.04105, 0.0
XDirection: Type: Analytic1.0, 0.0, 0.0
YDirection: 0.0, 0.0, -1.0
ModeESolver: {
Type: Analytic
WaveguideType: Rectangular
Mode: {
ModeType: TE, 1, 0
Waveguide type: Rectangular
A: 0.028499 Mode type: //larger dimensionTE, 1, 0
BA: 0.00895028499
//smaller dimension
B: }
0.00895
}
}
FrequencyScan: { //enable frequency scan of S parameter
}
}
Port : {
Reference Startnumber: 9.33e+98
End: 9.48e+9
Origin: Interval: 0.01e+9
}
WaveguideFrequency: 9.4e+9 //if FrequencyScan container does not exist, compute S parameter at this frequency
PostProcess: {0, -0.04105, 0.0
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 0.0, 1.0
Toggle: off ESolver: {
//switch for postprocess
Port Number: 1 //input portType: Analytic
ModeFile: coupler.portMode //the mode file prefix for field distribution
}
|
A complete example with impedance boundary condition
Code Block |
---|
ModelInfoMode: {
File: cell.ncdf
BoundaryCondition: {
Magnetic: 1 3 4
Impedance Waveguide type: 6Rectangular
Waveguide: 7 8
}
SurfaceMaterial: {
ReferenceNumber: 6
Mode Sigmatype: 5.8e7
}
}
Port : {
TE, 1, 0
Reference number: 7
Origin: A: 0.0, 0.04105, 0.0
028499
XDirection: 1.0, 0.0, 0.0
YDirectionB: 0.0, 0.0, -1.0
00895
ESolver: {
}
}
}
FiniteElement: {
TypeOrder: Analytic2
CurvedSurfaces: on
}
FrequencyScan: {
Start: 9.33e+9
End: 9.48e+9
ModeInterval: 0.01e+9
}
PostProcess: {
Toggle: off
Port Number: 0 //input port
Waveguide type: Rectangular
Mode type: TE, 1, 0
A: 0.028499
B: 0.00895
}
}
}
Port : {
Reference number: 8
Origin: 0.0, -0.04105, 0.0
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 0.0, 1.0
ESolver: {
Type: Analytic
Mode: {
Waveguide type: Rectangular
Mode type: TE, 1, 0
A: 0.028499
B: 0.00895
}
}
}
FiniteElement: {
Order: 2
CurvedSurfaces: on
}
FrequencyScan: {
Start: 9.33e+9
End: 9.48e+9
Interval: 0.01e+9
}
PostProcess: {
Toggle: off
Port Number: 0 //input port
ModeFile: field
}
VerifyLinearSolver: yes
LinearSolver: {
Solver: MUMPS
}
|
Specify lossy materials
Code Block |
---|
ModelInfo: {
File: tapereda.ncdf
BoundaryCondition: {
Magnetic: 1
Electric: 2
Exterior: 6
Waveguide: 7
}
Material : {
Attribute: 1 //block 1 is vacuum
Epsilon: 1.0
Mu: 1.0
}
Material : {
Attribute: 2 //block 2 is lossy (cubit block)
Epsilon: 3.0
Mu: 1.0
EpsilonImag: -5.4 //lossy material
}
}
|
A complete example with an absorbing boundary condition
For example, we can use ABC to approximate the case that there is no metal enclosure.
Code Block |
---|
ModelInfo: {
File: pb.ncdf
BoundaryCondition: {
Waveguide: 3
Magnetic: 1 2
Electric: 4
Exterior: 6
Absorbing: 5 //the surface 5 is the outer boundary of the computational domain.
}
}
FiniteElement: {
Order: 2
CurvedSurfaces: on
}
WaveguideFrequency: 6.77585e7
PostProcess: {
Toggle: on
ModeFile: o
}
//reflection coefficient from MAFIA is 0.5115. we computed it as 0.5105.
Port: {
ReferenceNumber: 3
Origin: 0.0, 0.0, -1.0
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 1.0, 0.0
ESolver: {
Type: Analytic
Mode:{
WaveguideType: Circular
Mode type: TM 0 1
A: 2
}
}
}
Port: { //just load two modes in the same port to make S3P happy.
ReferenceNumber: 3
Origin: 0.0, 0.0, -1.0
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 1.0, 0.0
ESolver: {
Type: Analytic
Mode:{
WaveguideType: Circular
ModeType: TE 0 1
A: 2
}
}
}
|
Use interpolative port mode
If one has waveguide with shape that does not have analytical solution, one can compute the numerical solution using other programs and used in S3P. The following in the input for an interpolative Port mode.
Code Block |
---|
Port: {
Reference number: 1
Origin: 0.0, 0.0, -0.25
XDirection: 1.0, 0.0, 0.0
YDirection: 0.0, 1.0, 0.0
ESolver: {
Type: Interpolative
Mode:{
ExFile: ex0.prn //the file that stores Ex file on a grid
EyFile: ey0.prn //Ey field
BxFile: bx0.prn //Bx field
ByFile: by0.prn //By field
}
}
}
|
The following is an excerpt of the ex0.prn
...
ModeFile: field
}
VerifyLinearSolver: yes
LinearSolver: {
Solver: MUMPS
}
|
Specify lossy materials
Code Block |
---|
ModelInfo: {
File: tapereda.ncdf
BoundaryCondition: {
Magnetic: 1
Electric: 2
Exterior: 6
Waveguide: 7
}
Material : {
Attribute: 1 //block 1 is vacuum
Epsilon: 1.0
Mu: 1.0
}
Material : {
Attribute: 2 //block 2 is lossy (cubit block)
Epsilon: 3.0
Mu: 1.0
EpsilonImag: -5.4 //lossy material
}
}
|
A complete example with an absorbing boundary condition