CURVP1(3NCARG)

πŸ“¦ version 6.6.2, in epel 9, fedora 43, fedora 44

πŸ’– CURVP1 β€” the little helper that gets CURVP2 ready πŸ’–

okay bestie, welcome to CURVP1, a manual page from the NCAR GRAPHICS corner of the universe. she's a Fortran-callable subroutine, she's lowkey the prep step, and she is absolutely not the one doing the main-character interpolation. keep reading, i'll explain 🫢


✨ NAME ✨

CURVP1 β€” calculate values for CURVP2 usage. that's it, that's her job. she's the sous chef. πŸŽ€


✨ SYNOPSIS ✨

CALL CURVP1 (N, X, Y, P, YP, TEMP, SIGMA, IER)

so like, this subroutine calculates certain values that are used by CURVP2 in order to compute an interpolatory spline under tension through a sequence of functional values for a periodic function. 🌈

heads up bestie: the actual computation of the interpolated values has to be done with CURVP2. CURVP1 does NOT do that part. she just does the prep. don't @ me, that's literally what the page says. πŸ’…

✨ DESCRIPTION ✨

here's the whole cast, one by one, no skips, no cuts πŸ‘‘

  • N (integer, input) β€” the number of input data values. must satisfy N > 1. πŸ“
  • X (real, input) β€” an array holding the abscissae for the input function.
  • Y (real, input) β€” an array holding the functional values of the input function. so like, Y(K) is the functional value at X(K) for K=1,N. yes bestie, both arrays, together, iconic duo. πŸ’œ
  • P (real, input) β€” the period of the function. and this one has a rule: P must be greater than X(N)-X(1). no exceptions, she's strict about it. 😀
  • YP (real, output) β€” contains values for the second derivative. and yes, these are calculated by CURVP1 herself, she's not just standing there looking cute. ✨
  • TEMP (real, input) β€” scratch space. it's giving "the friend who holds your bag while you do the real thing." 🫢
  • SIGMA (integer, input) β€” the tension factor!! okay so:
    • values near zero β†’ you get a cubic spline
    • large values (like, e.g. 50) β†’ you get nearly a polygonal line
    • a typical value is 1

it's literally the tension knob. turn it up, things get angular. πŸ”₯

  • IER (integer, output) β€” the error return value. if IER comes back as 0, then no errors were detected. slay. 🌸
    • = 1 if N is less than 2.
    • = 2 if P is less than or equal to X(N)-X(1).
    • = 3 if the X values are not strictly increasing.
ngl bestie, IER is your vibe check. if it's not 0, something is off and you should go look at it. 😭

✨ ACCESS ✨

to use CURVP1, load the NCAR Graphics library ngmath. that's the plug. πŸ”Œ


✨ SEE ALSO ✨

  • curvp2
  • fitgrid_params

also!! complete documentation for Fitgrid lives at this URL:

http://ngwww.ucar.edu/ngdoc/ng/ngmath/fitgrid/fithome.html

go read it, iykyk πŸ“š


Copyright (C) 2000 University Corporation for Atmospheric Research

the use of this Software is governed by a License Agreement. πŸ‘‘ (yes, capital-S "Software", respect it.)


okay that's the whole page bestie, you ate it up πŸ’…βœ¨ this was UNIX, March 1998, page CURVP1(3NCARG) β€” mwah, go call CURVP2 next, you've got this πŸ¦‹πŸ’–

πŸ“¦ where this page comes from