bcrd - BSU rotate and translate header geometry coordinates
bcrd [ -h | infile | theta | sfact | x0 | y0 | z0 ]
Basic Seismic Utilities (BSU) which permits the translation, rotation (around z-axis) and rescale of units. Header values of shot and receiver coordinates are subjected to a transformation which allows one to convert from one coordinate system to another, and to change the units of the cooridnate header values. Fortran 77.
Options
-h |
Online help giving details on command line arguments | ||
infile |
Input file name | ||
theta |
Angle of rotation in degrees about the z-axis. Theta is the angle from the current x-axis to the new x-axis, with +theta being counterclockwise (as viewed from above on the positive z-axis) | ||
sfact |
Scale factor to multiply original coordinates by. | ||
x0 |
Translation in x-direction. | ||
y0 |
Translation in y-direction. | ||
z0 |
Translation in z-direction (vertical). |
NOTE:
If invoked with no options, will prompt user for input
parameters. The formula applied is:
sfact*[+cos(theta)*x_old + sin(theta)*y_old] + x0 = x_new
sfact*[-sin(theta)*x_old + cos(theta)*y_old] + y0 = y_new
sfact*[z_old] + z0 = z_new
The rotation is performed about (0,0,0). If you wish to rotate about another point, one solution is to apply the program twice. First translate to a new origin. On the second pass, rotation will be about the new (0,0,0).
EXAMPLE:
bcrd wave.seg 45.2 0.3048 100. 200. 50.
Input file wave.seg coordinates are converted from feet to meters (0.3048 sfact). The coordinates are rotated 45.2 degrees from original axis. The x-coordinate is increased by 100 meters, the y-coordinate by 200 meters, and the z-coordinate by 500 meters.
bcrdxxxx.seg
Named according to convention (first 4char bcrd, the next 4char are the first 4char of the input file name, suffix .seg)
standard output
produces a progress bar
bcrdxxxx.lst
echo check of input parameters.
bhelp(1), bsegy(5)
No known bugs.
Copyright © 2024 by Paul Michaels
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
P. Michaels, PE. <[email protected]>