From 67d988bb2427efba635cf0949918095493b2728a Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Fri, 17 Jan 2020 09:22:56 +0100 Subject: [PATCH 01/12] [Issue281] Added diaggeom input file for AUG config in 2D --- AUG_vessel_20200116.coords | 741 +++++++++++++++++++++++++++++++++++++ tofu/version.py | 2 +- 2 files changed, 742 insertions(+), 1 deletion(-) create mode 100644 AUG_vessel_20200116.coords diff --git a/AUG_vessel_20200116.coords b/AUG_vessel_20200116.coords new file mode 100644 index 000000000..05eb85fdb --- /dev/null +++ b/AUG_vessel_20200116.coords @@ -0,0 +1,741 @@ +# Vessel coordinates 37095 + +# PCup + 2.151 0.562 + 1.966 0.865 + 1.966 0.874 + 2.054 0.874 + 2.233 0.582 + 2.233 0.562 + 2.151 0.562 + +# PClow + 1.877 -0.874 + 1.877 -0.864 + 2.075 -0.562 + 2.158 -0.562 + 2.158 -0.582 + 1.966 -0.874 + 1.877 -0.874 + +# LIM09 + 1.095 -0.760 + 1.095 -0.680 + 1.073 -0.680 + 1.073 -0.705 + 1.000 -0.705 + 1.000 -0.725 + 1.073 -0.725 + 1.073 -0.760 + 1.095 -0.760 + +# SBi + 1.100 -0.584 + 1.085 -0.517 + 1.072 -0.450 + 1.060 -0.382 + 1.051 -0.314 + 1.043 -0.246 + 1.037 -0.177 + 1.033 -0.108 + 1.031 -0.040 + 1.031 0.029 + 1.033 0.098 + 1.037 0.166 + 1.042 0.235 + 1.049 0.303 + 1.059 0.371 + 1.070 0.439 + 1.083 0.507 + 1.098 0.574 + 1.114 0.641 + 1.133 0.707 + 1.153 0.773 + 1.164 0.769 + 1.144 0.704 + 1.126 0.638 + 1.109 0.571 + 1.095 0.504 + 1.082 0.437 + 1.071 0.370 + 1.061 0.302 + 1.054 0.234 + 1.049 0.166 + 1.045 0.097 + 1.043 0.029 + 1.043 -0.040 + 1.045 -0.108 + 1.049 -0.176 + 1.055 -0.244 + 1.063 -0.312 + 1.072 -0.380 + 1.083 -0.448 + 1.097 -0.515 + 1.112 -0.582 + 1.100 -0.584 + +# ICRHa + 2.002 -0.524 + 1.997 -0.523 + 1.994 -0.520 + 1.992 -0.516 + 1.992 -0.511 + 1.994 -0.507 + 2.004 -0.495 + 2.017 -0.476 + 2.030 -0.457 + 2.043 -0.438 + 2.055 -0.418 + 2.066 -0.399 + 2.078 -0.379 + 2.089 -0.358 + 2.099 -0.338 + 2.109 -0.317 + 2.118 -0.296 + 2.126 -0.276 + 2.127 -0.275 + 2.136 -0.253 + 2.144 -0.231 + 2.151 -0.210 + 2.159 -0.188 + 2.165 -0.166 + 2.170 -0.149 + 2.171 -0.143 + 2.175 -0.129 + 2.177 -0.121 + 2.182 -0.098 + 2.187 -0.075 + 2.191 -0.053 + 2.195 -0.030 + 2.198 -0.007 + 2.198 -0.001 + 2.200 0.016 + 2.203 0.039 + 2.204 0.062 + 2.205 0.098 + 2.205 0.133 + 2.204 0.157 + 2.204 0.169 + 2.200 0.204 + 2.200 0.209 + 2.196 0.239 + 2.190 0.274 + 2.182 0.308 + 2.173 0.343 + 2.162 0.377 + 2.159 0.386 + 2.150 0.410 + 2.137 0.442 + 2.137 0.443 + 2.122 0.475 + 2.109 0.499 + 2.106 0.509 + 2.107 0.517 + 2.111 0.524 + 2.118 0.529 + 2.126 0.531 + 2.900 0.531 + 2.900 -0.524 + 2.002 -0.524 + +# VESiR + 2.521 0.000 + 2.506 0.210 + 2.461 0.416 + 2.387 0.613 + 2.286 0.798 + 2.159 0.966 + 2.010 1.114 + 1.841 1.240 + 1.841 1.240 + 1.705 1.303 + 1.558 1.329 + 1.409 1.315 + 1.269 1.264 + 1.147 1.177 + 1.052 1.062 + 0.990 0.927 + 0.965 0.779 + 0.965 0.779 + 0.957 0.519 + 0.953 0.260 + 0.951 0.000 + 0.953 -0.260 + 0.957 -0.519 + 0.965 -0.779 + 0.965 -0.779 + 0.990 -0.927 + 1.052 -1.062 + 1.147 -1.177 + 1.269 -1.264 + 1.409 -1.315 + 1.558 -1.329 + 1.705 -1.303 + 1.841 -1.240 + 1.841 -1.240 + 2.010 -1.114 + 2.159 -0.966 + 2.286 -0.798 + 2.387 -0.613 + 2.461 -0.416 + 2.506 -0.210 + 2.521 0.000 + +# D2c.i1 + 1.138 -0.658 + 1.141 -0.659 + 1.143 -0.660 + 1.145 -0.661 + 1.187 -0.726 + 1.187 -0.727 + 1.187 -0.728 + 1.187 -0.729 + 1.186 -0.730 + 1.165 -0.744 + 1.117 -0.669 + 1.136 -0.658 + 1.138 -0.658 + +# D2c.i2 + 1.187 -0.730 + 1.188 -0.730 + 1.189 -0.730 + 1.190 -0.731 + 1.247 -0.820 + 1.247 -0.822 + 1.244 -0.824 + 1.216 -0.824 + 1.165 -0.744 + 1.186 -0.730 + 1.187 -0.730 + +# D2c.TPib + 1.249 -0.826 + 1.250 -0.827 + 1.250 -0.827 + 1.250 -0.827 + 1.250 -0.827 + 1.259 -0.842 + 1.266 -0.858 + 1.273 -0.873 + 1.278 -0.890 + 1.282 -0.906 + 1.285 -0.923 + 1.287 -0.940 + 1.288 -0.957 + 1.287 -0.974 + 1.287 -0.975 + 1.287 -0.976 + 1.286 -0.977 + 1.286 -0.977 + 1.285 -0.978 + 1.284 -0.978 + 1.283 -0.979 + 1.282 -0.979 + 1.226 -0.979 + 1.226 -0.825 + 1.246 -0.825 + 1.246 -0.825 + 1.247 -0.825 + 1.247 -0.825 + 1.248 -0.826 + 1.248 -0.826 + 1.248 -0.826 + 1.249 -0.826 + 1.249 -0.826 + 1.249 -0.826 + +# D2c.TPi + 1.281 -0.981 + 1.282 -0.983 + 1.283 -0.985 + 1.283 -0.987 + 1.236 -1.123 + 1.235 -1.124 + 1.235 -1.125 + 1.234 -1.125 + 1.233 -1.125 + 1.232 -1.125 + 1.232 -1.125 + 1.231 -1.125 + 1.230 -1.125 + 1.217 -1.138 + 1.201 -1.122 + 1.249 -0.980 + 1.265 -0.986 + 1.267 -0.980 + 1.278 -0.980 + 1.281 -0.981 + +# D2c.TPic + 1.232 -1.125 + 1.233 -1.126 + 1.234 -1.128 + 1.244 -1.142 + 1.244 -1.142 + 1.244 -1.143 + 1.244 -1.144 + 1.243 -1.144 + 1.233 -1.154 + 1.217 -1.138 + 1.230 -1.126 + 1.230 -1.125 + 1.231 -1.125 + 1.232 -1.125 + +# D2c.domL + 1.280 -1.123 + 1.280 -1.102 + 1.280 -1.100 + 1.280 -1.098 + 1.282 -1.096 + 1.314 -1.071 + 1.315 -1.070 + 1.317 -1.069 + 1.319 -1.070 + 1.321 -1.071 + 1.337 -1.092 + 1.286 -1.133 + 1.281 -1.126 + 1.281 -1.125 + 1.280 -1.123 + +# D2c.dome + 1.320 -1.066 + 1.322 -1.064 + 1.326 -1.062 + 1.459 -1.062 + 1.461 -1.063 + 1.463 -1.064 + 1.482 -1.087 + 1.482 -1.088 + 1.482 -1.089 + 1.482 -1.090 + 1.480 -1.090 + 1.337 -1.090 + 1.320 -1.068 + 1.319 -1.067 + 1.320 -1.066 + +# D2c.domR + 1.487 -1.093 + 1.554 -1.173 + 1.555 -1.175 + 1.555 -1.175 + 1.555 -1.176 + 1.555 -1.184 + 1.555 -1.186 + 1.554 -1.188 + 1.543 -1.196 + 1.462 -1.101 + 1.472 -1.093 + 1.474 -1.092 + 1.475 -1.091 + 1.483 -1.091 + 1.485 -1.092 + 1.487 -1.093 + +# D3.BG10 + 1.554 -1.218 + 1.555 -1.216 + 1.556 -1.214 + 1.558 -1.213 + 1.562 -1.211 + 1.563 -1.210 + 1.566 -1.209 + 1.567 -1.209 + 1.579 -1.209 + 1.579 -1.215 + 1.577 -1.222 + 1.562 -1.222 + 1.562 -1.220 + 1.561 -1.219 + 1.556 -1.219 + 1.555 -1.220 + 1.555 -1.222 + 1.554 -1.222 + 1.554 -1.220 + 1.554 -1.218 + +# D3.BG1 + 1.579 -1.208 + 1.635 -0.999 + 1.639 -0.999 + 1.634 -1.021 + 1.637 -1.021 + 1.638 -1.022 + 1.639 -1.021 + 1.640 -1.020 + 1.640 -1.018 + 1.641 -1.014 + 1.642 -1.013 + 1.647 -1.015 + 1.592 -1.220 + 1.584 -1.220 + 1.587 -1.212 + 1.587 -1.211 + 1.587 -1.210 + 1.586 -1.209 + 1.585 -1.208 + 1.584 -1.208 + 1.579 -1.208 + +# D2d.BG2 + 1.636 -0.997 + 1.636 -0.995 + 1.638 -0.986 + 1.643 -0.972 + 1.649 -0.956 + 1.658 -0.937 + 1.665 -0.924 + 1.674 -0.909 + 1.687 -0.888 + 1.702 -0.863 + 1.704 -0.860 + 1.707 -0.857 + 1.711 -0.854 + 1.715 -0.850 + 1.722 -0.846 + 1.727 -0.843 + 1.732 -0.842 + 1.739 -0.840 + 1.745 -0.839 + 1.758 -0.839 + 1.763 -0.845 + 1.745 -0.868 + 1.737 -0.868 + 1.732 -0.870 + 1.728 -0.872 + 1.725 -0.875 + 1.671 -0.998 + 1.638 -0.998 + 1.636 -0.997 + +# D2d.Bl3 + 1.752 -0.826 + 1.753 -0.826 + 1.875 -0.686 + 1.876 -0.686 + 1.878 -0.685 + 1.879 -0.686 + 1.879 -0.686 + 1.939 -0.725 + 1.901 -0.783 + 1.870 -0.762 + 1.775 -0.845 + 1.772 -0.842 + 1.771 -0.841 + 1.770 -0.839 + 1.752 -0.826 + +# D2d.Bl2 + 1.879 -0.683 + 1.994 -0.550 + 1.996 -0.549 + 1.998 -0.548 + 2.000 -0.547 + 2.002 -0.547 + 2.006 -0.547 + 2.007 -0.547 + 2.008 -0.548 + 2.008 -0.549 + 2.008 -0.559 + 1.950 -0.647 + 1.978 -0.666 + 1.940 -0.723 + +# D2d.Bl1 + 2.011 -0.560 + 2.011 -0.559 + 2.018 -0.548 + 2.019 -0.547 + 2.020 -0.547 + 2.149 -0.547 + 2.150 -0.547 + 2.151 -0.548 + 2.151 -0.549 + 2.151 -0.562 + 2.013 -0.562 + 2.012 -0.562 + 2.011 -0.561 + 2.011 -0.560 + +# TPLT_1 + 1.500 1.185 + 1.336 1.093 + 1.335 1.093 + 1.334 1.093 + 1.320 1.103 + 1.328 1.114 + 1.322 1.119 + 1.367 1.178 + 1.407 1.178 + 1.497 1.196 + 1.499 1.196 + 1.501 1.195 + 1.502 1.194 + 1.503 1.192 + 1.503 1.190 + 1.503 1.188 + 1.502 1.186 + 1.500 1.185 + +# TPLT_2 + 1.331 1.087 + 1.288 1.031 + 1.287 1.030 + 1.286 1.029 + 1.284 1.029 + 1.258 1.037 + 1.312 1.108 + 1.330 1.094 + 1.331 1.093 + 1.332 1.092 + 1.332 1.090 + 1.332 1.089 + 1.331 1.087 + +# TPLT_3 + 1.282 1.023 + 1.242 0.969 + 1.240 0.967 + 1.239 0.966 + 1.238 0.965 + 1.236 0.965 + 1.235 0.965 + 1.234 0.965 + 1.209 0.973 + 1.257 1.036 + 1.281 1.030 + 1.282 1.029 + 1.283 1.028 + 1.283 1.026 + 1.283 1.024 + 1.282 1.023 + +# TPLT_4 + 1.237 0.958 + 1.208 0.891 + 1.207 0.891 + 1.207 0.890 + 1.206 0.890 + 1.206 0.889 + 1.205 0.889 + 1.204 0.888 + 1.204 0.888 + 1.203 0.888 + 1.202 0.888 + 1.201 0.889 + 1.200 0.889 + 1.200 0.889 + 1.166 0.915 + 1.209 0.973 + 1.234 0.965 + 1.234 0.965 + 1.235 0.965 + 1.235 0.964 + 1.236 0.964 + 1.236 0.963 + 1.237 0.962 + 1.237 0.961 + 1.237 0.961 + 1.237 0.960 + 1.237 0.959 + 1.237 0.958 + +# TPLT_5 + 1.203 0.881 + 1.180 0.820 + 1.179 0.818 + 1.179 0.818 + 1.178 0.816 + 1.178 0.816 + 1.167 0.802 + 1.167 0.802 + 1.166 0.801 + 1.166 0.801 + 1.165 0.800 + 1.164 0.800 + 1.163 0.800 + 1.162 0.800 + 1.161 0.800 + 1.161 0.800 + 1.160 0.801 + 1.160 0.801 + 1.119 0.832 + 1.142 0.861 + 1.131 0.869 + 1.165 0.914 + 1.201 0.886 + 1.202 0.886 + 1.202 0.886 + 1.203 0.885 + 1.203 0.884 + 1.203 0.883 + 1.203 0.882 + 1.203 0.882 + 1.203 0.881 + 1.203 0.881 + +# TPRT_2 + 1.863 0.941 + 1.775 1.071 + 1.774 1.073 + 1.774 1.075 + 1.775 1.076 + 1.776 1.078 + 1.784 1.083 + 1.801 1.076 + 1.802 1.076 + 1.802 1.075 + 1.803 1.075 + 1.804 1.075 + 1.805 1.076 + 1.806 1.076 + 1.806 1.077 + 1.807 1.077 + 1.807 1.078 + 1.808 1.078 + 1.814 1.093 + 1.839 1.083 + 1.913 0.973 + 1.914 0.972 + 1.914 0.970 + 1.913 0.968 + 1.912 0.966 + 1.870 0.939 + 1.868 0.938 + 1.866 0.938 + 1.865 0.939 + 1.863 0.941 + 1.863 0.941 + +# TPRT_3 + 1.796 1.082 + 1.729 1.106 + 1.727 1.107 + 1.726 1.108 + 1.725 1.109 + 1.725 1.111 + 1.726 1.112 + 1.733 1.132 + 1.809 1.105 + 1.802 1.084 + 1.801 1.083 + 1.800 1.082 + 1.799 1.081 + 1.797 1.081 + 1.796 1.082 + +# TPRT_4 + 1.718 1.109 + 1.651 1.134 + 1.650 1.135 + 1.649 1.136 + 1.648 1.138 + 1.648 1.140 + 1.656 1.160 + 1.732 1.133 + 1.725 1.112 + 1.724 1.111 + 1.722 1.110 + 1.720 1.109 + 1.718 1.109 + +# TPRT_5 + 1.644 1.137 + 1.509 1.190 + 1.508 1.191 + 1.507 1.195 + 1.506 1.195 + 1.504 1.198 + 1.501 1.200 + 1.494 1.203 + 1.493 1.204 + 1.493 1.205 + 1.493 1.206 + 1.493 1.206 + 1.501 1.217 + 1.655 1.161 + 1.646 1.138 + 1.646 1.137 + 1.645 1.137 + 1.644 1.137 + 1.644 1.137 + +# D2d.Bu4 + 2.121 0.547 + 2.113 0.559 + 2.113 0.560 + 2.113 0.561 + 2.114 0.562 + 2.115 0.562 + 2.228 0.562 + 2.228 0.547 + 2.121 0.547 + +# D2d.Bu3 + 2.101 0.547 + 2.003 0.707 + 2.046 0.734 + 2.081 0.676 + 2.067 0.667 + 2.063 0.664 + 2.060 0.659 + 2.058 0.653 + 2.059 0.646 + 2.061 0.640 + 2.118 0.547 + 2.101 0.547 + +# D2d.Bu2 + 2.002 0.708 + 1.905 0.866 + 1.918 0.874 + 1.969 0.791 + 1.974 0.786 + 1.980 0.782 + 1.985 0.781 + 1.991 0.781 + 1.996 0.783 + 2.010 0.792 + 2.045 0.734 + 2.002 0.708 + 2.002 0.708 + +# D2d.Bu1 + 1.905 0.868 + 1.904 0.868 + 1.904 0.869 + 1.903 0.869 + 1.903 0.869 + 1.897 0.880 + 1.896 0.881 + 1.896 0.881 + 1.896 0.881 + 1.897 0.882 + 1.897 0.882 + 1.897 0.882 + 1.897 0.883 + 1.897 0.883 + 1.897 0.883 + 1.897 0.884 + 1.875 0.921 + 1.875 0.922 + 1.875 0.923 + 1.875 0.923 + 1.875 0.924 + 1.875 0.924 + 1.924 0.952 + 1.925 0.953 + 1.927 0.953 + 1.928 0.954 + 1.930 0.954 + 1.932 0.953 + 2.022 0.925 + 2.022 0.894 + 1.949 0.894 + 1.906 0.869 + 1.905 0.868 + 1.905 0.868 + 1.905 0.868 diff --git a/tofu/version.py b/tofu/version.py index 38f81c4e7..814916362 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-alpha2-48-gbe9fde3' +__version__ = '1.4.2-alpha2-50-g1bd7a6df' From 8cf3812b6a15bae0dbe0c6fc0dfa53b610d9226d Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Fri, 17 Jan 2020 10:25:51 +0100 Subject: [PATCH 02/12] [Issue281] First version of all AUG txt files from diaggeom, 13/33 have double points, to be corrected --- tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt | 24 ++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt | 38 ++++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt | 18 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt | 19 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt | 20 +++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt | 19 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt | 17 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt | 15 +++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt | 33 +++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt | 18 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl2.txt | 18 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt | 19 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt | 39 ++++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt | 17 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt | 16 +++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt | 13 ++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt | 25 ++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt | 24 ++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt | 66 +++++++++++++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt | 13 ++++ tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt | 11 ++++ tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt | 11 ++++ tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt | 47 +++++++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt | 22 +++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt | 17 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt | 20 +++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt | 32 ++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt | 36 +++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt | 35 +++++++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt | 19 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt | 17 ++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt | 23 +++++++ tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt | 45 ++++++++++++++ tofu/version.py | 2 +- 34 files changed, 807 insertions(+), 1 deletion(-) create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl2.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt create mode 100644 tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt new file mode 100644 index 000000000..6cb901060 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt @@ -0,0 +1,24 @@ +#Name = D2cTPi +#Exp = AUG +#CLs = PFC +20 0 +1.281 -0.981 +1.282 -0.983 +1.283 -0.985 +1.283 -0.987 +1.236 -1.123 +1.235 -1.124 +1.235 -1.125 +1.234 -1.125 +1.233 -1.125 +1.232 -1.125 +1.232 -1.125 +1.231 -1.125 +1.230 -1.125 +1.217 -1.138 +1.201 -1.122 +1.249 -0.980 +1.265 -0.986 +1.267 -0.980 +1.278 -0.980 +1.281 -0.981 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt new file mode 100644 index 000000000..842645219 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt @@ -0,0 +1,38 @@ +#Name = D2cTPib +#Exp = AUG +#CLs = PFC +34 0 +1.249 -0.826 +1.250 -0.827 +1.250 -0.827 +1.250 -0.827 +1.250 -0.827 +1.259 -0.842 +1.266 -0.858 +1.273 -0.873 +1.278 -0.890 +1.282 -0.906 +1.285 -0.923 +1.287 -0.940 +1.288 -0.957 +1.287 -0.974 +1.287 -0.975 +1.287 -0.976 +1.286 -0.977 +1.286 -0.977 +1.285 -0.978 +1.284 -0.978 +1.283 -0.979 +1.282 -0.979 +1.226 -0.979 +1.226 -0.825 +1.246 -0.825 +1.246 -0.825 +1.247 -0.825 +1.247 -0.825 +1.248 -0.826 +1.248 -0.826 +1.248 -0.826 +1.249 -0.826 +1.249 -0.826 +1.249 -0.826 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt new file mode 100644 index 000000000..0dd5d87b1 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt @@ -0,0 +1,18 @@ +#Name = D2cTPic +#Exp = AUG +#CLs = PFC +14 0 +1.232 -1.125 +1.233 -1.126 +1.234 -1.128 +1.244 -1.142 +1.244 -1.142 +1.244 -1.143 +1.244 -1.144 +1.243 -1.144 +1.233 -1.154 +1.217 -1.138 +1.230 -1.126 +1.230 -1.125 +1.231 -1.125 +1.232 -1.125 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt new file mode 100644 index 000000000..70677dff9 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt @@ -0,0 +1,19 @@ +#Name = D2cdomL +#Exp = AUG +#CLs = PFC +15 0 +1.280 -1.123 +1.280 -1.102 +1.280 -1.100 +1.280 -1.098 +1.282 -1.096 +1.314 -1.071 +1.315 -1.070 +1.317 -1.069 +1.319 -1.070 +1.321 -1.071 +1.337 -1.092 +1.286 -1.133 +1.281 -1.126 +1.281 -1.125 +1.280 -1.123 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt new file mode 100644 index 000000000..efe931d1c --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt @@ -0,0 +1,20 @@ +#Name = D2CdomR +#Exp = AUG +#CLs = PFC +16 0 +1.487 -1.093 +1.554 -1.173 +1.555 -1.175 +1.555 -1.175 +1.555 -1.176 +1.555 -1.184 +1.555 -1.186 +1.554 -1.188 +1.543 -1.196 +1.462 -1.101 +1.472 -1.093 +1.474 -1.092 +1.475 -1.091 +1.483 -1.091 +1.485 -1.092 +1.487 -1.093 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt new file mode 100644 index 000000000..9ce921cc9 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt @@ -0,0 +1,19 @@ +#Name = D2cdome +#Exp = AUG +#CLs = PFC +15 0 +1.320 -1.066 +1.322 -1.064 +1.326 -1.062 +1.459 -1.062 +1.461 -1.063 +1.463 -1.064 +1.482 -1.087 +1.482 -1.088 +1.482 -1.089 +1.482 -1.090 +1.480 -1.090 +1.337 -1.090 +1.320 -1.068 +1.319 -1.067 +1.320 -1.066 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt new file mode 100644 index 000000000..f33fea4ba --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt @@ -0,0 +1,17 @@ +#Name = D2ci1 +#Exp = AUG +#CLs = PFC +13 0 +1.138 -0.658 +1.141 -0.659 +1.143 -0.660 +1.145 -0.661 +1.187 -0.726 +1.187 -0.727 +1.187 -0.728 +1.187 -0.729 +1.186 -0.730 +1.165 -0.744 +1.117 -0.669 +1.136 -0.658 +1.138 -0.658 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt new file mode 100644 index 000000000..edbdbf163 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt @@ -0,0 +1,15 @@ +#Name = D2ci2 +#Exp = AUG +#CLs = PFC +11 0 +1.187 -0.730 +1.188 -0.730 +1.189 -0.730 +1.190 -0.731 +1.247 -0.820 +1.247 -0.822 +1.244 -0.824 +1.216 -0.824 +1.165 -0.744 +1.186 -0.730 +1.187 -0.730 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt new file mode 100644 index 000000000..16e1023b9 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt @@ -0,0 +1,33 @@ +#Name = D2dBG2 +#Exp = AUG +#CLs = PFC +29 0 +1.636 -0.997 +1.636 -0.995 +1.638 -0.986 +1.643 -0.972 +1.649 -0.956 +1.658 -0.937 +1.665 -0.924 +1.674 -0.909 +1.687 -0.888 +1.702 -0.863 +1.704 -0.860 +1.707 -0.857 +1.711 -0.854 +1.715 -0.850 +1.722 -0.846 +1.727 -0.843 +1.732 -0.842 +1.739 -0.840 +1.745 -0.839 +1.758 -0.839 +1.763 -0.845 +1.745 -0.868 +1.737 -0.868 +1.732 -0.870 +1.728 -0.872 +1.725 -0.875 +1.671 -0.998 +1.638 -0.998 +1.636 -0.997 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt new file mode 100644 index 000000000..993b43bb9 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt @@ -0,0 +1,18 @@ +#Name = D2dBl1 +#Exp = AUG +#CLs = PFC +14 0 +2.011 -0.560 +2.011 -0.559 +2.018 -0.548 +2.019 -0.547 +2.020 -0.547 +2.149 -0.547 +2.150 -0.547 +2.151 -0.548 +2.151 -0.549 +2.151 -0.562 +2.013 -0.562 +2.012 -0.562 +2.011 -0.561 +2.011 -0.560 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl2.txt new file mode 100644 index 000000000..66e8536d3 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl2.txt @@ -0,0 +1,18 @@ +#Name = D2dBl2 +#Exp = AUG +#CLs = PFC +14 0 +1.879 -0.683 +1.994 -0.550 +1.996 -0.549 +1.998 -0.548 +2.000 -0.547 +2.002 -0.547 +2.006 -0.547 +2.007 -0.547 +2.008 -0.548 +2.008 -0.549 +2.008 -0.559 +1.950 -0.647 +1.978 -0.666 +1.940 -0.723 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt new file mode 100644 index 000000000..7d34fdbdc --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt @@ -0,0 +1,19 @@ +#Name = D2dBl3 +#Exp = AUG +#CLs = PFC +15 0 +1.752 -0.826 +1.753 -0.826 +1.875 -0.686 +1.876 -0.686 +1.878 -0.685 +1.879 -0.686 +1.879 -0.686 +1.939 -0.725 +1.901 -0.783 +1.870 -0.762 +1.775 -0.845 +1.772 -0.842 +1.771 -0.841 +1.770 -0.839 +1.752 -0.826 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt new file mode 100644 index 000000000..6535b1cb9 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt @@ -0,0 +1,39 @@ +#Name = D2dBu1 +#Exp = AUG +#CLs = PFC +35 0 +1.905 0.868 +1.904 0.868 +1.904 0.869 +1.903 0.869 +1.903 0.869 +1.897 0.880 +1.896 0.881 +1.896 0.881 +1.896 0.881 +1.897 0.882 +1.897 0.882 +1.897 0.882 +1.897 0.883 +1.897 0.883 +1.897 0.883 +1.897 0.884 +1.875 0.921 +1.875 0.922 +1.875 0.923 +1.875 0.923 +1.875 0.924 +1.875 0.924 +1.924 0.952 +1.925 0.953 +1.927 0.953 +1.928 0.954 +1.930 0.954 +1.932 0.953 +2.022 0.925 +2.022 0.894 +1.949 0.894 +1.906 0.869 +1.905 0.868 +1.905 0.868 +1.905 0.868 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt new file mode 100644 index 000000000..fd60ed1c4 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt @@ -0,0 +1,17 @@ +#Name = D2dBu2 +#Exp = AUG +#CLs = PFC +13 0 +2.002 0.708 +1.905 0.866 +1.918 0.874 +1.969 0.791 +1.974 0.786 +1.980 0.782 +1.985 0.781 +1.991 0.781 +1.996 0.783 +2.010 0.792 +2.045 0.734 +2.002 0.708 +2.002 0.708 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt new file mode 100644 index 000000000..aaf35f1f2 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt @@ -0,0 +1,16 @@ +#Name = D2dBu3 +#Exp = AUG +#CLs = PFC +12 0 +2.101 0.547 +2.003 0.707 +2.046 0.734 +2.081 0.676 +2.067 0.667 +2.063 0.664 +2.060 0.659 +2.058 0.653 +2.059 0.646 +2.061 0.640 +2.118 0.547 +2.101 0.547 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt new file mode 100644 index 000000000..0c998d3fd --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt @@ -0,0 +1,13 @@ +#Name = D2dBu4 +#Exp = AUG +#CLs = PFC +9 0 +2.121 0.547 +2.113 0.559 +2.113 0.560 +2.113 0.561 +2.114 0.562 +2.115 0.562 +2.228 0.562 +2.228 0.547 +2.121 0.547 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt new file mode 100644 index 000000000..83af9b109 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt @@ -0,0 +1,25 @@ +#Name = D3BG1 +#Exp = AUG +#CLs = PFC +21 0 +1.579 -1.208 +1.635 -0.999 +1.639 -0.999 +1.634 -1.021 +1.637 -1.021 +1.638 -1.022 +1.639 -1.021 +1.640 -1.020 +1.640 -1.018 +1.641 -1.014 +1.642 -1.013 +1.647 -1.015 +1.592 -1.220 +1.584 -1.220 +1.587 -1.212 +1.587 -1.211 +1.587 -1.210 +1.586 -1.209 +1.585 -1.208 +1.584 -1.208 +1.579 -1.208 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt new file mode 100644 index 000000000..a6d39db7e --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt @@ -0,0 +1,24 @@ +#Name = D3BG10 +#Exp = AUG +#CLs = PFC +20 0 +1.554 -1.218 +1.555 -1.216 +1.556 -1.214 +1.558 -1.213 +1.562 -1.211 +1.563 -1.210 +1.566 -1.209 +1.567 -1.209 +1.579 -1.209 +1.579 -1.215 +1.577 -1.222 +1.562 -1.222 +1.562 -1.220 +1.561 -1.219 +1.556 -1.219 +1.555 -1.220 +1.555 -1.222 +1.554 -1.222 +1.554 -1.220 +1.554 -1.218 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt new file mode 100644 index 000000000..4a5d33a02 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt @@ -0,0 +1,66 @@ +#Name = ICRHa +#Exp = AUG +#CLs = PFC +62 0 +2.002 -0.524 +1.997 -0.523 +1.994 -0.520 +1.992 -0.516 +1.992 -0.511 +1.994 -0.507 +2.004 -0.495 +2.017 -0.476 +2.030 -0.457 +2.043 -0.438 +2.055 -0.418 +2.066 -0.399 +2.078 -0.379 +2.089 -0.358 +2.099 -0.338 +2.109 -0.317 +2.118 -0.296 +2.126 -0.276 +2.127 -0.275 +2.136 -0.253 +2.144 -0.231 +2.151 -0.210 +2.159 -0.188 +2.165 -0.166 +2.170 -0.149 +2.171 -0.143 +2.175 -0.129 +2.177 -0.121 +2.182 -0.098 +2.187 -0.075 +2.191 -0.053 +2.195 -0.030 +2.198 -0.007 +2.198 -0.001 +2.200 0.016 +2.203 0.039 +2.204 0.062 +2.205 0.098 +2.205 0.133 +2.204 0.157 +2.204 0.169 +2.200 0.204 +2.200 0.209 +2.196 0.239 +2.190 0.274 +2.182 0.308 +2.173 0.343 +2.162 0.377 +2.159 0.386 +2.150 0.410 +2.137 0.442 +2.137 0.443 +2.122 0.475 +2.109 0.499 +2.106 0.509 +2.107 0.517 +2.111 0.524 +2.118 0.529 +2.126 0.531 +2.900 0.531 +2.900 -0.524 +2.002 -0.524 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt new file mode 100644 index 000000000..1ca6d8b71 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt @@ -0,0 +1,13 @@ +#Name = LIM09 +#Exp = AUG +#CLs = PFC +9 0 +1.095 -0.760 +1.095 -0.680 +1.073 -0.680 +1.073 -0.705 +1.000 -0.705 +1.000 -0.725 +1.073 -0.725 +1.073 -0.760 +1.095 -0.760 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt new file mode 100644 index 000000000..4a2e75d53 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt @@ -0,0 +1,11 @@ +#Name = PClow +#Exp = AUG +#CLs = PFC +7 0 +1.877 -0.874 +1.877 -0.864 +2.075 -0.562 +2.158 -0.562 +2.158 -0.582 +1.966 -0.874 +1.877 -0.874 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt new file mode 100644 index 000000000..3f2b85d19 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt @@ -0,0 +1,11 @@ +#Name = PCup +#Exp = AUG +#CLs = PFC +7 0 +2.151 0.562 +1.966 0.865 +1.966 0.874 +2.054 0.874 +2.233 0.582 +2.233 0.562 +2.151 0.562 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt new file mode 100644 index 000000000..2717e6f9f --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt @@ -0,0 +1,47 @@ +#Name = SBi +#Exp = AUG +#CLs = PFC +43 0 +1.100 -0.584 +1.085 -0.517 +1.072 -0.450 +1.060 -0.382 +1.051 -0.314 +1.043 -0.246 +1.037 -0.177 +1.033 -0.108 +1.031 -0.040 +1.031 0.029 +1.033 0.098 +1.037 0.166 +1.042 0.235 +1.049 0.303 +1.059 0.371 +1.070 0.439 +1.083 0.507 +1.098 0.574 +1.114 0.641 +1.133 0.707 +1.153 0.773 +1.164 0.769 +1.144 0.704 +1.126 0.638 +1.109 0.571 +1.095 0.504 +1.082 0.437 +1.071 0.370 +1.061 0.302 +1.054 0.234 +1.049 0.166 +1.045 0.097 +1.043 0.029 +1.043 -0.040 +1.045 -0.108 +1.049 -0.176 +1.055 -0.244 +1.063 -0.312 +1.072 -0.380 +1.083 -0.448 +1.097 -0.515 +1.112 -0.582 +1.100 -0.584 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt new file mode 100644 index 000000000..6769177f9 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt @@ -0,0 +1,22 @@ +#Name = TPLT1 +#Exp = AUG +#CLs = PFC +18 0 +1.500 1.185 +1.336 1.093 +1.335 1.093 +1.334 1.093 +1.320 1.103 +1.328 1.114 +1.322 1.119 +1.367 1.178 +1.407 1.178 +1.497 1.196 +1.499 1.196 +1.501 1.195 +1.502 1.194 +1.503 1.192 +1.503 1.190 +1.503 1.188 +1.502 1.186 +1.500 1.185 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt new file mode 100644 index 000000000..3b69ecb92 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt @@ -0,0 +1,17 @@ +#Name = TPLT2 +#Exp = AUG +#CLs = PFC +13 0 +1.331 1.087 +1.288 1.031 +1.287 1.030 +1.286 1.029 +1.284 1.029 +1.258 1.037 +1.312 1.108 +1.330 1.094 +1.331 1.093 +1.332 1.092 +1.332 1.090 +1.332 1.089 +1.331 1.087 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt new file mode 100644 index 000000000..57c417a0f --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt @@ -0,0 +1,20 @@ +#Name = TPLT3 +#Exp = AUG +#CLs = PFC +16 0 +1.282 1.023 +1.242 0.969 +1.240 0.967 +1.239 0.966 +1.238 0.965 +1.236 0.965 +1.235 0.965 +1.234 0.965 +1.209 0.973 +1.257 1.036 +1.281 1.030 +1.282 1.029 +1.283 1.028 +1.283 1.026 +1.283 1.024 +1.282 1.023 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt new file mode 100644 index 000000000..a77058aa3 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt @@ -0,0 +1,32 @@ +#Name = TPLT4 +#Exp = AUG +#CLs = PFC +28 0 +1.237 0.958 +1.208 0.891 +1.207 0.891 +1.207 0.890 +1.206 0.890 +1.206 0.889 +1.205 0.889 +1.204 0.888 +1.204 0.888 +1.203 0.888 +1.202 0.888 +1.201 0.889 +1.200 0.889 +1.200 0.889 +1.166 0.915 +1.209 0.973 +1.234 0.965 +1.234 0.965 +1.235 0.965 +1.235 0.964 +1.236 0.964 +1.236 0.963 +1.237 0.962 +1.237 0.961 +1.237 0.961 +1.237 0.960 +1.237 0.959 +1.237 0.958 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt new file mode 100644 index 000000000..99a837fcc --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt @@ -0,0 +1,36 @@ +#Name = TPLT5 +#Exp = AUG +#CLs = PFC +32 0 +1.203 0.881 +1.180 0.820 +1.179 0.818 +1.179 0.818 +1.178 0.816 +1.178 0.816 +1.167 0.802 +1.167 0.802 +1.166 0.801 +1.166 0.801 +1.165 0.800 +1.164 0.800 +1.163 0.800 +1.162 0.800 +1.161 0.800 +1.161 0.800 +1.160 0.801 +1.160 0.801 +1.119 0.832 +1.142 0.861 +1.131 0.869 +1.165 0.914 +1.201 0.886 +1.202 0.886 +1.202 0.886 +1.203 0.885 +1.203 0.884 +1.203 0.883 +1.203 0.882 +1.203 0.882 +1.203 0.881 +1.203 0.881 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt new file mode 100644 index 000000000..e4c317a4f --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt @@ -0,0 +1,35 @@ +#Name = TPRT2 +#Exp = AUG +#CLs = PFC +31 0 +1.863 0.941 +1.775 1.071 +1.774 1.073 +1.774 1.075 +1.775 1.076 +1.776 1.078 +1.784 1.083 +1.801 1.076 +1.802 1.076 +1.802 1.075 +1.803 1.075 +1.804 1.075 +1.805 1.076 +1.806 1.076 +1.806 1.077 +1.807 1.077 +1.807 1.078 +1.808 1.078 +1.814 1.093 +1.839 1.083 +1.913 0.973 +1.914 0.972 +1.914 0.970 +1.913 0.968 +1.912 0.966 +1.870 0.939 +1.868 0.938 +1.866 0.938 +1.865 0.939 +1.863 0.941 +1.863 0.941 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt new file mode 100644 index 000000000..0b8274312 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt @@ -0,0 +1,19 @@ +#Name = TPRT3 +#Exp = AUG +#CLs = PFC +15 0 +1.796 1.082 +1.729 1.106 +1.727 1.107 +1.726 1.108 +1.725 1.109 +1.725 1.111 +1.726 1.112 +1.733 1.132 +1.809 1.105 +1.802 1.084 +1.801 1.083 +1.800 1.082 +1.799 1.081 +1.797 1.081 +1.796 1.082 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt new file mode 100644 index 000000000..fa10349c3 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt @@ -0,0 +1,17 @@ +#Name = TPRT4 +#Exp = AUG +#CLs = PFC +13 0 +1.718 1.109 +1.651 1.134 +1.650 1.135 +1.649 1.136 +1.648 1.138 +1.648 1.140 +1.656 1.160 +1.732 1.133 +1.725 1.112 +1.724 1.111 +1.722 1.110 +1.720 1.109 +1.718 1.109 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt new file mode 100644 index 000000000..9521a46f4 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt @@ -0,0 +1,23 @@ +#Name = TPRT5 +#Exp = AUG +#CLs = PFC +19 0 +1.644 1.137 +1.509 1.190 +1.508 1.191 +1.507 1.195 +1.506 1.195 +1.504 1.198 +1.501 1.200 +1.494 1.203 +1.493 1.204 +1.493 1.205 +1.493 1.206 +1.493 1.206 +1.501 1.217 +1.655 1.161 +1.646 1.138 +1.646 1.137 +1.645 1.137 +1.644 1.137 +1.644 1.137 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt new file mode 100644 index 000000000..1c9e26339 --- /dev/null +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt @@ -0,0 +1,45 @@ +#Name = VESiR +#Exp = AUG +#CLs = PFC +41 0 +2.521 0.000 +2.506 0.210 +2.461 0.416 +2.387 0.613 +2.286 0.798 +2.159 0.966 +2.010 1.114 +1.841 1.240 +1.841 1.240 +1.705 1.303 +1.558 1.329 +1.409 1.315 +1.269 1.264 +1.147 1.177 +1.052 1.062 +0.990 0.927 +0.965 0.779 +0.965 0.779 +0.957 0.519 +0.953 0.260 +0.951 0.000 +0.953 -0.260 +0.957 -0.519 +0.965 -0.779 +0.965 -0.779 +0.990 -0.927 +1.052 -1.062 +1.147 -1.177 +1.269 -1.264 +1.409 -1.315 +1.558 -1.329 +1.705 -1.303 +1.841 -1.240 +1.841 -1.240 +2.010 -1.114 +2.159 -0.966 +2.286 -0.798 +2.387 -0.613 +2.461 -0.416 +2.506 -0.210 +2.521 0.000 diff --git a/tofu/version.py b/tofu/version.py index 814916362..ef8f6fc15 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-alpha2-50-g1bd7a6df' +__version__ = '1.4.2-alpha2-51-g67d988bb' From 0e006f99d6d0486b705f7b47e2eb7309370ca8a0 Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Fri, 17 Jan 2020 11:14:15 +0100 Subject: [PATCH 03/12] [Issue281] More robust strategy for input polygons with double points in Struct._checkformat_dgeom() and cleaner error handling in tf.geom._comp._Struct_set_Poly() --- tofu/geom/_comp.py | 5 +++-- tofu/geom/_core.py | 10 +++++++--- tofu/version.py | 2 +- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/tofu/geom/_comp.py b/tofu/geom/_comp.py index 8ddef84bf..a822fcf1a 100644 --- a/tofu/geom/_comp.py +++ b/tofu/geom/_comp.py @@ -62,8 +62,9 @@ def _Struct_set_Poly( Vol, BaryV = None, None else: Vol, BaryV = _GG.Poly_VolAngTor(Poly) - msg = "Pb. with volume computation for Ves object of type 'Tor' !" - assert Vol > 0.0, msg + if Vol <= 0.0: + msg = "Pb. with volume computation for Ves object of type 'Tor' !" + raise Exception(msg) # Compute the non-normalized vector of each side of the Poly Vect = np.diff(Poly, n=1, axis=1) diff --git a/tofu/geom/_core.py b/tofu/geom/_core.py index 123c9fd49..957fae60c 100644 --- a/tofu/geom/_core.py +++ b/tofu/geom/_core.py @@ -436,19 +436,23 @@ def _checkformat_inputs_dgeom( Poly = Poly.T # Elimininate any double identical point - ind = np.sum(np.diff(Poly, axis=1) ** 2, axis=0) < 1.0e-12 + ind = np.sum(np.diff(np.concatenate((Poly, Poly[:, 0:1]), axis=1), + axis=1) ** 2, axis=0) < 1.0e-12 if np.any(ind): npts = Poly.shape[1] + Poly = Poly[:, ~ind] msg = ( "%s instance: double identical points in Poly\n" % cls.__name__ ) msg += " => %s points removed\n" % ind.sum() msg += " => Poly goes from %s to %s points" % ( npts, - npts - ind.sum(), + Poly.shape[1], ) warnings.warn(msg) - Poly = Poly[:, ~ind] + ind = np.sum(np.diff(np.concatenate((Poly, Poly[:, 0:1]), axis=1), + axis=1) ** 2, axis=0) < 1.0e-12 + assert not np.any(ind), ind lC = [Lim is None, pos is None] if not any(lC): diff --git a/tofu/version.py b/tofu/version.py index ef8f6fc15..23253d16e 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-alpha2-51-g67d988bb' +__version__ = '1.4.2-alpha2-52-g8cf3812b' From 6d60c2590564fc197e886e90dd04dea10e5e073c Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Fri, 17 Jan 2020 11:18:17 +0100 Subject: [PATCH 04/12] [Issue281] Moving reference AUG diaggeom coords file to tofu/geom/inputs for archive --- .../geom/inputs/AUG_vessel_20200116.coords | 0 tofu/version.py | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename AUG_vessel_20200116.coords => tofu/geom/inputs/AUG_vessel_20200116.coords (100%) diff --git a/AUG_vessel_20200116.coords b/tofu/geom/inputs/AUG_vessel_20200116.coords similarity index 100% rename from AUG_vessel_20200116.coords rename to tofu/geom/inputs/AUG_vessel_20200116.coords diff --git a/tofu/version.py b/tofu/version.py index 097a74e3e..d24d810bd 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-alpha2-53-g0e006f99' +__version__ = '1.4.2-a5-97-gae6a650a' From 03dfe39a8a8b5e59c703315023963470b75817b1 Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Fri, 17 Jan 2020 13:02:54 +0100 Subject: [PATCH 05/12] [Issue281] Corrected all double points in AUG txt files, still 3 Struct not valid due to bug in _GG.Poly_isClockwise() inducing error on Vol in _GG.Poly_Order(), probably solved by lasofivec on another branch --- tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt | 4 +--- tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt | 13 +------------ tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt | 4 +--- tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt | 4 +--- tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt | 4 +--- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt | 15 +-------------- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt | 4 +--- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt | 7 +------ tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt | 12 +----------- tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt | 4 +--- tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt | 3 +-- tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt | 5 +---- ..._ExpAUG_VESiR.txt => TFG_Ves_ExpAUG_VESiR.txt} | 9 ++------- tofu/version.py | 2 +- 33 files changed, 34 insertions(+), 113 deletions(-) rename tofu/geom/inputs/{TFG_PFC_ExpAUG_VESiR.txt => TFG_Ves_ExpAUG_VESiR.txt} (85%) diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt index 6cb901060..d7bcf6375 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPi.txt @@ -1,7 +1,7 @@ #Name = D2cTPi #Exp = AUG #CLs = PFC -20 0 +18 0 1.281 -0.981 1.282 -0.983 1.283 -0.985 @@ -12,7 +12,6 @@ 1.234 -1.125 1.233 -1.125 1.232 -1.125 -1.232 -1.125 1.231 -1.125 1.230 -1.125 1.217 -1.138 @@ -21,4 +20,3 @@ 1.265 -0.986 1.267 -0.980 1.278 -0.980 -1.281 -0.981 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt index 842645219..2c45ce9a0 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPib.txt @@ -1,12 +1,9 @@ #Name = D2cTPib #Exp = AUG #CLs = PFC -34 0 +23 0 1.249 -0.826 1.250 -0.827 -1.250 -0.827 -1.250 -0.827 -1.250 -0.827 1.259 -0.842 1.266 -0.858 1.273 -0.873 @@ -19,7 +16,6 @@ 1.287 -0.975 1.287 -0.976 1.286 -0.977 -1.286 -0.977 1.285 -0.978 1.284 -0.978 1.283 -0.979 @@ -27,12 +23,5 @@ 1.226 -0.979 1.226 -0.825 1.246 -0.825 -1.246 -0.825 -1.247 -0.825 1.247 -0.825 1.248 -0.826 -1.248 -0.826 -1.248 -0.826 -1.249 -0.826 -1.249 -0.826 -1.249 -0.826 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt index 0dd5d87b1..c1e21e7e8 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cTPic.txt @@ -1,12 +1,11 @@ #Name = D2cTPic #Exp = AUG #CLs = PFC -14 0 +12 0 1.232 -1.125 1.233 -1.126 1.234 -1.128 1.244 -1.142 -1.244 -1.142 1.244 -1.143 1.244 -1.144 1.243 -1.144 @@ -15,4 +14,3 @@ 1.230 -1.126 1.230 -1.125 1.231 -1.125 -1.232 -1.125 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt index 70677dff9..c01783987 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomL.txt @@ -1,7 +1,7 @@ #Name = D2cdomL #Exp = AUG #CLs = PFC -15 0 +14 0 1.280 -1.123 1.280 -1.102 1.280 -1.100 @@ -16,4 +16,3 @@ 1.286 -1.133 1.281 -1.126 1.281 -1.125 -1.280 -1.123 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt index efe931d1c..cce4a8d58 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdomR.txt @@ -1,11 +1,10 @@ #Name = D2CdomR #Exp = AUG #CLs = PFC -16 0 +14 0 1.487 -1.093 1.554 -1.173 1.555 -1.175 -1.555 -1.175 1.555 -1.176 1.555 -1.184 1.555 -1.186 @@ -17,4 +16,3 @@ 1.475 -1.091 1.483 -1.091 1.485 -1.092 -1.487 -1.093 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt index 9ce921cc9..e0637a611 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2cdome.txt @@ -1,7 +1,7 @@ #Name = D2cdome #Exp = AUG #CLs = PFC -15 0 +14 0 1.320 -1.066 1.322 -1.064 1.326 -1.062 @@ -16,4 +16,3 @@ 1.337 -1.090 1.320 -1.068 1.319 -1.067 -1.320 -1.066 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt index f33fea4ba..e1f486f9d 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci1.txt @@ -1,7 +1,7 @@ #Name = D2ci1 #Exp = AUG #CLs = PFC -13 0 +12 0 1.138 -0.658 1.141 -0.659 1.143 -0.660 @@ -14,4 +14,3 @@ 1.165 -0.744 1.117 -0.669 1.136 -0.658 -1.138 -0.658 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt index edbdbf163..127e85d3e 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2ci2.txt @@ -1,7 +1,7 @@ #Name = D2ci2 #Exp = AUG #CLs = PFC -11 0 +10 0 1.187 -0.730 1.188 -0.730 1.189 -0.730 @@ -12,4 +12,3 @@ 1.216 -0.824 1.165 -0.744 1.186 -0.730 -1.187 -0.730 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt index 16e1023b9..aa384395e 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBG2.txt @@ -1,7 +1,7 @@ #Name = D2dBG2 #Exp = AUG #CLs = PFC -29 0 +28 0 1.636 -0.997 1.636 -0.995 1.638 -0.986 @@ -30,4 +30,3 @@ 1.725 -0.875 1.671 -0.998 1.638 -0.998 -1.636 -0.997 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt index 993b43bb9..2c35f270d 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl1.txt @@ -1,7 +1,7 @@ #Name = D2dBl1 #Exp = AUG #CLs = PFC -14 0 +13 0 2.011 -0.560 2.011 -0.559 2.018 -0.548 @@ -15,4 +15,3 @@ 2.013 -0.562 2.012 -0.562 2.011 -0.561 -2.011 -0.560 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt index 7d34fdbdc..1fe40f1b5 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBl3.txt @@ -1,14 +1,13 @@ #Name = D2dBl3 #Exp = AUG #CLs = PFC -15 0 +13 0 1.752 -0.826 1.753 -0.826 1.875 -0.686 1.876 -0.686 1.878 -0.685 1.879 -0.686 -1.879 -0.686 1.939 -0.725 1.901 -0.783 1.870 -0.762 @@ -16,4 +15,3 @@ 1.772 -0.842 1.771 -0.841 1.770 -0.839 -1.752 -0.826 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt index 6535b1cb9..bc98c85f1 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu1.txt @@ -1,28 +1,18 @@ #Name = D2dBu1 #Exp = AUG #CLs = PFC -35 0 +22 0 1.905 0.868 1.904 0.868 -1.904 0.869 -1.903 0.869 1.903 0.869 1.897 0.880 1.896 0.881 -1.896 0.881 -1.896 0.881 1.897 0.882 -1.897 0.882 -1.897 0.882 -1.897 0.883 -1.897 0.883 1.897 0.883 1.897 0.884 1.875 0.921 1.875 0.922 1.875 0.923 -1.875 0.923 -1.875 0.924 1.875 0.924 1.924 0.952 1.925 0.953 @@ -34,6 +24,3 @@ 2.022 0.894 1.949 0.894 1.906 0.869 -1.905 0.868 -1.905 0.868 -1.905 0.868 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt index fd60ed1c4..45fe01d38 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu2.txt @@ -1,7 +1,7 @@ #Name = D2dBu2 #Exp = AUG #CLs = PFC -13 0 +11 0 2.002 0.708 1.905 0.866 1.918 0.874 @@ -13,5 +13,3 @@ 1.996 0.783 2.010 0.792 2.045 0.734 -2.002 0.708 -2.002 0.708 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt index aaf35f1f2..1f97f6fcc 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu3.txt @@ -1,7 +1,7 @@ #Name = D2dBu3 #Exp = AUG #CLs = PFC -12 0 +11 0 2.101 0.547 2.003 0.707 2.046 0.734 @@ -13,4 +13,3 @@ 2.059 0.646 2.061 0.640 2.118 0.547 -2.101 0.547 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt index 0c998d3fd..0dc2a3905 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D2dBu4.txt @@ -1,7 +1,7 @@ #Name = D2dBu4 #Exp = AUG #CLs = PFC -9 0 +8 0 2.121 0.547 2.113 0.559 2.113 0.560 @@ -10,4 +10,3 @@ 2.115 0.562 2.228 0.562 2.228 0.547 -2.121 0.547 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt index 83af9b109..940a5f5f0 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG1.txt @@ -1,7 +1,7 @@ #Name = D3BG1 #Exp = AUG #CLs = PFC -21 0 +20 0 1.579 -1.208 1.635 -0.999 1.639 -0.999 @@ -22,4 +22,3 @@ 1.586 -1.209 1.585 -1.208 1.584 -1.208 -1.579 -1.208 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt index a6d39db7e..5c1ef9ea5 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_D3BG10.txt @@ -1,7 +1,7 @@ #Name = D3BG10 #Exp = AUG #CLs = PFC -20 0 +19 0 1.554 -1.218 1.555 -1.216 1.556 -1.214 @@ -21,4 +21,3 @@ 1.555 -1.222 1.554 -1.222 1.554 -1.220 -1.554 -1.218 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt index 4a5d33a02..27b84c96d 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_ICRHa.txt @@ -1,7 +1,7 @@ #Name = ICRHa #Exp = AUG #CLs = PFC -62 0 +61 0 2.002 -0.524 1.997 -0.523 1.994 -0.520 @@ -63,4 +63,3 @@ 2.126 0.531 2.900 0.531 2.900 -0.524 -2.002 -0.524 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt index 1ca6d8b71..9d721bd98 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_LIM09.txt @@ -1,7 +1,7 @@ #Name = LIM09 #Exp = AUG #CLs = PFC -9 0 +8 0 1.095 -0.760 1.095 -0.680 1.073 -0.680 @@ -10,4 +10,3 @@ 1.000 -0.725 1.073 -0.725 1.073 -0.760 -1.095 -0.760 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt index 4a2e75d53..b68e9f31f 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_PClow.txt @@ -1,11 +1,10 @@ #Name = PClow #Exp = AUG #CLs = PFC -7 0 +6 0 1.877 -0.874 1.877 -0.864 2.075 -0.562 2.158 -0.562 2.158 -0.582 1.966 -0.874 -1.877 -0.874 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt index 3f2b85d19..5d1739a13 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_PCup.txt @@ -1,11 +1,10 @@ #Name = PCup #Exp = AUG #CLs = PFC -7 0 +6 0 2.151 0.562 1.966 0.865 1.966 0.874 2.054 0.874 2.233 0.582 2.233 0.562 -2.151 0.562 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt index 2717e6f9f..e589b22a5 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_SBi.txt @@ -1,7 +1,7 @@ #Name = SBi #Exp = AUG #CLs = PFC -43 0 +42 0 1.100 -0.584 1.085 -0.517 1.072 -0.450 @@ -44,4 +44,3 @@ 1.083 -0.448 1.097 -0.515 1.112 -0.582 -1.100 -0.584 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt index 6769177f9..a4043bd4f 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT1.txt @@ -1,7 +1,7 @@ #Name = TPLT1 #Exp = AUG #CLs = PFC -18 0 +17 0 1.500 1.185 1.336 1.093 1.335 1.093 @@ -19,4 +19,3 @@ 1.503 1.190 1.503 1.188 1.502 1.186 -1.500 1.185 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt index 3b69ecb92..984b2ab57 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT2.txt @@ -1,7 +1,7 @@ #Name = TPLT2 #Exp = AUG #CLs = PFC -13 0 +12 0 1.331 1.087 1.288 1.031 1.287 1.030 @@ -14,4 +14,3 @@ 1.332 1.092 1.332 1.090 1.332 1.089 -1.331 1.087 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt index 57c417a0f..bf32069a5 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT3.txt @@ -1,7 +1,7 @@ #Name = TPLT3 #Exp = AUG #CLs = PFC -16 0 +15 0 1.282 1.023 1.242 0.969 1.240 0.967 @@ -17,4 +17,3 @@ 1.283 1.028 1.283 1.026 1.283 1.024 -1.282 1.023 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt index a77058aa3..311c8f465 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT4.txt @@ -1,7 +1,7 @@ #Name = TPLT4 #Exp = AUG #CLs = PFC -28 0 +23 0 1.237 0.958 1.208 0.891 1.207 0.891 @@ -10,23 +10,18 @@ 1.206 0.889 1.205 0.889 1.204 0.888 -1.204 0.888 1.203 0.888 1.202 0.888 1.201 0.889 1.200 0.889 -1.200 0.889 1.166 0.915 1.209 0.973 1.234 0.965 -1.234 0.965 1.235 0.965 1.235 0.964 1.236 0.964 1.236 0.963 1.237 0.962 1.237 0.961 -1.237 0.961 1.237 0.960 1.237 0.959 -1.237 0.958 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt index 99a837fcc..d6429e985 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPLT5.txt @@ -1,24 +1,18 @@ #Name = TPLT5 #Exp = AUG #CLs = PFC -32 0 +22 0 1.203 0.881 1.180 0.820 1.179 0.818 -1.179 0.818 -1.178 0.816 1.178 0.816 1.167 0.802 -1.167 0.802 -1.166 0.801 1.166 0.801 1.165 0.800 1.164 0.800 1.163 0.800 1.162 0.800 1.161 0.800 -1.161 0.800 -1.160 0.801 1.160 0.801 1.119 0.832 1.142 0.861 @@ -26,11 +20,7 @@ 1.165 0.914 1.201 0.886 1.202 0.886 -1.202 0.886 1.203 0.885 1.203 0.884 1.203 0.883 1.203 0.882 -1.203 0.882 -1.203 0.881 -1.203 0.881 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt index e4c317a4f..5b5f14f58 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT2.txt @@ -1,7 +1,7 @@ #Name = TPRT2 #Exp = AUG #CLs = PFC -31 0 +29 0 1.863 0.941 1.775 1.071 1.774 1.073 @@ -31,5 +31,3 @@ 1.868 0.938 1.866 0.938 1.865 0.939 -1.863 0.941 -1.863 0.941 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt index 0b8274312..c7dfe9d19 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT3.txt @@ -1,7 +1,7 @@ #Name = TPRT3 #Exp = AUG #CLs = PFC -15 0 +14 0 1.796 1.082 1.729 1.106 1.727 1.107 @@ -16,4 +16,3 @@ 1.800 1.082 1.799 1.081 1.797 1.081 -1.796 1.082 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt index fa10349c3..c077d5ef8 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT4.txt @@ -1,7 +1,7 @@ #Name = TPRT4 #Exp = AUG #CLs = PFC -13 0 +12 0 1.718 1.109 1.651 1.134 1.650 1.135 @@ -14,4 +14,3 @@ 1.724 1.111 1.722 1.110 1.720 1.109 -1.718 1.109 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt index 9521a46f4..20df8a9ed 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt +++ b/tofu/geom/inputs/TFG_PFC_ExpAUG_TPRT5.txt @@ -1,7 +1,7 @@ #Name = TPRT5 #Exp = AUG #CLs = PFC -19 0 +16 0 1.644 1.137 1.509 1.190 1.508 1.191 @@ -13,11 +13,8 @@ 1.493 1.204 1.493 1.205 1.493 1.206 -1.493 1.206 1.501 1.217 1.655 1.161 1.646 1.138 1.646 1.137 1.645 1.137 -1.644 1.137 -1.644 1.137 diff --git a/tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt b/tofu/geom/inputs/TFG_Ves_ExpAUG_VESiR.txt similarity index 85% rename from tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt rename to tofu/geom/inputs/TFG_Ves_ExpAUG_VESiR.txt index 1c9e26339..cb8ca007d 100644 --- a/tofu/geom/inputs/TFG_PFC_ExpAUG_VESiR.txt +++ b/tofu/geom/inputs/TFG_Ves_ExpAUG_VESiR.txt @@ -1,7 +1,7 @@ #Name = VESiR #Exp = AUG -#CLs = PFC -41 0 +#CLs = Ves +36 0 2.521 0.000 2.506 0.210 2.461 0.416 @@ -10,7 +10,6 @@ 2.159 0.966 2.010 1.114 1.841 1.240 -1.841 1.240 1.705 1.303 1.558 1.329 1.409 1.315 @@ -19,14 +18,12 @@ 1.052 1.062 0.990 0.927 0.965 0.779 -0.965 0.779 0.957 0.519 0.953 0.260 0.951 0.000 0.953 -0.260 0.957 -0.519 0.965 -0.779 -0.965 -0.779 0.990 -0.927 1.052 -1.062 1.147 -1.177 @@ -35,11 +32,9 @@ 1.558 -1.329 1.705 -1.303 1.841 -1.240 -1.841 -1.240 2.010 -1.114 2.159 -0.966 2.286 -0.798 2.387 -0.613 2.461 -0.416 2.506 -0.210 -2.521 0.000 diff --git a/tofu/version.py b/tofu/version.py index d24d810bd..ee309c828 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-a5-97-gae6a650a' +__version__ = '1.4.2-a5-98-g6d60c259' From 483793267d7b1b1a748c054e8ba1e8044cb22412 Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Fri, 17 Jan 2020 13:28:38 +0100 Subject: [PATCH 06/12] [Issue281] Added 'AUG-V1' and shortcut 'AUG' to predefined config, but 3 txt files still not loaded due to bug in _GG. tf.geom.utils.create_Config() more robust vs Struct that can't be loaded (warnings not fatal) --- tofu/geom/utils.py | 47 ++++++++++++++++++++++++++++++++++++---------- tofu/version.py | 2 +- 2 files changed, 38 insertions(+), 11 deletions(-) diff --git a/tofu/geom/utils.py b/tofu/geom/utils.py index 8bc170ea5..67c8cdc2d 100644 --- a/tofu/geom/utils.py +++ b/tofu/geom/utils.py @@ -642,6 +642,7 @@ def _compute_CamLOS2D_pinhole(P=None, F=0.1, D12=0.1, N12=100, _ExpWest = 'WEST' _ExpJET = 'JET' _ExpITER = 'ITER' +_ExpAUG = 'AUG' _ExpNSTX = 'NSTX' # Dictionnary of unique config names @@ -676,6 +677,16 @@ def _compute_CamLOS2D_pinhole(P=None, F=0.1, D12=0.1, N12=100, 'BLK16', 'BLK17', 'BLK18', 'Div1', 'Div2', 'Div3', 'Div4', 'Div5', 'Div6']}, + 'AUG-V1': {'Exp': _ExpAUG, + 'Ves': ['VESiR'], + 'PFC': ['D2cdome', 'D2cdomL', 'D2cdomR', 'D2ci1', + 'D2ci2', 'D2cTPib', 'D2cTPic', 'D2cTPi', + 'D2dBG2', 'D2dBl1', 'D2dBl2', 'D2dBl3', + 'D2dBu1', 'D2dBu2', 'D2dBu3', 'D2dBu4', + 'D3BG10', 'D3BG1', 'ICRHa', 'LIM09', 'PClow', + 'PCup', 'SBi', 'TPLT1', 'TPLT2', 'TPLT3', + 'TPLT4', 'TPLT5', 'TPRT2', 'TPRT3', 'TPRT4', + 'TPRT5']}, 'NSTX-V0': {'Exp': _ExpNSTX, 'Ves': ['V0']} } @@ -693,6 +704,7 @@ def _compute_CamLOS2D_pinhole(P=None, F=0.1, D12=0.1, N12=100, 'B2': 'WEST-V3', 'B3': 'WEST-V4', 'B4': 'ITER-V2', + 'AUG': 'AUG-V1', 'NSTX': 'NSTX-V0'} # Default config @@ -739,20 +751,35 @@ def _create_config_testcase(config=None, returnas='object', for cc in lcls: for ss in dconfig[config][cc]: ff = [f for f in lf - if all([s in f for s in [cc,Exp,ss]])] - if not len(ff) == 1: - msg = "No / several matching files\n" + if all([s in f for s in [cc, Exp, ss]])] + if len(ff) == 0: + msg = "No matching files\n" msg += " Folder: %s\n"%path msg += " Criteria: [%s, %s]\n"%(cc,ss) msg += " Matching: "+"\n ".join(ff) raise Exception(msg) - pfe = os.path.join(path,ff[0]) - obj = eval('_core.'+cc).from_txt(pfe, Name=ss, Type='Tor', - Exp=dconfig[config]['Exp'], - out=returnas) - if returnas not in ['object', object]: - obj = ((ss,{'Poly':obj[0], 'pos':obj[1], 'extent':obj[2]}),) - lS.append(obj) + elif len(ff) > 1: + # More demanding criterion + ssbis, Expbis = '_'+ss+'.txt', '_Exp'+Exp+'_' + ff = [fff for fff in ff if ssbis in fff and Expbis in fff] + if len(ff) != 1: + msg = "No / several matching files\n" + msg += " Folder: %s\n"%path + msg += " Criteria: [%s, %s]\n"%(cc,ss) + msg += " Matching: "+"\n ".join(ff) + raise Exception(msg) + + pfe = os.path.join(path, ff[0]) + try: + obj = eval('_core.'+cc).from_txt(pfe, Name=ss, Type='Tor', + Exp=dconfig[config]['Exp'], + out=returnas) + if returnas not in ['object', object]: + obj = ((ss,{'Poly':obj[0], 'pos':obj[1], 'extent':obj[2]}),) + lS.append(obj) + except Exception as err: + msg = "Could not be loaded: {}".format(ff[0]) + warnings.warn(msg) if returnas == 'dict': conf = dict([tt for tt in lS]) else: diff --git a/tofu/version.py b/tofu/version.py index ee309c828..e1ff23f43 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-a5-98-g6d60c259' +__version__ = '1.4.2-a5-99-g03dfe39a' From ebd494b5949c16d562eccfda7dd9c4d439aecfe5 Mon Sep 17 00:00:00 2001 From: Laura Mendoza Date: Tue, 21 Jan 2020 20:37:55 +0100 Subject: [PATCH 07/12] [bf #331] raising exceptions when poly ill defined --- tofu/geom/_GG.pyx | 36 +++++++++++++++++++---------- tofu/geom/_basic_geom_tools.pxd | 1 + tofu/geom/_basic_geom_tools.pyx | 2 ++ tofu/geom/_comp.py | 9 +++++--- tofu/geom/_core.py | 40 +++++++++++++++++++-------------- 5 files changed, 56 insertions(+), 32 deletions(-) diff --git a/tofu/geom/_GG.pyx b/tofu/geom/_GG.pyx index 24dbd4dc2..26e5baeb8 100644 --- a/tofu/geom/_GG.pyx +++ b/tofu/geom/_GG.pyx @@ -188,16 +188,14 @@ def CoordShift(Pts, In='(X,Y,Z)', Out='(R,Z)', CrossRef=None): def Poly_isClockwise(np.ndarray[double,ndim=2] Poly): """ Assuming 2D closed Poly ! - TODO @LM : http://www.faqs.org/faqs/graphics/algorithms-faq/ - A slightly faster method is based on the observation that it isn't - necessary to compute the area. Find the lowest vertex (or, if - there is more than one vertex with the same lowest coordinate, - the rightmost of those vertices) and then take the cross product - of the edges fore and aft of it. Both methods are O(n) for n vertices, - but it does seem a waste to add up the total area when a single cross - product (of just the right edges) suffices. Code for this is - available at ftp://cs.smith.edu/pub/code/polyorient.C (2K). + Find the lowest vertex (or, if there is more than one vertex with + the same lowest coordinate, the rightmost of those vertices) and then + take the cross product of the edges before and after it. + Both methods are O(n) for n vertices, but it does seem a waste to add up + the total area when a single cross product (of just the right edges) + suffices. Code for this is available at + ftp://cs.smith.edu/pub/code/polyorient.C (2K). """ cdef double res cdef double[:,::1] mv_poly = np.ascontiguousarray(Poly) @@ -206,12 +204,23 @@ def Poly_isClockwise(np.ndarray[double,ndim=2] Poly): cdef double[::1] mvy = mv_poly[1,:] cdef int idmin = _bgt.find_ind_lowerright_corner(mvx, mvy, npts) cdef int idm1 = idmin - 1 - cdef int idp1 = (idmin + 1)%npts + cdef int idp1 = (idmin + 1) % npts + cdef str err_msg = "" if idmin == 0 : idm1 = npts - 1 res = mvx[idm1] * (mvy[idmin] - mvy[idp1]) + \ mvx[idmin] * (mvy[idp1] - mvy[idm1]) + \ mvx[idp1] * (mvy[idm1] - mvy[idmin]) + if abs(res) < _VSMALL: + err_msg += ("In Poly_isClockwise : \n" + + " Found lowest right point at index : " + + str(idmin) + + ", of coordinates :" + str(mvx[idmin]) + + ", " + str(mvy[idmin]) + ".\n" + + " The two neighboring points are : " + + str(idm1) + " and " + str(idp1) + ".") + print(err_msg) + raise Exception(err_msg) # not working return res < 0. @@ -274,8 +283,11 @@ def Poly_Order(np.ndarray[double,ndim=2] Poly, str order='C', Clock=False, if not np.allclose(poly[:,0],poly[:,-1], atol=_VSMALL): poly = np.concatenate((poly,poly[:,0:1]),axis=1) if poly.shape[0]==2 and not Clock is None: - if not Clock==Poly_isClockwise(poly): - poly = poly[:,::-1] + try: + if not Clock==Poly_isClockwise(poly): + poly = poly[:,::-1] + except Exception as excp: + raise excp if not close: poly = poly[:,:-1] if layout.lower()=='(n,cc)': diff --git a/tofu/geom/_basic_geom_tools.pxd b/tofu/geom/_basic_geom_tools.pxd index 99c5bb054..d61936605 100644 --- a/tofu/geom/_basic_geom_tools.pxd +++ b/tofu/geom/_basic_geom_tools.pxd @@ -1,6 +1,7 @@ # cython: boundscheck=False # cython: wraparound=False # cython: cdivision=True +# cython: initializedcheck=False # ################################################################################ # Utility functions for basic geometry : diff --git a/tofu/geom/_basic_geom_tools.pyx b/tofu/geom/_basic_geom_tools.pyx index edcb4f502..ba99e1dce 100644 --- a/tofu/geom/_basic_geom_tools.pyx +++ b/tofu/geom/_basic_geom_tools.pyx @@ -1,6 +1,8 @@ # cython: boundscheck=False # cython: wraparound=False # cython: cdivision=True +# cython: initializedcheck=False +# cimport cython from cython.parallel import prange diff --git a/tofu/geom/_comp.py b/tofu/geom/_comp.py index 5725d26ae..a00cb020d 100644 --- a/tofu/geom/_comp.py +++ b/tofu/geom/_comp.py @@ -34,9 +34,12 @@ def _Struct_set_Poly( """ Compute geometrical attributes of a Struct object """ # Make Poly closed, counter-clockwise, with '(cc,N)' layout and arrayorder - Poly = _GG.Poly_Order( - Poly, order="C", Clock=False, close=True, layout="(cc,N)", Test=True - ) + try: + Poly = _GG.Poly_Order( + Poly, order="C", Clock=False, close=True, layout="(cc,N)", Test=True + ) + except Exception as excp: + print(excp) assert Poly.shape[0] == 2, "Arg Poly must be a 2D polygon !" fPfmt = np.ascontiguousarray if arrayorder == "C" else np.asfortranarray diff --git a/tofu/geom/_core.py b/tofu/geom/_core.py index 4bacd3755..fc4c2c8bf 100644 --- a/tofu/geom/_core.py +++ b/tofu/geom/_core.py @@ -2203,8 +2203,8 @@ def _get_largs_dsino(): def _checkformat_inputs_Struct(self, struct, err=True): assert issubclass(struct.__class__, Struct) - C0 = struct.Id.Exp==self.Id.Exp - C1 = struct.Id.Type==self.Id.Type + C0 = struct.Id.Exp == self.Id.Exp + C1 = struct.Id.Type == self.Id.Type C2 = struct.Id.Name.isidentifier() C2 = C2 and '_' not in struct.Id.Name msgi = None @@ -3134,7 +3134,6 @@ def plot_phithetaproj_dist(self, refpt=None, ntheta=None, nphi=None, tit=tit, wintit=wintit, invertx=invertx, draw=draw) - def isInside(self, pts, In="(X,Y,Z)", log="any"): """ Return a 2D array of bool @@ -3728,7 +3727,7 @@ def _checkformat_inputs_dgeom(self, dgeom=None): if (isinstance(dgeom, self._dcases[k]['type']) and all([kk in dgeom.keys() # noqa for kk in self._dcases[k]['lk']]))] - if not len(lC)==1: + if not len(lC) == 1: lstr = [v['lk'] for v in self._dcases.values()] msg = "Arg dgeom must be either:\n" msg += " - dict with keys:\n" @@ -4141,7 +4140,8 @@ def _complete_dX12(self, dgeom): k = np.sum(DDb*(u - np.sqrt(sca2)*dgeom['u'][:, 1:]), axis=0) k = k / (1.0-sca2) - if k[0] > 0 and np.allclose(k, k[0], atol=1.e-3, rtol=1.e-6): + if k[0] > 0 and np.allclose(k, k[0], atol=1.e-3, + rtol=1.e-6): pinhole = dgeom['D'][:, 0] + k[0]*u[:, 0] dgeom['pinhole'] = pinhole @@ -5033,8 +5033,8 @@ def D(self): @property def u(self): - if (self._dgeom['u'] is not None - and self._dgeom['u'].shape[1] == self._dgeom['nRays']): + if self._dgeom['u'] is not None \ + and self._dgeom['u'].shape[1] == self._dgeom['nRays']: u = self._dgeom['u'] elif self.isPinhole: u = self._dgeom['pinhole'][:, None] - self._dgeom['D'] @@ -5127,7 +5127,7 @@ def _isLOS(cls): def _check_indch(self, ind, out=int): if ind is not None: ind = np.asarray(ind) - assert ind.ndim==1 + assert ind.ndim == 1 assert ind.dtype in [np.int64, np.bool_, np.long] if ind.dtype == np.bool_: assert ind.size == self.nRays @@ -5574,17 +5574,17 @@ def _kInOut_Isoflux_inputs_usr(self, lPoly, lVIn=None): if type(lPoly) is list: for ii in range(nPoly): # Check closed and anti-clockwise - if _GG.Poly_isClockwise(lPoly[ii]): - lPoly[ii] = lPoly[ii][:, ::-1] if not np.allclose(lPoly[ii][:, 0], lPoly[ii][:, -1]): lPoly[ii] = np.concatenate( (lPoly[ii], lPoly[ii][:, 0:1]), axis=-1 ) + try: + if _GG.Poly_isClockwise(lPoly[ii]): + lPoly[ii] = lPoly[ii][:, ::-1] + except Exception as excp: + print("For structure ", ii, " : ", excp) else: - for ii in range(nPoly): - # Check closed and anti-clockwise - if _GG.Poly_isClockwise(lPoly[ii]): - lPoly[ii] = lPoly[ii][:, ::-1] + # Check closed and anti-clockwise d = np.sum((lPoly[:, :, 0]-lPoly[:, :, -1])**2, axis=1) if np.allclose(d, 0.): pass @@ -5593,6 +5593,12 @@ def _kInOut_Isoflux_inputs_usr(self, lPoly, lVIn=None): else: msg = "All poly in lPoly should be closed or all non-closed!" raise Exception(msg) + for ii in range(nPoly): + try: + if _GG.Poly_isClockwise(lPoly[ii]): + lPoly[ii] = lPoly[ii][:, ::-1] + except Exception as excp: + print("For structure ", ii, " : ", excp) # Check lVIn if lVIn is None: @@ -5663,14 +5669,14 @@ def calc_kInkOut_Isoflux(self, lPoly, lVIn=None, Lim=None, # Compute intersections assert(self._method in ['ref', 'optimized']) - if self._method=='ref': + if self._method == 'ref': for ii in range(0, nPoly): largs, dkwd = self._kInOut_Isoflux_inputs([lPoly[ii]], lVIn=[lVIn[ii]]) out = _GG.SLOW_LOS_Calc_PInOut_VesStruct(*largs, **dkwd) # PIn, POut, kin, kout, VperpIn, vperp, IIn, indout = out[] kIn[ii, :], kOut[ii, :] = out[2], out[3] - elif self._method=="optimized": + elif self._method == "optimized": for ii in range(0, nPoly): largs, dkwd = self._kInOut_Isoflux_inputs([lPoly[ii]], lVIn=[lVIn[ii]]) @@ -6900,7 +6906,7 @@ def get_summary( # Prepare kout = self._dgeom["kOut"] indout = self._dgeom["indout"] - lS = self._dconfig["Config"].lStruct + # lS = self._dconfig["Config"].lStruct angles = np.arccos(-np.sum(self.u*self.dgeom['vperp'], axis=0)) # ar0 From a0f432bb0c53b33a591c1db6be62df7a689d3d9a Mon Sep 17 00:00:00 2001 From: Laura Mendoza Date: Tue, 21 Jan 2020 20:45:31 +0100 Subject: [PATCH 08/12] [bf #331] black changes --- tofu/geom/_comp.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tofu/geom/_comp.py b/tofu/geom/_comp.py index a00cb020d..667aac2ae 100644 --- a/tofu/geom/_comp.py +++ b/tofu/geom/_comp.py @@ -35,9 +35,8 @@ def _Struct_set_Poly( # Make Poly closed, counter-clockwise, with '(cc,N)' layout and arrayorder try: - Poly = _GG.Poly_Order( - Poly, order="C", Clock=False, close=True, layout="(cc,N)", Test=True - ) + Poly = _GG.Poly_Order(Poly, order="C", Clock=False, close=True, + layout="(cc,N)", Test=True) except Exception as excp: print(excp) assert Poly.shape[0] == 2, "Arg Poly must be a 2D polygon !" From 9b83143d97bcf1c3af960d4c5b7cd4853655d9d4 Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Wed, 22 Jan 2020 11:29:35 +0100 Subject: [PATCH 09/12] [Issue281_fork] Sligtly more explicit error message --- tofu/geom/_comp.py | 7 +++++-- tofu/version.py | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/tofu/geom/_comp.py b/tofu/geom/_comp.py index 667aac2ae..a138d34d4 100644 --- a/tofu/geom/_comp.py +++ b/tofu/geom/_comp.py @@ -64,8 +64,11 @@ def _Struct_set_Poly( else: Vol, BaryV = _GG.Poly_VolAngTor(Poly) if Vol <= 0.0: - msg = "Pb. with volume computation for Ves object of type 'Tor' !" - msg = "\n Here Volume = " + str(Vol) + msg = ("Pb. with volume computation for Struct of type 'Tor' !\n" + + "\t- Vol = {}\n".format(Vol) + + "\t- Poly = {}\n\n".format(str(Poly)) + + " => Probably corrupted polygon\n" + + " => Please check polygon is not self-intersecting") raise Exception(msg) # Compute the non-normalized vector of each side of the Poly diff --git a/tofu/version.py b/tofu/version.py index e2eec41d8..2449f6818 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2-a5-113-gcbcc34c7' +__version__ = '1.4.2b13-65-ga0f432bb' From 967e02a6ddbcc900db16b19979defbb5483924d0 Mon Sep 17 00:00:00 2001 From: Laura Mendoza Date: Wed, 22 Jan 2020 13:49:33 +0100 Subject: [PATCH 10/12] [bf #331] corrected last point index when lowest right is 0 --- tofu/geom/_GG.pyx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tofu/geom/_GG.pyx b/tofu/geom/_GG.pyx index 26e5baeb8..ae17ef8c5 100644 --- a/tofu/geom/_GG.pyx +++ b/tofu/geom/_GG.pyx @@ -207,7 +207,7 @@ def Poly_isClockwise(np.ndarray[double,ndim=2] Poly): cdef int idp1 = (idmin + 1) % npts cdef str err_msg = "" if idmin == 0 : - idm1 = npts - 1 + idm1 = npts - 2 res = mvx[idm1] * (mvy[idmin] - mvy[idp1]) + \ mvx[idmin] * (mvy[idp1] - mvy[idm1]) + \ mvx[idp1] * (mvy[idm1] - mvy[idmin]) From 8d67f90d284657934882d588c8a4eea715b53ebd Mon Sep 17 00:00:00 2001 From: Laura Mendoza Date: Wed, 22 Jan 2020 16:08:00 +0100 Subject: [PATCH 11/12] [bf #331] checking if poly is in wrong order in isclockwise --- tofu/geom/_GG.pyx | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/tofu/geom/_GG.pyx b/tofu/geom/_GG.pyx index ae17ef8c5..c99f4488d 100644 --- a/tofu/geom/_GG.pyx +++ b/tofu/geom/_GG.pyx @@ -200,14 +200,27 @@ def Poly_isClockwise(np.ndarray[double,ndim=2] Poly): cdef double res cdef double[:,::1] mv_poly = np.ascontiguousarray(Poly) cdef int npts = mv_poly.shape[1] - cdef double[::1] mvx = mv_poly[0,:] - cdef double[::1] mvy = mv_poly[1,:] - cdef int idmin = _bgt.find_ind_lowerright_corner(mvx, mvy, npts) - cdef int idm1 = idmin - 1 - cdef int idp1 = (idmin + 1) % npts + cdef int ndim = mv_poly.shape[0] + cdef double[::1] mvx + cdef double[::1] mvy + cdef int idmin + cdef int idm1 + cdef int idp1 cdef str err_msg = "" + # Checking that Poly wasn't given in the shape (npts, ndim) + if ndim > npts: + mv_poly = np.ascontiguousarray(Poly.T) + npts = mv_poly.shape[1] + ndim = mv_poly.shape[0] + mvx = mv_poly[0,:] + mvy = mv_poly[1,:] + # Getting index of lower right corner and its neighbors + idmin = _bgt.find_ind_lowerright_corner(mvx, mvy, npts) + idm1 = idmin - 1 + idp1 = (idmin + 1) % npts if idmin == 0 : idm1 = npts - 2 + # Computing area of lower right triangle res = mvx[idm1] * (mvy[idmin] - mvy[idp1]) + \ mvx[idmin] * (mvy[idp1] - mvy[idm1]) + \ mvx[idp1] * (mvy[idm1] - mvy[idmin]) @@ -219,7 +232,6 @@ def Poly_isClockwise(np.ndarray[double,ndim=2] Poly): + ", " + str(mvy[idmin]) + ".\n" + " The two neighboring points are : " + str(idm1) + " and " + str(idp1) + ".") - print(err_msg) raise Exception(err_msg) # not working return res < 0. From c10784e56add75fe7d8bca568f372e76369b1980 Mon Sep 17 00:00:00 2001 From: VEZINET Didier Date: Thu, 23 Jan 2020 16:50:39 +0100 Subject: [PATCH 12/12] [Issue281] PEP8 Compliance --- tofu/geom/utils.py | 11 ++++++----- tofu/version.py | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/tofu/geom/utils.py b/tofu/geom/utils.py index 90a2d52f0..f880fd889 100644 --- a/tofu/geom/utils.py +++ b/tofu/geom/utils.py @@ -819,10 +819,10 @@ def _create_config_testcase(config=None, returnas='object', ssbis, Expbis = '_'+ss+'.txt', '_Exp'+Exp+'_' ff = [fff for fff in ff if ssbis in fff and Expbis in fff] if len(ff) != 1: - msg = "No / several matching files\n" - msg += " Folder: %s\n"%path - msg += " Criteria: [%s, %s]\n"%(cc,ss) - msg += " Matching: "+"\n ".join(ff) + msg = ("No / several matching files\n" + + " Folder: {}\n".format(path) + + " Criteria: [{}, {}]\n".format(cc, ss) + + " Matching: "+"\n ".join(ff)) raise Exception(msg) pfe = os.path.join(path, ff[0]) @@ -831,7 +831,8 @@ def _create_config_testcase(config=None, returnas='object', Exp=dconfig[config]['Exp'], out=returnas) if returnas not in ['object', object]: - obj = ((ss,{'Poly':obj[0], 'pos':obj[1], 'extent':obj[2]}),) + obj = ((ss, {'Poly': obj[0], + 'pos': obj[1], 'extent': obj[2]}),) lS.append(obj) except Exception as err: msg = "Could not be loaded: {}".format(ff[0]) diff --git a/tofu/version.py b/tofu/version.py index 2449f6818..1775fee64 100644 --- a/tofu/version.py +++ b/tofu/version.py @@ -1,2 +1,2 @@ # Do not edit, pipeline versioning governed by git tags! -__version__ = '1.4.2b13-65-ga0f432bb' +__version__ = '1.4.2b13-70-gf5b8d06e'