11<!DOCTYPE html>
2- < html class ="writer-html5 " lang ="en " >
2+ < html class ="writer-html5 " lang ="en " data-content_root =" ../../ " >
33< head >
44 < meta charset ="utf-8 " />
55 < meta name ="viewport " content ="width=device-width, initial-scale=1.0 " />
6- < title > optics_functions.coupling — optics_functions 0.1.2 documentation</ title >
7- < link rel ="stylesheet " href ="../../_static/pygments.css " type ="text/css " />
8- < link rel ="stylesheet " href ="../../_static/css/theme.css " type ="text/css " />
9- < link rel ="stylesheet " href ="../../_static/css/custom.css " type ="text/css " />
6+ < title > optics_functions.coupling — optics_functions 0.1.3 documentation</ title >
7+ < link rel ="stylesheet " type ="text/css " href ="../../_static/pygments.css?v=fa44fd50 " />
8+ < link rel ="stylesheet " type ="text/css " href ="../../_static/css/theme.css?v=19f00094 " />
9+ < link rel ="stylesheet " type ="text/css " href ="../../_static/css/custom.css?v=988d0652 " />
10+
11+
1012 <!--[if lt IE 9]>
1113 <script src="../../_static/js/html5shiv.min.js"></script>
1214 <![endif]-->
1315
14- < script data-url_root ="../../ " id ="documentation_options " src ="../../_static/documentation_options.js "> </ script >
15- < script src ="../../_static/doctools.js "> </ script >
16- < script src ="../../_static/sphinx_highlight.js "> </ script >
16+ < script src ="../../_static/jquery.js?v=5d32c60e "> </ script >
17+ < script src ="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c "> </ script >
18+ < script src ="../../_static/documentation_options.js?v=360bc84d "> </ script >
19+ < script src ="../../_static/doctools.js?v=9a2dae69 "> </ script >
20+ < script src ="../../_static/sphinx_highlight.js?v=dc90522c "> </ script >
1721 < script src ="../../_static/js/theme.js "> </ script >
1822 < link rel ="index " title ="Index " href ="../../genindex.html " />
1923 < link rel ="search " title ="Search " href ="../../search.html " />
@@ -107,7 +111,9 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
107111< span class ="c1 "> # Coupling ---------------------------------------------------------------------</ span >
108112
109113
110- < div class ="viewcode-block " id ="coupling_via_rdts "> < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.coupling_via_rdts "> [docs]</ a > < span class ="k "> def</ span > < span class ="nf "> coupling_via_rdts</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> complex_columns</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> ,</ span > < span class ="o "> **</ span > < span class ="n "> kwargs</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> :</ span >
114+ < div class ="viewcode-block " id ="coupling_via_rdts ">
115+ < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.coupling_via_rdts "> [docs]</ a >
116+ < span class ="k "> def</ span > < span class ="nf "> coupling_via_rdts</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> complex_columns</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> ,</ span > < span class ="o "> **</ span > < span class ="n "> kwargs</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> :</ span >
111117< span class ="w "> </ span > < span class ="sd "> """Returns the coupling terms.</ span >
112118
113119< span class ="sd "> .. warning::</ span >
@@ -140,7 +146,10 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
140146 < span class ="k "> return</ span > < span class ="n "> df_res</ span > </ div >
141147
142148
143- < div class ="viewcode-block " id ="coupling_via_cmatrix "> < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.coupling_via_cmatrix "> [docs]</ a > < span class ="k "> def</ span > < span class ="nf "> coupling_via_cmatrix</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> DataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> complex_columns</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> ,</ span >
149+
150+ < div class ="viewcode-block " id ="coupling_via_cmatrix ">
151+ < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.coupling_via_cmatrix "> [docs]</ a >
152+ < span class ="k "> def</ span > < span class ="nf "> coupling_via_cmatrix</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> DataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> complex_columns</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> ,</ span >
144153 < span class ="n "> output</ span > < span class ="p "> :</ span > < span class ="n "> Sequence</ span > < span class ="p "> [</ span > < span class ="nb "> str</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="p "> (</ span > < span class ="s2 "> "rdts"</ span > < span class ="p "> ,</ span > < span class ="s2 "> "gamma"</ span > < span class ="p "> ,</ span > < span class ="s2 "> "cmatrix"</ span > < span class ="p "> ))</ span > < span class ="o "> -></ span > < span class ="n "> DataFrame</ span > < span class ="p "> :</ span >
145154< span class ="w "> </ span > < span class ="sd "> """Calculates C matrix then Coupling and Gamma from it.</ span >
146155< span class ="sd "> See [CalagaBetatronCoupling2005]_ .</ span >
@@ -211,10 +220,13 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
211220 < span class ="k "> return</ span > < span class ="n "> df_res</ span > </ div >
212221
213222
223+
214224< span class ="c1 "> # R-Matrix ---------------------------------------------------------------------</ span >
215225
216226
217- < div class ="viewcode-block " id ="rmatrix_from_coupling "> < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.rmatrix_from_coupling "> [docs]</ a > < span class ="k "> def</ span > < span class ="nf "> rmatrix_from_coupling</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> DataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> complex_columns</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> DataFrame</ span > < span class ="p "> :</ span >
227+ < div class ="viewcode-block " id ="rmatrix_from_coupling ">
228+ < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.rmatrix_from_coupling "> [docs]</ a >
229+ < span class ="k "> def</ span > < span class ="nf "> rmatrix_from_coupling</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> DataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> complex_columns</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> DataFrame</ span > < span class ="p "> :</ span >
218230< span class ="w "> </ span > < span class ="sd "> """Calculates the R-matrix from a DataFrame containing the coupling columns</ span >
219231< span class ="sd "> as well as alpha and beta columns. This is the inverse of</ span >
220232< span class ="sd "> :func:`optics_functions.coupling.coupling_via_cmatrix`.</ span >
@@ -288,9 +300,12 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
288300 < span class ="k "> return</ span > < span class ="n "> df_res</ span > </ div >
289301
290302
303+
291304< span class ="c1 "> # Closest Tune Approach --------------------------------------------------------</ span >
292305
293- < div class ="viewcode-block " id ="closest_tune_approach "> < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.closest_tune_approach "> [docs]</ a > < span class ="k "> def</ span > < span class ="nf "> closest_tune_approach</ span > < span class ="p "> (</ span >
306+ < div class ="viewcode-block " id ="closest_tune_approach ">
307+ < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.closest_tune_approach "> [docs]</ a >
308+ < span class ="k "> def</ span > < span class ="nf "> closest_tune_approach</ span > < span class ="p "> (</ span >
294309 < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> qx</ span > < span class ="p "> :</ span > < span class ="nb "> float</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ,</ span > < span class ="n "> qy</ span > < span class ="p "> :</ span > < span class ="nb "> float</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span > < span class ="p "> ,</ span > < span class ="n "> method</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="o "> =</ span > < span class ="s2 "> "teapot"</ span >
295310< span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> :</ span >
296311< span class ="w "> </ span > < span class ="sd "> """Calculates the closest tune approach from coupling resonances.</ span >
@@ -359,6 +374,7 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
359374 < span class ="k "> return</ span > < span class ="n "> df_res</ span > </ div >
360375
361376
377+
362378< span class ="k "> def</ span > < span class ="nf "> _cta_franchi</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> TfsDataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> qx_frac</ span > < span class ="p "> :</ span > < span class ="nb "> float</ span > < span class ="p "> ,</ span > < span class ="n "> qy_frac</ span > < span class ="p "> :</ span > < span class ="nb "> float</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> Series</ span > < span class ="p "> :</ span >
363379< span class ="w "> </ span > < span class ="sd "> """ Closest tune approach calculated by Eq. (1) in [PerssonImprovedControlCoupling2014]_ . """</ span >
364380 < span class ="k "> return</ span > < span class ="mi "> 4</ span > < span class ="o "> *</ span > < span class ="p "> (</ span > < span class ="n "> qx_frac</ span > < span class ="o "> -</ span > < span class ="n "> qy_frac</ span > < span class ="p "> )</ span > < span class ="o "> *</ span > < span class ="n "> df</ span > < span class ="p "> [</ span > < span class ="n "> F1001</ span > < span class ="p "> ]</ span > < span class ="o "> .</ span > < span class ="n "> abs</ span > < span class ="p "> ()</ span >
@@ -429,7 +445,9 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
429445 < span class ="k "> return</ span > < span class ="n "> weights</ span >
430446
431447
432- < div class ="viewcode-block " id ="check_resonance_relation "> < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.check_resonance_relation "> [docs]</ a > < span class ="k "> def</ span > < span class ="nf "> check_resonance_relation</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> DataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> to_nan</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> DataFrame</ span > < span class ="p "> :</ span >
448+ < div class ="viewcode-block " id ="check_resonance_relation ">
449+ < a class ="viewcode-back " href ="../../modules/coupling.html#optics_functions.coupling.check_resonance_relation "> [docs]</ a >
450+ < span class ="k "> def</ span > < span class ="nf "> check_resonance_relation</ span > < span class ="p "> (</ span > < span class ="n "> df</ span > < span class ="p "> :</ span > < span class ="n "> DataFrame</ span > < span class ="p "> ,</ span > < span class ="n "> to_nan</ span > < span class ="p "> :</ span > < span class ="nb "> bool</ span > < span class ="o "> =</ span > < span class ="kc "> False</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> DataFrame</ span > < span class ="p "> :</ span >
433451< span class ="w "> </ span > < span class ="sd "> """Checks that \|F1001| >= \|F1010|.</ span >
434452< span class ="sd "> If desired, sets the invalid points to NaN. This is only used for checking</ span >
435453< span class ="sd "> in the :func:`~optics_functions.coupling.closest_tune_approach` function,</ span >
@@ -455,8 +473,9 @@ <h1>Source code for optics_functions.coupling</h1><div class="highlight"><pre>
455473 < span class ="s2 "> "of the data points |F1001| < |F1010|. Your closest tune "</ span >
456474 < span class ="s2 "> "approach estimates might not be accurate."</ span > < span class ="p "> )</ span >
457475 < span class ="k "> if</ span > < span class ="n "> to_nan</ span > < span class ="p "> :</ span >
458- < span class ="n "> df</ span > < span class ="o "> .</ span > < span class ="n "> loc</ span > < span class ="p "> [</ span > < span class ="n "> condition_not_fulfilled</ span > < span class ="p "> ,</ span > < span class ="n "> COUPLING_RDTS</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> np</ span > < span class ="o "> .</ span > < span class ="n "> NaN </ span >
476+ < span class ="n "> df</ span > < span class ="o "> .</ span > < span class ="n "> loc</ span > < span class ="p "> [</ span > < span class ="n "> condition_not_fulfilled</ span > < span class ="p "> ,</ span > < span class ="n "> COUPLING_RDTS</ span > < span class ="p "> ]</ span > < span class ="o "> =</ span > < span class ="n "> np</ span > < span class ="o "> .</ span > < span class ="n "> nan </ span >
459477 < span class ="k "> return</ span > < span class ="n "> df</ span > </ div >
478+
460479</ pre > </ div >
461480
462481 </ div >
0 commit comments