Skip to content
Snippets Groups Projects
Commit 88f1b1c9 authored by Ruth Sabariego's avatar Ruth Sabariego
Browse files

Update floating.pro

parent 8bfb6e43
No related branches found
No related tags found
No related merge requests found
Pipeline #
......@@ -12,7 +12,7 @@
------------------------------------------------------------------- */
/* A thing GetDP is pretty good at is the management of global (non-local) basis
/* GetDP is pretty good at the management of global (non-local) basis
functions. Finite element expansions typically associate basis functions to
individual nodes or edges in the mesh. But consider the situation where a
scalar field is set to be uniform over a region of the problem (say a
......@@ -20,12 +20,12 @@
identical nodal value "v_electrode", a global (non-local) basis function
"BF_electrode" is obtained as factor which is the sum of the shape functions
of all the nodes in the electrode region. This basis function "BF_electrode"
- is a continuous function, scalar in this case,
- is equal to 1 at the nodes of the electrode, and to 0 at all other nodes,
- is a continuous function, scalar in this case;
- is equal to 1 at the nodes of the electrode, and to 0 at all other nodes;
- decreases from 1 to 0 over the one-element-thick layer of elements sharing
at least one node with the electrode region.
One such glabal basis function can be associated with each electrode in the
One such global basis function can be associated with each electrode in the
system, so that the finite element expansion of the electric scalar potential
reads:
......@@ -34,13 +34,13 @@
with the the sum_k running over all nodes except those of the electrode
regions.
We show in this tutorial how GetDP takes advantage of global quantities and
This tutorial shows how GetDP takes advantage of global quantities and
the associated global basis functions
- to reduce the number of unknowns
- to compute efficiently the electrode charges "Q_electrode", which are
precisely the energy duals of the global "v_electrode" quantities
- to reduce the number of unknowns;
- to efficiently compute the electrode charges "Q_electrode", which are
precisely the energy duals of the global "v_electrode" quantities;
- to deal with floating potentials, which are the computed electrode
potential when the electrode charge is imposed
potentials when the electrode charge is imposed;
- to provide output quantities (charges, armature voltages, capacitances,
...) that can be immediately used in a external circuit. */
......@@ -57,8 +57,8 @@ Group {
/* Abstract regions:
Vol_Ele : volume where -div(epsilon grad v) = 0 is solved
Sur_Neu_Ele : surface where non homogeneous Neumann boundary conditions
(on n.d = -n . (epsilon grad v)) are imposed
Sur_Neu_Ele : surface with imposed non homogeneous Neumann boundary conditions
(on n.d = -n . (epsilon grad v))
Sur_Electrodes_Ele : electrode regions */
Vol_Ele = Region[ {Air, Diel1} ];
......@@ -66,7 +66,7 @@ Group {
Sur_Electrodes_Ele = Region [ {Ground, Microstrip} ];
}
/* A number of ONELAB parameters are defined to define model parameters or model
/* A number of ONELAB parameters are defined to provide model parameters or model
options interactively. */
MicrostripTypeBC = DefineNumber[0, Name "1Microstrip excitation/Type",
......@@ -86,7 +86,7 @@ Function {
Constraint {
/* The Dirichlet boundary condition on the local electric potential is no
longer used. The microstrip and the ground are now treated as electrodes,
longer used. The microstrip and the ground are herein treated as electrodes,
whose voltage is imposed with the "SetGlobalPotential" constraint below. */
{ Name Dirichlet_Ele; Type Assign;
Case {
......@@ -95,12 +95,12 @@ Constraint {
{ Name SetGlobalPotential; Type Assign;
Case {
/* Define the imposed potential regionwise on the different parts of
/* Impose the potential regionwise on the different parts of
"Sur_Electrodes_Ele". No voltage is imposed to the Microstrip electrode
when the "Fixed charge" option is enabled (if MicrostripTypeBC != 0). */
{ Region Ground; Value 0; }
If(!MicrostripTypeBC)
{ Region Microstrip; Value MicrostripValueBC; }
{ Region Microstrip; Value MicrostripValueBC; }
EndIf
}
}
......@@ -108,26 +108,26 @@ Constraint {
Case {
/* Impose the charge if MicrostripTypeBC != 0 */
If(MicrostripTypeBC)
{ Region Microstrip; Value MicrostripValueBC; }
{ Region Microstrip; Value MicrostripValueBC; }
EndIf
}
}
}
Group{
/* The domain of definition lists all regions on which the field "v" is
/* The domain of definition comprises all regions on which the field "v" is
defined.*/
Dom_Hgrad_v_Ele = Region[ {Vol_Ele, Sur_Neu_Ele, Sur_Electrodes_Ele} ];
}
FunctionSpace {
/* The magic in the treatment of global quantitities by GetDP is in the fact
/* The magic in the treatment of global quantitities by GetDP lies in the fact
that nearly all the work is done at the level of the FunctionSpace
definition. The finite element expansion of "v" is
v = Sum_k sn_k vn_k + Sum_electrode v_electrode BF_electrode
with the the sum_k running over all nodes except those of the electrode
with the sum_k running over all nodes except those of the electrode
regions. This is exactly what one finds in the FunctionSpace definition
below with "sf" standing for "BF_electrode" and "vf" for "v_electrode".
......@@ -135,10 +135,10 @@ FunctionSpace {
"GlobalQuantity" section; these names are used in the corresponding
"GlobalTerm" in the Formulation. Such global terms are the equivalent of a
"Integral" term, but where no integration needs to be performed. The
"AssociatedWith" statement manifests the fact that the global potential of
"AssociatedWith" statement refers to the fact that the global potential of
an electrode is the (electrostatic) energy dual of the electric charge
carried by that electrode. Indeed, let us consider the electrostatic weak
formulation derived in Tutorial 1: find v in Hgradv_Ele such that
formulation derived in Tutorial 1: find v in Hgrad_v_Ele such that
(epsilon grad v, grad v')_Vol_Ele + (n . (epsilon grad v), v')_Bnd_Vol_Ele = 0
......@@ -153,14 +153,14 @@ FunctionSpace {
charge Q_electrode carried by the electrodes.
By checking the "Display global basis functions" checkbox and running the
model, you can take a look on how the two "BF_electrode" basis functions in
model, you can take a look at how the two "BF_electrode" basis functions in
this model look like. Constraints can then be set on either component of
the FunctionSpace. Besides the usual Dirichlet boundary condition on the
local field, which is left here for the sake of completeness but is not
used in this model, there is the possibility to fix either the
GlobalPotential or the ArmatureCharge of each indidual electrode (not both,
of course). When the ArmatureCharge is fixed, the computed GlobalPotential
computed for that electrode is the so-called floating potential. */
local field (left here for the sake of completeness but not
used in this model), one may fix either the
GlobalPotential or the ArmatureCharge of each indidual electrode (never both,
of course). When the ArmatureCharge is fixed, the computed GlobalPotential
for that electrode is the so-called floating potential. */
{ Name Hgrad_v_Ele; Type Form0;
BasisFunction {
......@@ -207,8 +207,8 @@ Integration {
}
Formulation {
/* The formulation only contains minor changes compared to formulation from
the first tutorial. The global quantities are declared as "Global" in the
/* The formulation contains only minor changes compared to formulation from
the first tutorial. The global quantities are declared as "Global" in the
"Quantity" section, and a "GlobalTerm" is added that triggers the assembly
of the additional equation per electrode (the "pre-integrated" boundary
term) in the system to compute the charge Q_electrode, which
......@@ -290,8 +290,8 @@ PostProcessing {
}
}
/* Various output results are generated, which are both displayed in the
graphical user interface, and stored in disk files. In particular, global
/* Several output results are generated, which are both displayed in the
graphical user interface, and stored in disk files. In particular, global
quantities related results are stored in the "output.txt" file. A user option
allows to chose to not overwrite the "output.txt" file when running a new
simulation. */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment