area_wmean.tcl

This example shows how to build surface by approximating areas with constant real numbers and how to set additional condition (weighted mean value) on surface in area. In this example 6 different areas were used. This example looks like area_mean.tcl example, but for area6 weighted mean condition was set.

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

surface with weighted mean value = 30, built from areas

Pic 1. Surface with weighted mean value = 30, built from areas

This result was obtained with "examples/surfit/curvs/area_wmean.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_wmean" 
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 "area5.txt" "area5"  
00039  
00040 # load area from text file 
00041 area_read "area6.txt" "area6"  
00042  
00043 # load surface from surfit datafile 
00044 surf_load "func.func" "test_func"  
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 = value... 
00056 area 10 "area1"  
00057 
00058 # resulting surface in area = value... 
00059 area 30 "area3"  
00060 
00061 # resulting surface in area = value... 
00062 area undef "area5"  
00063 
00064 # resulting surface weighted mean value in area = value... 
00065 area_wmean 30 "area6" "test_func"  
00066 
00067 # resulting surface should tend to be constant or plane 
00068 completer 1 1.6  
00069 
00070 # add "resulting surface in area = value..." with weight 
00071 area_add 20 0.07 "area2"  
00072 
00073 # add "resulting surface in area = value..." with weight 
00074 area_add 40 0.07 "area4"  
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_wmean.dat" "map_area_wmean" 
00090 
00091 puts [concat "Surface weighted mean value in area6 : " [surf_area_wmean "area6" "test_func" "map_area_wmean"]]



surfit: open source gridding and contouring software.