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):
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.