Streamlines(3NCARG)

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

✨ Streamlines (from the NCAR GRAPHICS manual, bestie) ✨

okay so this is the Streamlines page, straight out of the NCAR GRAPHICS manual set (it's a 3NCARG joint, iykyk) β€” and it's literally your utility for plotting a streamline representation of field flow data, given two arrays holding the vector field components on a uniform grid. πŸŒ€βœ¨


πŸŽ€ NAME πŸŽ€

Streamlines β€” a whole utility for plotting a streamline representation of field flow data, and you feed it two arrays that contain the vector field components on a uniform grid. that's the vibe. πŸ’…


🌸 SYNOPSIS 🌸

so the bare minimum to make a streamline field flow plot with the current interface is these two calls, periodt:

  • STINIT β€” does all the initialization tasks that have to happen before STREAM can be called to actually create a streamline field flow plot. it copies info about your input data arrays into internal common block variables, and it establishes the coordinate system mappings and the boundaries. 🫢
  • STREAM β€” plots the streamline representation of your field flow data, based on the conditions STINIT set up plus whatever the current values of a bunch of user-modifiable internal parameters are (those live with the Streamlines utility).

and here's the cute part: every single user-modifiable internal parameter already has a default value, so you literally only set the ones you want to be different from the default. no cap. the routines you use to set Streamlines parameters are:

  • STRSET β€” resets all parameters back to their initial default values. the big undo button. πŸ”„
  • STSETI β€” sets the value of an internal parameter of type INTEGER.
  • STSETR β€” sets the value of an internal parameter of type REAL.

and generally, once a parameter gets a value from one of these routines, it keeps that value until a similar call resets it. so don't be shocked when it's still there later, bestie.

want to peek at a value? retrieve an internal parameter with one of these:

  • STGETI β€” gets the current value of an internal parameter of type INTEGER.
  • STGETR β€” gets the current value of an internal parameter of type REAL.

now, Streamlines also supports two obsolete routines for compatibility with old NCAR Graphics codes. the compatibility mode parameter, CPM, gives you a bunch of options so you have considerable flexibility in making the transition to the new version of the utility. but listen: when you're writing new code, please don't use these entry points β€” they provide less capability than the standard Streamlines interface, and they may eventually be phased out. it's giving deprecated, fr fr. 😭

  • STRMLN β€” the principal entry point before Version 3.2, now just a front end to the STINIT/STREAM interface.
  • EZSTRM β€” a front end to STRMLN: a simpler interface for standard situations, for when you don't need detailed control of the plot.

🌈 C-BINDING SYNOPSIS 🌈

c_stinit
c_stream
c_strset
c_stseti
c_stsetr
c_stgeti
c_stgetr
c_strmln
c_ezstrm

🧚 USER-MODIFIABLE INTERNAL ROUTINES 🧚

okay so these routines are not for calling directly, bestie β€” hands off the wheel. but you may modify them to customize the behavior of Streamlines. three of them (STUMXY, STUIXY, and STUMTA) exist to support user-defined mapping transformations, and the fourth (STUMSL) lets you tailor streamline masking exactly how you want it. obsessed. πŸ’œ

  • STUIXY β€” a user modifiable routine that inversely maps a single point on the streamline, going from user coordinate space to data coordinate space.
  • STUMSL β€” the default name for a user-definable external subroutine used to draw masked streamlines. the default version of the routine draws any polyline whose area identifiers are all greater than or equal to zero.
  • STUMTA β€” given the coordinates of a point on the streamline in data, user, and NDC space, plus the interpolated, normalized components of the vector at that point relative to data coordinate space, this user-modifiable routine finds the directional angle of the streamline relative to NDC space at the point.
  • STUMXY β€” a user modifiable routine that maps a single point on the streamline from data coordinate space to user coordinate space.

πŸ‘‘ ACCESS πŸ‘‘

to use Streamlines, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β€” preferably in that order. don't fight the order, the order is iconic. ⭐


πŸ’€ MESSAGES πŸ’€

this section lists, in alphabetical order, every error message Streamlines might write. each error message starts with the name of the Streamlines routine where the error got detected, then a dash, then the error message itself. these get written by a call to the error-handling support routine SETER, with a final argument indicating that the error is fatal and that execution should be terminated. so yeah. not a drill. πŸ™ˆ

STGETI OR STGETR - PARAMETER NAME NOT KNOWN - x

  • the given parameter name (Β΄xΒ΄) is not a legal parameter name known to Streamlines.

STGETI OR STGETR - PARAMETER NAME TOO SHORT - x

  • the parameter name ("x") is less than three characters long.

STINIT - U AND/OR V ARRAY DIMENSIONS EXCEEDED

  • the STINIT input argument, M, which specifies the number of array elements to use along the first dimension of the U and V arrays, exceeds the actual first dimension of U and/or V, as specified by the input arguments LU and LV.

STREAM - TOO MANY AREA GROUPS

  • the area map passed as the argument, IAM, to STREAM contains more area groups than the Streamlines utility allows β€” currently 64. this error can only occur if the mask to area map parameter, MSK, has a value greater than 0, specifying that streamlines are to be drawn masked to an area map.

STREAM - INVALID AREA MAP

  • the area map passed as the argument, IAM, to STREAM is judged invalid because it contains a negative value for the number of area groups. this error can only occur if the mask to area map parameter, MSK, has a value greater than 0, specifying that streamlines are to be drawn masked to an area map.

STSETI OR STSETR - PARAMETER NAME NOT KNOWN - x

  • the given parameter name (Β΄xΒ΄) is not a legal parameter name known to Streamlines.

STSETI OR STSETR - PARAMETER NAME TOO SHORT - x

  • the parameter name ("x") is less than three characters long.

STSETI OR STSETR - PARAMETER VALUE OUT OF RANGE - x

  • an attempt has been made to set the parameter named Β΄xΒ΄ to a value outside the range allowed by the Streamlines utility.

πŸ¦‹ SEE ALSO πŸ¦‹

Online: stgetc, stgeti, stgetr, stinit, stream, streamlines_params, strset, stsetc, stseti, stsetr, stuixy, stumsl, stumta, stumxy, ncarg_cbind.

Hardcopy: NCAR Graphics Fundamentals, UNIX Version


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 came from the UNIX corner of the manual, dated April 1993, and it lives under Streamlines(3NCARG) β€” go plot something gorgeous with it. slay, drink water, and may all your area identifiers be greater than or equal to zero. πŸ’…βœ¨πŸ«Ά

πŸ“¦ where this page comes from