The default behavior of FlexPDE is to consider all variables to be continuous across material interfaces. This arises naturally from the finite element model, which populates the interface with nodes that are shared by the material on both sides.
FlexPDE supports discontinuities in variables at material interfaces by use of the words CONTACT and JUMP in the script language.
CONTACT(V) is a special form of NATURAL boundary condition which also causes the affected variable to be stored in duplicate nodes at the interface, capable of representing a double value.
JUMP(v) means the instantaneous change in the value of variable "v" when moving outward across an interface from inside a given material. At an interface between materials '1' and '2', JUMP(V) means (V2-V1) in material '1', and (V1-V2) in material '2'.
The expected use of JUMP is in a CONTACT Boundary Condition statement on an interior boundary. The combination of CONTACT and JUMP causes a line or surface source to be generated proportional to the difference between the two values.
JUMP may also be used in other boundary condition statements, but it is assumed that the argument of the JUMP is a variable for which a CONTACT boundary condition has been specified. See the example "Samples | Usage | Discontinuous_Variables | Contact_Resistance_Heating.pde" for an example of this kind of use.
The interpretation of the JUMP operator follows the model of contact resistance, as explained in the next section.