area_surf_ineq.tcl

This example shows how to add inequalities conditions on resulting surface, which a set in areas with other surface values. In this example areas 1,3,5 were used to set greater than or equal to inequality condition with "test_func" surface. Areas 2,4,6 were used to set lower than or equal to inequality condition.

Here is the image of the resulting surface (red colour for areas 1,3,5, green colour for areas 2,4,6):

surface built from inequalities for regions of other surface

Pic 1. Surface built from inequalities for regions of other surface

This result was obtained with "examples/surfit/curvs/area_ineq.tcl" script.

00001 #
00002 # This script was generated with funner v2.1beta (www.gridding.info)
00003 
00004 # 
00005 # load plugins
00006 # 
00007 load libsurfit[info sharedlibextension]
00008 
00009 # remove all previous data and gridding rules
00010 clear_data 
00011 
00012 # set name of surface
00013 set map_name "map_area_surf_ineq" 
00014 
00015 # set solver
00016 set_solver "cg" 
00017 
00018 # set tolerance for solver
00019 set tol 1e-005 
00020 
00021 ##
00022 ## load initial data 
00023 ##
00024  
00025 # load area from text file 
00026 area_read "area1.txt" "area1"  
00027  
00028 # load area from text file 
00029 area_read "area2.txt" "area2"  
00030  
00031 # load area from text file 
00032 area_read "area3.txt" "area3"  
00033  
00034 # load area from text file 
00035 area_read "area4.txt" "area4"  
00036  
00037 # load area from text file 
00038 area_read "area6.txt" "area6"  
00039  
00040 # load surface from surfit datafile 
00041 surf_load "func.func" "test_func"  
00042  
00043 # load area from text file 
00044 area_read "area5.txt" "area5"  
00045  
00046 ##
00047 ## construct grid 
00048 ##
00049 grid_get -12 12 0.2 -12 12 0.2 
00050  
00051 ##
00052 ## create gridding rules
00053 ##
00054 
00055 # resulting surface in area >= surface values... 
00056 area_surf_geq "test_func" "area1"  
00057 
00058 # resulting surface in area <= surface values... 
00059 area_surf_leq "test_func" "area2"  
00060 
00061 # resulting surface in area >= surface values... 
00062 area_surf_geq "test_func" "area3"  
00063 
00064 # resulting surface in area <= surface values... 
00065 area_surf_leq "test_func" "area4"  
00066 
00067 # resulting surface in area >= surface values... 
00068 area_surf_geq "test_func" "area5"  
00069 
00070 # resulting surface in area <= surface values... 
00071 area_surf_leq "test_func" "area6"  
00072 
00073 # resulting surface should tend to be constant or plane 
00074 completer 
00075 
00076 ##
00077 ## run gridding algorithm
00078 ##
00079 surfit 
00080 
00081 ##
00082 ## save results 
00083 ##
00084 
00085 # unload grid from memory
00086 grid_unload 
00087 
00088 # save surface to surfit datafile 
00089 surf_save "area_surf_ineq.dat" "map_area_surf_ineq" 



surfit: open source gridding and contouring software.