Merge "onera-m6-sharp-te.stp"; pts = Point "*"; min_cl_allowed = 0.02; max_cl_allowed = 40; For i In {0 : #pts[] - 1} cl = -1; tag_i = pts[i]; pt_i = Point{tag_i}; For j In {0 : #pts[] - 1} If (i != j) tag_j = pts[j]; pt_j = Point{tag_j}; dx = pt_j[0] - pt_i[0]; dy = pt_j[1] - pt_i[1]; dz = pt_j[2] - pt_i[2]; dist = Sqrt(dx^2 + dy^2 + dz^2); If (cl == -1 || dist < cl) cl = dist; EndIf Printf("distance from %g to %g is %g", tag_i, tag_j, dist); Printf("running characteristic length %g", cl); EndIf EndFor If (cl < min_cl_allowed) cl = min_cl_allowed; EndIf If (cl > max_cl_allowed) cl = max_cl_allowed; EndIf Characteristic Length{tag_i} = cl; EndFor