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:
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 add_absorption("e", 0.5); }; vf = "0"; # Chamber wall grounded and on anode potential }; Border Substrate: { icodec = 3; type = "wall"; T = PAR.T0; reactions: { add_absorption("Arplus", 1); add_absorption("e", 0.5); }; 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 add_absorption("e", 0.5); }; vf = "0"; # Chamber wall grounded and on anode potential }; Border Substrate: { icodec = 3; type = "wall"; T = PAR.T0; reactions: { add_absorption("Arplus", 1); add_absorption("e", 0.5); }; # 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 add_absorption("e", 0.5); }; vf = "0"; # Chamber wall grounded and on anode potential }; Border Substrate: { icodec = 3; type = "wall"; T = PAR.T0; reactions: { add_absorption("Arplus", 1); add_absorption("e", 0.5); }; # Both, epsr and vf, must be commented out or deleted for a floating conductor }; };