Seismic Imaging Home Page     Products & Services     3d Seismic Imaging     3d Ray Tracing

PtNorms Format for Describing Ray Positions and Directions

Summary

Files with PtNorms format are used to communicate initial ray positions and directions to and from the seismic ray tracing facility, d3depth2time and d3time2depth . PtNorms files may be created from GOCAD triangulated surfaces (tsurfs) or regular grids in the dds system (USP, segy, disco, sep, or cube). LandMark ascii data files can be translated into (and from) PtNorms data using the lndmrk2grid and grid2PtNorms programs (or PtNorms2grid and grid2lndmrk). Triangulated surfaces may be creatd from PtNorms files using the program PtNorms2trisurfT (for a time trisurf) or PtNorms2trisurf (for a depth trisurf). Single valued DDS grids may be created from PtNorms files using the program PtNorms2dds. PtNorms may be created from single valued grids defined in DDS supported formats using the program usp2PtNorms.

PtNorm Format Description

PtNorms files are ascii files describing one ray location and direction per ascii line. The first line in the file indicates if these rays are from a time surface or depth surface. Each line can have 1 integer followed by 7 floating point numbers delimited by white space. The first number on each line is an index that can be used to keep track of the ray. The next three floating point numbers are the x, y, and z locations for the endpoint of a ray. The fifth number (4th floating point number) is the travel time associated with the ray. The 6th-8th numbers (5th-7th floating point numbers) are the x, y, and z direction cosines of the ray at this location. The syntax for all of the lines of a PtNorms file except for the first one is:

integer x y z time normx normy normz

where normx**2 + normy**2 +normz**2 = 1

The direction cosines are normalized before they are used by the ray tracing facility. The following is an example of a PtNorms file:

type=Depth
1 0.000000 13950.000000 2277.487793 0.000000 -0.022959 0.079013 -0.996609
2 50.000000 13950.000000 2276.419678 0.000000 -0.022959 0.079013 -0.996609
4 150.000000 13950.000000 2273.742676 0.000000 -0.030926 0.075652 -0.996655
33 1600.000000 13950.000000 2273.262207 0.000000 0.137384 0.059748 -0.988714
35 1700.000000 13950.000000 2288.432617 0.000000 0.158689 0.004961 -0.987316
36 1750.000000 13950.000000 2296.645996 0.000000 0.162558 -0.025464 -0.986370
37 1800.000000 13950.000000 2304.913086 0.000000 0.160904 -0.054372 -0.985471
40 1950.000000 13950.000000 2328.248047 0.000000 0.144860 -0.115656 -0.982670
41 2000.000000 13950.000000 2335.489990 0.000000 0.140395 -0.126620 -0.981966
1025 51200.000000 13950.000000 1621.471802 0.000000 -0.011676 -0.175787 -0.984359
1026 51250.000000 13950.000000 1620.926514 0.000000 -0.011676 -0.175787 -0.984359

Creating PtNorms Files

Directions normal to an existing surface may be used to define the direction for ray travel. Two methods are provided. Normals may be computed from a gocad triangulated surface or a rectangular grid of values.

Creating PtNorms from Trisurfs

Bob Mars program /explprod/phase1/script/3dtrisurfnormals can be used to create an ascii file containing the directions normal to the vertices of a trisurf. If a trisurf has duplicate points, degenerate triangles, or triangles are not traversed in a consistent direction, then the vertex normals may be poorly defined. The program 3dculldegenerateTris filters a trisurf removing duplicate vertices and degenerate triangles.

The normal direction at a triangulated surface vertex is assumed to be in the direction of the average of the normals of the triangles sharing this vertex. The resulting normals can be put into PtNorms format using a simple awk script. A unix script that could create and format a PtNorms file from a gocad triangulated surface is:

for i in $*

do

3dtrisurfnormals -N $i -O $i.norms -v

awk 'BEGIN {print "type=depth" } {print ++i, $1, $2, $3, 0, $4, $5, $6} ' $i.norms > $i.PtNorms

done

Creating PtNorms from Regular Grids

PtNorms files may be created from regular grids using the program grid2PtNorms or usp2PtNorms .

Last Modified: . Document access count:


BACK Return to the Seismic Imaging Home Page Back Return to the 3d Raytracing Home Page. 1