CURV1(3NCARG)

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

✨ CURV1 β€” the set-up bestie for CURV2 ✨

okay so real quick, this is CURV1(3NCARG) from the NCAR GRAPHICS manual, and it's literally the little pre-game routine that gets everything ready for CURV2. no cap. it does set-up for CURV2. that's the whole vibe. πŸŽ€


🌸 SYNOPSIS 🌸

CALL CURV1 (N, X, Y, SLP1, SLPN, ISLPSW, YP, TEMP, SIGMA, IER)

that's it. that's the incantation. copy it exactly, bestie, don't freestyle it πŸ’…


πŸ’– DESCRIPTION πŸ’–

here's the tea on every single argument, no skips, we're going through ALL of them:

  • N β€” (integer, input) the number of input data values you're feeding in. and like, it has to be N > 1, okay? more than one, we don't do lonely data points here 🫢
  • X β€” (real, input) an array holding the abscissae for the input function. that's the x-coordinates, the horizontal girlies ✨
  • Y β€” (real, input) an array with the functional values of your input data β€” so Y(K) is the functional value at X(K) for K=1,N. the vertical besties, matched up one-to-one, we love a paired set 😌
  • SLP1 β€” (real, input) a value you specify for the desired slope at X(1). but like… if you'd rather have it calculated internally, go peek at ISLPSW below πŸ‘€
  • SLPN β€” (real, input) same energy but for the end: a user-specified value for the desired slope at X(N). again, ISLPSW is your girl if you want it done internally.
  • ISLPSW β€” (integer, input) the switch that decides whether the slopes at the end points get calculated internally. four moods, pick one:
    • = 0 if SLP1 and SLPN are user-specified.
    • = 1 if SLP1 is user-specified, but SLPN is internally calculated.
    • = 2 if SLPN is user-specified, but SLP1 is internally calculated.
    • = 3 if SLP1 and SLPN are internally calculated.

like it's giving "how much do you want me to handle for you" and honestly? valid question 🧚

  • YP β€” (real, output) contains values for the second derivative (CURV1 computes these). so yeah, it's an output, it does the math, you just receive the gift πŸ’
  • TEMP β€” (real, input) scratch space. just… space to scribble. the notes app of arguments πŸ“
  • SIGMA β€” (real, input) the tension factor. and the range here is WILD:
    • values near zero result in a cubic spline
    • large values (e.g. 50) result in nearly a polygonal line
    • a typical value is 1

so like, lowkey β†’ smooth and curvy, highkey β†’ sharp and angular. 1 is the main character default, periodt πŸ”₯

  • IER β€” (integer, output) the error return value. if IER comes back as 0, then no errors were detected, slay, we're good πŸŽ‰

but if it's not zero, here's what it means:

  • = 1 if N is less than 2.
  • = 2 if X values are not strictly increasing.
bestie, watch that second one especially β€” your X values HAVE to be strictly increasing. not "mostly", not "kinda", strictly. if they're not, IER will absolutely snitch on you πŸ’€

πŸ”‘ ACCESS πŸ”‘

to use CURV1, you gotta load the NCAR Graphics library ngmath. that's the entry fee, no way around it ✨


πŸ‘€ SEE ALSO πŸ‘€

  • curv2
  • fitgrid_params

complete documentation for Fitgrid is available at 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.


and that's the whole page, bestie πŸ’œ this was CURV1(3NCARG) from UNIX, dated March 1998 β€” yeah she's an icon from the 90s and she's still serving. go forth and set up your CURV2 πŸ‘‘πŸ¦‹πŸ’–

πŸ“¦ where this page comes from