de.jtem.function

## Class Domain

• ```public abstract class Domain
extends Object```
This class provides interfaces to be implemented by classes modelling functions defined on various mathematically important standard spaces. The target space of these functions will be specified by subinterfaces. The domains selected here have been chosen according to the following criteria: The domains should include
• The set of integers between 0 and n-1. This is the canonical choice of a finite index set and maps from such a domain to some space A are usually called "n-tuples of elements in A".
• The set of non-negative integers. Maps from the non-negative integers to some space A are usually called "sequences of Elements in A".
• The set of integers.
• The closed interval [a,b] between two real numbers a and b. Maps from the such an interval into some space A can be called "paths in A".
• The set of non-negative real numbers.
• The real line.
• The circle S (the only connected one-dimensional compact manifold). Functions on S are described by periodic functions on the real line.
• The "discrete circle" (a cylic graph). Functions on the discrete circle are described by periodic sequences.
Furthermore we provide some Cartesian products of two or three of the above spaces. In the case of the cartesian product of two finite sets of indices the maps from such a domain to a set A can be called "matrices of elements in A". In analogy, we adopt matrix terminology for the naming of methods by refering to the first argument of a function on a Cartesian product as the "row" argument and the second as the "column" argument. In the case of a threefold cartesian product the third argument is said to specify the "layer" which means we imagine a stack of matrices (two dimensional arrangements of elements of A) with several layers in a third dimension.

The actual choice of product spaces was guided by the following principles:

• To allow for interpolation, replacing a factor corresponding to an integer argument by one corresponding to a real argument should always be possible.
• If one of the factors has an interpretation of "time" (like in a dynamical system or evolution equation), then we demand it to be the first factor. Since the main motivation for us to include the non-negative integers and the non-negative reals is in fact to serve as the "time" of some irreversible dynamical system (like iterating a non-invertible function or solving a parabolic PDE), these two spaces only occur as the first factor.
• Periodicity is natural only for spacelike variables, so periodic factors only occur at the end. "Periodic" will then mean "periodic in the last variable", "doubly periodic" will mean "periodic in the last two variables".
• To keep the number of interfaces within reasonable bounds, mixing of integer and real factors is not supported in the case of three factors. Moreover, the last two factors must be of the same type.
• ### Nested Class Summary

