SYSTEM Command
This command allows user to specify to Prophet a new system of partial
differential equations (PDEs) and associated boundary conditions (BCs),
interface constraints (ICs), and auxiliary functions. The PDE system
description must be complete, including all necessary operators (PDE terms,
BCs, ICs, and functions) needed to completely specify the system. If the
geometric and physical
operators known to Prophet are insufficient to fully describe the PDE system
of interest, one or more new operator routines will have to be
created and compiled into Prophet.
system name=flux_name
+ sysvars=var1,var2,var3,...
+ nterm=nt
+ term0=R*geo_op.phy_op(in1,...|out1,...)@{region1,...}
+ ...
+ termnt-1=R*geo_op.phy_op(in1,...|out1,...)@{region1,...}
+ tmpvars=tmp1,tmp2,tmp3,...
+ nfunc=nf
+ func0=R*phy_op(in1,...|out1,...)@{region1,...}
+ ...
+ funcnf-1=R*phy_op(in1,...|out1,...)@{region1,...}
The following list itemizes the valid arguments, their units, and their
meaning.
- NAME: [character string]
The name of the PDE system to be defined.
- SYSVARS: [character string]
Comma-separated, ordered list of the solution variables for the PDE
system. The PDE terms (see below) will be ordered in the matrix equation
according to the order of the associated solution variavles in the SYSVARS
list.
- NTERM: [integer]
Number of PDE terms in the PDE system. The terms must be
numbered 0 through nterm-1. Prophet currently limits nterm to a maximum of
20
- TERM0, TERM1, ...: [character string]
Description of a single term of the PDE system. Prophet currently
limits PDE systems to 20 PDE terms, named term0...term19.
For region-based PDE terms, the general form is:
termi=R*geo_op.phy_op(in1,in2,...|out1,out2,...)@{region1,region2,...}
For boundary conditions or interface constraints, the general form is:
termi=R*geo_op.phy_op(in1,in2,...|out1,out2,...)@{reg1/reg2,reg3/reg4,...}
- R: any real number, with a minus sign if appropriate (minus sign
by itself is invalid)
- geo_op: one of the geometric operators
known to Prophet
- phy_op: one of the physical operators
(a.k.a., flux routines) known to Prophet
- in1,in2,...: comma-separated list of sysvars, tmpvars, and other
defined fields needed to compute this PDE term. If there are no input
fields, "0" (the number zero) should precede the vertical bar.
- out1,out2,...: comma-separated list of sysvars (PDEs) in which
this term appears
- region1,region2,...: comma-separated list of regions in which
this term is relevant
- reg1/reg2,reg3/reg4...: comma-separated list of boundaries or
interfaces (written as two region names, or a region name and a boundary
name, separated by a slash "/") to which this term should be applied
- TMPVARS: [character string]
Comma-separated, ordered list of the temporary (auxiliary) variables
computed and possibly used in the PDE system. These variables can not
involve differential operators, or they must be part of the PDE system. The
temporary variables are computed in the order given by [the TMPVARS list |
the FUNC statements], so a TMPVAR must be listed first if it is used in the
computation of another TMPVAR.
- NFUNC: [integer]
Number of function terms in the PDE system. The terms must be
numbered 0 through nfunc-1.
- FUNC0, FUNC1, ...: [character string]
Description of a single function of the PDE system. Such auxiliary
functions involve only local computations, so that the geo_op, which is
always "nodal", is omitted from the function description. Prophet currently
limits PDE systems to 30 auxiliary functions, named func0...func29.
The general form of a PDE function is:
funci=R*phy_op(in1,in2,...|out1,out2,...)@{region1,region2,...}
- R: any real number, with a minus sign if appropriate (minus sign
by itself is invalid)
- phy_op: one of the physical operators
(a.k.a., flux routines) known to Prophet
- in1,in2,...: comma-separated list of sysvars, tmpvars, and other
defined fields needed to compute this function. If there are no input
fields, "0" (the number zero) should precede the vertical bar
- out1,out2,...: comma-separated list of tmpvars that this
function computes
- region1,region2,...: comma-separated list of regions in which
this function is relevant
- TRANSIENT: [character string]
Comma-separated list of variables whose PDE has a d/dt term. No longer
used?
- SPAWN: [character string]
- Optional comma-separated list of variables, usually including all
SYSVARS and zero or more TMPVARS that should remain in storage after the
solution is found. Often used to allow a tmpvar to be plotted or used to
initialize another PDE system. No longer used?
Poisson Equation System for Electronic Devices in
Equilibrium