vvinit(3NCARG)


NAME

   VVINIT - Performs initialization tasks required before VVECTR may be
   called to plot a vector field, including copying array size information
   into internal common block variables, establishing coordinate system
   mappings and boundaries, determining the maximum and minimum vector
   magnitudes and scalar array values, and, if required, setting up the
   color threshold value array.

SYNOPSIS

   CALL VVINIT (U,LU,V,LV,P,LP,M,N,WRK,LW)

C-BINDING SYNOPSIS

   #include <ncarg/ncargC.h>

   void c_vvinit(float *u, int lu, float *v, int lv,
                 float *p, int lp, int m, int n,
                 float *wrk, int lw)

DESCRIPTION

   U           (REAL 2-dimensional array, dimensioned LU x n: n >= N,
               input): By default, assumed to contain the first
               dimensional Cartesian components of the vector field.
               However, if PLR is non-zero, it is treated as containing
               the vector magnitudes.

   LU          (INTEGER, input): Actual value of the first dimension of
               array U.

   V           (REAL 2-dimensional array, dimensioned LV x n: n >= N,
               input): By default, assumed to contain the second
               dimensional Cartesian components of the vector field.
               However, if PLR is non-zero, it is treated as containing
               the vector angles.

   LV          (INTEGER, input): Actual value of the first dimension of
               array V

   P           (REAL 2-dimensional array, dimensioned LP x n: n >= N,
               input): Array of scalar data that may be used to color the
               vectors. The grid points are assumed to coincide with the
               grid points of the U and V arrays. Required only if CTV has
               an absolute value of 2; otherwise this argument is ignored
               and may be assigned a dummy value.

   LP          (INTEGER, input): Actual value of the first dimension of
               array P

   M           (INTEGER, input): Number of contiguous elements along the
               first dimensional axis containing data to be processed in
               each of the arrays, U, V, and P (if used).

   N           (INTEGER, input): Number of contiguous elements along the
               second dimensional axis containing data to be processed in
               each of the arrays, U, V, and P (if used).

   WRK         (REAL, array dimensioned n: n >= LW, input/output): Work
               array required only if the parameter VMD is set to a value
               greater than 0.0. If required must be dimensioned greater
               or equal to 2 * M * N. Otherwise may be set to a dummy
               value.

   LW          (INTEGER, input): Assumed size of the array WRK. If the
               parameter VMD is set to a value greater than 0.0, must be
               set to a value less than or equal to the dimension of the
               WRK array, but greater or equal to 2 * M * N. Otherwise,
               this argument should be assigned the integer value 0.

C-BINDING DESCRIPTION

   The C-binding argument descriptions are the same as the FORTRAN
   argument descriptions with the following exceptions:

   lu          The second dimension of u in the calling program.

   lv          The second dimension of v in the calling program.

   lp          The second dimension of p 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, v, and p (if used).

   n           Number of contiguous elements along the first dimensional
               axis containing data to be processed in each of the arrays,
               u, v, and p (if used).

USAGE

   Call VVINIT before the first invocation of VVECTR and again anytime you
   modify the contents of the input data arrays. You may precede a VVINIT
   call with any number of calls to the Vectors parameter setting routines
   (VVSETC, VVSETI, or VVSETR). After the VVINIT call, you may still
   change certain parameters before calling VVECTR. (Consult the
   vectors_params man page for further information on this point.)

   Set up the two vector component arrays prior to calling VVINIT.  To
   permit multiple purpose use of the array space, the VVINIT argument
   list includes both the actual size and an assumed size for the first
   dimension of each input array. Due to FORTRAN array ordering
   conventions, only the assumed size needs to be specified for the second
   dimension.  (Note: when using the C bindings, mentally exchange all
   references to first and second dimensions in this discussion.) The
   arguments LU, LV, and LP contain the actual size of the first
   dimensions of arrays U, V, and P respectively. Since the grid locations
   for each of the data arrays are assumed to coincide, a single argument,
   M, represents the assumed size of the first dimension for all the
   arrays.  Similarly, the argument, N, is the assumed size of the second
   dimension. The only requirement for the actual second dimension size is
   that it be greater than or equal to N for each array.

   The array specified by the WRK argument and its associated size
   specifier, LW, are used only when the parameter VMD (Vector Minimum
   Distance) is given a value greater than 0.0. In this case, Vectors uses
   the array to keep track of the location of each vector in NDC space so
   that the distances between vectors can be compared. Based on these
   comparisons, Vectors eliminates some vectors such that the remaining
   vectors are separated by at least the specified distance. If VMD is
   less than or equal to 0.0, you may assign an arbitrary dummy value to
   WRK, but you should set LW to the integer value 0.

C-BINDING USAGE

   C-Binding usage is the same as FORTRAN usage discussed above if the
   references to "first dimension" and "second dimension" are exchanged.

EXAMPLES

   Use the ncargex command to see the following relevant examples: bnchmk,
   fcover, ffex00, ffex01, ffex02, ffex05, stex02, stex03, vvex01, vvex02.

ACCESS

   To use VVINIT or c_vvinit, load the NCAR Graphics libraries ncarg,
   ncarg_gks, and ncarg_c, preferably in that order.

MESSAGES

   See the vectors man page for a description of all Vectors error
   messages and/or informational messages.

SEE ALSO

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

   Hardcopy: NCAR Graphics Fundamentals, UNIX Version

COPYRIGHT

   Copyright (C) 1987-2009
   University Corporation for Atmospheric Research
   The use of this Software is governed by a License Agreement.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.