VELVEC(3NCARG)

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

πŸ’– VELVEC πŸ’–

okay bestie, so this one lives in the NCAR GRAPHICS manual, section 3NCARG. Sit down, hydrate, we're talking about VELVEC πŸ’…


✨ NAME ✨

VELVEC β€” it's an older version of the Vectors utility, and now it's basically a front-end to VELVCT. Like, it's identical to the VELVCT call except for ONE thing: there's no LENGTH parameter, so you can't adjust the realized length of the maximum vector magnitude. That's the whole difference, no cap. 🫢


✨ SYNOPSIS ✨

VELVEC (U,LU,V,LV,M,N,FLO,HI,NSET,ISPV,SPV)

✨ STATUS ✨

not me having to say this but... VELVEC is obsolete πŸ’€ It's supported only to provide compatibility with old NCAR Graphics codes. That's it, that's the job.

BUT. The compatibility mode parameter, CPM, offers a number of options to help ease the transition to the new version of the utility. So you're not stranded, bestie.

When writing new code you are encouraged NOT to use this entry point, because it provides less capability than the standard Vectors interface, and it may eventually be phased out. fr fr. write the new thing. πŸ™ˆ

✨ C-BINDING SYNOPSIS ✨

#include <ncarg/ncargC.h>

void c_velvec(float *u, int lu, float *v, int lv, int m,
              int n, float flo, float hi, int nset,
              int ispv, float *spv)

✨ DESCRIPTION ✨

here come the arguments, bestie, and there's a LOT of them, so stay with me 🌸

  • U β€” (REAL 2-dimensional array, dimensioned LU x n: n >= N, input). By default it's assumed to contain the first dimensional Cartesian components of the vector field. BUT β€” plot twist β€” if PLR is non-zero, it's treated as containing the vector magnitudes. πŸ‘‘
  • LU β€” (INTEGER, input). The actual value of the first dimension of array U.
  • V β€” (REAL 2-dimensional array, dimensioned LV x n: n >= N, input). By default it's assumed to contain the second dimensional Cartesian components of the vector field. But, again, if PLR is non-zero, it's treated as containing the vector angles. πŸ¦‹
  • LV β€” (INTEGER, input). The actual value of the first dimension of array V.
  • M β€” (INTEGER, input). Number of contiguous elements along the first dimensional axis containing data to be processed in each of the arrays, U and V. ⭐
  • N β€” (INTEGER, input). Number of contiguous elements along the second dimensional axis containing data to be processed in each of the arrays, U and V. ⭐
  • FLO β€” (REAL, input). The minimum vector magnitude allowed to be displayed in the plot.
  • HI β€” (REAL, input). The maximum vector magnitude allowed to be displayed in the plot. And listen: if you set it to 0.0 there is no upper limit imposed. cute, right?
  • NSET β€” (INTEGER, input). This flag controls how and when the SET call is invoked. three whole moods:
    • If NSET is 0, VELVEC makes a SET call to establish a standard viewport and window boundaries coincident with the array coordinate boundaries. And then PERIM is called to draw a border. πŸŽ€
    • If NSET is greater than zero, VELVEC does not call SET or PERIM.
    • If NSET is less than zero, VELVEC calls SET to establish window boundaries coincident with the array grid coordinate boundaries but does not modify the viewport and does not call PERIM.

Also, heads up: unlike the VVINIT/VVECTR interface, when VELVEC does a SET call, it always restores the original coordinate system state before returning. she cleans up after herself. periodt. πŸ’…

  • ISPV β€” (INTEGER, input). Flag controlling the special value feature. the lore:
    • 0 means the feature is not in use.
    • 1 means that if the value of U(I,J)=SPV(1) the vector will not be plotted.
    • 2 means that if the value of V(I,J)=SPV(2) the vector will not be plotted.
    • 3 means that if either U(I,J)=SPV(1) or V(I,J)=SPV(2) then the vector will not be plotted.
    • 4 means that if U(I,J)=SPV(1) and V(I,J)=SPV(2), the vector will not be plotted. ✨
  • SPV β€” (REAL array, dimensioned 2, input). An array of length 2 which gives the value in the U array and the value in the V array which denote special values. This argument is ignored if ISPV=0. The default values are 1.0E12. 🌈

✨ C-BINDING DESCRIPTION ✨

The C-binding argument descriptions are the same as the FORTRAN argument descriptions with the following exceptions, bestie, pay attention 🫢

  • lu β€” the second dimension of u in the calling program.
  • lv β€” the second dimension of v in the calling program.
  • m β€” Number of contiguous elements along the second dimensional axis containing data to be processed in each of the arrays, u and v.
  • n β€” Number of contiguous elements along the first dimensional axis containing data to be processed in each of the arrays, u and v.

(yeah they flip the axes on you. it's giving chaotic but it's documented so we respect it πŸŽ€)


✨ USAGE ✨

VELVEC is used identically to VELVCT except that there is no provision for adjusting the realized length of the maximum vector magnitude. See the velvct man page for more info, bestie, that's where the real tea is πŸ’œ


✨ ACCESS ✨

To use VELVEC or c_velvec, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β€” preferably in that order. don't do it out of order, it's not the vibe. ⭐


✨ SEE ALSO ✨

Online: vectors, vectors_params, fx, vvectr, vvgetc, vvgeti, vvgetr, vvinit, vvrset, vvsetc, vvseti, vvsetr, vvudmv, vvumxy, ncarg_cbind. 🌈


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 came to you from the UNIX corner of the manual, dated April 1993, under the name VELVEC(3NCARG). mwah, go read velvct πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from