1c_ftkurvd(3NCARG) NCAR GRAPHICS c_ftkurvd(3NCARG)
2
3
4
6 c_ftkurvd - calculate interpolated values and derivatives for paramet‐
7 ric curves
8
10 int c_ftkurvd (int, float [], float [], int, float [],
11 float [], float [], float [], float [],
12 float [], float []);
13
15 int c_ftkurvd (n, xi, yi, m, t, xo, yo, xd, yd, xdd, ydd);
16
18 n The number of input data points. (n > 1)
19
20 xi An array containing the abscissae for the input function.
21
22 yi An array containing the functional values (y[k] is the
23 functional value at x[k] for k=0,n).
24
25 m The number of desired interpolated points.
26
27 t Contains an array of values for the parameter mapping onto
28 the interpolated curve.
29
30 xo An array containing the X values for the interpolated
31 points. t[k] maps to (xo[k],yo[k]) for k=0,n-1.
32
33 yo An array containing the Y values for the interpolated
34 points.
35
36 xd Contains the first derivatives of the X component with
37 respect to t.
38
39 yd Contains the first derivatives of the Y component with
40 respect to t.
41
42 xdd Contains the second derivatives of the X component with
43 respect to t.
44
45 ydd Contains the second derivatives of the Y component with
46 respect to t.
47
49 c_ftkurvd returns an error value as per:
50
51 = 0 -- no error.
52 = 1 -- if n is less than 2.
53 = 2 -- if adjacent coordinate pairs coincide.
54
56 This procedure behaves like ftkurv except that in addition it returns
57 the first and second derivatives of the component functions in the
58 parameterization.
59
60 Given a sequence of input points ( (x[0],y[0]), ... , (x[n-1],y[n-1]),
61 the interpolated curve is parameterized by mapping points in the inter‐
62 val [0.,1.] onto the interpolated curve. The resulting curve has a
63 parametric representation both of whose components are splines under
64 tension and functions of the polygonal arc length. The value 0. is
65 mapped onto (x[0],y[0]) and the value 1. is mapped onto
66 (x[n-1],y[n-1]).
67
68 c_ftkurvd is called after all of the desired values for control parame‐
69 ters have been set using the procedures c_ftseti, c_ftsetr, c_ftsetc.
70 Control parameters that apply to c_ftkurvd are: sig, sl1, sln, sf1.
71
72 The value for the parameter sig specifies the tension factor. Values
73 near zero result in a cubic spline; large values (e.g. 50) result in
74 nearly a polygonal line. A typical value is 1. (the default).
75
76 The value for parameter sl1 is in radians and contains the slope at
77 (x[0],y[0]). The angle is measured counter-clockwise from the X axis
78 and the positive sense of the curve is assumed to be that moving from
79 point 0 to point n-1. A value for sl1 may be omitted as indicated by
80 the switch sf1.
81
82 The value for parameter sln is in radians and contains the slope at
83 (x[n-1],y[n-1]). The angle is measured counter-clockwise from the X
84 axis and the positive sense of the curve is assumed to be that moving
85 from point 0 to point n-1. A value for sln may be omitted as indicated
86 by the switch sf1.
87
88 The value of sf1 controls whether to use the values for sl1 and sln, or
89 compute those values internally. Specifically, sf1
90
91 = 0 if sl1 and sln are user-specified.
92 = 1 if sl1 is user-specified, but sln is
93 internally calculated.
94 = 2 if sln is user-specified, but sl1 is
95 internally calculated.
96 = 3 if sl1 and sln are internally calculated.
97
98
100 To use c_ftkurvd, load the NCAR Graphics library ngmath.
101
103 fitgrid_params, c_ftseti, c_ftsetr, c_ftsetc.
104
105 Complete documentation for Fitgrid is available at URL
106 http://ngwww.ucar.edu/ngdoc/ng/ngmath/fitgrid/fithome.html
107
109 Copyright (C) 2000
110 University Corporation for Atmospheric Research
111
112 This documentation is free software; you can redistribute it and/or
113 modify it under the terms of the GNU General Public License as pub‐
114 lished by the Free Software Foundation; either version 2 of the
115 License, or (at your option) any later version.
116
117 This software is distributed in the hope that it will be useful, but
118 WITHOUT ANY WARRANTY; without even the implied warranty of MER‐
119 CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
120 Public License for more details.
121
122 You should have received a copy of the GNU General Public License along
123 with this software; if not, write to the Free Software Foundation,
124 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
125
126
127
128
129UNIX March 1998 c_ftkurvd(3NCARG)