## Electric boundary conditions in plasma simulation

In PIC-MC plasma simulations, mesh objects act as electrodes which are either conductive or dielectric (= insulating). Conductive electrodes can be either put on a fixed potential, they can be floating or they can have a built-in potential relative to another electrode. This behaviour can be specified by the parameters epsr, vf, vf_coupling as summarized in the following table.

Note 1: Electrodes need to be closed 3D objects in the mesh geometry. If you need particle sources which are part of an electrode, this is currently not supported (in DSMC simulation, it is possible to have source surfaces which are only part of a complete 3D object). A workaround is to use membranes as particle sources, since membranes do not act as electrodes in plasma simulation.

Case epsr vf vf_coupling
Dielectric floating potential (insulator domain) Dielectric constant commented out commented out
Conductive floating potential (metal domain) commented out commented out commented out
Absolute voltage (electrode, ground) ignored Voltage function (string) commented out
Single voltage plus floating potential (single electrode capacitively coupled to ground potential) ignored Voltage function (string) Name of current domain (string)
Dual voltage plus floating potential (dual electrode capacitively coupled to ground potential) ignored Voltage function (string) Name of second domain (string)

A couple of pre-defined parameters and functions can be used in the voltage function string vf. RVM comes with a set of mathematical functions like sin, cos, atan,…,etc. Additionally the keywords TIME, VP and PI can be used within in the mathematical expression:

• TIME - The current simulation time, i.e. time step x current iteration.
• PI - You guessed it, pi (3.14159265).
• VP - Internally controlled voltage to meet aimed power dissipation 'PSOLL', which could be a time-dependent function or absolute an value.

Example 1: System of three walls, “Target”, “Chamber” and dielectric “Substrate”

```block BORDER_TYPES: {
Border Target: {
icodec =  1;
type   = "wall";
T      = PAR.T0;
reactions: {
add_plain_reaction("Arplus", 1, 1, ["Ar", "e"], [1, PAR.SECONDARY_ELECTRON_YIELD]);
set_emission_energy("e", 0, 5, 1);
add_absorption("e", 0.5);   # 50% electron reflection
};
vf = "-VP";  # Negative voltage amplitude for DC operation
};

Border Chamber: {
icodec =  2;
type   = "wall";
T      = PAR.T0;
reactions: {
add_absorption("Arplus", 1);  # We neglect secondary electrons at chamber and substrate surface
};
vf = "0";   # Chamber wall grounded and on anode potential
};

Border Substrate: {
icodec =  3;
type   = "wall";
T      = PAR.T0;
reactions: {
};
epsr = 6.0;   # Dielectric constant of glass
# vf = "";  vf must be commented out or deleted for a dielectric material!
};
};```

Example 2: The same system with floating conductive “Substrate” and with radio-frequency sputtering

```block BORDER_TYPES: {
Border Target: {
icodec =  1;
type   = "wall";
T      = PAR.T0;
reactions: {
add_plain_reaction("Arplus", 1, 1, ["Ar", "e"], [1, PAR.SECONDARY_ELECTRON_YIELD]);
set_emission_energy("e", 0, 5, 1);
add_absorption("e", 0.5);   # 50% electron reflection
};
vf = "VP*cos(2*PI*13.56e6*TIME)";  # RF (13.56 MHz) voltage
vf_coupling = "Target"; # Indicates that this electrode is floating (capacitively coupled) against ground
};

Border Chamber: {
icodec =  2;
type   = "wall";
T      = PAR.T0;
reactions: {
add_absorption("Arplus", 1);  # We neglect secondary electrons at chamber and substrate surface
};
vf = "0";   # Chamber wall grounded and on anode potential
};

Border Substrate: {
icodec =  3;
type   = "wall";
T      = PAR.T0;
reactions: {
};
# Both, epsr and vf, must be commented out or deleted for a floating conductor
};
};```

Example 3: Two targets “Target_1”, “Target_2” acting as bipolar electrodes with 100 kHZ

```block BORDER_TYPES: {
Border Target_1: {
icodec =  1;
type   = "wall";
T      = PAR.T0;
reactions: {
add_plain_reaction("Arplus", 1, 1, ["Ar", "e"], [1, PAR.SECONDARY_ELECTRON_YIELD]);
set_emission_energy("e", 0, 5, 1);
add_absorption("e", 0.5);   # 50% electron reflection
};
# Target_1 is treated as floating conductor, i.e. no vf or epsr parameter declared!
};

Border Target_2: {
icodec =  4;
type   = "wall";
T      = PAR.T0;
reactions: {
add_plain_reaction("Arplus", 1, 1, ["Ar", "e"], [1, PAR.SECONDARY_ELECTRON_YIELD]);
set_emission_energy("e", 0, 5, 1);
add_absorption("e", 0.5);   # 50% electron reflection
};
vf = "VP*cos(2*PI*100e3*TIME)";  # Oscillating voltage with 100 kHz frequency
vf_coupling = "Target_1";        # Thus, both targets together are a floating electrode
# system with built-in voltage difference
};

Border Chamber: {
icodec =  2;
type   = "wall";
T      = PAR.T0;
reactions: {
add_absorption("Arplus", 1);  # We neglect secondary electrons at chamber and substrate surface
};
vf = "0";   # Chamber wall grounded and on anode potential
};

Border Substrate: {
icodec =  3;
type   = "wall";
T      = PAR.T0;
reactions: {