SYSTEM Command


Summary:

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.


Synopsis:

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,...}

Argument List:


Argument Descriptions:

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,...}


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,...}



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?



Examples:

Poisson Equation System for Electronic Devices in Equilibrium