Nested Classes
Modifier and Type Class and Description
`static interface ` `Domain.DoublyPeriodicOnIndexCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of a fine set of indices with the integer plane and which are periodic in the last two arguments.
`static interface ` `Domain.DoublyPeriodicOnIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of integers with itself and which are periodic in the both variables.
`static interface ` `Domain.DoublyPeriodicOnIntegersCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative integers with the integer plane and which are periodic in the last two arguments.
`static interface ` `Domain.DoublyPeriodicOnIntervalCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of a closed interval with the real plane and which are periodic in the last two arguments.
`static interface ` `Domain.DoublyPeriodicOnNonNegativeIntegersCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative integers with the integer plane and which are periodic in the last two arguments.
`static interface ` `Domain.DoublyPeriodicOnNonNegativeRealsCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative real numbers with the real plane and which are periodic in the last two arguments.
`static interface ` `Domain.DoublyPeriodicOnRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the real plane and which are periodic in both variables.
`static interface ` `Domain.DoublyPeriodicOnRealsCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of three copies of the real line and which are periodic in the last two arguments.
`static interface ` `Domain.OnIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the set of integers between zero and n-1 (elements of which are referered to as "indices).
`static interface ` `Domain.OnIndexCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of two finite sets of indices.
`static interface ` `Domain.OnIndexCrossIndexCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of three fine sets of indices.
`static interface ` `Domain.OnIndexCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a finite set of indices with the set of integers.
`static interface ` `Domain.OnIndexCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of a fine set of indices with the integer plane.
`static interface ` `Domain.OnIndexCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a finite set of indices with a closed interval on the real line.
`static interface ` `Domain.OnIndexCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a finite set of indices with the real line.
`static interface ` `Domain.OnIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have the integers as their domain of definition.
`static interface ` `Domain.OnIntegersCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of integers with a finite set of indices.
`static interface ` `Domain.OnIntegersCrossIndexCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative integers with two finite sets of indices.
`static interface ` `Domain.OnIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of integers with itself.
`static interface ` `Domain.OnIntegersCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative integers with the integer plane.
`static interface ` `Domain.OnIntegersCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of integers with a closed interval on the real line.
`static interface ` `Domain.OnIntegersCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of integers with the real line.
`static interface ` `Domain.OnInterval`
This interface models mathematical objects (like maps into some other set or differential equations) that have a closed interval of real numbers as their domain of definition.
`static interface ` `Domain.OnIntervalCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a closed interval with a finite sets of indices.
`static interface ` `Domain.OnIntervalCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a closed interval with the set of integers.
`static interface ` `Domain.OnIntervalCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a closed interval on the real line with another closed interval.
`static interface ` `Domain.OnIntervalCrossIntervalCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of three closed intervals.
`static interface ` `Domain.OnIntervalCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a closed interval with the real line.
`static interface ` `Domain.OnIntervalCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of a closed interval with the real plane.
`static interface ` `Domain.OnNonNegativeIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the set of non-negative integers.
`static interface ` `Domain.OnNonNegativeIntegersCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with a finite set of indices.
`static interface ` `Domain.OnNonNegativeIntegersCrossIndexCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative integers with two finite sets of indices.
`static interface ` `Domain.OnNonNegativeIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with the set of integers.
`static interface ` `Domain.OnNonNegativeIntegersCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative integers with the integer plane.
`static interface ` `Domain.OnNonNegativeIntegersCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with a closed interval on the real line.
`static interface ` `Domain.OnNonNegativeIntegersCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with the real line.
`static interface ` `Domain.OnNonNegativeReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have the non-negative real numbers as their domain of definition.
`static interface ` `Domain.OnNonNegativeRealsCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative real numbers with a finite set of indices.
`static interface ` `Domain.OnNonNegativeRealsCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative real numbers with the set of integers.
`static interface ` `Domain.OnNonNegativeRealsCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative real numbers with a closed interval on the real line.
`static interface ` `Domain.OnNonNegativeRealsCrossIntervalCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative real numbers with two closed intervals.
`static interface ` `Domain.OnNonNegativeRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative real numbers with the real line.
`static interface ` `Domain.OnNonNegativeRealsCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative real numbers with the real plane.
`static interface ` `Domain.OnReals`
This interface models mathematical objects (like maps into some other set or differential equations) that have the real line as their domain of definition.
`static interface ` `Domain.OnRealsCrossIndex`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the real line with a finite set of indices.
`static interface ` `Domain.OnRealsCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the real line with the set of integers.
`static interface ` `Domain.OnRealsCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the real line with a closed interval.
`static interface ` `Domain.OnRealsCrossIntervalCrossInterval`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of the non-negative real numbers with two closed intervals.
`static interface ` `Domain.OnRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the real plane.
`static interface ` `Domain.OnRealsCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of three copies of the real line.
`static interface ` `Domain.PeriodicOnIndexCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a finite set of indices with the set of integers and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnIndexCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a finite set of indices with the real line and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have the integers as their domain of definition and which are periodic.
`static interface ` `Domain.PeriodicOnIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of integers with itself and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnIntegersCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with the real line and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnIntervalCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a closed interval with the set of integers and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnIntervalCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of a closed interval with the real line and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnNonNegativeIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with the integers and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnNonNegativeIntegersCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative integers with the real line and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnNonNegativeRealsCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative real numbers with the integers which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnNonNegativeRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the set of non-negative real numbers with the real line and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnReals`
This interface models mathematical objects (like maps into some other set or differential equations) that have the real line as their domain of definition and which are periodic.
`static interface ` `Domain.PeriodicOnRealsCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of the real line with the set of integers and which are periodic in the second variable.
`static interface ` `Domain.PeriodicOnRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the real plane and which are periodic in the second variable.
`static interface ` `Domain.TriplyPeriodicOnIntegersCrossIntegersCrossIntegers`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the cartesian product of three copies of the integers and which are periodic in all three variables.
`static interface ` `Domain.TriplyPeriodicOnRealsCrossRealsCrossReals`
This interface models mathematical objects (like maps into some other set or difference equations) that have as their domain of definition the Cartesian product of three copies of the real line and which are periodic in the all three arguments.
• ### Constructor Summary

Constructors
Constructor and Description
`Domain()`

• ### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
• ### Constructor Detail

• #### Domain

`public Domain()`

jTEM