From 04da497568d886a723d62a546713032e7fe3714f Mon Sep 17 00:00:00 2001 From: Julien Hillairet Date: Wed, 27 Mar 2024 20:42:10 +0100 Subject: [PATCH 1/2] update notebooks --- doc/automatic_matching_control_loop.png | Bin 0 -> 78284 bytes doc/chart_manual_matching.ipynb | 2 +- doc/digital_twin.ipynb | 58 ++++-------------------- doc/introduction.ipynb | 24 +++++----- doc/tutorial_matching_automatic.ipynb | 4 +- doc/tutorial_matching_manual.ipynb | 37 +++++++++------ west_ic_antenna/digital_twin.py | 8 ++-- 7 files changed, 51 insertions(+), 82 deletions(-) create mode 100644 doc/automatic_matching_control_loop.png diff --git a/doc/automatic_matching_control_loop.png b/doc/automatic_matching_control_loop.png new file mode 100644 index 0000000000000000000000000000000000000000..05a8b511a24bfb28a0823de661b5d6924ec60ab3 GIT binary patch literal 78284 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%0DCL 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�{M^Gsun#MI(YB3-B=M@J#Lb#p z*PT!ZQqW zuGJdfS)rCRQI0=TA+8AGfp_*F%F2lTHT$tgaXg_n!eEvx0AoZiS>a8TK&}~V#T8ad zowsVI1ira$Wcc+l0~NqiL}$XrIznleWl5RA_Zslhq0qb3q~?b;(x#BWR7laFx+?8 zNYm@TI7ma|blS7cdrv31jpgS5YBlPEn;(Skg+ADreF8bISX-SRBez1e{WH^8j9A~~ z|H-_q6Lu}Z^n|at)53X6^w|P_d|7$1Q{o#cgY}ASFLQ*vL032;8v2jL-&fOOcoTYP zI3yO||J$r9@seA8*bBo%?JcMQWY2UOvI2D%^#He4GB_dT*`(#U9_TkSJ`fbZUQW<| zeWZjp8%bk&frpB$ja%jqY1bt02>$W!iut9h@cGU<0odc1 zveV@II1~2JI-7!6L!$GeB(8aT6l}0G#>h&+n(scZm+BV&q5kQT)o89l^;m_ZifGW2 z;7cE#mAZWFEA3red(}}WL}VbA8V_3yvL_9nSz-eMG$`!P@?bZ3HMkz@B;|C|q1Y+- zrM3jQ;pXH0Pb5q}WIHRK)!{CZ%>x57Kn9E>Z3i8Qn`3LcWSdhh+g0s7SL&B~aL!w2 z3Wi;9IoAX2h`54(!7Ydjs6O^4KPG*MmNwuHE>|8a)HuFXu=m$B8PXNR(;ky`(>x>Zo_y7JSar18sI0N_4(o<`m0Tows&Pz*$D9w2F!t@Ps~?RbES{%$ z@t15IM7=|PQ!{6GWc!A>ji`KFzNBY@(hy}CrjML70wSB>I?sXxF~K^fV4-y1<>2*{s}mG>EC z!N%-0CxZYrFDgwh{L`E}Hnkr7f;e4XYhWny=MJE_AW7J}Kpag_ql{X(;T2adk&xmOzr3e0<7Y0*9@fIfJKJFtY{esT zWkm&)d%7~tWxGGN+W?mzx@G@uP0G6Gvuq(wkQ>iZhcS};1bG&3?^#CWY`0=IHtQ^i za08Sp-wtT3Ss*{^1xYfvB0~U`xCjy$Y6S>1?dLKXt-4-FK}=i-gXvZZNXAKVml>|E zf}Rj{IqiI)6yX^JYH<|3gIl0}qXM>Tcdv5C@IWxnWSan>xBzC`@5WJAjK0(gU~rBC zp;oOF55i>vv=9tQiz5)N;@-I05HM3h{|;nvVQ??Ovf8Wm~ef$pXgsH=>5!0N1J)FfRfM;_L6-rb@s^Il!+II#*fd zYgAzLZ0`Oh=7B}wK1|>-ZGcL6u1ZuC1To=w5V?bb?tu;<>V{Q-%2*&AFZu1-u@phd zb5P0;4Gd>CbzRj)C?n~YtUC%!zn>!jY;UtO&fd>gt-MT*zR&@;;Mksz*B`8&YxWl1gH zTvhM?!669XAUc>ERpg$%|7C1JVr+sS$<5cQpyj}&DglHKAP)Urr2e)efEzTvjgaHn zzpO^7tYWkO;W-ao@LIwG0Cf?vhvW=^euE2gOgE-vnvZ=gaoIpXK7kn~RAi)4C7T~K z1OxbQ-V9DH#Pyi4zWNzLi2!&`Js^1M9DugA2ZMVU1WyUwE-)HFvl!XKM&uZS{GEAy zaU(WXquvTf!m2LHrB0sZT#=UyRik(}fh>u_?o?(q_0`2PZvbRs)0>%%0%Xq=V3f=Z zVWz-<+TzoW*wII9EyAercw^LB2TgvlKcUyA_=3Qf2IE)1ED&%83ycQq`(M(PUGl$K z2bf|UyJQe6lo?%>ukJq)$aFuxq\n", - "
\n", - " Figure\n", - "
\n", - " \n", - " \n", - " " - ], - "text/plain": [ - "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "DigitalTwin()" ] @@ -113,7 +75,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.6" + "version": "3.11.7" }, "toc": { "base_numbering": 1, diff --git a/doc/introduction.ipynb b/doc/introduction.ipynb index 3efa561..bc14ff2 100644 --- a/doc/introduction.ipynb +++ b/doc/introduction.ipynb @@ -20,15 +20,6 @@ "## WEST IC antenna Python RF Model" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%matplotlib notebook" - ] - }, { "cell_type": "code", "execution_count": null, @@ -183,7 +174,7 @@ "source": [ "f_match = 54e6\n", "C_match_left = antenna.match_one_side(f_match=f_match, \n", - " side='right', solution_number=1)" + " side='left', solution_number=1)" ] }, { @@ -363,6 +354,13 @@ "ax[1].legend(('I1','I2','I3','I4'))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The voltage and current values are of course not realistic, because the antenna is radiating on vacuum here, not on plasma." + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -370,9 +368,9 @@ "## Impedance at the T-junction\n", "The WEST ICRH antennas design is based on the conjugate-T to insure a load-tolerance. In particular, they have been designed to operate with an impedance at the T-junction $Z_T$ close to 3 Ohm. An impedance transformer connects the T-junction to the feeding transmission line (30 Ohm line). Hence, matching the antenna is similar to having a 30 Ohm load connected to the feeding transmission line, such as no power is reflected (VSWR$\\to 1$), which should be equivalent of having an impedance of roughtly 3 Ohm at the T-junction.\n", "\n", - "However, due to real-life design and manufacturing constraint, the optimal impedance at the T-junction is not necessarely 3 Ohm, but can be slightly different in both real and imaginary parts. \n", + "However, due to real-life design and manufacturing constraints, the optimal impedance at the T-junction is not necessarely 3 Ohm, but can be slightly different in both real and imaginary parts. \n", "\n", - "So let's evaluate the impact of the impedance at the T-junction to the 30 Ohm feeder line (the one which really matter for the generator point-of-view).\n", + "So let's evaluate the impact of the realistic geometries (simulated from full-wave tools) on the impedance at the T-junction to the 30 Ohm feeder line (the one which really matter for the generator point-of-view).\n", "\n", "For that, let's take the impedance transformer/vacuum window/service stub network assembly of an antenna:" ] @@ -520,7 +518,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.8" + "version": "3.11.7" }, "toc": { "base_numbering": 1, diff --git a/doc/tutorial_matching_automatic.ipynb b/doc/tutorial_matching_automatic.ipynb index 77719f7..d81d2c7 100644 --- a/doc/tutorial_matching_automatic.ipynb +++ b/doc/tutorial_matching_automatic.ipynb @@ -738,7 +738,7 @@ "metadata": {}, "outputs": [], "source": [ - "C_opt_2 = antenna.matching_both_sides_iterative(f_match=55e6, power=power, phase=phase)" + "C_opt_2 = antenna.match_both_sides_iterative(f_match=55e6, power=power, phase=phase, Cs=[50, 50, 50, 50])" ] }, { @@ -896,7 +896,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.7" + "version": "3.11.7" } }, "nbformat": 4, diff --git a/doc/tutorial_matching_manual.ipynb b/doc/tutorial_matching_manual.ipynb index 97f39aa..933dd80 100644 --- a/doc/tutorial_matching_manual.ipynb +++ b/doc/tutorial_matching_manual.ipynb @@ -385,7 +385,7 @@ "metadata": {}, "outputs": [], "source": [ - "np.array(C_match_plasma) - np.array(C_vacuum)" + "np.array(C_match_plasma) - np.array(C_opt_vacuum_dipole)" ] }, { @@ -447,7 +447,7 @@ "metadata": {}, "outputs": [], "source": [ - "diff_C = np.array(C_matchs) - np.array(C_vacuum)" + "diff_C = np.array(C_matchs) - np.array(C_opt_vacuum_dipole)" ] }, { @@ -466,21 +466,18 @@ ] }, { - "cell_type": "code", - "execution_count": null, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "Cs=list(np.array(C_opt_vacuum_dipole) + np.array([+3, -3, +3, -3]))" + "# Automatic Matching\n", + "Here is just a glimpse of the automatic matching capabilities.\n" ] }, { - "cell_type": "code", - "execution_count": null, + "cell_type": "markdown", "metadata": {}, - "outputs": [], "source": [ - "np.argmin(np.abs(ant.frequency.f - 55e6))" + "Let's assume we start from a non-optimal situation, that is we enlarge the capacitance differences from a vacuum matching from a rather arbitrary value: " ] }, { @@ -489,9 +486,14 @@ "metadata": {}, "outputs": [], "source": [ - "C_left, C_right, err = ant.capacitor_predictor(powers, phases, Cs=Cs)\n", - "Cs=[*C_left[500], *C_right[500]]\n", - "print(Cs)" + "Cs=list(np.array(C_opt_vacuum_dipole) + np.array([+3, -3, +3, -3]))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Then, using the capacitor predictor, we calculate the capacitance set to reach:" ] }, { @@ -500,6 +502,13 @@ "metadata": {}, "outputs": [], "source": [ + "# Evaluate this cell a few times to see the convergence to the optimal matching\n", + "C_left, C_right, err = ant.capacitor_predictor(powers, phases, Cs=Cs)\n", + "idx_f = np.argmin(np.abs(ant.frequency.f - 55e6))\n", + "Cs=[*C_left[idx_f], *C_right[idx_f]]\n", + "\n", + "print(Cs)\n", + "\n", "s_act = ant.s_act(powers, phases , Cs=Cs)\n", "\n", "fig, ax = plt.subplots()\n", @@ -561,7 +570,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.8" + "version": "3.11.7" }, "toc": { "base_numbering": 1, diff --git a/west_ic_antenna/digital_twin.py b/west_ic_antenna/digital_twin.py index 0ac503b..a25c51d 100644 --- a/west_ic_antenna/digital_twin.py +++ b/west_ic_antenna/digital_twin.py @@ -31,13 +31,13 @@ def __init__(self): #### defining widgets # capacitor widgets - C1 = widgets.FloatSlider(value=49.31, min=30.0, max=120.0, step=1e-4, + C1 = widgets.FloatSlider(value=50.62, min=30.0, max=120.0, step=1e-4, continuous_update=False) - C2 = widgets.FloatSlider(value=47.38, min=30.0, max=120.0, step=1e-4, + C2 = widgets.FloatSlider(value=48.69, min=30.0, max=120.0, step=1e-4, continuous_update=False) - C3 = widgets.FloatSlider(value=49.11, min=30.0, max=120.0, step=1e-4, + C3 = widgets.FloatSlider(value=50.15, min=30.0, max=120.0, step=1e-4, continuous_update=False) - C4 = widgets.FloatSlider(value=47.56, min=30.0, max=120.0, step=1e-4, + C4 = widgets.FloatSlider(value=48.86, min=30.0, max=120.0, step=1e-4, continuous_update=False) def capa_plus(clicked_button): From bd0bf3c7e78f6d87f72c476da20cdc3fdec1280c Mon Sep 17 00:00:00 2001 From: Julien Hillairet Date: Wed, 27 Mar 2024 21:17:56 +0100 Subject: [PATCH 2/2] Adding COMSOL test example --- doc/COMSOL_WEST_port_index.png | Bin 0 -> 86754 bytes doc/coupling_to_plasma_from_COMSOL.ipynb | 274 ++++++++++++++++++ .../COMSOL/ORNL_front_face_conventional.s4p | 5 + .../COMSOL/ORNL_front_face_plasma_inside.s4p | 5 + 4 files changed, 284 insertions(+) create mode 100644 doc/COMSOL_WEST_port_index.png create mode 100644 doc/coupling_to_plasma_from_COMSOL.ipynb create mode 100644 west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p create mode 100644 west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p diff --git a/doc/COMSOL_WEST_port_index.png b/doc/COMSOL_WEST_port_index.png new file mode 100644 index 0000000000000000000000000000000000000000..f4a6ce3f30c14df8eb49d7e8af53de5f9129cbfb GIT binary patch literal 86754 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 L(0X|6+_nD!5S;-S literal 0 HcmV?d00001 diff --git a/doc/coupling_to_plasma_from_COMSOL.ipynb b/doc/coupling_to_plasma_from_COMSOL.ipynb new file mode 100644 index 0000000..5412e4b --- /dev/null +++ b/doc/coupling_to_plasma_from_COMSOL.ipynb @@ -0,0 +1,274 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Plasma Coupling Using COMSOL Results" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In this example, we use a COMSOL front-face coupling calculation provided by ORNL, exported as a standard Touchstone file.\n", + "\n", + "The Touchstone file is first import as a scikit-rf Network, which is then modified to fit the WEST ICRH antenna electrical model requirements." + ] + }, + { + "cell_type": "code", + "execution_count": 25, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import skrf as rf\n", + "\n", + "# WEST ICRH Antenna package\n", + "import sys; sys.path.append('..')\n", + "from west_ic_antenna import WestIcrhAntenna" + ] + }, + { + "cell_type": "code", + "execution_count": 26, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "4-Port Network: 'ORNL_front_face_conventional', 55000000.0-55000000.0 Hz, 1 pts, z0=[50.+0.j 50.+0.j 50.+0.j 50.+0.j]\n" + ] + } + ], + "source": [ + "front_face_conventional = rf.Network(\n", + " '../west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p')\n", + "print(front_face_conventional) # 50 Ohm S-param component at a single frequency of 55 MHz" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The ports have been defined as:\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "So before to use the S-parameters directly to feed the electrical model, we need to:\n", + "- deembed the ports by 0.3m.\n", + "- renomalize port reference impedance to the front-face coax characteristic impedances. \n", + "- reverse ports 2 and 3." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [], + "source": [ + "# creating a 50 Ohm dummy coax line to be removed from the front face \n", + "media_coax = rf.DefinedGammaZ0(frequency=front_face_conventional.frequency) # 50 Ohm TEM media\n", + "extra_line = media_coax.line(d=0.3, unit='m')\n", + "# deembedding all the 4 pourts\n", + "for port_idx in range(4):\n", + " front_face_conventional = rf.connect(front_face_conventional, port_idx, extra_line.inv, 0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We expect the port to have a characteristic impedance of about 46.64 ohm, so we renormalize the Network to fit this need:" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [], + "source": [ + "front_face_conventional.renormalize(46.64) # done inplace" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "And finally, for historical reasons (may change in a near future ;), the S-matrix port ordering should be ajusted:" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [], + "source": [ + "front_face_conventional.renumber([1, 2], [2, 1]) # done inplace" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "OK, so now we can create the WEST antenna object:" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "metadata": {}, + "outputs": [], + "source": [ + "ant = WestIcrhAntenna(front_face=front_face_conventional,\n", + " frequency=front_face_conventional.frequency) # restrict to single frequ" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's match the antenna for this coupling:" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Looking for individual solutions separately for 1st guess...\n", + "Wrong solution (out of range capacitor) ! Re-doing...\n", + "False solution #1: [150. 150.]\n", + "True solution #1: [52.57986227 45.88696785]\n", + "True solution #1: [52.30894839 46.0700872 ]\n", + "Searching for the active match point solution...\n", + "Reducing search range to +/- 5pF around individual solutions\n", + "True solution #1: [53.67807308 46.12207788 53.62800637 46.30935881]\n" + ] + } + ], + "source": [ + "Cs = ant.match_both_sides(f_match=55e6)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The coupling resistance of the antenna for this coupling in a nominal dipole excitation is:" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([0.70081638, 0.6878438 ])" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "power = [1, 1]\n", + "phase = [0, np.pi]\n", + "\n", + "# Coupling resistance\n", + "ant.Rc(power, phase)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The voltage and currents are:" + ] + }, + { + "cell_type": "code", + "execution_count": 44, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[22.16126386, 23.75535708, 20.56902439, 25.21223565]])" + ] + }, + "execution_count": 44, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "power = [1, 1] # MW, to adjust to fit with experiment\n", + "phase = [0, np.pi] # rad\n", + "\n", + "abs(ant.voltages(power, phase)) # results in kV" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([[0.70248687, 0.75556107, 0.65298786, 0.80405425]])" + ] + }, + "execution_count": 41, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "abs(ant.currents(power, phase)) # results in kA" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p new file mode 100644 index 0000000..fed11bc --- /dev/null +++ b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_conventional.s4p @@ -0,0 +1,5 @@ +# Hz S MA R 50 +5.5E7 0.9833673750492276 80.96377443955839 0.008159649655058979 7.738772614443071 0.0145413437349296 16.766538738668693 0.0010505712330604862 -169.75560162791115 + 0.005398399959278055 22.968885177373394 0.9848074824065548 80.65809524512109 0.002317451028156058 3.2454593187084524 0.013899534074545427 14.553096258345233 + 0.015466057366109193 15.352573092351177 0.0017852444452037635 2.802734655640837 0.9830347719457835 80.74299676938419 0.00812386410086659 7.621156795969611 + 0.0010813303292888372 -61.44581050964589 0.014724345533904457 13.318047129975318 0.005359073489960678 22.934149123418244 0.9850374253641254 80.8905612330192 diff --git a/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p new file mode 100644 index 0000000..43d6755 --- /dev/null +++ b/west_ic_antenna/data/Sparameters/front_faces/COMSOL/ORNL_front_face_plasma_inside.s4p @@ -0,0 +1,5 @@ +# Hz S MA R 50 +5.5E7 0.9531014698199719 74.68128260423282 0.011727825824109023 22.140672391691247 0.0042213470494665405 11.518713731671811 0.002189631421892682 42.58156998869071 + 9.251508660246946E-4 -70.21624695384136 0.958437677141582 73.97406838963975 1.7232083904810094E-4 -60.95155708607013 0.005781121306569129 11.04470231400275 + 0.003550071050919271 -5.440992958402874 0.0031673180639685814 30.852889750516837 0.9523110682604861 74.3856493165878 0.011744626700427849 22.11148013138784 + 1.7657833450556378E-4 -67.23316376248191 0.005247609440270916 0.5440706526584136 9.356608093953542E-4 -69.87439488938504 0.9590992784229622 74.23536526952307