Bivar(3NCARG)
π Bivar β the NCAR GRAPHICS girlies' guide to smooth surfaces π
okay bestie, sit down, hydrate, because we're talking about Bivar from the NCAR GRAPHICS manual (section 3NCARG, if you're keeping notes π).
So what is it? Bivar gives you bivariate interpolation and smooth surface fitting for values given at irregularly distributed points. Yes, irregularly distributed β she doesn't need your cute little grid, she works with whatever you give her π¦. And the glow-up? The resulting interpolating function and its first-order partial derivatives are continuous. Chef's kiss.
The method is local, meaning a change in the data in one area of the plane does not affect the interpolating function except in that local area. Main character energy that stays in her own lane π .
And the party trick: the method gives exact results when all points lie in a plane. No cap.
β¨ SYNOPSIS β¨
Here's the whole friend group π«Ά:
IDBVIPβ produces interpolated values at points(XI(I), YI(I)),I=1,...,NIP. This is the one you want for filling in missing data points on a grid. Iconic for patching holes.IDSFFTβ performs smooth surface fitting when the projections of the data points in theX-Yplane are irregularly distributed in the plane.IDPLTRβ plots the triangulation of the data points. Yes, she'll draw you the triangles πΊ.IDGETIβ retrieves the integer value of a Bivar parameter.IDGETRβ retrieves the real value of a Bivar parameter.IDSETIβ provides a new integer value for a Bivar parameter.IDSETRβ provides a new real value for a Bivar parameter.
π C-BINDING SYNOPSIS π
For the C girlies (we see you, we love you):
c_idbvip,
c_idsfft
c_idpltr
c_idgeti
c_idgetr
c_idseti
c_idsetr
π EXAMPLES π
Go look at the example cbex01. That's the one. Run it, love it, screenshot it.
π ACCESS π
To use the Bivar Fortran or C routines, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β preferably in that order. Order matters, bestie, don't be chaotic π.
π MESSAGES π
When error conditions are detected, the support routine SETER is called. By default, SETER writes a message to the standard error file (as defined by I1MACH(4)) and then terminates execution. Like, full stop, program's over, no goodbye π.
But! It is possible to put SETER into recovery mode and regain control after a recoverable error (which includes all of the possible errors). So you can catch the drama and keep going.
The possible error messages are listed below. All errors are recoverable in the sense that a user program which has called ENTSR to set recovery mode will get control back after one of these errors occurs.
Here's the full receipts list, verbatim, no edits π§:
IDBVIP (BIVAR) - UNCLEARED PRIOR ERROR
IDBVIP (BIVAR) - INPUT VARIABLE MD IS OUT OF RANGE
IDBVIP (BIVAR) - INPUT VARIABLE NDP IS OUT OF RANGE
IDBVIP (BIVAR) - INPUT VARIABLE NIP IS OUT OF RANGE
IDBVIP (BIVAR) - MD = 2 OR 3 BUT NDP WAS CHANGED SINCE LAST CALL
IDBVIP (BIVAR) - MD = 3 BUT ITY WAS CHANGED SINCE LAST CALL
IDBVIP (BIVAR) - MD = 3 BUT NIP WAS CHANGED SINCE LAST CALL
IDGETI (BIVAR) - UNCLEARED PRIOR ERROR
IDGETR (BIVAR) - UNCLEARED PRIOR ERROR
IDGETR (BIVAR) - INVALID KEYWORD: xxx
IDGRID (BIVAR) - INTERNAL ERROR - SEE CONSULTANT
IDPLTR (BIVAR) - UNCLEARED PRIOR ERROR
IDSETI (BIVAR) - UNCLEARED PRIOR ERROR
IDSETR (BIVAR) - UNCLEARED PRIOR ERROR
IDSETR (BIVAR) - INVALID KEYWORD: xxx
IDSFFT (BIVAR) - UNCLEARED PRIOR ERROR
IDSFFT (BIVAR) - INPUT VARIABLE MD IS OUT OF RANGE
IDSFFT (BIVAR) - INPUT VARIABLE NDP IS OUT OF RANGE
IDSFFT (BIVAR) - INPUT VARIABLE NXI OR NYI IS OUT OF RANGE
IDSFFT (BIVAR) - INPUT VARIABLE NZI IS LESS THAN NXI
IDSFFT (BIVAR) - MD = 2 OR 3 BUT NDP WAS CHANGED SINCE LAST CALL
IDSFFT (BIVAR) - MD = 3 BUT ITY WAS CHANGED SINCE LAST CALL
IDSFFT (BIVAR) - MD = 3 BUT NXI WAS CHANGED SINCE LAST CALL
IDSFFT (BIVAR) - MD = 3 BUT NYI WAS CHANGED SINCE LAST CALL
IDTANG (BIVAR) - INPUT PARAMETER NDP OUT OF RANGE
IDTANG (BIVAR) - TWO OF THE INPUT DATA POINTS ARE IDENTICAL
IDTANG (BIVAR) - ALL COLLINEAR DATA POINTS
ngl, IDGRID (BIVAR) - INTERNAL ERROR - SEE CONSULTANT is giving "not me, go ask an adult" and honestly, relatable π
π₯ SEE ALSO π₯
Online: bivar_params, idbvip, idsfft, idpltr, idgeti, idgetr, idseti, idsetr, ncarg_cbind
Hardcopy: NCAR Graphics Contouring and Mapping Tutorial; NCAR Graphics Fundamentals, UNIX Version
π ACKNOWLEDGMENTS π
Bivar was written by Hiroshi Akima in August 1975 and rewritten by him in late 1976. In 1989, a new version of Bivar, incorporating changes described in a Rocky Mountain Journal of Mathematics, was obtained from Dr. Akima, and included in NCAR Graphics with his permission. In 1995, Dave Kennison incorporated the capability of doing linear interpolation and a different kind of triangulation, put in a parameter access interface, and wrote a routine to allow the triangulation to be plotted. The way the lore goes back decades... historians are studying it πβ¨
β COPYRIGHT β
Copyright (C) 1987-2009
University Corporation for Atmospheric Research
The use of this Software is governed by a License Agreement.
and that's the whole page, bestie π«Ά this one's from the UNIX manual, November 1995, filed under Bivar(3NCARG) β go forth and interpolate responsibly, mwah ππΈ
π¦ where this page comes from
- epel 9: ncl-devel 6.6.2-59.el9 Β· LicenseRef-Callaway-BSD
- fedora 43: ncl-devel 6.6.2-58.fc43 Β· LicenseRef-Callaway-BSD
- fedora 44: ncl-devel 6.6.2-62.fc44 Β· LicenseRef-Callaway-BSD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms