VPRO Version 1.0

Authors: Stuart E. Rogers

Description:

The VPRO program is used to interpolate data from 2D and 3D CFD solution contained in single- or multiple-zone plot3d grid and q files. It will produce a wide range of data along the coordinates of either a surface normal, an arbitrary line, or at an arbitrary point. For 2D data, interpolated data is produced at each point where grid lines intersect the given normal/line. For 3D data, interpolated data is produced at each point where the given normal/line intersects each computational (xi, eta, or zeta = constant) plane.

Input:

The grid and solution files must be 2D or 3D unformatted PLOT3D files. The program prompts for the necessary input information, including input filenames, type of data to be output, and coordinates describing the surface normal, line, or point upon which the data will be interpolated. For the surface normal option, the x- and y-locations (x-location only for 2D) of the desired surface point is required, as well as the zone containing the surface. For a line, the x,y,z coordinates of two points which define the line are required, and for a point, the x,y,z coordinates of the point are required. For the projected surface normal option, the x,y,z coordinates of a point are required, as well as the zone number containing the surface; this option projects the input point to the desired surface and creates a surface normal from there.

Command arguments:

Additional options for the program are controlled through the following command-line arguments:
   -2d:
	Runs two-dimensional version of the program.
	Default: 3D

   -sort, -nosort
	Determines whether or not the interpolated data is sorted. 
	The data is sorted by the output distance data if output=1,11,20 or 30,
	or it is sorted by the value of the coordinate which is written
	in the output file for output=2,3,4,12,13,14. Sorting is particularly
	useful when data comes from several zones; each zone is interpolated
	seperately and without sorting, the output data will generally
	be discontinous.
	Default: sort	

   -dmax d:
	Limits the number of points to be output based on a maximum distance d.
	For a surface normal, the distance is measured from the surface point;
	for a line, the distance is measured from the first input point.
	Default: 1000.0

   -surfmin, -surfmax
	For surface-normal searches which find multiple intersections with
	the surface and the target (as can happen with c-grid and o-grids),
	this controls which point is chosen.   The surface-normal search
	requires that the user input the (x,y) locations and the computational
	index of the desired surface point; the code finds the z-coordinate
	corresponding to the surface point.  If two such points are found,
	-surfmax tells the code to take the point with the
	largest z-coordinate; -surfmin tells the code to take the point with
	the smallest z-coordinate.
	Default: -surfmax
	
   -ibdir i:
	For surface-normal searches, this controls which grid surface will
	be used to define the surface. For a zone of dimensions jmax,kmax,lmax:
		i = 1:	j=1 surface
		i =-1:	j=jmax surface
		i = 2:	k=1 surface
		i =-2:	k=kmax surface
		i = 3:	l=1 surface
		i =-3:	l=lmax surface

	Default for 3D: i=3.
	Default for 2D: i=2.


    -output i:
	The value of i controls what is written to the output file.
	The output file will contain a single line for each interpolated
	data point.  In the following options, dist is the distance from
	either the surface point or the first input point of an arbitrary
	line.  The following lists possible values for i and the resulting
	output.  Default is i=1.

		i=1:			(data1,data2,...),dist
		i=2:			(data1,data2,...),x
		i=3:			(data1,data2,...),y
		i=4  (3D only):		(data1,data2,...),z
		i=11:			dist,(data1,data2,...)
		i=12:			x,(data1,data2,...)
		i=13:			y,(data1,data2,...)
		i=14 (3D only):		z,(data1,data2,...)
		i=20 (3D data):		x,y,z,dist,(data1,data2,...)
		i=20 (2D data):		x,y,  dist,(data1,data2,...)
		i=30 (3D data):		nz,rj,rk,rl,x,y,z,dist,(data1,data2,...)
		i=30 (2D data):		nz,rj,rk,   x,y,  dist,(data1,data2,...)

Output files:

The interpolated data will be written to a new file with a unique file name based on the type of data being interpolated. For example, for velocity magnitude data, the output filename(s) will be the first new filename in the sequence: vm.xxx.dat, xxx=001,002,003, etc.

Bugs:

In 3D line searches, if the target line penetrates through two distinctly different computational-space regions of the grid, the current techniques will only find intersection points in one section of the grid. An example of this is a c-grid and a search-line which penetrates through both the lower- and upper-halfs of the wake-cut regions of the c-grid.
Last modified: Wed Apr 1 15:07:15 1998