Wiki Markup |
---|
h2. Name
*agr* — Adjust grid to points and well data {alias:agr}
h2. Syntax
{panel:|borderStyle=solid|borderWidth=1|bgColor=#FFFFAA}
*agr* _hiname_ \[*dis* _fixed_radius_] \[*rad* _radius_factor_] \*max* _max_radius_ \[*sav*] \[*conic*] \[*tensor* \[*fac* _influencefactor_]]
{panel}
h2. Description
The *agr* command is used for adjusting a grid to the z-values of a point-dataset in workspace. A common *agr* operation is to adjust a map to the values found in a well. The grid must be the active dataset.
h2. Arguments
_hiname_
{indent}
Ajust the grid to points in workspace _hiname_.
{indent}
*dis* _fixed_radius_
{indent}
Use a fixed radius _fixed_radius_ distance around each point.
{indent}
*rad* _radius_factor_
{indent}
Use an influence radius around each point that is: _radius_factor_ * vertical_distance_from_surface_to_point . Default _radius_factor_ is 5. The default is used if this argument is left out.
{indent}
*max* _max_radius_
{indent}
Use a maximum influence distance of _max_radius_ around each point.
{indent}
*sav*
{indent}
Save the correction grid into workspace ^savagr. This grid can be used for inspection and documentation of the corrections.
{indent}
*tensor*
{indent}
Use b-spline tensor modeling (bell shaped) to model the differences.
{indent}
*fac* _influencefactor_
{indent}
Apply an influence factor in tensor modeling.
{indent}
h2. Examples
h3. Ex.1: Generate grid and cube
{noformat:|borderWidth=1|bgColor=#eeeeee}
set i 0 ; # initialize i
# adjust grid 5 times
while {$i lt 5} {
agr ggg dis 5000 ; # adjust grid in workspace to points in workspace ggg using a fixed radius of 5000.
incr i ; # add one to i
}
{noformat}
To achieve good results with the agr command one should repeat the operations a few times to secure that the updating towards the different points stabilizes in such a way that an updating in one point do not harm the adjacent points.
h3. Ex.2: Update grid to well data
Adjusting grids is handled in the command object found by _grid_ > Grid Operations > Update grid to well data*. The example below is an excerpt from that code.
{noformat:|borderWidth=1|bgColor=#eeeeee}
# example of using agr to update a grid
# well data is located in workspace welldata
# the grid to be updated is in active
mhi updatedgrid ; # the grid is saved in updated grid
set radius 5000 ; # radius of updating
set iterations 10 ; # max iterations
set iter 1 ; # initiate a loop variable
set tell 0 ; # initiate a counter variable
while {$iter == 1} {
mlo updatedgrid ; # move low updatedgrid
set rad [expr $radius * (1 - 0.06 * $tell)]
agr welldata rad $rad ; # adjust grid using an influence radius
mhi updatedgrid ; # move high updated grid
mlo welldata ; # move down welldata
zap dif updatedgrid ; # zap and get difference to grid
# well data differences to the grid is in the scalar part
set zmi [gvar zsmin] ; # get scalar zmin
set zma [gvar zsmax] ; # get scalar zmax
set val [expr $zmi + $zma] ; # add min and max
if {$val lt 1 amp $val > -1} {set iter 0} ; # check difference and stop if OK
mlo updatedgrid ; # move low updatedgrid
incr tell ; # increment the tell variable
if {$tell >= $iterations} { ; # test if counter is greater than max iterations
break ; # break the loop
}
}
# the result is now in updatedgrid
{noformat}
!att:_img_ref^cmd_agr_viewports.png|border=1,width=500!
_The grid in the example above is displayed in a viewport presentation before and after updating with *agr*_
h2. See also
[grp - Grid points and lines], [zap - Zap (or snap) to data]
{pagebreak} |
Page Comparison
General
Content
Integrations