nextupprevious
Next:SORT sorts a list Up:PROCEDURESPrevious:PUTFEL adds an event

RETARD produces a delayed function from a given function of time

Syntax:
    RETARD(<order>, <delayed output>, <delay>, <input>);
It is used to generate values delayed and smoothed of an time dependent variable.
<order> is a number from 1 to 30 that indicates the order of the retard.

 <delayed output> is a variable that was declared of RET type.

<delay> is a real parameter.

<input> is a real expression.

The procedure may be used only in a type C node, so that, when the node is active, it is processed repeatedly at small intervals of time. As the <input> variable or expression takes successive values, the values of the <delayed output> in each repetition tend to approach, with certain <delay>, those of the <input>. The form of approach depends on the <order> of the RETARD. For low order the output is the input smoothed. For higher orders the output is more and more like the input but retarded in time by the quantity <delay>.

 The output variable must be declared in a declaration in the form:

<variable name>: RET: <order>.

 An order n delay is calculated for a set of n differential equations.

 This procedure may be only used in a type C node.

Example:

   Spp (C) ::
     Demand' := K * Demand + GovDemand(TIME);
     RETARD(4, Supply, Ret_Months, Percep * Demand);
The values of Demand are produced by the differential equation. The Supply tends to adjust to the Demand affected by a perception factor of the Demand. This factor may depend on other socioeconomic variables.
 


domingo c

Mon Mar 20 17:37:52 PST 2000