Graph window curve modifiers. What does the Envelope modifier do?

The curve modifiers modify the y components of a curve … I get that basic concept.
What does the envelope modifier do specifically??
Can the mathematical properties be described to the users advantage?
If you have a link great, I will read it.
Thanks.

This link will probably not be useful to many
http://en.wikipedia.org/wiki/Envelope_%28mathematics%29

You do not need to repeat any items that follow … assuming thy are accurate.

Please correct any inaccuracies.
The Envelope modifier

  1. Modifies a range of a curve. Similar to key frames in controlled frame range control.
  2. Perhaps a typical use is to …???
  3. Has two areas labeled envelope and control points which have multiple values which can be modified by the user (boring).
  4. The envelope area has 3 values. The center point value. This is not visible in the representation but is ambiguously implied. Next there are the lower and upper distance values. These two values are presented as two dashed lines … relative to the center point value. The implied center point determines the the y origin of these values.
  5. The control points area contains 0,1 or more records. Each control point record has three values which are frame number and minimum bound and maximum bound point pairs. A control point is added to ne collection by pressing the button labelled <Add Point>. The frame value of the control point record will be the current frame marker. The user may change all three values by standard data entry means. You may delete a record by clicking the x button on the right side of the record. The collection is not sorted by value. Duplicate records are possible. It is not clear what a duplicate record indicates or whether this is a defect. You may find it helpful to move the frame marker if it hides presentation. The control point maximum and minimum are presented as white dots by default. Each control point pair can have equal values, or positive or negative differences. The zero, negative or positive value can squeeze and scale a portion of the curve.
  6. One can move the multiple control points (envelope area) by modifying the reference center or the upper distance or the lower distance.
  7. The representation cannot be edited or selected like the graph curve itself. One may not click and move graphically the representation such as grabs the suzanne monkey. One must use the data entry panel.
  8. Shows the combined result graphically to user. As opposed to looking at two different curves which might not be easily composed in the brain of the user.
  9. Perhaps avoids division by zero situations.
  10. If the control point maximum and minimum values are identical … zero difference … then the graph will pass through that point.
  11. If two consecutive and distinct control point pairs on different frames meet the condition of (11) where values are identical, then a straight line will be produced between these two frames.

As well here are all modifiers for which I have not found documentation.
Generator,Built In, Envelope, Cycle, Noise, Python, Limits, Stepped.

I think the typical use of an envelope it to alter a modifier that is higher up in the stack.

Consider the classic decay of a ball bouncing.

Visually this looks like a SIN wave whose amplitude keeps getting smaller over time. You can simulate this by adding a Generator modifier to the Z position of the default cube. Then add an Envelope modifier after the generator. Add an envelop point at frame #1 and then move to frame #90 and add another envelope point. So envelope control point 1 would have the three values set to 0.0,1.0,0.0. Envelope control point 2 would have the three values set to 89.0,0.0.0.0. This would cause the SIN wave to decay to 0.0 after 3 seconds.

It is a nice feature, although not graphically intuitive.

Atom thank you.
Thanks also for focusing on the fact that the control point … frame number can be changed manually.
One can create duplicates.
The results of duplicates is not clear but IMHO this situation appears to be a defect.