Compensation factor measurement

Kompenzace válce je analyticky vypočítaná. Jiná je pro povrch, jiná je pro objem. Kompenzace pro kulové plochy je vypočtena na základě měření. Pro oběm na základě inscribed, pro povrch na základě cylinder_surface

Pro nulovou délku tube (pill) je určen korekční faktor.

Pro nenulové délky tube se objevují ještě artefakty na přechodu proto bylo stanoveno měření chyby na těchto přechodech.

Compensation is determined in two steps:

  1. Sphere compensation

    1. For sphere compensation computation run compensation method 1 sphere in run_experiments script.

    2. Use computed x and y in python scripts.

    3. Restart ipython kernel

  2. Join compensation

    1. For sphere-tube join compensation run compensation method measurement 1 tube

    2. Then use computed x and y in python scripts.

    3. restart ipython kernel


In [1]:
%pylab inline


Populating the interactive namespace from numpy and matplotlib

In [2]:
%run evaltools.ipynb


Populating the interactive namespace from numpy and matplotlib
/home/mjirik/miniconda2/lib/python2.7/site-packages/IPython/core/interactiveshell.py:2821: DtypeWarning: Columns (74) have mixed types. Specify dtype option on import or set low_memory=False.
  if self.run_code(code, result):
0/3793

In [3]:
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import os.path as op
from pprint import pprint as pp
import scipy.stats
import seaborn as sns
import copy

In [4]:
# datapath = "~/teigen_data/output_rows.csv"

In [5]:
# plotkw ={
#     "figsize": [15, 6], 
#     # "fontsize": 14
#     # "linestyle": "-",
#     # "marker": "x"
# }

In [6]:
# available_radius_methods = [
#     "inscribed", "circumscribed", 
#     "average",
#     "cylinder volume", 
#     "cylinder surface", 
#     "cylinder volume + sphere error",
#     "cylinder volume + sphere error + man",
#     "cylinder surface + sphere error",
#     "cylinder surface + sphere error + join error",
#     "cylinder surface + sphere error + join error man",
#     "best",
    
# ]

In [7]:
# scripts can be runned
# %run run_experiments.ipynb

In [8]:
# df = pd.read_csv(op.expanduser(datapath))
# # remove duplicates
# ks = copy.copy(list(df.keys()))
# ks.remove("datetime")
# df = df.drop_duplicates(ks)

# df = df.drop_duplicates()
# df["surface error [mm^2]"] = df["numeric surface [mm^2]"] - df["surface [mm^2]"]
# df["surface error [%]"] = df["surface error [mm^2]"] / df["surface [mm^2]"] * 100
# df["volume error [mm^3]"] = df["numeric volume [mm^3]"] - df["volume [mm^3]"]
# df["volume error [%]"] = df["volume error [mm^3]"] / df["volume [mm^3]"] * 100

df = read_data(datapath)
# df = select_df(df, newer_than="2017-10-10")
df["measurement_resolution"] = df["config postprocessing measurement_resolution"]
df["length_distribution_mean"] = df["config generators Unconnected tubes length_distribution_mean"]
df["radius_distribution_mean"] = df["config generators Unconnected tubes radius_distribution_mean"]
df


