The curve file describes the time series attribute curves that
are referenced by the features and products files. The curve file
contains three fields: CURVE,
X, Y. The file is an ordered list of curve inflection
points that describe the numerical relationship between time on the
`X`

axis and attribute value on the
`Y`

axis.

See Table 9, “Curve file format description” for a detailed description of the curve file format.

**Table 9. Curve file format description**

Field name | Data type | Description |
---|---|---|

CURVE | String | An alphanumeric identifier that uniquely identifies each curve definition. |

X | float | The `X` -value of a single inflection
point on a curve. |

Y | float | The `Y` -value of a single inflection
point on a curve. |

In the example below, three curves are shown (curves
`4`

, `5`

and
`6`

. Curves are composed of one or more points.
Curves are always used to obtain an attribute value
(`Y`

) for a given time value
(`X`

).

**Example 13. Sample curve file records**

CURVE, X, Y ... 4, 0, 0.49 ... 9, 0, 1 9, 25, 1 9, 26, 0 ...

A simple linear interpolation is used to obtain attributes for
`X`

values that fall between two vertices.
Extrapolation of values below the minimum (or above the maximum)
are simply assigned the first (or last) `Y`

value.
This means that a flat line may be represented by only one
`X`

,`Y`

pair!.

Curve `4`

is represented by only one record
in the `curves.csv`

file. This record defines a
single point with the `x`

,`y`

pair `(0,0.49)`

. Static attributes, such as
stratification codes are represented by curves with a single vertex
at `(0,1)`

to indicate that 100% of the block is
classified as that particular stratum through time.

Note | |
---|---|

For example, a static curve could represent an unmanaged riparian buffer, the classification of which will not change over time. When multiplied by the appropriate block area, this attribute will describe the area that is in the riparian buffer. |

Curve `9`

on the other hand contains a number
of inflection points to describe a shape that changes through time.
There is a straight line interpolation between inflection points,
and extrapolation of first and last values beyond the minimum and
maximum values. Note that curve 9 could be further simplified by
excluding the initial point at (0, 1) with no change to the shape
of the curve.

Curve definitions can be shared by one or more features. For example, a single yield curve might describe the growing stock attribute and also the clearcut harvest volume attribute. When building a track database there are significant opportunities for data set compression by sharing common curve definitions.

Important | |
---|---|

The curve file contains sets of curves that have the same identifying label. Records with the same curve label must be grouped together. |

Important | |
---|---|

Records within a curve must be in increasing order of the X-value with no diplicated X-values. |