+# collection of compound functions which can be realized with THAT
+
+# Open Amplifier
+define openamp (weight*: variable-1, …) -> output
+ isum (weight*: variable-1, …) -> output
+ connect (FB:) -> GND
+
+# Division
+define idivide (numerator, denominator) -> -quotient
+ openamp (numerator, product) -> -quotient
+ multiply (-quotient, denominator) -> product
+
+# Integration extension
+define iintegrate (weight*: variable-1, …, ic: variable-IC, limit: gt0) -> variable-n
+ iintegrate (weight*: variable-1, …) -> variable-n
+ diode (cat:variable-n) -> DA
+ connect (DA) -> sj
+# diode and connect used to limit the result to values >0
+
+# Building an additional integrator with the help of an openamp
+define iintegrate.additional (variable) -> integral
+ openamp variable -> integral
+ connect SJ -> cp
+ capacitor.100nF (integral) -> cp
+# NB: The 100 nF capacitor is available on a THAT. This capacitance corresponds to those of the SLOW settings. In order to use the standard time constant an external 1 nF capacitor has to be used.
+
+# Summing extension
+define isum (weight*: variable-1, …, /divisor) -> -result
+ isum (weight*: variable-1, …) -> -result
+ connect (-result, …) -> IN