Out[8]:
config appearance force_rewrite config appearance noise_preview config appearance show_aposteriori_surface config appearance skip_volume_generation config appearance surface_3d_preview config areasampling areasize_mm config areasampling areasize_px config areasampling voxelsize_mm config filepattern config filepattern_abspath ... measurement_resolution length_distribution_mean radius_distribution_mean element_number element number measurement resolution step 1 time [s] step 2 time [s] total time [s] radius method
0 False False True False False [10.0, 10.0, 10.0] [20.0, 20.0, 20.0] [0.5, 0.5, 0.5] ~/teigen_data/teigen_resolution_mm_0.5_{series... ~/teigen_data/teigen_resolution_mm_0.5_001/dat... ... 35 3.0 0.2 30.0 30.0 35 102.029161 NaN NaN inscribed
1 False False True False False [10.0, 10.0, 10.0] [20.0, 20.0, 20.0] [0.5, 0.5, 0.5] ~/teigen_data/teigen_resolution_mm_0.5_{series... ~/teigen_data/teigen_resolution_mm_0.5_001/dat... ... 35 3.0 0.2 30.0 30.0 35 102.029161 0.361223 102.390384 inscribed
2 False False True False False [10.0, 10.0, 10.0] [25.0, 25.0, 25.0] [0.4, 0.4, 0.4] ~/teigen_data/teigen_resolution_mm_0.4_{series... ~/teigen_data/teigen_resolution_mm_0.4_001/dat... ... 35 3.0 0.2 30.0 30.0 35 97.035680 0.361223 97.396903 inscribed
3 False False True False False [10.0, 10.0, 10.0] [25.0, 25.0, 25.0] [0.4, 0.4, 0.4] ~/teigen_data/teigen_resolution_mm_0.4_{series... ~/teigen_data/teigen_resolution_mm_0.4_001/dat... ... 35 3.0 0.2 30.0 30.0 35 97.035680 0.289337 97.325017 inscribed
4 False False True False False [10.0, 10.0, 10.0] [33.333333333333336, 33.333333333333336, 33.33... [0.3, 0.3, 0.3] ~/teigen_data/teigen_resolution_mm_0.3_{series... ~/teigen_data/teigen_resolution_mm_0.3_001/dat... ... 35 3.0 0.2 30.0 30.0 35 96.892248 0.289337 97.181585 inscribed
5 False False True False False [10.0, 10.0, 10.0] [33.333333333333336, 33.333333333333336, 33.33... [0.3, 0.3, 0.3] ~/teigen_data/teigen_resolution_mm_0.3_{series... ~/teigen_data/teigen_resolution_mm_0.3_001/dat... ... 35 3.0 0.2 30.0 30.0 35 96.892248 0.317081 97.209329 inscribed
6 False False True False False [10.0, 10.0, 10.0] [50.0, 50.0, 50.0] [0.2, 0.2, 0.2] ~/teigen_data/teigen_resolution_mm_0.2_{series... ~/teigen_data/teigen_resolution_mm_0.2_001/dat... ... 35 3.0 0.2 30.0 30.0 35 97.318284 0.317081 97.635365 inscribed
7 False False True False False [10.0, 10.0, 10.0] [50.0, 50.0, 50.0] [0.2, 0.2, 0.2] ~/teigen_data/teigen_resolution_mm_0.2_{series... ~/teigen_data/teigen_resolution_mm_0.2_001/dat... ... 35 3.0 0.2 30.0 30.0 35 97.318284 0.397767 97.716051 inscribed
8 False False True False False [10.0, 10.0, 10.0] [100.0, 100.0, 100.0] [0.1, 0.1, 0.1] ~/teigen_data/teigen_resolution_mm_0.1_{series... ~/teigen_data/teigen_resolution_mm_0.1_001/dat... ... 35 3.0 0.2 30.0 30.0 35 96.918674 0.397767 97.316441 inscribed
9 False False True False False [10.0, 10.0, 10.0] [100.0, 100.0, 100.0] [0.1, 0.1, 0.1] ~/teigen_data/teigen_resolution_mm_0.1_{series... ~/teigen_data/teigen_resolution_mm_0.1_001/dat... ... 35 3.0 0.2 30.0 30.0 35 96.918674 0.938781 97.857455 inscribed
10 False False True False False [10.0, 10.0, 10.0] [125.0, 125.0, 125.0] [0.08, 0.08, 0.08] ~/teigen_data/teigen_resolution_mm_0.08_{serie... ~/teigen_data/teigen_resolution_mm_0.08_001/da... ... 35 3.0 0.2 30.0 30.0 35 96.829405 0.938781 97.768186 inscribed
11 False False True False False [10.0, 10.0, 10.0] [125.0, 125.0, 125.0] [0.08, 0.08, 0.08] ~/teigen_data/teigen_resolution_mm_0.08_{serie... ~/teigen_data/teigen_resolution_mm_0.08_001/da... ... 35 3.0 0.2 30.0 30.0 35 96.829405 1.478866 98.308271 inscribed
12 False False True False False [10.0, 10.0, 10.0] [166.66666666666669, 166.66666666666669, 166.6... [0.06, 0.06, 0.06] ~/teigen_data/teigen_resolution_mm_0.06_{serie... ~/teigen_data/teigen_resolution_mm_0.06_001/da... ... 35 3.0 0.2 30.0 30.0 35 97.440779 1.478866 98.919645 inscribed
13 False False True False False [10.0, 10.0, 10.0] [166.66666666666669, 166.66666666666669, 166.6... [0.06, 0.06, 0.06] ~/teigen_data/teigen_resolution_mm_0.06_{serie... ~/teigen_data/teigen_resolution_mm_0.06_001/da... ... 35 3.0 0.2 30.0 30.0 35 97.440779 2.812142 100.252921 inscribed
14 False False True False False [10.0, 10.0, 10.0] [250.0, 250.0, 250.0] [0.04, 0.04, 0.04] ~/teigen_data/teigen_resolution_mm_0.04_{serie... ~/teigen_data/teigen_resolution_mm_0.04_001/da... ... 35 3.0 0.2 30.0 30.0 35 97.323766 2.812142 100.135908 inscribed
15 False False True False False [10.0, 10.0, 10.0] [250.0, 250.0, 250.0] [0.04, 0.04, 0.04] ~/teigen_data/teigen_resolution_mm_0.04_{serie... ~/teigen_data/teigen_resolution_mm_0.04_001/da... ... 35 3.0 0.2 30.0 30.0 35 97.323766 7.848592 105.172358 inscribed
16 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_resolution_mm_0.02_{serie... ~/teigen_data/teigen_resolution_mm_0.02_001/da... ... 35 3.0 0.2 30.0 30.0 35 96.857036 7.848592 104.705628 inscribed
17 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_resolution_mm_0.02_{serie... ~/teigen_data/teigen_resolution_mm_0.02_001/da... ... 35 3.0 0.2 30.0 30.0 35 96.857036 58.040634 154.897670 inscribed
18 False False True False False [10.0, 10.0, 10.0] [1000.0, 1000.0, 1000.0] [0.01, 0.01, 0.01] ~/teigen_data/teigen_resolution_mm_0.01_{serie... ~/teigen_data/teigen_resolution_mm_0.01_001/da... ... 35 3.0 0.2 30.0 30.0 35 97.096028 58.040634 155.136662 inscribed
19 False False True False False [10.0, 10.0, 10.0] [1000.0, 1000.0, 1000.0] [0.01, 0.01, 0.01] ~/teigen_data/teigen_resolution_mm_0.01_{serie... ~/teigen_data/teigen_resolution_mm_0.01_001/da... ... 35 3.0 0.2 30.0 30.0 35 97.096028 517.954692 615.050720 inscribed
20 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_5_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_5_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 90.344646 517.954692 608.299338 inscribed
21 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_5_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_5_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 90.344646 44.010336 134.354982 inscribed
22 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_4_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_4_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 92.403762 44.010336 136.414098 inscribed
23 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_4_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_4_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 92.403762 45.396101 137.799863 inscribed
24 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_3_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_3_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 92.377522 45.396101 137.773623 inscribed
25 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_3_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_3_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 92.377522 40.605424 132.982946 inscribed
26 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_2_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_2_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 91.387962 40.605424 131.993386 inscribed
27 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_2_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_2_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 91.387962 43.358838 134.746800 inscribed
28 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_1_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_1_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 92.659242 43.358838 136.018080 inscribed
29 False False True False False [10.0, 10.0, 10.0] [500.0, 500.0, 500.0] [0.02, 0.02, 0.02] ~/teigen_data/teigen_isotropy_1_{seriesn:03d}/... ~/teigen_data/teigen_isotropy_1_001/data{:06d}... ... 35 3.0 0.2 30.0 30.0 35 92.659242 48.216083 140.875325 inscribed
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
9661 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 90 0.0 1.0 1.0 1.0 90 0.061773 0.053122 0.114895 inscribed
9663 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 90 0.0 1.0 1.0 1.0 90 0.063959 0.035527 0.099486 cylinder surface
9665 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 90 0.0 1.0 1.0 1.0 90 0.059800 0.034599 0.094399 cylinder volume
9667 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 90 0.0 1.0 1.0 1.0 90 0.062651 0.038290 0.100941 cylinder volume + sphere error
9669 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 90 0.0 1.0 1.0 1.0 90 0.061946 0.042676 0.104622 cylinder surface + sphere error
9671 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.516419 0.041687 2.558106 inscribed
9673 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.521368 0.058196 2.579564 cylinder surface
9675 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.481075 0.054944 2.536019 cylinder volume
9677 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.776859 0.059638 2.836497 cylinder volume + sphere error
9679 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.391322 0.063506 2.454828 cylinder surface + sphere error
9681 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.691656 0.054724 2.746380 inscribed
9683 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.611168 0.051195 2.662363 cylinder surface
9685 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.740709 0.074983 2.815692 cylinder volume
9687 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.777054 0.055298 2.832352 cylinder volume + sphere error
9689 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.522738 0.057277 2.580015 cylinder surface + sphere error
9691 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.058117 0.073984 0.132101 inscribed
9693 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.058959 0.041314 0.100273 cylinder surface
9695 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.058473 0.038415 0.096888 cylinder volume
9697 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.066977 0.037450 0.104427 cylinder volume + sphere error
9699 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.062009 0.037568 0.099577 cylinder surface + sphere error
9701 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.594624 0.038768 2.633392 inscribed
9703 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.695369 0.062075 2.757444 cylinder surface
9705 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.600510 0.053536 2.654046 cylinder volume
9707 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.808582 0.054614 2.863196 cylinder volume + sphere error
9709 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 2.468750 0.058579 2.527329 cylinder surface + sphere error
9711 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.064491 0.053492 0.117983 inscribed
9713 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.067150 0.039774 0.106924 cylinder surface
9715 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.065528 0.039326 0.104854 cylinder volume
9717 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.068041 0.039196 0.107237 cylinder volume + sphere error
9719 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 95 0.0 1.0 1.0 1.0 95 0.069822 0.038845 0.108667 cylinder surface + sphere error

3793 rows × 127 columns


In [9]:
newer_than = pd.to_datetime("2017-10-10 11:57:00.0")
newer_than


Out[9]:
Timestamp('2017-10-10 11:57:00')

In [10]:
print(step2_datetime_key)
# pd.to_datetime(df[step2_datetime_key])
which_keep_time = pd.to_datetime(df[step2_datetime_key]) > pd.to_datetime(newer_than)
which_keep_time


processing_info step2_finish_datetime
Out[10]:
0       False
1       False
2       False
3       False
4       False
5       False
6       False
7       False
8       False
9       False
10      False
11      False
12      False
13      False
14      False
15      False
16      False
17      False
18      False
19      False
20      False
21      False
22      False
23      False
24      False
25      False
26      False
27      False
28      False
29      False
        ...  
9661     True
9663     True
9665     True
9667     True
9669     True
9671     True
9673     True
9675     True
9677     True
9679     True
9681     True
9683     True
9685     True
9687     True
9689     True
9691     True
9693     True
9695     True
9697     True
9699     True
9701     True
9703     True
9705     True
9707     True
9709     True
9711     True
9713     True
9715     True
9717     True
9719     True
Name: processing_info step2_finish_datetime, Length: 3793, dtype: bool

In [11]:
def show_radius(dfs, x_key="measurement resolution"):
    dfsp = dfs[["sphere_radius_volume_estimation_numeric", "sphere_radius_surface_estimation_numeric", x_key]].sort_values(
        x_key).sort_values(x_key)
    
    if len(dfsp) < 1:
        return dfsp
    # fig = plt.figure(figsize=[25, 18])
    ax = plt.subplot(111)
    dfsp.plot(
        ax=ax, x=x_key, **plotkw)
    # ax = plt.subplot(122)
    # dfsp[["volume error [%]"]].plot(
    #     ax=ax, kind="box", **plotkw)
    plt.suptitle(radius_method + " ({})".format(len(dfs)))
    return dfsp

def show_error(dfs, x_key="measurement resolution"):
    
    dfsp = dfs[["surface error [%]", "volume error [%]", 
                x_key]].sort_values(x_key)

    if len(dfsp) < 1:
        return dfsp
    # wilcoxon - čím větší, tím lepší, alespoň 0.05
    surf_w = scipy.stats.wilcoxon(x=dfs["surface [mm^2]"], y=dfs["numeric surface [mm^2]"], correction=False, zero_method="pratt")
    # spearman čím menší, tím lepší
    surf_s = scipy.stats.spearmanr(dfs["surface [mm^2]"], dfs["numeric surface [mm^2]"])
    
    # wilcoxon - čím větší, tím lepší
    vol_w = scipy.stats.wilcoxon(x=dfs["volume [mm^3]"], y=dfs["numeric volume [mm^3]"], correction=False, zero_method="pratt")
    # spearman čím menší, tím lepší
    vol_s = scipy.stats.spearmanr(dfs["volume [mm^3]"], dfs["numeric volume [mm^3]"])
    
    print radius_method, ": \nsurface (w/s): \n" , surf_w,"\n", surf_s, "\nvolume (w/s): \n", vol_w, "\n",vol_s, "\n", len(dfsp)

    fig = plt.figure(figsize=[25, 18])
    ax = plt.subplot(141)
    dfsp.plot(
        ax=ax, x=x_key, **plotkw)
    ax = plt.subplot(142)
    dfsp[["volume error [%]"]].plot(
        ax=ax, kind="box", **plotkw)
    ax = plt.subplot(143)
    dfsp[["surface error [%]"]].plot(
        ax=ax, kind="box", **plotkw)
    
    ax = plt.subplot(144)
    dfsp[dfsp["measurement resolution"] > dfsp["measurement resolution"].mean()].plot(
        ax=ax, x=x_key, **plotkw)
    plt.suptitle(radius_method)
    return dfsp

Cylinder surface and volume analytic compensation

Regular polygon equivalent surface area $eqS$ is used for cylinder volume compensation

$$ r_{eqS} = \sqrt{\frac{\theta r^2}{\sin{\theta}}} \qquad \theta = \frac{2 \pi}{n} $$

Regular polygon equivalent perimeter $eqP$ is used for cylinder surface compensation

$$ r_{eqP} = \frac{\theta r}{ 2 \sin{\frac{\theta}{2}} } \qquad \theta = \frac{2 \pi}{n} $$

1 Cylinder - check


In [12]:
for radius_method in available_radius_methods:
    
    dfs = df[
        df[note_key] == "compensation method 1 cylinder " + radius_method
    ]
    print len(dfs)
    if len(dfs) > 1:
        dfsp = show_error(dfs) #, x_key="radius_distribution_mean")


0
0
0
0
0
0
0
0
0
0
0
0

Sphere radius from volume and surface estimation

$$ r_0 r_c = \frac{1}{2} \sqrt{\frac{S}{\pi}}$$

$$ r_0 r_c = \sqrt[3]{\frac{3 V}{4 \pi}}$$


In [13]:
# df

In [14]:
# 1 object in scene, 0 variances
# for spheres this would be 0
df["cylinder_volume"] = np.pi * df["radius_distribution_mean"]**2 * df["length_distribution_mean"]
df["cylinder_surface"] = 2 * np.pi * df["radius_distribution_mean"] * df["length_distribution_mean"]

df["sphere_numeric_volume"] = (df["numeric volume [mm^3]"] - df["cylinder_volume"])
df["sphere_volume"] = (df["volume [mm^3]"] - df["cylinder_volume"])
df["sphere_numeric_surface"] = (df["numeric surface [mm^2]"] - df["cylinder_surface"])
df["sphere_surface"] = (df["surface [mm^2]"] - df["cylinder_surface"])

df["sphere_radius_volume_estimation_numeric"] = ((3 * df["sphere_numeric_volume"] / (4* np.pi))**(1.0/3.0))
df["sphere_radius_volume_estimation"] = ((3 * df["sphere_volume"] / (4* np.pi))**(1.0/3.0))
df["sphere_radius_surface_estimation_numeric"] = ((df["sphere_numeric_surface"] / (4 * np.pi))**(.5))
df["sphere_radius_surface_estimation"] = ((df["sphere_surface"] / (4* np.pi))**(.5))

# for sphere and cylinder join compensation
# this works only if sphere error is compensated to 0
# join error is composed from two joins of spheres and cylinder
df["join_surface_error"] = df["sphere_numeric_surface"] - df["sphere_surface"]
# surface of the sphere 
df["sphere_join_numeric_surface"] = df["sphere_surface"] + 0.5 * df["join_surface_error"]
df["sphere_radius_join_surface_estimation_numeric"] = ((df["sphere_join_numeric_surface"] / (4 * np.pi))**(.5))
df["sphere_radius_join_surface_estimation"] = ((df["sphere_surface"] / (4* np.pi))**(.5))

df["join_volume_error"] = df["sphere_numeric_volume"] - df["sphere_volume"]
# surface of the sphere 
df["sphere_join_numeric_volume"] = df["sphere_volume"] + 0.5 * df["join_volume_error"]
df["sphere_radius_join_surface_estimation_numeric"] = ((df["sphere_join_numeric_volume"] / (4 * np.pi))**(.5))
df["sphere_radius_join_surface_estimation"] = ((df["sphere_volume"] / (4* np.pi))**(.5))


available_radius_methods = [
    "inscribed", "circumscribed", 
    "average",
    "cylinder volume", 
    "cylinder surface", 
    "cylinder volume + sphere error",
    "cylinder surface + sphere error",
    "cylinder surface + sphere error + join error",
    "best",
    
]
for radius_method in ["inscribed"]:
        
    dfs = df[
        df[note_key] == "compensation method 1 sphere " + radius_method
        # df["generators Unconnected cylinders radius_distribution_mean"] == 5 
    ]
    # show_radius(dfs)

Sphere volume compensation factor interpolation

It is usede in "cylinder volume + sphere error" Calculate x and y coefficients and copy it into tb_vtk.py file in

...
def polygon_radius_compensation_factos(
    ...
):
...
x_cvse = [ ... ]
y_cvse = [ ... ]

In [39]:
from scipy.interpolate import UnivariateSpline
from scipy.interpolate import InterpolatedUnivariateSpline

radius_method = "inscribed"
dfs = df[
    df[note_key] == "compensation method 1 sphere " + radius_method
]

if len(dfs) > 1:
    dfsm = dfs.groupby("measurement_resolution").mean().reset_index()

    x = list(dfsm["measurement_resolution"])
    y = list(dfsm["sphere_radius_volume_estimation_numeric"] / dfsm["sphere_radius_volume_estimation"])

    # x.append(100)
    # y.append(1.0)

    x.append(200)
    y.append(1.0)

    x = np.asarray(x)
    y = np.asarray(y)
    spl1 = InterpolatedUnivariateSpline(x, y)
    # spl1 = UnivariateSpline(x, y,k=5)
    # spl1.set_smoothing_factor(0.1)
    xs = np.linspace(6, 100, 100)

    plt.plot(
        xs[:], spl1(xs[:]), "b" , 
        x[:-2], y[:-2], "ro", 
    )
    stx = "x_cvse = ["
    for i in x:
        stx = stx + str(i) + ", "
    stx += "]"
    sty = "y_cvse = ["
    for i in y:
        sty = sty + str(i) + ", "
    sty += "]"
    print stx
    print sty


x_cvse = [5, 6, 7, 8, 10, 12, 14, 17, 19, 21, 23, 29, 30, 31, 34, 36, 39, 42, 44, 46, 48, 50, 53, 58, 60, 63, 67, 70, 73, 78, 80, 84, 87, 90, 95, 200, ]
y_cvse = [0.866160332119, 0.914382318859, 0.933968032022, 0.95218918453, 0.969538675931, 0.978911309831, 0.984540924039, 0.989327370812, 0.99148526871, 0.993049172195, 0.994218638187, 0.996381334592, 0.996658189571, 0.996837044536, 0.997400277914, 0.997681875142, 0.998008753883, 0.998298249903, 0.998449773378, 0.998581941074, 0.998697885167, 0.998800171243, 0.998925745446, 0.999108829618, 0.999167352826, 0.999240932216, 0.999328288662, 0.999388558376, 0.999435320417, 0.999507694313, 0.999532038584, 0.999575592385, 0.999602900653, 0.999630352291, 0.999667137992, 1.0, ]

Zoom to most exposed part


In [48]:
xs = np.linspace(20, 40, 30)

plt.plot(
    xs[:], spl1(xs[:]), "b" , 
    x[9:15], y[9:15], "ro", 
)


Out[48]:
[<matplotlib.lines.Line2D at 0x7f5478181e10>,
 <matplotlib.lines.Line2D at 0x7f5478181fd0>]

In [16]:
# keys = list_filter(df.keys(), contain="areasize_mm")
# df[keys[0]]
# dfs


Out[16]:
config appearance force_rewrite config appearance noise_preview config appearance show_aposteriori_surface config appearance skip_volume_generation config appearance surface_3d_preview config areasampling areasize_mm config areasampling areasize_px config areasampling voxelsize_mm config filepattern config filepattern_abspath ... sphere_radius_volume_estimation_numeric sphere_radius_volume_estimation sphere_radius_surface_estimation_numeric sphere_radius_surface_estimation join_surface_error sphere_join_numeric_surface sphere_radius_join_surface_estimation_numeric sphere_radius_join_surface_estimation join_volume_error sphere_join_numeric_volume
7921 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.041520 1.044983 1.042494 1.045073 -0.067675 13.690881 0.615212 0.616741 -0.047360 4.756188
7931 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.185586 1.189509 1.186814 1.189728 -0.087030 17.743595 0.747167 0.749016 -0.069521 7.015280
7941 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.034835 1.038379 1.035723 1.038379 -0.069243 13.514837 0.609344 0.610905 -0.047857 4.665897
7951 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.116221 1.119900 1.117508 1.120234 -0.076643 15.731522 0.682557 0.684239 -0.057780 5.854477
7961 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.003407 1.006844 1.004268 1.006844 -0.065102 12.706414 0.581797 0.583287 -0.043628 4.253569
8021 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.037728 1.044983 1.039669 1.045073 -0.141592 13.653923 0.613544 0.616741 -0.098858 4.730439
8031 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.181293 1.189509 1.183624 1.189728 -0.182066 17.696077 0.745152 0.749016 -0.145070 6.977505
8041 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.031088 1.038379 1.032917 1.038379 -0.142189 13.478364 0.607702 0.610905 -0.098100 4.640776
8051 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.112199 1.119900 1.114525 1.120234 -0.160319 15.689684 0.680726 0.684239 -0.120535 5.823100
8061 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 0.999774 1.006844 1.001547 1.006844 -0.133683 12.672123 0.580229 0.583287 -0.089431 4.230667
8071 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.038949 1.044983 1.040577 1.045073 -0.117835 13.665801 0.614080 0.616741 -0.082322 4.738707
8081 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.182675 1.189509 1.184650 1.189728 -0.151520 17.711350 0.745800 0.749016 -0.120807 6.989637
8091 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.032315 1.038379 1.033835 1.038379 -0.118331 13.490293 0.608239 0.610905 -0.081687 4.648982
8101 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.113494 1.119900 1.115485 1.120234 -0.133423 15.703132 0.681315 0.684239 -0.100378 5.833178
8111 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.000964 1.006844 1.002438 1.006844 -0.111253 12.683338 0.580742 0.583287 -0.074469 4.238148
8121 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.041206 1.044983 1.042259 1.045073 -0.073833 13.687803 0.615073 0.616741 -0.051640 4.754048
8131 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.185231 1.189509 1.186549 1.189728 -0.094940 17.739640 0.747000 0.749016 -0.075784 7.012148
8141 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.034584 1.038379 1.035535 1.038379 -0.074139 13.512389 0.609234 0.610905 -0.051235 4.664208
8151 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.115890 1.119900 1.117261 1.120234 -0.083602 15.728042 0.682406 0.684239 -0.062972 5.851881
8161 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.003164 1.006844 1.004085 1.006844 -0.069705 12.704112 0.581692 0.583287 -0.046707 4.252029
8171 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.041682 1.044983 1.042613 1.045073 -0.064549 13.692445 0.615283 0.616741 -0.045157 4.757290
8181 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.185770 1.189509 1.186949 1.189728 -0.083003 17.745609 0.747253 0.749016 -0.066272 7.016904
8191 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.035062 1.038379 1.035893 1.038379 -0.064817 13.517050 0.609444 0.610905 -0.044802 4.667425
8201 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.116395 1.119900 1.117635 1.120234 -0.073090 15.733298 0.682636 0.684239 -0.055068 5.855833
8211 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.003627 1.006844 1.004433 1.006844 -0.060939 12.708495 0.581893 0.583287 -0.040843 4.254961
8221 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.042286 1.044983 1.043064 1.045073 -0.052715 13.698361 0.615550 0.616741 -0.036903 4.761417
8231 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.186454 1.189509 1.187459 1.189728 -0.067792 17.753215 0.747575 0.749016 -0.054171 7.022955
8241 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.035626 1.038379 1.036315 1.038379 -0.053813 13.522552 0.609692 0.610905 -0.037206 4.671223
8251 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.117036 1.119900 1.118112 1.120234 -0.059700 15.739993 0.682929 0.684239 -0.045022 5.860856
8261 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.004174 1.006844 1.004842 1.006844 -0.050594 12.713667 0.582129 0.583287 -0.033918 4.258424
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
9421 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.044470 1.044983 1.044691 1.045073 -0.010031 13.719704 0.616515 0.616741 -0.007029 4.776354
9431 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.188928 1.189509 1.189297 1.189728 -0.012900 17.780661 0.748742 0.749016 -0.010317 7.044882
9441 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.037861 1.038379 1.037991 1.038379 -0.010142 13.544387 0.610676 0.610905 -0.007020 4.686316
9451 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.119355 1.119900 1.119830 1.120234 -0.011360 15.764163 0.683990 0.684239 -0.008575 5.879080
9461 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.006341 1.006844 1.006467 1.006844 -0.009536 12.734196 0.583069 0.583287 -0.006400 4.272183
9471 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.044496 1.044983 1.044710 1.045073 -0.009536 13.719951 0.616526 0.616741 -0.006682 4.776527
9481 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.188957 1.189509 1.189318 1.189728 -0.012263 17.780979 0.748755 0.749016 -0.009808 7.045136
9491 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.037887 1.038379 1.038010 1.038379 -0.009640 13.544639 0.610687 0.610905 -0.006672 4.686490
9501 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.119382 1.119900 1.119850 1.120234 -0.010799 15.764443 0.684002 0.684239 -0.008152 5.879292
9511 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.006366 1.006844 1.006486 1.006844 -0.009064 12.734433 0.583080 0.583287 -0.006082 4.272342
9521 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.044541 1.044983 1.044744 1.045073 -0.008649 13.720394 0.616546 0.616741 -0.006061 4.776838
9531 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.189008 1.189509 1.189356 1.189728 -0.011123 17.781549 0.748779 0.749016 -0.008897 7.045592
9541 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.037933 1.038379 1.038044 1.038379 -0.008742 13.545088 0.610708 0.610905 -0.006050 4.686801
9551 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.119430 1.119900 1.119886 1.120234 -0.009795 15.764945 0.684024 0.684239 -0.007394 5.879670
9561 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.006411 1.006844 1.006519 1.006844 -0.008218 12.734855 0.583099 0.583287 -0.005515 4.272625
9571 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.044568 1.044983 1.044764 1.045073 -0.008114 13.720662 0.616558 0.616741 -0.005685 4.777026
9581 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.189039 1.189509 1.189379 1.189728 -0.010435 17.781893 0.748794 0.749016 -0.008345 7.045868
9591 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.037963 1.038379 1.038067 1.038379 -0.008147 13.545385 0.610721 0.610905 -0.005639 4.687006
9601 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.119459 1.119900 1.119908 1.120234 -0.009189 15.765249 0.684038 0.684239 -0.006935 5.879900
9611 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.006440 1.006844 1.006541 1.006844 -0.007660 12.735135 0.583112 0.583287 -0.005140 4.272813
9621 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.044598 1.044983 1.044786 1.045073 -0.007535 13.720951 0.616571 0.616741 -0.005280 4.777228
9631 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.189073 1.189509 1.189404 1.189728 -0.009690 17.782266 0.748810 0.749016 -0.007750 7.046165
9641 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.037990 1.038379 1.038088 1.038379 -0.007612 13.545652 0.610733 0.610905 -0.005268 4.687192
9651 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.119491 1.119900 1.119931 1.120234 -0.008533 15.765576 0.684052 0.684239 -0.006441 5.880147
9661 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.006467 1.006844 1.006561 1.006844 -0.007156 12.735386 0.583124 0.583287 -0.004803 4.272981
9671 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.044635 1.044983 1.044814 1.045073 -0.006802 13.721318 0.616588 0.616741 -0.004766 4.777485
9681 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.189115 1.189509 1.189436 1.189728 -0.008747 17.782737 0.748830 0.749016 -0.006995 7.046543
9691 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.038030 1.038379 1.038118 1.038379 -0.006829 13.546044 0.610751 0.610905 -0.004727 4.687462
9701 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.119531 1.119900 1.119960 1.120234 -0.007703 15.765992 0.684070 0.684239 -0.005813 5.880461
9711 False False True True False [10.0, 10.0, 10.0] [50, 50, 50] [0.2, 0.2, 0.2] ~/teigen_data/{seriesn:03d}/data{:06d}.jpg ~/teigen_data/005/data{:06d}.jpg ... 1.006505 1.006844 1.006590 1.006844 -0.006421 12.735754 0.583140 0.583287 -0.004309 4.273228

175 rows × 143 columns


In [17]:
import scipy
import copy
if len(dfs) > 1:
    # f = scipy.interpolate.interp1d(x,y, kind="quadratic", fill_value="extrapolate")
    x = np.asarray(list(dfs["measurement_resolution"]))
    y = np.asarray(list(dfs["sphere_radius_volume_estimation"]))

    z = np.polyfit(x,y, 2)
    f = np.poly1d(z)
    plt.plot(x, y, "ro")
    plt.plot(xs, f(xs), "b")
    plt.show()



In [18]:
from scipy.optimize import curve_fit
    
def func(x, a, b, c, e, f, g):
    return a*np.exp(-b * x) # + # c + np.sin(e*x + f) * np.exp(g*x)



def func1(x, theta, omega0, K):
    jmt = (1 - theta**2)**0.5
    out = K * (1 - 1/jmt * np.exp(-1 * theta * omega0 * x))
    # out = K * (1 - (1 / jmt * np.exp(-1 * theta * omega0 * x)) * np.sin(omega0 * jmt * x)) 
    #+ np.arccos(theta))
    return out

if len(dfs) > 1:
    x = np.asarray(list(dfs["measurement_resolution"]))
    y = np.asarray(list(dfs["sphere_radius_volume_estimation"]))

    popt, pcov = curve_fit(func, x, y, bounds=(-np.inf, np.inf))
    print popt

    plt.plot(xs, func(xs, *popt), "b")
    plt.plot(x, y, "ro")
    plt.show()


/home/mjirik/miniconda2/lib/python2.7/site-packages/ipykernel/__main__.py:4: RuntimeWarning: overflow encountered in exp
/home/mjirik/miniconda2/lib/python2.7/site-packages/ipykernel/__main__.py:4: RuntimeWarning: overflow encountered in multiply
/home/mjirik/miniconda2/lib/python2.7/site-packages/scipy/optimize/minpack.py:779: OptimizeWarning: Covariance of the parameters could not be estimated
  category=OptimizeWarning)
[  1.07992287e+00  -1.55978007e-10   1.00000000e+00   1.00000000e+00
   1.00000000e+00   1.00000000e+00]

Sphere surface compensation factor interpolation

Calculate x and y coefficients for cylinder surface + sphere compensation and copy it into tb_vtk.py file in

...
def polygon_radius_compensation_factos(
    ...
):
    ...
    x_csse = [ ... ]
    y_csse = [ ... ]

In [19]:
radius_method = "cylinder surface"
radius_method = "inscribed"
dfs = df[
    df[note_key] == "compensation method 1 sphere " + radius_method
]
dfsm = dfs.groupby("measurement_resolution").mean().reset_index()

show_radius(dfsm)


Out[19]:
sphere_radius_volume_estimation_numeric sphere_radius_surface_estimation_numeric measurement resolution
0 0.935386 0.972670 5
1 0.987462 1.011868 6
2 1.008613 1.027113 7
3 1.028291 1.041807 8
4 1.047027 1.055628 10
5 1.057149 1.063120 12
6 1.063228 1.067630 14
7 1.068397 1.071463 17
8 1.070728 1.073198 19
9 1.072417 1.074456 21
10 1.073679 1.075397 23
11 1.076015 1.077138 29
12 1.076314 1.077361 30
13 1.076507 1.077505 31
14 1.077115 1.077959 34
15 1.077419 1.078185 36
16 1.077772 1.078448 39
17 1.078085 1.078681 42
18 1.078249 1.078803 44
19 1.078391 1.078910 46
20 1.078517 1.079003 48
21 1.078627 1.079085 50
22 1.078763 1.079186 53
23 1.078960 1.079334 58
24 1.079024 1.079381 60
25 1.079103 1.079440 63
26 1.079197 1.079512 67
27 1.079263 1.079559 70
28 1.079313 1.079597 73
29 1.079391 1.079655 78
30 1.079418 1.079675 80
31 1.079465 1.079710 84
32 1.079494 1.079732 87
33 1.079524 1.079754 90
34 1.079563 1.079784 95

In [20]:
sns.lmplot(data=dfs, x="measurement resolution", y="sphere_radius_volume_estimation_numeric")


Out[20]:
<seaborn.axisgrid.FacetGrid at 0x7f547a02bb90>

In [21]:
from scipy.interpolate import UnivariateSpline
from scipy.interpolate import InterpolatedUnivariateSpline
if len(dfsm) > 0:
    x = list(dfsm["measurement resolution"])
    y = list(dfsm["sphere_radius_surface_estimation_numeric"] / dfsm["sphere_radius_surface_estimation"])

    # x.append(100)
    # y.append(1.0)

    x.append(200)
    y.append(1.0)

    x = np.asarray(x)
    y = np.asarray(y)
    spl1 = InterpolatedUnivariateSpline(x, y)
    # spl1.set_smoothing_factor(0.1)
    xs = np.linspace(6, 200, 100)

    plt.figure()
    plt.plot(x[:], y[:], "ro")
    plt.plot(xs[:], spl1(xs[:]), "b")
    plt.show()
    stx = "x_csse = ["
    for i in x:
        stx = stx + str(i) + ", "
    stx += "]"
    sty = "y_csse = ["
    for i in y:
        sty = sty + str(i) + ", "
    sty += "]"
    print stx
    print sty


x_csse = [5, 6, 7, 8, 10, 12, 14, 17, 19, 21, 23, 29, 30, 31, 34, 36, 39, 42, 44, 46, 48, 50, 53, 58, 60, 63, 67, 70, 73, 78, 80, 84, 87, 90, 95, 200, ]
y_csse = [0.900576771582, 0.936869836439, 0.950985318762, 0.964590043529, 0.977386494167, 0.984323254476, 0.988498485354, 0.992048202584, 0.993654556051, 0.994819174883, 0.995690300838, 0.997301856778, 0.997508981673, 0.997641534309, 0.998061908546, 0.998271760101, 0.998515046246, 0.998731160009, 0.998844108505, 0.998942638136, 0.999029070544, 0.999105325336, 0.99919881978, 0.999335448082, 0.99937908559, 0.99943387055, 0.999500058848, 0.999544024835, 0.999578847301, 0.999632860646, 0.999651016253, 0.99968349269, 0.999703829344, 0.999724328432, 0.999751740122, 1.0, ]

Evaluation on the same dataset

After x and y is written in the tb_vtk.py and experiments are re-runned

Evaluation on 1 sphere


In [22]:
for radius_method in available_radius_methods:
        
    dfs = df[
        df[note_key] == "compensation method 1 sphere " + radius_method
    ]
    dfsp = show_error(dfs)


inscribed : 
surface (w/s): 
WilcoxonResult(statistic=0.0, pvalue=1.8082562147130171e-30) 
SpearmanrResult(correlation=0.92518238203233805, pvalue=1.0563268433716987e-74) 
volume (w/s): 
WilcoxonResult(statistic=0.0, pvalue=1.8082562147130171e-30) 
SpearmanrResult(correlation=0.88814949166482948, pvalue=2.6149998187414588e-60) 
175
cylinder volume : 
surface (w/s): 
WilcoxonResult(statistic=0.0, pvalue=1.8082562147130171e-30) 
SpearmanrResult(correlation=0.96557462746558187, pvalue=4.2089304126380024e-103) 
volume (w/s): 
WilcoxonResult(statistic=1517.0, pvalue=3.1871377334197794e-20) 
SpearmanrResult(correlation=0.97909203237294462, pvalue=1.388798878494895e-121) 
175
cylinder surface : 
surface (w/s): 
WilcoxonResult(statistic=0.0, pvalue=1.2393170660537839e-30) 
SpearmanrResult(correlation=0.96404427425724315, pvalue=4.4950975714316946e-102) 
volume (w/s): 
WilcoxonResult(statistic=0.0, pvalue=1.2393170660537839e-30) 
SpearmanrResult(correlation=0.94054250189663036, pvalue=1.6316743472940282e-83) 
176
cylinder volume + sphere error : 
surface (w/s): 
WilcoxonResult(statistic=0.0, pvalue=1.8082562147130171e-30) 
SpearmanrResult(correlation=0.96125545666677958, pvalue=9.6308424836064136e-99) 
volume (w/s): 
WilcoxonResult(statistic=2901.0, pvalue=8.6555322207123146e-13) 
SpearmanrResult(correlation=0.97981189417274495, pvalue=6.9148116137372243e-123) 
175
cylinder surface + sphere error : 
surface (w/s): 
WilcoxonResult(statistic=1075.0, pvalue=5.5589359990006488e-23) 
SpearmanrResult(correlation=0.97981189417274495, pvalue=6.9148116137372243e-123) 
volume (w/s): 
WilcoxonResult(statistic=139.0, pvalue=1.9393351469752702e-29) 
SpearmanrResult(correlation=0.96365499599944737, pvalue=4.2343265895066386e-101) 
175

Tube - sphere join compensation

komenzace artefaktů vzniklých na spoji koule a válce

experiment compensation method measurement 1 tube

1 tube - surface


In [23]:
#  surface
from scipy.interpolate import UnivariateSpline
from scipy.interpolate import InterpolatedUnivariateSpline

radius_method = "cylinder surface + sphere error"

dfs = df[
    # df["output note"] == "compensation method 1 tube" + radius_method
    df[note_key] == "compensation method measurement 1 tube " + radius_method
]
if len(dfs) > 0:
    dfsm = dfs.groupby("measurement_resolution").mean().reset_index()

    # x = list(dfsm["measurement_resolution"])
    # y = list(dfsm["radius_volume_estimation_numeric"] / dfsm["radius_volume_estimation"])
    x = list(dfsm["measurement_resolution"])
    # y = list(dfsm["radius_surface_estimation_numeric"] / dfsm["radius_surface_estimation"])
    y = list(dfsm["sphere_radius_join_surface_estimation_numeric"] / dfsm["sphere_radius_join_surface_estimation"])
    # y = list(dfsm["sphere_radius_join_surface_estimation_numeric"] / dfsm["radius_distribution_mean"])
    
    x.append(100)
    y.append(1.0)

    x.append(200)
    y.append(1.0)

    x = np.asarray(x)
    y = np.asarray(y)
    spl1 = InterpolatedUnivariateSpline(x, y)
    # spl1 = UnivariateSpline(x, y,k=6)
    # spl1.set_smoothing_factor(10.01)
    xs = np.linspace(5, 100, 100)

    plt.plot(
        xs[:], spl1(xs[:]), "b" , 
        x[:-2], y[:-2], "ro", 
        list(dfs["measurement_resolution"])[:], 
        list(dfs["sphere_radius_join_surface_estimation_numeric"]/dfs["sphere_radius_join_surface_estimation"])[:],
        "g."
    )
    stx = "x_csseje = ["
    for i in x:
        stx = stx + str(i) + ", "
    stx += "]"
    sty = "y_csseje = ["
    for i in y:
        sty = sty + str(i) + ", "
    sty += "]"
    print stx
    print sty

In [24]:
dfsp = show_error(dfs)

In [25]:
with pd.option_context('display.max_columns', None):
    display(dfsm)
    
    display(dfsm[["measurement_resolution", "radius_distribution_mean", 
                  "surface [mm^2]", "numeric surface [mm^2]",
                  "cylinder_surface", "sphere_surface",
                  "surface error [mm^2]", "surface error [%]", 
                  "volume [mm^3]", "numeric volume [mm^3]", 
                  "cylinder_volume",  "sphere_volume",
                  "volume error [mm^3]", "volume error [%]", 
                 ]])


measurement_resolution config appearance force_rewrite config appearance noise_preview config appearance show_aposteriori_surface config appearance skip_volume_generation config appearance surface_3d_preview config filepattern_series_number config generators Continuous tubes element_number config generators Continuous tubes radius_distribution_fixed config generators Continuous tubes radius_distribution_maximum config generators Continuous tubes radius_distribution_mean config generators Continuous tubes radius_distribution_minimum config generators Continuous tubes radius_distribution_normal config generators Continuous tubes radius_distribution_standard_deviation config generators Continuous tubes radius_distribution_uniform config generators Continuous tubes random_generator_seed config generators Gensei n_objects config generators Unconnected tubes allow_overlap config generators Unconnected tubes element_number config generators Unconnected tubes last_element_can_be_smaller config generators Unconnected tubes length_distribution_mean config generators Unconnected tubes length_distribution_standard_deviation config generators Unconnected tubes maximum_1000_iteration_number config generators Unconnected tubes orientation_alpha_rad config generators Unconnected tubes orientation_anisotropic config generators Unconnected tubes orientation_beta_rad config generators Unconnected tubes orientation_variance_rad config generators Unconnected tubes radius_distribution_fixed config generators Unconnected tubes radius_distribution_maximum config generators Unconnected tubes radius_distribution_mean config generators Unconnected tubes radius_distribution_minimum config generators Unconnected tubes radius_distribution_normal config generators Unconnected tubes radius_distribution_standard_deviation config generators Unconnected tubes radius_distribution_uniform config generators Unconnected tubes random_generator_seed config generators Unconnected tubes tube_shape config generators Unconnected tubes volume_fraction config generators Voronoi tubes element_number config generators Voronoi tubes radius_distribution_fixed config generators Voronoi tubes radius_distribution_maximum config generators Voronoi tubes radius_distribution_mean config generators Voronoi tubes radius_distribution_minimum config generators Voronoi tubes radius_distribution_normal config generators Voronoi tubes radius_distribution_standard_deviation config generators Voronoi tubes radius_distribution_uniform config generators Voronoi tubes random_generator_seed config measurement tube_shape config output aposteriori_measurement config output aposteriori_measurement_multiplier config postprocessing add_noise config postprocessing background_intensity config postprocessing gaussian_blur config postprocessing gaussian_filter_sigma_mm config postprocessing limit_negative_intensities config postprocessing measurement_resolution config postprocessing negative config postprocessing noise_exponent config postprocessing noise_lambda0 config postprocessing noise_lambda1 config postprocessing noise_mean config postprocessing noise_rng_seed config postprocessing noise_std measurement area volume [mm^3] measurement count [] measurement length [mm] measurement length d. [mm^-2] measurement negative numeric volume [mm^3] measurement negative numeric volume fraction [] measurement numeric surface [mm^2] measurement numeric volume [mm^3] measurement numeric volume fraction [] measurement surface [mm^2] measurement surface d. [mm^-1] measurement volume [mm^3] measurement volume d. [] processing_info step1_finished processing_info step1_generate_time_s processing_info step1_generate_vtk_time_s processing_info step1_total_time_s processing_info step2_finished processing_info step2_generate_volume_time_s processing_info step2_numeric_measurement_time_s processing_info step2_save_volume_time_s processing_info step2_total_time_s volume [mm^3] numeric volume [mm^3] surface [mm^2] numeric surface [mm^2] surface difference [mm^2] surface difference [-] surface difference [%] volume difference [mm^3] volume difference [-] volume difference [%] surface error [mm^2] surface error [-] surface error [%] volume error [mm^3] volume error [-] volume error [%] length_distribution_mean radius_distribution_mean element_number element number measurement resolution step 1 time [s] step 2 time [s] total time [s] cylinder_volume cylinder_surface sphere_numeric_volume sphere_volume sphere_numeric_surface sphere_surface sphere_radius_volume_estimation_numeric sphere_radius_volume_estimation sphere_radius_surface_estimation_numeric sphere_radius_surface_estimation join_surface_error sphere_join_numeric_surface sphere_radius_join_surface_estimation_numeric sphere_radius_join_surface_estimation join_volume_error sphere_join_numeric_volume
0 5 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 5 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 996.531034 0.996531 11.935486 3.468966 0.003469 14.714019 0.014714 5.335697 0.005336 True 0.034973 0.031290 0.066264 False 0.0 0.012463 0.002728 0.015191 5.335697 3.468966 14.714019 11.935486 -2.778533 -0.189083 -18.908261 -1.866731 -0.350329 -35.032878 2.778533 0.189083 18.908261 1.866731 0.350329 35.032878 0.0 1.0 1.0 1.0 5 0.066264 0.015191 0.073631 0.0 0.0 3.468966 5.335697 11.935486 14.714019 0.935386 1.079923 0.972670 1.080052 -2.778533 13.324752 0.589319 0.648838 -1.866731 4.402332
1 6 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 6 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 995.914198 0.995914 12.920627 4.085802 0.004086 14.714019 0.014714 5.335697 0.005336 True 0.030641 0.038510 0.069150 False 0.0 0.011961 0.002782 0.014743 5.335697 4.085802 14.714019 12.920627 -1.793392 -0.122626 -12.262606 -1.249895 -0.235995 -23.599483 1.793392 0.122626 12.262606 1.249895 0.235995 23.599483 0.0 1.0 1.0 1.0 6 0.069150 0.014743 0.083893 0.0 0.0 4.085802 5.335697 12.920627 14.714019 0.987462 1.079923 1.011868 1.080052 -1.793392 13.817323 0.609502 0.648838 -1.249895 4.710749
2 7 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 7 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 995.652133 0.995652 13.307882 4.347867 0.004348 14.714019 0.014714 5.335697 0.005336 True 0.032787 0.046343 0.079130 False 0.0 0.012393 0.003014 0.015407 5.335697 4.347867 14.714019 13.307882 -1.406137 -0.095688 -9.568819 -0.987830 -0.185385 -18.538450 1.406137 0.095688 9.568819 0.987830 0.185385 18.538450 0.0 1.0 1.0 1.0 7 0.079130 0.015407 0.094537 0.0 0.0 4.347867 5.335697 13.307882 14.714019 1.008613 1.079923 1.027113 1.080052 -1.406137 14.010950 0.618056 0.648838 -0.987830 4.841782
3 8 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 8 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 995.390664 0.995391 13.692871 4.609336 0.004609 14.714019 0.014714 5.335697 0.005336 True 0.029544 0.048012 0.077556 False 0.0 0.012298 0.002709 0.015006 5.335697 4.609336 14.714019 13.692871 -1.021148 -0.069725 -6.972469 -0.726361 -0.136938 -13.693786 1.021148 0.069725 6.972469 0.726361 0.136938 13.693786 0.0 1.0 1.0 1.0 8 0.077556 0.015006 0.092562 0.0 0.0 4.609336 5.335697 13.692871 14.714019 1.028291 1.079923 1.041807 1.080052 -1.021148 14.203445 0.626298 0.648838 -0.726361 4.972516
4 10 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 10 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 995.135619 0.995136 14.057373 4.864381 0.004864 14.714019 0.014714 5.335697 0.005336 True 0.030829 0.060181 0.091011 False 0.0 0.013260 0.003102 0.016362 5.335697 4.864381 14.714019 14.057373 -0.656646 -0.044802 -4.480166 -0.471316 -0.088770 -8.877000 0.656646 0.044802 4.480166 0.471316 0.088770 8.877000 0.0 1.0 1.0 1.0 10 0.091011 0.016362 0.107372 0.0 0.0 4.864381 5.335697 14.057373 14.714019 1.047027 1.079923 1.055628 1.080052 -0.656646 14.385696 0.634311 0.648838 -0.471316 5.100039
5 12 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 12 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.993849 0.994994 14.257088 5.006151 0.005006 14.714019 0.014714 5.335697 0.005336 True 0.033697 0.080790 0.114487 False 0.0 0.014080 0.003747 0.017827 5.335697 5.006151 14.714019 14.257088 -0.456931 -0.031160 -3.116032 -0.329546 -0.062028 -6.202813 0.456931 0.031160 3.116032 0.329546 0.062028 6.202813 0.0 1.0 1.0 1.0 12 0.114487 0.017827 0.132314 0.0 0.0 5.006151 5.335697 14.257088 14.714019 1.057149 1.079923 1.063120 1.080052 -0.456931 14.485553 0.638719 0.648838 -0.329546 5.170924
6 14 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 14 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.907326 0.994907 14.378020 5.092674 0.005093 14.714019 0.014714 5.335697 0.005336 True 0.031670 0.092349 0.124019 False 0.0 0.013095 0.004011 0.017107 5.335697 5.092674 14.714019 14.378020 -0.335999 -0.022906 -2.290568 -0.243023 -0.045721 -4.572145 0.335999 0.022906 2.290568 0.243023 0.045721 4.572145 0.0 1.0 1.0 1.0 14 0.124019 0.017107 0.141126 0.0 0.0 5.092674 5.335697 14.378020 14.714019 1.063228 1.079923 1.067630 1.080052 -0.335999 14.546019 0.641393 0.648838 -0.243023 5.214185
7 17 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 17 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.833182 0.994833 14.481092 5.166818 0.005167 14.714019 0.014714 5.335697 0.005336 True 0.031484 0.110181 0.141665 False 0.0 0.012124 0.003807 0.015931 5.335697 5.166818 14.714019 14.481092 -0.232927 -0.015850 -1.585040 -0.168878 -0.031691 -3.169064 0.232927 0.015850 1.585040 0.168878 0.031691 3.169064 0.0 1.0 1.0 1.0 17 0.141665 0.015931 0.157596 0.0 0.0 5.166818 5.335697 14.481092 14.714019 1.068397 1.079923 1.071463 1.080052 -0.232927 14.597556 0.643680 0.648838 -0.168878 5.251258
8 19 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 19 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.799329 0.994799 14.527996 5.200671 0.005201 14.714019 0.014714 5.335697 0.005336 True 0.031756 0.123005 0.154761 False 0.0 0.012609 0.004166 0.016774 5.335697 5.200671 14.714019 14.527996 -0.186023 -0.012659 -1.265863 -0.135026 -0.025338 -2.533784 0.186023 0.012659 1.265863 0.135026 0.025338 2.533784 0.0 1.0 1.0 1.0 19 0.154761 0.016774 0.171535 0.0 0.0 5.200671 5.335697 14.527996 14.714019 1.070728 1.079923 1.073198 1.080052 -0.186023 14.621008 0.644717 0.648838 -0.135026 5.268184
9 21 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 21 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.774702 0.994775 14.562049 5.225298 0.005225 14.714019 0.014714 5.335697 0.005336 True 0.032140 0.145601 0.177742 False 0.0 0.012701 0.004851 0.017552 5.335697 5.225298 14.714019 14.562049 -0.151970 -0.010341 -1.034134 -0.110399 -0.020716 -2.071644 0.151970 0.010341 1.034134 0.110399 0.020716 2.071644 0.0 1.0 1.0 1.0 21 0.177742 0.017552 0.195293 0.0 0.0 5.225298 5.335697 14.562049 14.714019 1.072417 1.079923 1.074456 1.080052 -0.151970 14.638034 0.645471 0.648838 -0.110399 5.280497
10 23 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 23 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.756236 0.994756 14.587547 5.243764 0.005244 14.714019 0.014714 5.335697 0.005336 True 0.032973 0.161507 0.194480 False 0.0 0.013119 0.005138 0.018257 5.335697 5.243764 14.714019 14.587547 -0.126472 -0.008606 -0.860626 -0.091933 -0.017251 -1.725111 0.126472 0.008606 0.860626 0.091933 0.017251 1.725111 0.0 1.0 1.0 1.0 23 0.194480 0.018257 0.212737 0.0 0.0 5.243764 5.335697 14.587547 14.714019 1.073679 1.079923 1.075397 1.080052 -0.126472 14.650783 0.646035 0.648838 -0.091933 5.289731
11 29 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 29 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.721971 0.994722 14.634775 5.278029 0.005278 14.714019 0.014714 5.335697 0.005336 True 0.031773 0.220211 0.251984 False 0.0 0.015789 0.007120 0.022909 5.335697 5.278029 14.714019 14.634775 -0.079244 -0.005392 -0.539240 -0.057668 -0.010821 -1.082117 0.079244 0.005392 0.539240 0.057668 0.010821 1.082117 0.0 1.0 1.0 1.0 29 0.251984 0.022909 0.274893 0.0 0.0 5.278029 5.335697 14.634775 14.714019 1.076015 1.079923 1.077138 1.080052 -0.079244 14.674397 0.647081 0.648838 -0.057668 5.306863
12 30 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 30 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.717532 0.994718 14.640880 5.282468 0.005282 14.714019 0.014714 5.335697 0.005336 True 0.041102 0.253115 0.294217 False 0.0 0.012397 0.006764 0.019161 5.335697 5.282468 14.714019 14.640880 -0.073139 -0.004981 -0.498095 -0.053229 -0.010000 -0.999985 0.073139 0.004981 0.498095 0.053229 0.010000 0.999985 0.0 1.0 1.0 1.0 30 0.294217 0.019161 0.247370 0.0 0.0 5.282468 5.335697 14.640880 14.714019 1.076314 1.079923 1.077361 1.080052 -0.073139 14.677450 0.647215 0.648838 -0.053229 5.309082
13 31 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 31 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.714732 0.994715 14.644740 5.285268 0.005285 14.714019 0.014714 5.335697 0.005336 True 0.032272 0.234801 0.267073 False 0.0 0.012696 0.006550 0.019246 5.335697 5.285268 14.714019 14.644740 -0.069279 -0.004714 -0.471433 -0.050428 -0.009463 -0.946273 0.069279 0.004714 0.471433 0.050428 0.009463 0.946273 0.0 1.0 1.0 1.0 31 0.267073 0.019246 0.286319 0.0 0.0 5.285268 5.335697 14.644740 14.714019 1.076507 1.079923 1.077505 1.080052 -0.069279 14.679379 0.647302 0.648838 -0.050428 5.310483
14 34 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 34 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.705747 0.994706 14.657096 5.294253 0.005294 14.714019 0.014714 5.335697 0.005336 True 0.035294 0.264768 0.300062 False 0.0 0.013885 0.007816 0.021701 5.335697 5.294253 14.714019 14.657096 -0.056923 -0.003876 -0.387622 -0.041444 -0.007785 -0.778467 0.056923 0.003876 0.387622 0.041444 0.007785 0.778467 0.0 1.0 1.0 1.0 34 0.300062 0.021701 0.321763 0.0 0.0 5.294253 5.335697 14.657096 14.714019 1.077115 1.079923 1.077959 1.080052 -0.056923 14.685558 0.647575 0.648838 -0.041444 5.314975
15 36 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 36 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.701270 0.994701 14.663253 5.298730 0.005299 14.714019 0.014714 5.335697 0.005336 True 0.029875 0.287277 0.317152 False 0.0 0.011812 0.007547 0.019359 5.335697 5.298730 14.714019 14.663253 -0.050766 -0.003457 -0.345680 -0.036967 -0.006943 -0.694327 0.050766 0.003457 0.345680 0.036967 0.006943 0.694327 0.0 1.0 1.0 1.0 36 0.317152 0.019359 0.336511 0.0 0.0 5.298730 5.335697 14.663253 14.714019 1.077419 1.079923 1.078185 1.080052 -0.050766 14.688636 0.647712 0.648838 -0.036967 5.317213
16 39 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 39 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.696088 0.994696 14.670380 5.303912 0.005304 14.714019 0.014714 5.335697 0.005336 True 0.033997 0.424343 0.458340 False 0.0 0.016603 0.010169 0.026772 5.335697 5.303912 14.714019 14.670380 -0.043639 -0.002970 -0.296957 -0.031785 -0.005964 -0.596425 0.043639 0.002970 0.296957 0.031785 0.005964 0.596425 0.0 1.0 1.0 1.0 39 0.458340 0.026772 0.485112 0.0 0.0 5.303912 5.335697 14.670380 14.714019 1.077772 1.079923 1.078448 1.080052 -0.043639 14.692199 0.647870 0.648838 -0.031785 5.319804
17 42 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 42 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.691460 0.994691 14.676737 5.308540 0.005309 14.714019 0.014714 5.335697 0.005336 True 0.031038 0.420015 0.451053 False 0.0 0.013378 0.009127 0.022504 5.335697 5.308540 14.714019 14.676737 -0.037282 -0.002538 -0.253838 -0.027157 -0.005100 -0.509999 0.037282 0.002538 0.253838 0.027157 0.005100 0.509999 0.0 1.0 1.0 1.0 42 0.451053 0.022504 0.473557 0.0 0.0 5.308540 5.335697 14.676737 14.714019 1.078085 1.079923 1.078681 1.080052 -0.037282 14.695378 0.648011 0.648838 -0.027157 5.322118
18 44 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 44 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.689046 0.994689 14.680054 5.310954 0.005311 14.714019 0.014714 5.335697 0.005336 True 0.032389 0.430577 0.462966 False 0.0 0.013467 0.010378 0.023845 5.335697 5.310954 14.714019 14.680054 -0.033965 -0.002313 -0.231252 -0.024743 -0.004647 -0.464654 0.033965 0.002313 0.231252 0.024743 0.004647 0.464654 0.0 1.0 1.0 1.0 44 0.462966 0.023845 0.486812 0.0 0.0 5.310954 5.335697 14.680054 14.714019 1.078249 1.079923 1.078803 1.080052 -0.033965 14.697036 0.648084 0.648838 -0.024743 5.323325
19 46 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 46 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.686940 0.994687 14.682947 5.313060 0.005313 14.714019 0.014714 5.335697 0.005336 True 0.031885 0.459005 0.490890 False 0.0 0.012796 0.011148 0.023944 5.335697 5.313060 14.714019 14.682947 -0.031072 -0.002115 -0.211547 -0.022637 -0.004251 -0.425090 0.031072 0.002115 0.211547 0.022637 0.004251 0.425090 0.0 1.0 1.0 1.0 46 0.490890 0.023944 0.514834 0.0 0.0 5.313060 5.335697 14.682947 14.714019 1.078391 1.079923 1.078910 1.080052 -0.031072 14.698483 0.648148 0.648838 -0.022637 5.324378
20 48 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 48 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.685092 0.994685 14.685485 5.314908 0.005315 14.714019 0.014714 5.335697 0.005336 True 0.032501 0.518951 0.551453 False 0.0 0.014022 0.012765 0.026787 5.335697 5.314908 14.714019 14.685485 -0.028534 -0.001943 -0.194261 -0.020789 -0.003904 -0.390374 0.028534 0.001943 0.194261 0.020789 0.003904 0.390374 0.0 1.0 1.0 1.0 48 0.551453 0.026787 0.578240 0.0 0.0 5.314908 5.335697 14.685485 14.714019 1.078517 1.079923 1.079003 1.080052 -0.028534 14.699752 0.648205 0.648838 -0.020789 5.325302
21 50 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 50 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.683462 0.994683 14.687725 5.316538 0.005317 14.714019 0.014714 5.335697 0.005336 True 0.033915 0.559859 0.593774 False 0.0 0.014563 0.012956 0.027519 5.335697 5.316538 14.714019 14.687725 -0.026294 -0.001790 -0.179009 -0.019159 -0.003597 -0.359742 0.026294 0.001790 0.179009 0.019159 0.003597 0.359742 0.0 1.0 1.0 1.0 50 0.593774 0.027519 0.621293 0.0 0.0 5.316538 5.335697 14.687725 14.714019 1.078627 1.079923 1.079085 1.080052 -0.026294 14.700872 0.648254 0.648838 -0.019159 5.326118
22 53 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 53 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.681467 0.994681 14.690466 5.318533 0.005319 14.714019 0.014714 5.335697 0.005336 True 0.031553 0.558957 0.590511 False 0.0 0.013093 0.013591 0.026684 5.335697 5.318533 14.714019 14.690466 -0.023553 -0.001603 -0.160272 -0.017163 -0.003221 -0.322059 0.023553 0.001603 0.160272 0.017163 0.003221 0.322059 0.0 1.0 1.0 1.0 53 0.590511 0.026684 0.617194 0.0 0.0 5.318533 5.335697 14.690466 14.714019 1.078763 1.079923 1.079186 1.080052 -0.023553 14.702243 0.648315 0.648838 -0.017163 5.327115
23 58 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 58 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.678538 0.994679 14.694485 5.321462 0.005321 14.714019 0.014714 5.335697 0.005336 True 0.034953 0.659791 0.694743 False 0.0 0.012195 0.015851 0.028046 5.335697 5.321462 14.714019 14.694485 -0.019534 -0.001330 -0.132976 -0.014235 -0.002673 -0.267271 0.019534 0.001330 0.132976 0.014235 0.002673 0.267271 0.0 1.0 1.0 1.0 58 0.694743 0.028046 0.722790 0.0 0.0 5.321462 5.335697 14.694485 14.714019 1.078960 1.079923 1.079334 1.080052 -0.019534 14.704252 0.648404 0.648838 -0.014235 5.328579
24 60 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 60 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.677605 0.994678 14.695767 5.322395 0.005322 14.714019 0.014714 5.335697 0.005336 True 0.030623 0.745956 0.776579 False 0.0 0.013002 0.017918 0.030920 5.335697 5.322395 14.714019 14.695767 -0.018252 -0.001242 -0.124246 -0.013301 -0.002497 -0.249733 0.018252 0.001242 0.124246 0.013301 0.002497 0.249733 0.0 1.0 1.0 1.0 60 0.776579 0.030920 0.807499 0.0 0.0 5.322395 5.335697 14.695767 14.714019 1.079024 1.079923 1.079381 1.080052 -0.018252 14.704893 0.648433 0.648838 -0.013301 5.329046
25 63 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 63 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.676435 0.994676 14.697374 5.323565 0.005324 14.714019 0.014714 5.335697 0.005336 True 0.032076 0.776022 0.808099 False 0.0 0.012622 0.019780 0.032402 5.335697 5.323565 14.714019 14.697374 -0.016645 -0.001133 -0.113265 -0.012132 -0.002276 -0.227638 0.016645 0.001133 0.113265 0.012132 0.002276 0.227638 0.0 1.0 1.0 1.0 63 0.808099 0.032402 0.840500 0.0 0.0 5.323565 5.335697 14.697374 14.714019 1.079103 1.079923 1.079440 1.080052 -0.016645 14.705697 0.648469 0.648838 -0.012132 5.329631
26 67 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 67 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.675040 0.994675 14.699320 5.324960 0.005325 14.714019 0.014714 5.335697 0.005336 True 0.031929 0.911396 0.943325 False 0.0 0.014231 0.020202 0.034433 5.335697 5.324960 14.714019 14.699320 -0.014699 -0.001000 -0.100029 -0.010737 -0.002014 -0.201448 0.014699 0.001000 0.100029 0.010737 0.002014 0.201448 0.0 1.0 1.0 1.0 67 0.943325 0.034433 0.977758 0.0 0.0 5.324960 5.335697 14.699320 14.714019 1.079197 1.079923 1.079512 1.080052 -0.014699 14.706670 0.648511 0.648838 -0.010737 5.330328
27 70 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 70 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.674074 0.994674 14.700614 5.325926 0.005326 14.714019 0.014714 5.335697 0.005336 True 0.033644 0.974246 1.007890 False 0.0 0.012644 0.022403 0.035047 5.335697 5.325926 14.714019 14.700614 -0.013405 -0.000912 -0.091247 -0.009770 -0.001834 -0.183423 0.013405 0.000912 0.091247 0.009770 0.001834 0.183423 0.0 1.0 1.0 1.0 70 1.007890 0.035047 1.042938 0.0 0.0 5.325926 5.335697 14.700614 14.714019 1.079263 1.079923 1.079559 1.080052 -0.013405 14.707317 0.648540 0.648838 -0.009770 5.330812
28 73 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 73 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.673330 0.994673 14.701636 5.326670 0.005327 14.714019 0.014714 5.335697 0.005336 True 0.032694 1.026474 1.059168 False 0.0 0.015342 0.026987 0.042329 5.335697 5.326670 14.714019 14.701636 -0.012383 -0.000843 -0.084266 -0.009027 -0.001694 -0.169375 0.012383 0.000843 0.084266 0.009027 0.001694 0.169375 0.0 1.0 1.0 1.0 73 1.059168 0.042329 1.101497 0.0 0.0 5.326670 5.335697 14.701636 14.714019 1.079313 1.079923 1.079597 1.080052 -0.012383 14.707827 0.648563 0.648838 -0.009027 5.331184
29 78 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 78 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.672171 0.994672 14.703225 5.327829 0.005328 14.714019 0.014714 5.335697 0.005336 True 0.037529 1.319210 1.356739 False 0.0 0.013587 0.027810 0.041398 5.335697 5.327829 14.714019 14.703225 -0.010794 -0.000735 -0.073471 -0.007868 -0.001477 -0.147699 0.010794 0.000735 0.073471 0.007868 0.001477 0.147699 0.0 1.0 1.0 1.0 78 1.356739 0.041398 1.398136 0.0 0.0 5.327829 5.335697 14.703225 14.714019 1.079391 1.079923 1.079655 1.080052 -0.010794 14.708622 0.648598 0.648838 -0.007868 5.331763
30 80 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 80 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.671782 0.994672 14.703759 5.328218 0.005328 14.714019 0.014714 5.335697 0.005336 True 0.029281 1.163819 1.193100 False 0.0 0.014281 0.027235 0.041516 5.335697 5.328218 14.714019 14.703759 -0.010260 -0.000698 -0.069838 -0.007479 -0.001404 -0.140398 0.010260 0.000698 0.069838 0.007479 0.001404 0.140398 0.0 1.0 1.0 1.0 80 1.193100 0.041516 1.234615 0.0 0.0 5.328218 5.335697 14.703759 14.714019 1.079418 1.079923 1.079675 1.080052 -0.010260 14.708889 0.648610 0.648838 -0.007479 5.331957
31 84 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 84 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.671087 0.994671 14.704713 5.328913 0.005329 14.714019 0.014714 5.335697 0.005336 True 0.034922 1.320315 1.355237 False 0.0 0.012016 0.031474 0.043490 5.335697 5.328913 14.714019 14.704713 -0.009306 -0.000633 -0.063340 -0.006783 -0.001273 -0.127336 0.009306 0.000633 0.063340 0.006783 0.001273 0.127336 0.0 1.0 1.0 1.0 84 1.355237 0.043490 1.398727 0.0 0.0 5.328913 5.335697 14.704713 14.714019 1.079465 1.079923 1.079710 1.080052 -0.009306 14.709366 0.648631 0.648838 -0.006783 5.332305
32 87 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 87 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.670652 0.994671 14.705310 5.329348 0.005329 14.714019 0.014714 5.335697 0.005336 True 0.031577 1.300579 1.332156 False 0.0 0.013743 0.031142 0.044885 5.335697 5.329348 14.714019 14.705310 -0.008709 -0.000593 -0.059262 -0.006349 -0.001191 -0.119130 0.008709 0.000593 0.059262 0.006349 0.001191 0.119130 0.0 1.0 1.0 1.0 87 1.332156 0.044885 1.377041 0.0 0.0 5.329348 5.335697 14.705310 14.714019 1.079494 1.079923 1.079732 1.080052 -0.008709 14.709665 0.648644 0.648838 -0.006349 5.332522
33 90 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 90 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.670212 0.994670 14.705914 5.329788 0.005330 14.714019 0.014714 5.335697 0.005336 True 0.032259 1.568027 1.600286 False 0.0 0.014693 0.037621 0.052314 5.335697 5.329788 14.714019 14.705914 -0.008105 -0.000552 -0.055168 -0.005909 -0.001109 -0.110911 0.008105 0.000552 0.055168 0.005909 0.001109 0.110911 0.0 1.0 1.0 1.0 90 1.600286 0.052314 1.652600 0.0 0.0 5.329788 5.335697 14.705914 14.714019 1.079524 1.079923 1.079754 1.080052 -0.008105 14.709966 0.648658 0.648838 -0.005909 5.332743
34 95 False False True True False 5.0 30 False 10.0 5.0 2.0 False 5.0 True 0.0 10 False 1.0 False 0.0 0.1 10.0 0.0 False 0.0 0.1 True 3.0 1.0 1.0 True 0.1 False 103 True 0.1 30 False 10.0 5.0 2.0 False 5.0 True 0 True False 1.0 True 20.0 True 1.0 True 95 False 0.0 0.02 1.0 30.0 0.0 40.0 1000.0 1.0 0.051888 0.000052 994.669625 0.994670 14.706719 5.330375 0.005330 14.714019 0.014714 5.335697 0.005336 True 0.032246 1.552816 1.585061 False 0.0 0.013666 0.038865 0.052531 5.335697 5.330375 14.714019 14.706719 -0.007300 -0.000497 -0.049677 -0.005322 -0.000999 -0.099865 0.007300 0.000497 0.049677 0.005322 0.000999 0.099865 0.0 1.0 1.0 1.0 95 1.585061 0.052531 1.637592 0.0 0.0 5.330375 5.335697 14.706719 14.714019 1.079563 1.079923 1.079784 1.080052 -0.007300 14.710369 0.648676 0.648838 -0.005322 5.333036
measurement_resolution radius_distribution_mean surface [mm^2] numeric surface [mm^2] cylinder_surface sphere_surface surface error [mm^2] surface error [%] volume [mm^3] numeric volume [mm^3] cylinder_volume sphere_volume volume error [mm^3] volume error [%]
0 5 1.0 14.714019 11.935486 0.0 14.714019 2.778533 18.908261 5.335697 3.468966 0.0 5.335697 1.866731 35.032878
1 6 1.0 14.714019 12.920627 0.0 14.714019 1.793392 12.262606 5.335697 4.085802 0.0 5.335697 1.249895 23.599483
2 7 1.0 14.714019 13.307882 0.0 14.714019 1.406137 9.568819 5.335697 4.347867 0.0 5.335697 0.987830 18.538450
3 8 1.0 14.714019 13.692871 0.0 14.714019 1.021148 6.972469 5.335697 4.609336 0.0 5.335697 0.726361 13.693786
4 10 1.0 14.714019 14.057373 0.0 14.714019 0.656646 4.480166 5.335697 4.864381 0.0 5.335697 0.471316 8.877000
5 12 1.0 14.714019 14.257088 0.0 14.714019 0.456931 3.116032 5.335697 5.006151 0.0 5.335697 0.329546 6.202813
6 14 1.0 14.714019 14.378020 0.0 14.714019 0.335999 2.290568 5.335697 5.092674 0.0 5.335697 0.243023 4.572145
7 17 1.0 14.714019 14.481092 0.0 14.714019 0.232927 1.585040 5.335697 5.166818 0.0 5.335697 0.168878 3.169064
8 19 1.0 14.714019 14.527996 0.0 14.714019 0.186023 1.265863 5.335697 5.200671 0.0 5.335697 0.135026 2.533784
9 21 1.0 14.714019 14.562049 0.0 14.714019 0.151970 1.034134 5.335697 5.225298 0.0 5.335697 0.110399 2.071644
10 23 1.0 14.714019 14.587547 0.0 14.714019 0.126472 0.860626 5.335697 5.243764 0.0 5.335697 0.091933 1.725111
11 29 1.0 14.714019 14.634775 0.0 14.714019 0.079244 0.539240 5.335697 5.278029 0.0 5.335697 0.057668 1.082117
12 30 1.0 14.714019 14.640880 0.0 14.714019 0.073139 0.498095 5.335697 5.282468 0.0 5.335697 0.053229 0.999985
13 31 1.0 14.714019 14.644740 0.0 14.714019 0.069279 0.471433 5.335697 5.285268 0.0 5.335697 0.050428 0.946273
14 34 1.0 14.714019 14.657096 0.0 14.714019 0.056923 0.387622 5.335697 5.294253 0.0 5.335697 0.041444 0.778467
15 36 1.0 14.714019 14.663253 0.0 14.714019 0.050766 0.345680 5.335697 5.298730 0.0 5.335697 0.036967 0.694327
16 39 1.0 14.714019 14.670380 0.0 14.714019 0.043639 0.296957 5.335697 5.303912 0.0 5.335697 0.031785 0.596425
17 42 1.0 14.714019 14.676737 0.0 14.714019 0.037282 0.253838 5.335697 5.308540 0.0 5.335697 0.027157 0.509999
18 44 1.0 14.714019 14.680054 0.0 14.714019 0.033965 0.231252 5.335697 5.310954 0.0 5.335697 0.024743 0.464654
19 46 1.0 14.714019 14.682947 0.0 14.714019 0.031072 0.211547 5.335697 5.313060 0.0 5.335697 0.022637 0.425090
20 48 1.0 14.714019 14.685485 0.0 14.714019 0.028534 0.194261 5.335697 5.314908 0.0 5.335697 0.020789 0.390374
21 50 1.0 14.714019 14.687725 0.0 14.714019 0.026294 0.179009 5.335697 5.316538 0.0 5.335697 0.019159 0.359742
22 53 1.0 14.714019 14.690466 0.0 14.714019 0.023553 0.160272 5.335697 5.318533 0.0 5.335697 0.017163 0.322059
23 58 1.0 14.714019 14.694485 0.0 14.714019 0.019534 0.132976 5.335697 5.321462 0.0 5.335697 0.014235 0.267271
24 60 1.0 14.714019 14.695767 0.0 14.714019 0.018252 0.124246 5.335697 5.322395 0.0 5.335697 0.013301 0.249733
25 63 1.0 14.714019 14.697374 0.0 14.714019 0.016645 0.113265 5.335697 5.323565 0.0 5.335697 0.012132 0.227638
26 67 1.0 14.714019 14.699320 0.0 14.714019 0.014699 0.100029 5.335697 5.324960 0.0 5.335697 0.010737 0.201448
27 70 1.0 14.714019 14.700614 0.0 14.714019 0.013405 0.091247 5.335697 5.325926 0.0 5.335697 0.009770 0.183423
28 73 1.0 14.714019 14.701636 0.0 14.714019 0.012383 0.084266 5.335697 5.326670 0.0 5.335697 0.009027 0.169375
29 78 1.0 14.714019 14.703225 0.0 14.714019 0.010794 0.073471 5.335697 5.327829 0.0 5.335697 0.007868 0.147699
30 80 1.0 14.714019 14.703759 0.0 14.714019 0.010260 0.069838 5.335697 5.328218 0.0 5.335697 0.007479 0.140398
31 84 1.0 14.714019 14.704713 0.0 14.714019 0.009306 0.063340 5.335697 5.328913 0.0 5.335697 0.006783 0.127336
32 87 1.0 14.714019 14.705310 0.0 14.714019 0.008709 0.059262 5.335697 5.329348 0.0 5.335697 0.006349 0.119130
33 90 1.0 14.714019 14.705914 0.0 14.714019 0.008105 0.055168 5.335697 5.329788 0.0 5.335697 0.005909 0.110911
34 95 1.0 14.714019 14.706719 0.0 14.714019 0.007300 0.049677 5.335697 5.330375 0.0 5.335697 0.005322 0.099865

1 tube volume measuerement


In [26]:
# volume 
from scipy.interpolate import UnivariateSpline
from scipy.interpolate import InterpolatedUnivariateSpline

radius_method = "cylinder volume + sphere error"
# radius_method = "cylinder surface + sphere error"

dfs = df[
    df[note_key] == "compensation method measurement 1 tube " + radius_method
]
if len(dfs) > 0:
    dfsm = dfs.groupby("measurement_resolution").mean().reset_index()

    x = list(dfsm["measurement_resolution"])
    y = list(dfsm["sphere_radius_join_volume_estimation_numeric"] / dfsm["sphere_radius_join_volume_estimation"])

    # x.append(100)
    # y.append(1.0)

    x.append(200)
    y.append(1.0)

    x = np.asarray(x)
    y = np.asarray(y)
    spl1 = InterpolatedUnivariateSpline(x, y)
    spl1 = UnivariateSpline(x, y,k=2)
    spl1.set_smoothing_factor(50.5)
    xs = np.linspace(5, 100, 100)

    plt.plot(
        xs[:], spl1(xs[:]), "b" , 
        x[:-2], y[:-2], "ro", 
    )
    stx = "x_cvseje = ["
    for i in x:
        stx = stx + str(i) + ", "
    stx += "]"
    sty = "y_cvseje = ["
    for i in y:
        sty = sty + str(i) + ", "
    sty += "]"
    print stx
    print sty

In [27]:
dfsp = show_error(dfs)

In [28]:
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == "compensation method measurement 1 tube " + radius_method
    ]
    dfsp = show_error(dfs)

In [29]:
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == "compensation method 1 tube " + radius_method
    ]
    dfsp = show_error(dfs)

TODO - move this - 3 spheres various radius


In [30]:
run_label = "compensation method 3 spheres various radius "
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == run_label + radius_method
    ]
    dfsp = show_error(dfs, x_key="radius_distribution_mean")

tubes

1 Tube evaluation


In [31]:
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == "compensation method 1 tube " + radius_method
    ]
    dfsp = show_error(dfs) #, x_key="radius_distribution_mean")

1 tube various radius


In [32]:
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == "compensation method 1 tube various radius " + radius_method
    ]
    dfsp = show_error(dfs, x_key="radius_distribution_mean")
    print len(dfs)


0
0
0
0
0
0
0
0
0

In [33]:
run_label = "compensation method 1 tube various length "
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == run_label + radius_method
    ]
    dfsp = show_error(dfs, x_key="length_distribution_mean")
    # print len(dfs)

In [34]:
for radius_method in available_radius_methods:
        
    dfs = df[
        df[note_key] == "compensation method 1 tube mix " + radius_method
    ]
    dfsp = show_error(dfs)

5 tubes


In [35]:
for radius_method in available_radius_methods:
        
    dfs = df[
        df[note_key] == "compensation method 5 tubes " + radius_method
    ]
    dfsp = show_error(dfs)

Fixed resolution


In [36]:
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == "fixed resolution " + radius_method
    ]
    dfsp = show_error(dfs)

Best test


In [37]:
for radius_method in available_radius_methods:
    dfs = df[
        df[note_key] == "best test " + radius_method
    ]
    dfsp = show_error(dfs)

Simple check - this computes selected radius from data


In [38]:
# just for control - this should be exactly same as selected radius
radius_method = "inscribed"
dfs = df[
    df[note_key] == "compensation method 1 sphere " + radius_method
    # df["generators Unconnected cylinders radius_distribution_mean"] == 5 
]

if len(dfs) > 1:
    dfs["radius_volume_compensation"] = (3 * dfs["volume [mm^3]"] / (4* np.pi))**(1.0/3.0)
    dfsp = dfs[["radius_volume_compensation", "measurement_resolution"]].sort_values(
        "measurement_resolution")

    fig = plt.figure(figsize=[25, 18])
    ax = plt.subplot(111)
    dfsp.plot(
        ax=ax, x="measurement_resolution", **plotkw)
    plt.suptitle(radius_method)


/home/mjirik/miniconda2/lib/python2.7/site-packages/ipykernel/__main__.py:9: SettingWithCopyWarning: 
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead

See the caveats in the documentation: http://pandas.pydata.org/pandas-docs/stable/indexing.html#indexing-view-versus-copy